做機器學習一定會遇到的問題調參
這幾天在想有沒有辦法把這件事情利用AI做到全自動化呢
可以的還可以做到雲端全自動化 不會讓你本機電腦佔資源妨礙你打遊戲設定好之後你只需打你的遊戲幾個小時回來看就好了

看上面那張圖 左邊每個檔案都有標上R2 右邊是我的終端機 他告訴我已經幫我調參成功
把R2從早期0.4拉到0.8了
怎麼做到的
首先你要知道gemini_cli
https://github.com/google-gemini/gemini-cli
npx https://github.com/google-gemini/gemini-cli
把上面那段指令貼到你的終端機

你應該會看到像這樣的東西
如果他要你登入授權 你可以選擇網頁授權
或是去申請一個gemini api key
https://aistudio.google.com/apikey

申請一組api key然後在終端機用
export GEMINI_API_KEY="這裡寫你的API KEY"
來設置環境變數
就可以正常看到GeminiCli的環境了
那怎麼在colab終端機上使用GeminiCli呢?
首先打開colab

左下角點選終端機 就可以看到右邊打開了終端機
輸入
export GEMINI_API_KEY="這裡寫你的API KEY"
npx https://github.com/google-gemini/gemini-cli

就可以在colab終端機打開geminicli
接下來我準備的提示詞
你是一個資深資料科學家 熟悉各種機器學習 深度學習 回歸建模 超參數調整優化方法
當前目錄底下有main_R2_0.8365.py檔案
你可以觀察這檔案的train_model函數和TIME_WINDOW_LEN怎麼設置的從這版本開始優化迭代
這程式主要是寫了一個建模流程(主要是走滾動式預測配XGB模型)
從讀取資料 篩選資料 建模 到最後評估R2 RMSE MAPE
你的工作目標是 讓R2 RMSE MAPE表現進步 R2愈高愈好 RMSE MAPE愈低愈好
工作流程應該是:
while R2<0.95:
修改建模流程(我會跟你說那些能改那些不能改)
執行程式觀察R2 RMSE MAPE
打印建模結果
報告建模結果反饋做出假設跟下一次調整方向(根據你資深資料科學家的背景知識)
每獲得一個版本的結果都把程式碼備份保存並標上R2的得分
持續循環直到滿足跳出while迴圈條件R2>0.95
程式碼內不能改的:
1.注意不可為了通過測試而作弊修改測試程式 就是我在計算R2 RMSE MAPE那一段
2.#select by rule那個部份也不能改
3.# 早停判斷<不得移除>
4.不能擅自增加更多特徵 導致模型訓練時間變長
5.其他我沒說可以改的一律不能改
程式碼可以改的地方:
1.train_model函數
2.TIME_WINDOW_LEN
之後他就會做到autorun了

每個人的問題不一樣提示詞也應該不一樣
設計原則應該是
1.角色代入:
你是一個資深資料科學家 熟悉各種機器學習 深度學習 回歸建模 超參數調整優化方法
2.指定檔案給他參考:
當前目錄底下有main_R2_0.8365.py檔案
3.引導觀察愈修改的部份
你可以觀察這檔案的train_model函數和TIME_WINDOW_LEN怎麼設置的從這版本開始優化迭代
這程式主要是寫了一個建模流程(主要是走滾動式預測配XGB模型)
從讀取資料 篩選資料 建模 到最後評估R2 RMSE MAPE
你的工作目標是 讓R2 RMSE MAPE表現進步 R2愈高愈好 RMSE MAPE愈低愈好
4.定義工作流程
工作流程應該是:
while R2<0.95:
修改建模流程(我會跟你說那些能改那些不能改)
執行程式觀察R2 RMSE MAPE
打印建模結果
報告建模結果反饋做出假設跟下一次調整方向(根據你資深資料科學家的背景知識)
每獲得一個版本的結果都把程式碼備份保存並標上R2的得分
持續循環直到滿足跳出while迴圈條件R2>0.95
5.程式碼內不能改的:
1.注意不可為了通過測試而作弊修改測試程式 就是我在計算R2 RMSE MAPE那一段
2.#select by rule那個部份也不能改
3.# 早停判斷<不得移除>
4.不能擅自增加更多特徵 導致模型訓練時間變長
5.其他我沒說可以改的一律不能改
6.程式碼可以改的地方:
1.train_model函數
2.TIME_WINDOW_LEN
這套方法的優勢在於AI真的會根據結果反饋
思考超參數對模型的意義 來調整下一次改動方向
這是過去任何一種超參數優化都無法做到的
grid search random search 貝氏優化
都是基於暴力搜索 或是 數學統計的方式去求解