私たちの批評は主にこの研究の内容ではなく、方法論と厳密さに向けられています。この論文が科学的に厳密な方法で実証できていないことを除けば、大規模な言語モデルが実際に MIT カリキュラムを解決できるかどうかについては、私たちは意見を持っていません。
参考リンク:
原文表示
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
MIT の学部数学で GPT-4 のフルスコアを取得できますか?残念ながら偽物です、データセット自体に問題があります
原題:「爆発的な「GPT-4 MIT学部数学フルスコア」論文が不正、データセット自体に問題がある」
ここ 2 日間で、GPT-4 が MIT MIT EECS と数学の学部試験に満点で合格したという論文が Twitter で話題になりました。
簡単に要約すると、MIT の研究チームは、学校の数学、電気工学、およびコンピュータ サイエンス (EECS) 専攻のコース問題、中間試験、期末試験からの 4,550 の問題と解決策の包括的なデータセットを編集しました。
次に、研究チームは、このデータセットのトピックを完成させるためにさまざまな大規模な言語モデルに依頼しました。その結果はあまりにも恐ろしいものでした。GPT-3.5 は 1/3 を正確に実行でき、GPT-4 はほぼ満点に達しました。
上の表に示すように、GPT-4 を追加する方法が多いほど、モデルの正答率が高くなります。初代 GPT-4 は正答率 90% を達成できましたが、操作を加えると直接フルスコアを獲得することもできました。
しかし、白熱した議論を繰り広げているネットユーザーのほとんどは、このスコア自体が GPT-4 で採点されたものであることに気づいていないかもしれません...
1時間の調査の後、彼らは論文の手法に疑問を抱きました。
2 時間後、彼らはデータセット自体に何か問題があることに気づきました。
つまり、モデルは試験前に答えを教えられた生徒のようなもので、あからさまな「カンニング」です。
同3人はまた、「過剰宣伝」の風潮にも疑問を呈し、「これらの論文は、正当な査読が行われる前にArxivにアップロードされ、Twitterで広く共有されることが多い。仕事の未来が悪い前例を作ってしまう」と述べた。
「ディープラーニング」ファイターのゲイリー・マーカスも、当然のことながら、この疑念の波を支持しました。
次に、この「爆発的」論文の問題点を見てみましょう。
**データセットの何が問題ですか? **
まず、元の論文から知られているように、研究者が収集したデータセットには、MIT 学位試験を取得するために必要な 30 の数学および EECS コースの、コアコースと選択コースをカバーする 4550 の問題と対応する解答が含まれています。
このデータセット (オープンソース LLM の微調整に使用されるトレーニング セットを除く) は、報告されたパフォーマンス テストの生成に使用されたコードとともに、論文の出版とともに GitHub にもリリースされました。しかし、著者である Drori 教授は最近の投稿でこれを削除しました。
「しかし、このファイルがテストに使用された別のファイルに置き換えられた可能性があることを我々は認めています。これが事実である場合、このデータとそれを使って行われたすべての分析を公的に公開する立証責任は作成者にあると我々は考えています」 。」
それでは、隠蔽されている問題とは何でしょうか? 3人はそれぞれ独自の分析を行った。
解決不可能な問題 (テストセットの約 4%)
元の論文では、どの形式の GPT-4 でもテスト セットで完璧なスコアが得られると述べられていることを考慮して、3 人は個々のデータ ポイントの調査を開始しました。データセットには、提供された情報では解決できない質問が少なくとも 10 個あり、この場合、他のいくつかの質問は単に有効な質問ではなかったため、完璧なスコアはまったく不可能であることがすぐにわかりました。
このような「問題のある質問」はテストセットの少なくとも 4% を占めました。
拡張された Excel ドキュメントで、3 人は問題があることが判明したデータセットの例に注釈を付けました。 「赤色」は提供された情報では解決できない問題を示し、「黄色」は問題の一部が合理的ではないことを示します。
ページアドレス:
重複した質問 (テストセットの約 5%)
テキストの類似性検出を使用して、3 人は、288 問のテスト セット内で 14 問 (7 ペア) が重複していることを発見しました。これらの場合、質問文字列間の唯一の違いは、文字レベルのノイズが最小限であるか、完全に同じであることさえありました。
これらの解決不可能な問題を考慮すると、GPT-4 がいかなる手段を使っても 100% の精度を達成できることは信じられません。どこかの段階で解答が途中に漏れていたか、問題が正しく採点されなかったかのいずれかです。
これらの最初の発見により、数ショットの例 (モデルがゼロショット精度で失敗した場合) からさらに調査を開始することになり、最終的には、問題解決情報の漏洩と、モデルのランク付けに使用された方法に問題があることが判明しました。出力。詳細は以下のとおりです。
いくつかのサンプル例による情報開示
元の論文では「サンプル例が少ない」という点にも言及していることは注目に値します。
つまり、この論文は、OpenAI の埋め込みデータセット内の類似した問題に対してコサイン類似度検索を実行し、これらの問題と解決策を追加のコンテキストとしてモデルに組み込んで、モデルによる問題解決を支援します。
例が問題となっている問題とは十分に異なっており、不公平な情報の暴露を避ける限り、このアプローチ自体は問題ありません。
公開されたテスト データセットをランダムにスキャンしたところ、3 人は何か奇妙なことに気づきました。モデルに提示された「少数のショットの例」の多くは、質問自体をほぼ一字一句そのまま表していました。
これをさらに理解するために、彼らは、提供されたいくつかの例について、問題の記述とリストされた問題の間の重複を調べる簡単なスクリプトを作成し、ヒストグラムをプロットしました。
彼らは、GPT の問題解決能力を適切に評価するには、多段階問題の他の部分を問題の数ショットの例から完全に除外する必要があると主張しています。実際、これらの複数の部分からなる問題の解決策は、モデルに解決を求められた問題の別の部分を直接参照したり、その部分に対する答えを与えたりすることが多いことがわかりました。
それだけでなく、データをマイニングしたところ、質問全体が繰り返されている例も見つかりました。例えば:
GPT-4 自動スコアリングに問題があります
さらに、3 人は元の論文のオープンソースのスコアリング メカニズムにも問題があることを発見しました。
defrepeat_grading(input_path、output_path、num_experts = 3、num_fs = 3、most_recent_q = 0):
df = pd.read_csv(入力パス)
df = df.iloc[最新_最新_q:]
df.iterrows() のインデックス、行の場合:
print('質問を完了しています', インデックス)
question_output = row.values.tolist()
course_name = row['コース名']
質問 = 行['質問']
ソリューション = 行['ソリューション']
fs_qs = [[row['少ないショットの問題 1'], row['少ないショットの問題 1']], [row['少ないショットの問題 2'], row['少ないショットの問題 2']], [row[ '少数ショットの質問 3']、行['少数ショットの質問 3']]]
Expert = get_experts(コース名, 質問, 専門家数).split(', ')
s = [ラムダエキスパート: zero_shot_response(質問, エキスパート),
ラムダエキスパート: some_shot_response(エキスパート、質問、fs_qs)、
ラムダエキスパート: some_shot_response(エキスパート、質問、fs_qs、True)
]
critiques = [["前の回答を確認し、回答の問題点を見つけてください。", "見つかった問題に基づいて、回答を改善してください。"], ["次の間違った回答についてフィードバックをお寄せください。","このフィードバックを受け取った、もう一度答えてください。"]]
専門家の中の専門家向け:
print("エキスパートの使用", エキスパート)
question_output.append(エキスパート)
クリティカル = 真
s の場合:
_response = (expert) # 新しい ChatCompletion.create を呼び出します
_grade = Grade(course_name, question, solution, _response) # 解答と解答を比較する GPT-4 自動採点
question_output+=[_response, _grade]
正しい場合(_grade):
crit=False
壊す
クリティカルの場合:
批評の中の批評のために:
crit_response = self_critique_response(expert, course_name, question, question_output[-2], critique) # 新しい ChatCompletion.create を呼び出します
crit_grade = Grade(course_name, question, solution, crit_response) # 解答と解答を比較する GPT-4 自動採点
question_output+=[crit_response,crit_grade]
正しい場合(crit_grade):
壊す
repeat_grading('MIT_test_set.csv', 'MIT_test_set_graded.csv')
コードでは、採点のプロセスに重大な問題があることがわかります。論文は、a) 元の質問、b) 解決策、c) GPT 独自の回答を含む GPT-4 で評価およびチェックされます。グレーディングのパラメータ。
より技術的な分野では、GPT には暗黙の誤解が含まれる可能性が高く、この自動スコアリングは「自己欺瞞」の結果を招く可能性が高くなります。
また、連結は最近の GPT 論文の多くで一般的な手法ですが、ここではデータ漏洩の可能性が大いにあります。各レベルは、グラウンド トゥルースに基づいたバイナリ情報を提供するだけでなく、正しい答えに到達するまで続行されます。
作成されたものには実際の答えは表示されませんが、特にテスト セットの 16% を占め、試行回数が無限にある多肢選択問題の場合は、正解に到達するまでフォームを再生するだけで十分です。 (ほぼ) 正しい答えが表示されることが保証されます。
これは、誰かが解答用紙を持って、テストを受ける生徒に答えが正解か不正解かを伝え、正解が得られるまで生徒に思い出させ続けるようなものです。
要約
ブログの最後に3人はこう書いている。
参考リンク: