見出し画像

Googleの新しい言語モデルのFlan-T5のデモが公開されたので色々と質問してみた

 今月(2022年10月)、Google AIから新しい言語モデルのFlan-T5のデモが公開されたので、試してみました。

 FLANは、昨年10月に発表された、言語モデルを複数の指示タスクでファインチューニングすることによって、訓練データの少ないZero-shotやFew-shotでの汎化性能を改善する手法で、Fine-tuned Language Netの略です。
 今回のモデルは、ファインチューニングに使用する指示タスクを1,800以上に増やしたことと、思考の連鎖(chain-of-thought)データを強化したことなどが特徴です。


1.公開デモサイト

 以下の公開デモサイトで、Flan-T5と通常のT5モデルとの比較ができます。
 今回、Googleから5種類のFlan-T5モデルが公開されていますが、このデモでは、2番目に大きいFlan-T5-XLが使用されています。

 デモ画面は以下の図のようになっており、text欄に質問などを入力してSubmitボタンを押すと、Flan-T5と通常のT5モデルの回答がそれぞれ表示されます。

Hugging FaceのFlan-T5デモ画面

【参考】


2.簡単な質問

問:What day of the week is next Wednesday?
(水曜日の次は何曜日か?)
答:thursday(木曜日)※正解

問:Which is hotter in summer or winter?
(夏と冬はどちらが暑いか?)
答:summer(夏)※正解

問:In which country is the Crimean Peninsula located?
(クリミア半島はどこの国にあるか?)
答:ukraine(ウクライナ)※正解

※答が固有名詞でも小文字で表示される以外は特に問題ないですね。

問:Who is the current President of the United States?
(現在のアメリカ大統領は誰か?)
答:barack obama(バラク・オバマ)
※不正解、正しくはジョー・バイデン。

問:Who is the current Prime Minister of Japan?
(現在の日本の総理大臣は誰か?)
答:shinzo abe(安倍晋三)※不正解(正しくは岸田文雄)

※少し情報が古いようです。

3.歴史的な質問

問:When did the Roman Empire split into East and West?
(ローマ帝国が東西に分裂したのはいつか?)
答:410(410年)※不正解、正しくは395年。

問:When did the United States become independent?
(アメリカが独立したのはいつか?)
答:1776(1776年)※正解

問:When did the Battle of Sekigahara take place?
(関ヶ原の戦いが起きたのはいつか?)
答:1 january 1592(1592年1月1日)
※不正解、正しくは1600年10月21日。

問:What battle took place in China in 208 AD?
(西暦208年に中国で起きた戦いは何か?)
答:tiananmen square(天安門広場)※不正解、正しくは赤壁の戦い。

※歴史の年号は、あまり得意ではないようです。

問:Please elaborate on the details of the French Revolution.
(フランス革命の内容について詳しく説明してください。)
答: The French Revolution was a period of political and social upheaval
 in France that began in 1789 with the overthrow of the monarchy and the establishment of a republic.
(フランス革命は、王政打倒と共和制の確立とともに1789年に始まったフランスの政治的・社会的動乱の時代である。)※正解

問:Please elaborate on how China was changed by the Xinhai
 Revolution.
(辛亥革命によって中国はどのように変わったのか詳しく説明してください。)
答:The Xinhai Revolution, which took place in 1911, was a revolution
 that swept across China, transforming the country's political system and transforming the country's economy.
(1911年に起きた辛亥革命は、中国全土を巻き込んだ革命で、国の政治体制を一変させ、国の経済を大きく変貌させた。)※正解

問:Describe the details of the Battle of Sekigahara.
(関ヶ原の戦いの内容について説明してください。)
答:The Battle of Sekigahara was a battle between the Imperial Japanese
 Army and the Imperial Japanese Navy.
(関ヶ原の戦いは、日本帝国陸軍と日本帝国海軍の戦いである。)※不正解、正しくは徳川家康が率いる東軍と石田三成が率いる西軍の戦い。

※最後の質問以外は、ほぼ完璧な解答ですね。

4.科学的な質問

問:Please elaborate on the law of universal gravitation.
(万有引力の法則について詳しく説明してください。)
答:The law of universal gravitation states that all matter and energy is
 attracted to each other by the force of gravity.
(万有引力の法則とは、すべての物質とエネルギーは重力の力によって互いに引き合うというもの。)
※不正解、重力の力によって引き合うのは物質だけ。

問:When a heavy ball and a light ball are dropped simultaneously from
 a high place, which ball reaches the ground first? Give the rationale before answering.
(高いところから重い球と軽い球を同時に落とした時に、どちらの球が先に地面に着くか?根拠を述べてから回答してください。 )
答:The heavier ball has greater momentum and will fall faster. The
 lighter ball has less momentum and will fall slower. So the final answer is the lighter ball.
(重い球の方が運動量が大きく、速く落ちる。軽い球は運動量が小さく、ゆっくり落ちる。つまり、最終的な答えは軽い球である。)
※不正解、同時に地面に着く。

問:Is there anything faster than light? Give the rationale before
 answering.
(光より速いものはあるか?根拠を述べてから回答してください。)
答:The speed of sound is approximately 30,000 miles per second. Light
 is the speed of sound. So the final answer is no.
(音の速さ1秒間に約3万マイル。光は音速である。つまり、最終的な答えは、いいえ。)
※答えは正しいが、根拠は支離滅裂。音は秒速約0.2マイル、光は秒速約18.6万マイル。

問:Which of gold, silver, or copper floats on mercury? Give the
 rationale before answering.
(金、銀、銅の内、水銀に浮くものはどれか?根拠を述べてから回答してください。)
答:Mercury is a liquid at room temperature. Gold, silver, and copper are
 solids at room temperature. So the final answer is gold.
(水銀は常温で液体。金、銀、銅は室温では固体。つまり、最終的な答えは、金。)
※不正解、正しくは銀と銅。銀の比重(10.50)と銅の比重(8.96)は水銀の比重(13.55)よりも小さいので、銀と銅は浮き、金の比重(19.32)は水銀の比重より大きいので、金は沈む。

  ※科学は、あまり得意ではないようです。

5.算数の質問

問:Answer the following question by reasoning step by step. At first
 there were five passengers on the bus. Then two got off and three got on. How many passengers are currently on the bus?
(次の問いに、段階的に推論して答えなさい。最初、バスには5人の乗客がいた。その後、2人が降り、3人が乗ってきた。現在、バスには何人の乗客が乗っているか?)
答:After two passengers got off, there were 5 - 2 = 3 passengers on the
 bus. After three passengers got on, there were 3 + 3 = 6 passengers on the bus. Therefore, the final answer is 6.
(2人の乗客が降りた後、バスには5 - 2 = 3人の乗客がいた。3人の乗客が乗った後、バスには3+3=6人の乗客がいた。よって、最終的な答えは6人となる。)※正解。

問:Answer the following question by reasoning step by step. If 5
 children are given 3 pieces of candy each, how many pieces of candy are needed in total?

(次の問いに、段階的に推論して答えなさい。5人の子供に3個ずつのキャンディーをあげる場合、全部で何個のキャンディーが必要か?)
答:The total number of pieces of candy needed is 3 x 5 = 15 pieces.
 Therefore, the final answer is 15.

(必要なキャンディーの総数は3×5=15個。よって、最終的な答えは15個である。)※正解

問:Answer the following question by reasoning step by step. Each
 person eats 3 rice balls every day; if there are 6 people, how many days will it take to eat all 90 rice balls?

(次の問いに、段階的に推論して答えなさい。毎日、1人3個のおにぎりを食べる。6人の人がいた場合、90個のおにぎりを何日で全部食べてしまうか?)
答:Each person eats 3 rice balls every day, so if there are 6 people, they
 will eat 3 * 6 = 18 rice balls every day. To eat all 90 rice balls, it will take 90 / 18 = 9 days. Therefore, the final answer is 9.

(毎日1人3個のおにぎりを食べるので、6人いれば毎日3×6=18個のおにぎりを食べることになる。90個のおにぎりを全部食べるには、90÷18=9日かかる。よって、最終的な答えは9である。
)※不正解、正しくは5日。

問:Answer the following question by reasoning step by step. A can read
 120 pages per hour; how many hours and minutes would it take A to read a 500-page book?

 (次の問いに、段階的に推論して答えなさい。A君は1時間に120頁読むことができる。A君が500頁の本を読むのに何時間何分かかるか?)
答:A can read 500 / 120 = 5 pages per minute. So, it would take A
 5 * 120 = 600 minutes to read a 500 - page book. Therefore, the final answer is 600.

(A君は1分間に500÷120=5ページ読むことができる。つまり、A君が500ページの本を読むには、5×120=600分かかる。よって、最終的な答えは600である。)※不正解、正しくは4時間10分。

※簡単な計算はできますが、割り算は苦手です。また、少し複雑な文章題は混乱するようです。

問:Answer the following question by reasoning step by step. A crane
 has two legs and a tortoise has four legs. The total number of cranes and turtles is 5, and the total number of legs is 14. In this case, how many tortoises are there?

(次の問いに、段階的に推論して答えなさい。鶴の足は2本、亀の足は4本である。鶴と亀を合計すると5匹で、足の数を合計すると14本である。その場合、亀は何匹いるか?)
答:The total number of legs is 14 because 2 + 4 = 14. There are 5
 turtles because 5 - 1 = 5. There are 3 tortoises because 4 / 4 = 3. Therefore, the final answer is 3.

(2 + 4 = 14 なので、足の総数は 14 本。5 - 1 = 5なので亀は5匹。4 / 4 = 3なので亀は3匹。よって、最終的な答えは3匹である。)※不正確、正しくは2匹。∵すべて鶴と仮定すると、足は2×5=10本。実際の足の数との差が14-10=4本で、亀が1匹増えると足が4-2=2本増えるので、4÷2=2匹が答え。

問:Answer the following question by reasoning step by step. A takes 20
 days to do a certain job and B takes 30 days. how many days can A and B work together to do this job?

(次の問いに、段階的に推論して答えなさい。ある仕事をするのにAは20日掛かり、Bは30日掛かります。AとBが協力すると、この仕事を何日でできるか?)
答:A and B can work together for 20 + 30 = 50 days. Therefore, the
 final answer is 50.

(AとBは20+30=50日間、一緒に働くことができる。したがって、最終的な答えは50日である。)※不正解、正しくは12日。∵1/20+1/30=1/12

問:Answer the following question by reasoning step by step. What is
 the area of a circle with a radius of 1 cm?

(次の問いに、段階的に推論して答えなさい。半径が1センチの円の面積は?)
答:The area of a circle with a radius of 1 cm is 2 * 1 cm = 2 cm2.
 Therefore, the final answer is 2.

(半径1センチの円の面積は、2×1cm=2平方センチです。したがって、最終的な答えは2です。)※不正解、正しくは3.14平方センチ。

問:Answer the following question by reasoning step by step. In a right
 triangle, if the two sides flanking the right angle are 3 cm and 4 cm long, respectively, what is the length of the hypotenuse?
(次の問いに、段階的に推論して答えなさい。直角三角形において、直角を挟む2辺の長さがそれぞれ3センチと4センチのとき、斜辺の長さは何センチか?)
答:Let x be the length of the hypotenuse. The length of the two sides
 flanking the right angle is 3 + 4 = 7 cm. The hypotenuse is 7 cm long. Therefore, the final answer is 7.
(斜辺の長さをxとする。直角を挟む2辺の長さは3+4=7cm。斜辺の長さは7cm。よって、最終的な答えは7である。)※不正解、正しくは5センチ。

※中学受験レベルの問題は無理なようです。また、数学の基本的公式や定理を理解していません。

6.難しい質問

問:What can we do to prevent global warming?
(地球温暖化を防ぐには、どうすればよいか?)
答:We can reduce our carbon footprint by driving less and using less
 energy.

(私達は、車の運転を減らし、エネルギーの使用を減らすことによって、二酸化炭素排出量を減らすことができる。)
※正解。もう少し詳しい説明をもらいたかったのですが、回答が長くなると文章が崩れて、意味が通らなくなるようです。
 
問:How can we eliminate war from the world? Give the rationale before
 answering.

(世界から戦争を無くすにはどうすればよいか?)
答:We need to stop blaming each other for the wars.
(私達は、戦争について互いに非難し合うのをやめなければならない。)
※一応正解。とりあえず意味は通じますが、質問に対する直接の回答にはなっていません。

問:What is the afterlife like?
(死後の世界はどのようになっているのか?)
答:heaven(天国)
※正解。もう少し詳しい説明をもらいたかったのですが、回答が長くなると文章が崩れて、意味が通らなくなるようです。

問:When will the Singularity, in which AI surpasses human intelligence,
 arrive? Give the rationale before answering.

(AIが人間の知能を超えるというシンギュラリティは、いつ来るのか?根拠を述べてから回答してください。)
答:The Singularity is the point at which artificial intelligence surpasses
 human intelligence. The Singularity is predicted to occur in the year 2100. So the final answer is 2100.

(シンギュラリティとは、人工知能が人間の知能を超える時点のことである。シンギュラリティは2100年に起きると予測されている。つまり、最終的な答えは2100である。)
※一応正解。回答の根拠は不十分だと思いますが。

問:How can we ensure that all people live happily?
(全ての人が幸せに暮らせるようにするには、どうすればよいのか?)
答:We must ensure that all people have access to education and health
 care.

(すべての人が教育や医療を受けられるようにしなければならない。)※正解

※一応矛盾なく答えていますが、表面的な浅い考察です。

7.まとめ

① 全体的な印象

 皆さんは、Flan-T5の回答を見て、どう感じましたか。とてもよく回答できていると感心した人も、まだこんなものかと幻滅した人もいるでしょう。
 今回使用したデモでは、同じ質問に対する通常のT5モデルの回答も表示されますが、そちらの回答は、ほとんど質問の意味を理解できておらず、全く質問への回答になっていませんでした。
 それと比べると、Flan-T5の方は、回答がおかしい場合でも、質問で何を聞かれているのかは、大体理解できており、格段の進歩が見られます。

 全体の印象としては、掛け算を習い始めた小学1、2年生程度の知能があるように見えます。
 単純な質問には答えられますが、複雑な質問だと混乱し、また、歴史背景、科学の基礎概念、数学の定理などの基礎的な知識が欠けているようです。

② 質問の内容ごとの評価

 質問の内容ごとに見ていくと、「2.簡単な質問」については、単純な日常的知識については、理解できているように見えます。
 ただし、過去の情報で学習しているため、現在はどうなっているのかという質問には上手く答えられません。この点を改善するには、AIが時間経過の概念を理解する必要があると思われます。

 「3.歴史的な質問」については、年号の数字の意味がよく分かっておらず、歴史上の事件と年号を結び付けて理解できていないようです。
 一方で、有名な世界史上の事件の説明については、どこかにまとめられた情報を記憶しているようで、かなり正確に回答することができています。
 しかし、日本の歴史については、訓練データが足りなかったのか、あまり詳しくはないようです。

 「4.科学的な質問」については、科学的な現象や法則の説明については、どこかにまとめられた情報を記憶して、ある程度回答することができますが、その知識を応用して問題を解くことは難しいようです。
 また、重力や密度など、科学の問題を解くために必要な基礎的な知識の理解が欠けています

 「5.算数の質問」については、単純な足し算、引き算、掛け算の計算はできますが、割り算は怪しいようです。また、複数の計算を要する少し複雑な文章題を解くことは難しいようです。
 つるかめ算、仕事算などの中学受験レベルの文章問題を解くことは、まだ無理なようです。問題の解法をきちんと理解せずに、解法をうろ覚えで真似して解いている算数の苦手な小学生のような回答です。
 また、円の面積を求める公式や三平方の定理などの数学の基礎的な知識の理解も欠けています

 「6.難しい質問」については、もう少し深く考察して回答することを期待していたのですが、どこかで聞いてきた情報を適当につなぎ合わせたような浅い回答を返すことしかできないようです。

③ AIの進化についての考察

 Googleが同時に発表した論文によると、大規模言語モデルのPaLMにFlanを導入したFlan-PaLMも開発しており、そのモデルは公開していませんが、Flan-T5以上の性能を発揮しているようです。
 Flan-PaLMでは、どのくらい進化しているのか、Flan-T5の回答と比較してみたいところです。

 今後、こうした言語モデルはどのように進化していくのでしょうか。現在は、小学1、2年生レベルだとしても、AIの進化のスピードはとても速いので、あっという間に一般的な大人の能力を超えてしまうかもしれません

 今回の実験を通して、現在の言語モデルの欠点が2つ見えてきました。

  1.  質問への回答に必要な基礎的な知識が足りない。

  2.  知識を個別の問題に応用することができない。

 科学や数学の問題は、重力、密度などの基礎概念や、面積の求め方、三平方の定理などの基本的な公式や定理を知らなければ、解くことができません。
 また、歴史の問題についても、どの時代にどのようなものや組織が存在していたかという時代背景を知っておく必要があります。
 こうした知識を獲得するには、やはり大量に雑多な情報を集めて学習するだけでは難しく、人間が学校で学ぶように体系的に学習し理解していく必要があります。
 今年(2022年)6月にGoogleが発表したMinervaなど、数学や物理などの科学的問題を解くことができるAIも出てきていますが、このあたりの知識の習得は、どのように行っているのでしょうか。
 いずれにせよ、汎用的なAIに必要とされる基礎的知識は膨大なので、人間が体系的に知識を整理するのではなく、AIが自動的に知識を体系的に理解していけるような仕組みが必要になると思われます。

 現在のFlan-T5などのAIは、単純な日常的知識を理解できるようになってきています。また、歴史的事件や科学用語などの説明もできるようになってきましたが、その理解は非常に表面的で、まとめられた情報をコピペや要約したようなものであり、その知識を他に応用することは、まだあまりできていません

 知識の応用に関しては、思考の連鎖(chain-of-thought)に注目しています。
 思考の連鎖とは、数学・科学の文章問題や順序立てて考えれば解ける常識問題などの段階的な推論問題を複数ステップに分解することによって解けるようにする手法です。

 具体的には、段階的な推論を求める質問と途中の思考過程を示すモデル回答のペアデータでファインチューニングすることにより、こうした推論問題を解けるようにするもので、Flan-T5も、こうしたファインチューニングが行われています。
 上記の質問の例で言うと、「Answer the following question by reasoning step by step.(次の問いに、段階的に推論して答えなさい。)」や「Give the rationale before answering.(回答前に根拠を挙げなさい。)」などが思考の連鎖を意識した質問に当たり、これらの文を質問に含めると、Flan-T5が回答の際に途中の思考過程を示してくれます。

 実験の結果としては、数学や科学の問題向けに特化して訓練したものではないので仕方がないのかもしれませんが、一部の単純な質問以外には、あまり正確な回答が得られませんでした。
 思考の連鎖の具体例としてよく見かける、複数の乗り降りがあった後のバスの乗客の人数を答える問題は、よく訓練されているのか、正確に答えられていましたが、その他の段階的な推論を必要とする数学や科学の問題は、ほぼ全滅でした。
 表面的に模範解答を真似てはいるが、内容を理解しておらず、論理が滅茶苦茶という例が多くみられました。

 また、90÷18=9や2+4=14など簡単な計算が誤っている例がいくつもありました。ディープラーニングは計算が苦手なので、計算が必要な時は、専門のサブルーチンに回した方がよいのかもしれません。
 「6.難しい質問」の場合は、段階的な推論を求めると、回答の文章が崩れる場合が多く見られました。回答の文章が崩れると、同じ単語や文章を何度も繰り返すようになります。
 現在の思考の連鎖の手法では、この辺りが限界なのかもしれません。

 ここまでの記述では、思考の連鎖の手法を批判しているように見えますが、実際には、筆者は思考の連鎖にとても期待しています。
 推論の内容をもっと深く理解できるような工夫が必要かもしれませんが、さらに大規模に思考の連鎖のトレーニングやファインチューニングを行えば、高い性能を発揮することができるのではないかと期待しています。

 思考の連鎖を強化して、AIの推論能力を高めることができれば、学習によって獲得した知識を初めて遭遇した問題に応用できる汎化性能を高めることにもつながり、将来的には、汎用人工知能の実現も見えてきます。
 こうしたAIの推論能力の向上は、今後、ますます重要性が増してくる課題だと思われます。 

いいなと思ったら応援しよう!