ChatGPT教你寫AI包教包會(huì),七段對(duì)話寫個(gè)識(shí)別模型,準(zhǔn)確度最高達(dá)99.7%
現(xiàn)在,AI小白甚至都不需要看教程,僅憑ChatGPT就可以創(chuàng)建模型。
它不僅幫你找數(shù)據(jù)集、訓(xùn)練模型寫代碼,還能評(píng)估準(zhǔn)確性、創(chuàng)建程序一步到位。
就有這么一個(gè)25歲小哥,讓ChatGPT幫他創(chuàng)建了個(gè)地理位置識(shí)別程序,最終準(zhǔn)確率最高達(dá)99.7%。
而且各種細(xì)節(jié)步驟全在,一邊干活還一邊教你學(xué)習(xí)。
這一波,被ChatGPT感動(dòng)到了。
更貼心的是,在每次答疑解惑完,ChatGPT都會(huì)說上一句:如果你有任何疑問,請告訴我。
具體實(shí)現(xiàn)
項(xiàng)目一開始,這位小哥開宗明義:我不想努力了,你可以幫我創(chuàng)建一個(gè)AI程序嗎?
以兩個(gè)坐標(biāo)為輸入,并預(yù)測他們在哪個(gè)國家。
而ChatGPT“欣然”接受挑戰(zhàn),還提醒這位小哥,需要相應(yīng)數(shù)據(jù)集,否則模型無法訓(xùn)練。另外要是還有更多信息,就更好了。
首先,需要找到合適的數(shù)據(jù)集。
小哥再問ChatGPT,結(jié)果它到是二話不說直接扔出了三個(gè)供其選擇,介紹鏈接都有。
從三個(gè)數(shù)據(jù)集來看,自然地球數(shù)據(jù)集顯然更好,而且還有“邊界”、海岸線等信息,這也就意味著要向模型解釋“邊界”概念,分隔標(biāo)簽。但作為新人而言,第一個(gè)數(shù)據(jù)集與任務(wù)相關(guān)的數(shù)據(jù)更多,模型更容易實(shí)現(xiàn),作者最終選擇了第一個(gè)數(shù)據(jù)集。
將這個(gè)決定告訴ChatGPT之后,緊接著它就來教你創(chuàng)建DataFrame(數(shù)據(jù)框架),并給出了示例代碼。
執(zhí)行成功后,就來到了第二階段:模型訓(xùn)練。ChatGPT也二話不說地給了份代碼,甚至還附上了詳細(xì)解釋。
該代碼將使用k-NN算法根據(jù)給定的坐標(biāo)來預(yù)測國家。KNN 算法是一種簡單的算法,它根據(jù)輸入的 k 個(gè)最近鄰的大多數(shù)類對(duì)輸入進(jìn)行分類。
在這個(gè)例子中,數(shù)據(jù)被分成訓(xùn)練集和測試集,比例為80-20。然后用訓(xùn)練集對(duì) KNN 分類器進(jìn)行訓(xùn)練,并用測試集對(duì)模型的精度進(jìn)行測試。
請記住,這是一個(gè)簡單的示例,模型的準(zhǔn)確性可能不高。您可以嘗試使用不同的算法和k的不同值進(jìn)行實(shí)驗(yàn),看看是否可以提高模型的準(zhǔn)確性.
在丟棄一些空白數(shù)據(jù)(沒有坐標(biāo)的國家)之后,首次執(zhí)行k-NN訓(xùn)練成功,并有99.7%的準(zhǔn)確率。
不過這個(gè)結(jié)果并不是那么滿意,作者歸結(jié)了這幾個(gè)方面的原因:不同國家之間的數(shù)據(jù)分布不均;存在一些數(shù)據(jù)錯(cuò)誤;偏見等問題。
這樣也就來到了第三步:重新評(píng)估。
在這段代碼中,我使用 OpenCage 地理編碼 API 從坐標(biāo)中獲取國家信息。您需要使用API密鑰替換 YORBAPI _ KEY 以獲得對(duì) API 的訪問權(quán)限。你可以在 OpenCage 網(wǎng)站上注冊一個(gè)免費(fèi)的API密鑰。
按照說明,作者修改了代碼,結(jié)果顯示出現(xiàn)了很多NA錯(cuò)誤,相當(dāng)于只剩下30%數(shù)據(jù)。不過這個(gè)地球確實(shí)大部分都是水。(也沒毛病,Doge)
最終模型準(zhǔn)確性下降了一些,有98.6%,但這個(gè)結(jié)果作者表示很滿意,畢竟只有7個(gè)對(duì)話回合就幫忙造出來一個(gè)AI模型來。
還嘗試了其他算法
不過這不是小哥的第一次嘗試。第一次談話時(shí),他用了同一來源的較小數(shù)據(jù)集,需要更多數(shù)據(jù)集校正,而ChatGPT提供的第一個(gè)模型訓(xùn)練代碼是邏輯回歸,只有51%的準(zhǔn)確性。
而后它又嘗試了不同的“求解器”(準(zhǔn)確率約為65%),以及其他算法,包括隨機(jī)森林和k-NN,準(zhǔn)確率分別為93%和92%。
這位25歲小哥在SentinelOne 擔(dān)任高級(jí)安全研究員,研究和開發(fā)惡意軟件檢測邏輯。
他因?yàn)閷?duì)機(jī)器學(xué)習(xí)很感興趣開始自學(xué)有一定基礎(chǔ),在本次對(duì)話中其實(shí)他特意以小白的身份與ChatGPT對(duì)話,結(jié)果被強(qiáng)大的效果驚艷到。
最后他還表示,真的在考慮用“他們”而不是“它”來稱呼ChatGPT。
所以AI小白們,ChatGPT快用起來吧。(Doge)
完整對(duì)話:https://sharegpt.com/c/7zLivmp
參考鏈接:https://xrl1.sh/posts/coordinates-model-with-ChatGPT/