「学習する」とはどういうことか
機械学習という言葉の「学習」とは、具体的に何をしているのでしょうか。身近な例で考えてみましょう。
あなたが「写真を見て、その人のだいたいの年齢を当てるゲーム」をやるとします。最初は勘で答えますが、答え合わせのたびに「実際の年齢はもっと上だった」「もっと下だった」と教えてもらえます。これを何百枚も繰り返すうちに、あなたは自然と「シワの感じ」「髪型」「服装」などから年齢を推測するコツを、自分の中で少しずつ調整していくはずです。
機械学習の「学習」も、これととてもよく似た仕組みです。
- データ(写真)を見て、予測(年齢)を出す
- 正解(実際の年齢)と比べて、どれくらいズレていたかを確認する
- ズレが小さくなるように、予測のやり方を少しだけ調整する
- これを大量のデータで何度も繰り返す
この「ズレを確認して、少しずつ調整する」という部分を、コンピュータが自動的に、かつ人間よりずっと大量のデータと回数で行います。ズレの計算や調整の詳しいやり方(損失関数・勾配降下法と呼ばれるもの)は、数学の単元で改めてじっくり扱います。今は「間違いをもとに、少しずつ賢くなっていく」というイメージを持てれば十分です。