【コード生成禁止】 教師あり学習で探る、AIでも守れる命令文 【No.2】
カウンセリングにて「評価モデルを構築して◯×△」と説明され、思いついたことにやや後悔をしています。今更止められないので、自然言語処理講座の復習と実装力獲得の機会と考えます。
しかし、今は「完成に向けて突っ走っていくぞ!」とは言えない状況で、本記事では現状の確認だけをします。
目次
改めて「作る成果物は何か?」を考える
やるべき工程
次回カウンセリングまでの到達点
次の工程(No.3)へ向けて
1.改めて「作る成果物は何か?」を考える
<現象>
AIチャットくん(gpt-3.5-turbo?)にエラーを吐くプログラミングコードを付けて質問形式でメッセージを送ると、AIは必ず修正コードつけて返答をする。
<何が問題か?>
プログラミング学習においては、即正解コードを見せる行為は不適切と考える。学校で例えると、解き方を質問した生徒に対して教師が解答をまず見せてから説明するようなものである。
<何故、改善できないのか?>
・質問の文末に「コードを書かないで」などと命令文をつけても効果がない。コード量が多いとそれに影響されるためだと考える。
・AI本人へ相談し、ノーコードで命令文の改善を行っても問題解決には至らない。
<何故、成果物によって問題解決を図れるのか?>
教師あり学習を用いた評価モデルを構築し、精度評価を行うことで『より効果のある命令文』の作成を行うことができる(かもしれない)から。
<成果物作成における留意点>
以下の可能性がある
・信頼できない精度評価になる(改善策:訓練データ数を増やす)
・より詳しい評価をするために『教師なし学習』も取り入れる
・改善不可(何をやってもコードを返す仕様)
・突然改善する(GPTのバージョンアップ)
2.やるべき工程
①.用意したコード付き文章を1つ用意する。文章はコースの添削課題として、公開時はモザイク処理をする。
②.文末に命令文(学習データ)をつけて、AIに見せる。コードでつけて返答しなければ「True(1)」,コードを付けたら「False(0)」とする(ラベル付け)。これを学習データ50個に行う。同じ命令文でも結果がばらつく可能性もあるため、8割返さなければ「False(0)」とする?
③.②の結果をスプレッドシートに50行2列の2次元配列を作成してcsvファイルで保存する。
④.③に対して前処理(ベクトル化、トークナイゼーションなど)を行い、文字を数値化(ID?)する
⑤.前処理を終えたデータでモデルを構築(カリキュラムではランダムフォレストを使用)
*カウンセリング中に出た用語:fit 、説明変数、目的変数、予測(predict)
⑥精度評価をする(結果は未知数)。
3.次回カウンセリングまでの到達点
自然言語処理コースの添削課題を参考にできるので、⑤までは自力で辿り着きたいです。認識の擦り合わせに時間を要する成果物のため、できる限り同じチューターの方にお願いする予定です。
4.次の工程(No.3)へ向けて
DS資格対策講座の受講開始となり、まずはそちらに集中します。苦手な人は苦労する講座と聞いており、戦々恐々としています。ただ、7月末の受験資格取得期限(?)までに時間があります。
成果物の作成は気分転換として少しずつやるか、DS資格対策講座受講完了後に本腰を入れてやるかになりそうです。