[OpenR8 解決方案] XOR_Caffe_FC (使用 Caffe 全連接層學習 XOR 運算規則)

一、XOR_Caffe_FC 介紹

 

XOR_Caffe_FC 是使用 caffe,判斷兩個數字的 XOR 值是多少,XOR的中文為“互斥或”,其輸入值與輸出值的關係如圖 1

由於此解決方案是使用 caffe 判斷 XOR 值,要先準備學習的資料,訓練 caffe 找出規則,最後輸入數字驗證是否訓練成功,其流程下圖 2

 

圖 1.XOR 值 .png

圖 1.XOR 值 。

 

圖 2.XOR_Caffe_FC 流程圖 .png

圖 2.XOR_Caffe_FC 流程圖 。

 

 

二、XOR_Caffe_FC 資料夾介紹

 

XOR_Caffe_FC 位於 OpenR8 的 solution 資料夾內,如圖 3,內有三個 flow 檔案、一個 data 資料夾,如圖 4

 

圖 3.XOR_Caffe_FC 位置 .png

圖 3.XOR_Caffe_FC 位置 。

 

圖 4.XOR_Caffe_FC 資料夾 .png

圖 4.XOR_Caffe_FC 資料夾 。

 

【data 資料夾】

圖 5.XOR_Caffe_FC 的 data 資料夾 .png

圖 5.XOR_Caffe_FC 的 data 資料夾 。

 

data 資料夾內容

用途

test_lmdb

運行 1_create_lmdb.flow 產生的數據庫。

train_lmdb

運行 1_create_lmdb.flow 產生的數據庫。

deploy.prototxt

3_inference.flow 的 Caffe_XOR_讀取網路。

snapshot_iter_1000.caffemodel

運行 2_train.flow 產生的 caffemodel。

snapshot_iter_1000.solverstate

運行 2_train.flow 產生的 solverstate。

solver.prototxt

2_train.flow 的 caffe_訓練會用到。

train-test.prototxt

caffe 用。

xor.txt xor_2.txt

要訓練 XOR 規則的資料,裡面存放 XOR 的 input 與output,如圖 6。

 

圖 6.XOR 的內容 .png

圖 6.XOR 的內容。

 

※延伸應用:改變 XOR.txt 的 input 與output 關係,可以訓練出不一樣的效果(例如:訓練XNOR的關係)。

 

 

 

 

 

 

三、1_create_lmdb.flow — 將資料匯集成數據集

 

請點選【檔案】=>【開啟】=>【進入到 OpenR8 底下的 solution 資料夾】=>【選擇 XOR_Caffe_FC 資料夾】=>【選擇 1_create_lmdb.flow 開啟】,如圖 7圖 8

 

圖 7.選擇 1_create_lmdb.flow .png

圖 7.選擇 1_create_lmdb.flow 。

 

圖 8.開啟 1_create_lmdb.flow .png

圖 8.開啟 1_create_lmdb.flow 。

 

按下執行將資料匯集成數據集,如圖 9

 

圖 9. 執行結果 .png

圖 9. 執行結果 。

 

※出現刪除 train_lmdb 資料夾與 test_lmdb 資料夾時,請按“是”。

接著進入下一步訓練。

 

 

四、2_train.flow — 訓練

 

請點選【檔案】=>【開啟】=>【進入到 OpenR8 底下的 solution 資料夾】=>【選擇 XOR_Caffe_FC 資料夾】=>【選擇 2_train.flow 開啟】,如圖 10圖 11

 

圖 10.選擇 2_train.flow .png

圖 10.選擇 2_train.flow 。

 

圖 11.開啟 2_train.flow .png

圖 11.開啟 2_train.flow 。

 

按下執行即可開始訓練,如圖 12

 

圖 12. 執行結果 .png

圖 12. 執行結果 。

 

訓練完畢後,測試訓練的結果。

 

 

五、3_inference.flow — 測試訓練結果

 

請點選【檔案】=>【開啟】=>【進入到 OpenR8 底下的 solution 資料夾】=>【選擇 XOR_Caffe_FC 資料夾】=>【選擇 3_inference.flow 開啟】,如圖 13圖 14

 

圖 13.選擇 3_inference.flow .png

圖 13.選擇 3_inference.flow 。

 

圖 14.開啟 3_inference.flow .png

圖 14.開啟 3_inference.flow 。

 

可以填入 input1 與 input2 看兩者 XOR 後的結果,如圖 15

圖 15. 填入 input .png

圖 15. 填入 input 。

 

以上圖為例,input1 = 0、input2 = 1,按下執行即可看到 input1 與 input2 的 XOR 的值,如圖 16

 

圖 16. 執行結果 .png

圖 16. 執行結果 。

 

※使用者可以更改 input1 與 input2 的值看看是否訓練成功。

標籤:

延伸閱讀

1.
OpenR8 - 人人都會用的 AI 軟體 (下載)

[CP 值最好的 AI 人工智慧電腦熱賣中]
硬體採用最新最快的 Titan RTX, RTX-2080Ti-11G, 及 TESLA V100!
視窗圖控介面,易學易用。
硬體優勢:針對深度學習最佳化設計,且經過客戶端 24H 運作驗證。
軟體優勢:事先安裝人工智慧軟體及優化設定,每週提供最新 AI 演算法下載。
公司優勢:專業人工智慧機器人設計公司,資本額一億。
歡迎企業、學校、及公家機關大量採購。
可租用,歡迎來信或來電洽詢。
詳細資料請參閱以下網址: https://tw.openrobot.club/ai_computer