2025年2月6日木曜日

四則演算と推論AI

今あるAIは単純な計算が苦手だという説がある。例えば,9.11と9.8の大小関係を間違うとか,桁数が多い四則演算ができないとかいわれる。そこで試してみた。
問題は,「135797531*246808642-98765432123456789 = -65249427910393887」だ。
被乗数9桁,乗数9桁,途中の積は,33516004213062902であり17桁ある。

(1) Excel
数表示を会計にする。引く数の98765432123456789 を入力した段階で 98765432123456700 に丸められてしまう。結果は, ¥ -65,249,427,910,393,800 と不完全なものにしかならない。

(2) Mathematica
Timing[135797531*246808642 - 98765432123456789] → {0.000021, -65249427910393887}
答えは21μsで正解が得られる。これが Julia ならば,1μs未満である。
もちろん,macOSのコマンドラインのbc -l でも一瞬で正解がでてくるのだ。

(3) ChatGPT 4o
 "The result of the calculation is −65,249,427,910,393,887. ​​"
分析を表示させると,これはpythonに計算を投げている。正しい答えが一瞬で得られた。

(4) ChatGPT o3-mini-high
この推論モデルでは思考に21秒(推論に35行)かかっている。計算を簡単にするため?乗数を246808642=246000000+808642 と分割してそれぞれの掛け算した結果を後に合わせている。
引き算の部分でも,33516004213062902を33000000000000000 と 516004213062902 に分割して処理するのだ。ご苦労様。
 「このように、与えられた式の計算結果は -65,249,427,910,393,887 となります。」
あってるよ。

(4) Gemini 2.0 Flash
一瞬で計算が拒否された。
 "The data_analysis library is not useful for this type of queries."

(5) Claude 3.5 Sonnet
 Let me calculate this multiplication and subtraction step by step:
 First, I'll multiply 135797531 and 246808642
 135797531 * 246808642 = 33,516,832,759,528,762
 Then I'll subtract 98765432123456789 from the result
 33,516,832,759,528,762 - 98,765,432,123,456,789 = -65,248,599,363,928,027
 The final answer is -65,248,599,363,928,027.
答えは一瞬ででてきたものの,有効数字上4-5桁しか正しくないですよ。

(6) DeepSeek R1
221秒考えていた。推論に880行ほど費やしている。もうだめかと思った。
どうやら,a = 135,000,000,b = 797,531,c = 246,000,000,d = 808,642,So (a + b)(c + d) = ac + ad + bc + bd を用いているらしいが,思考の過程をフォローするのは面倒すぎる。
 "The final result of the expression is −65249427910393887"
答えは正しいぞ。

(7) Qwen2.5-Max :
  "The result of 135797531×246808642−98765432123456789 is: −65278419668870567"
掛け算と引き算の2段階に分けて答えはすらすらとでたが,有効数字3桁しか正しくない。

以上でした。ChatGPTはやはりお薦めかもしれない。



図:Imagen3 が描いてくれたマンガだが,あまりよくわからない。

0 件のコメント: