文系・非エンジニアのための基礎理論 |【ゼロから分かるAI入門】#2:AI開発におけるデータ・モデル・学習・タスク
前書き:このシリーズについて
「文系・非エンジニアのための基礎理論」では、“知らなくても分かる”をコンセプトに、専門知識が無くても技術的な話をそこそこ深く理解できるような記事を作成していきます。
このシリーズでは以下のことをお約束します!
- 事前に押さえておくべき知識があれば冒頭でご紹介します
- 非日常的な英単語や専門用語、義務教育に登場しない数学記号は注釈無しに使いません
こんな方に是非!
- 会議などで技術的な話になるとついていけない
- 専門書を読むと英単語や専門用語や数式がハードルになる
- とにかく簡単に知りたいけど、あまり浅い理解では満足できない
この記事の要点
この記事ではAI開発におけるデータ、モデル、学習、タスクはどういったものが望ましいのかを、人間の試験勉強に例えてざっくり説明しています。
- データは十分に、偏りなく、分かりやすく一貫性のあるものが良い
- モデルは適度に賢くタスクに向いているものが良い
- 学習は過不足なく、順序立てられたものが良い
- タスクは範囲が明確で、具体的かつ単純な解法が良い
詳しい話1:データ(教科書)のポイント
まずはデータについてです。AI開発におけるデータは、人間の試験勉強で言うと教科書のようなものです。
十分に、偏りなく、一貫性のあるものが望ましく、ページが足りなかったり、内容に偏りがあったり、分かりづらいと困ってしまいます。
次の具体例でイメージしていきましょう。
データが不足していると…
例えば、教科書の内容が足し算ばかりだったとします。すると、試験で引き算の問題が出ると対応できません。教科書に、試験を解くための必要な内容がしっかりと載っていることはとても大切です。
これはAI開発でも同様で、学習元になるデータはタスクに沿った十分な内容が必要です。
データが偏っていると…
例えば、教科書の内容の大部分が足し算で、引き算のページはほんの少しだったとします。試験が足し算の内容だけなら良いですが、引き算の問題が出るとそちらはまだ勉強不足でうまく回答できません。教科書に、試験を解くための内容が偏りなく載っていることはとても大切です、
これはAI開発でも同様で、学習元になるデータはタスクに沿った偏りのない内容が必要です。
データがバラバラだと…
例えば、教科書の内容に一貫性がなく、足し算と引き算が混在していたり、表記が統一されていなかったとします。そうすると勉強しようにもなかなか十分な理解に辿りつけません。
これはAI開発でも同様で、学習元になるデータは一貫性のある内容が必要です。
データ(教科書)のポイントまとめ
このように、AI開発におけるデータは、十分で、偏りなく、一貫性のあるものが望ましいです。
詳しい話2:モデル(受験者)のポイント
次にモデルについて見ていきましょう。AI開発におけるモデルは、人間の試験勉強で言うと受験者のようなものです。
適度に賢く、タスクに対する適性があり、同様のタスクに対する経験があるものが望ましく、異常に賢すぎたり、タスクに不向きだったり、同様のタスク経験が無いと上手く精度が出ません。
次の具体例でイメージしていきましょう。
モデルが賢すぎると…
例えば、必要以上に多くの物事を考えられる受験者がいたとします。すると単純な計算問題ひとつ解くにしても、室温や部屋の外の雑音など、細かな変化まで気にしてしまい、本来解くべき問題の本質を見失ってしまいます。
これはAI開発でも同様で、学習を行うモデルには適度な賢さが必要です。
モデルがタスクに不向きだと…
例えば、暗記は得意だけれど計算は苦手な受験者がいたとします。すると計算問題に関してはいくら勉強しても苦手を完全に克服することは難しく、さらに言えば初めから計算が得意な受験者にはなかなか追いつくことができません。
これはAI開発でも同様で、学習を行うモデルにはタスクに対する適性が必要です。
モデルがタスクに対して経験不足だと…
例えば、人生で一度も計算問題を扱ったことが無い受験者がいたとします。すると簡単な計算問題ひとつ習得するにも、そもそも数字の概念から学ぶ必要があるかもしれず、そう簡単には十分な学習を終えることができません。
これはAI開発でも同様で、学習を行うモデルには類似したタスクの経験が必要です。
モデル(受験者)のポイントまとめ
このように、AI開発におけるモデルは、適度に賢く、タスクに対する適性があり、同様のタスクに対する経験があるものが望ましいです。
詳しい話3:学習(勉強)のポイント
次に学習について見ていきましょう。AI開発における学習は、人間の試験勉強で言うと勉強のようなものです。
多すぎず、十分な量と、適切な順序が大切で、答えを丸暗記してしまうほどの過剰なものや、量が足りないもの、基礎や応用の順序が滅茶苦茶だとなかなか結果が出ません。
次の具体例でイメージしていきましょう。
学習が過剰だと…
例えば「1-1=0」という同じ問題を何度も何度も繰り返し解き続けたとします。すると、受験者の頭には「1-1=0」が完全に焼き付いてしまい、「1−1は?」という少し表現の違う問題が出た際、それが本質的には「1-1=0」と同じであることに気づかず、混乱してしまいます。
これはAI開発でも同様で、学習は多すぎない量が必要です。
学習が足りないと…
例えば、必要な勉強量をこなさないまま寝てしまったとします。すると、当然十分な理解が得られないままとなり、本番の試験問題には対応できません。
これはAI開発でも同様で、学習は十分な量が必要です。
学習順序がバラバラだと…
例えば、足し算や引き算を習得する前に割り算や平方根の計算も合わせて勉強してしまったとします。すると、難しい話に気を取られて簡単な話も習得が遅くなってしまいます。。
これはAI開発でも同様で、学習は基礎から応用にかけて順序立てられたものが必要です。
学習(勉強)のポイントまとめ
このように、AI開発における学習は、多すぎず、十分な量と、適切な順序が大切です。
詳しい話4:タスク(試験)のポイント
次にタスクについて見ていきましょう。AI開発における学習は、人間の試験勉強で言うと試験のようなものです。
範囲が明確で、具体的な問題で、単純な解法のものが望ましく、範囲が曖昧だったり、抽象的な問題だったり、複雑な出題形式だと困ってしまいます。
次の具体例でイメージしていきましょう。
タスクの範囲が曖昧だと…
例えば、引き算が出たかと思えば化学や歴史の問題も出題されたりと、試験の出題範囲が曖昧だったとします。すると受験者は何を勉強していいか分かりません。
これはAI開発でも同様で、タスクは範囲を明確にすることが大切です。
タスクが抽象的だと…
例えば、「一番イケてる数は?」のように、試験の問題や正解の基準が主観的だったり抽象的だったとします。すると受験者は何を根拠に回答していいか分かりません。
これはAI開発でも同様で、タスクは具体的なものが望ましいです。
タスクが複雑だと…
例えば、旗あげゲームのように、問題を解く手順が多く複雑だったとします。すると受験者はどうしてもケアレスミスが多くなってしまいます。
これはAI開発でも同様で、タスクは単純な解法のものが望ましいです。
タスク(試験)のポイントまとめ
このように、AI開発におけるタスクは、範囲が明確で、具体的な問題で、単純な解法のものが望ましいです。
まとめ:確認問題
この記事では、AI開発におけるデータ、モデル、学習、タスクという4つの要素について、人間の試験勉強に例えて詳しく見てきました。
以下の問題に即答できる方は、この記事の内容はバッチリです。
Q1. データが足りないとどういった問題が起きますか? ①出題範囲の勉強漏れ ➁どこを勉強していいか分からない ③ケアレスミスが増える
A. ①出題範囲の勉強漏れ
Q2. モデルが賢すぎるとどういった問題が起きますか? ①余計なことまで考えすぎる ➁出題範囲の勉強漏れが発生する ③問題文の意味が分からなくなる
A. ①余計なことまで考えすぎる
Q3. 学習が過剰だとどういった問題が起きますか? ①勉強不足で理解できない ➁類似した問題に対応できない ③基礎が抜け落ちる
A. ➁類似した問題に回答できない
Q4. タスクが複雑だとどういった問題が起きますか? ①勉強の効率が上がらない ➁手順が多く間違えやすい ③何を基準に答えるべきか分からない
A. ➁手順が多く間違えやすい
Discussion