首頁  >  文章  >  科技週邊  >  我用ChatGPT寫神經網路:一字不改,結果竟然很好用

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

WBOY
WBOY轉載
2023-04-12 12:28:061465瀏覽

自從去年底推出以來,對話式 AI 模型 ChatGPT 火遍了整個社區。

ChatGPT 的確是一個了不起的工具,就像一個「潘朵拉魔盒」。一旦找到正確的開啟方式,你或許會發現,自己再也離不開它了。

作為一個全能選手,人們給 ChatGPT 提出的要求五花八門,有人用它寫論文,有人讓它陪聊,這些都是常見的玩法。腦洞再打開一點,既然 ChatGPT 是 AI 中的「王者」,那它會不會寫一個 AI?

近日,一位機器學習領域的部落客突發奇想,他決定讓 ChatGPT 建立一個神經網絡,使用 Keras 解決 MNIST 問題。

MNIST 算是機器學習領域的經典問題。即使這個手寫數位資料集逐漸淡出了電腦視覺領域,但它的紀念意義仍然不可忽視,許多人入門深度學習的第一個資料集、驗證演算法的第一個實驗都是 MNIST。

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

話不多說,想到了就開工。作者直接讓 ChatGPT 寫了一段程式碼,看起來完美無缺,甚至不需要更改任何內容。

這是一個很好的開始。

ChatGPT 選擇了分類交叉熵作為損失函數。作者提出重寫分類交叉熵這部分程式碼,ChatGPT 將其替換為稀疏分類交叉熵,更新後的程式碼仍能 Work。可以發現,新的損失函數放棄了標籤的分類轉換。

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

ChatGPT 產生的程式碼使用了全連接層,但作者想使用卷積層。因此,ChatGPT 按照指示修改了程式碼,並增加了一個 Conv2D 和一個最大池化層(MaxPooling layer)。

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

然後來到了評估最終模型階段,作者讓 ChatGPT 使用測試集編寫程式碼。

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

結果看起來很棒,而且 ChatGPT 的每一次回應都帶有完整的解釋。例如在這次評估中,它這樣解釋:

“評估”方法將測試資料和測試標籤作為參數,並返回模型編譯(此處為準確率)期間指定的損失和度量。上面的程式碼片段輸出了測試的準確率,這應該可以讓你了解到模型對新資料的概括性。

模型在訓練期間使用了整個測試集作為驗證資料。然後,作者讓 ChatGPT 將其更改為訓練資料的 20%。

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

此外,作者還想要更小的 batch 並運行更少 epoch 的程式碼。雖然這一步驟未必要用到 ChatGPT,但他不想在不更新 ChatGPT 上下文的情況下更改程式碼。

所以這項任務還是落在了 ChatGPT 頭上:

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

#

接下來,作者打算繪製訓練過程中的訓練和測試損失圖。 ChatGPT 的建議是:需要更改適合模型的 line 以捕捉其結果值。

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

為了展示資料集中的一些範例,作者讓ChatGPT 編寫程式碼來輸出圖片和標籤的組合。這些輸出的程式碼也很完美,附有 20 張圖片的集合。

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

在建構模型時,檢視其結構也是必要的。如果用這個問題去問ChatGPT ,回復是:

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

#ChatGPT 給出的是關於模型的總結:

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

##模型的總結很有用,但作者更想看到顯示模型結構的圖表。所以繼續問:

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

#結果是滿意的,最後就是準備部署這個模型了,讓ChatGPT 將模型儲存到磁碟:

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

現在,作者想建立一個使用已儲存的模型進行預測的類別。這是 prompt 很有趣,解決方案也很完美。

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

現在寫一個範例,使用預測器的類別來預測10 個隨機圖像的標籤:

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

為了完成這個,作者讓ChatGPT 展示了一個混淆矩陣:

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

該說不說, ChatGPT 使用的樣式還真挺好看。

我用ChatGPT寫神經網路:一字不改,結果竟然很好用

完成所有試驗後,作者將所有ChatGPT 產生的程式碼公佈了出來,你也可以上手試試:

地址:https://colab.research.google.com/drive/1JX1AVIfGtIlnLGqgHrK6WPylPhZvu9qe?usp=sharing#

以上是我用ChatGPT寫神經網路:一字不改,結果竟然很好用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除