【機械学習】学習の手法:教師あり学習・教師なし学習・強化学習の特徴や違い
2022.04.10 /
本記事では機械学習における学習の手法について解説していきます。
機械学習の学習には大きく分けて「教師あり学習」と「教師なし学習」、「強化学習」の3種類があります。機械学習を利用したい用途によって、学習方法を使い分けていきます。
それぞれの学習方法の特徴や利用用途、利用実例、準備する学習データなどの理解を深めていきましょう。
機械学習の学習
機械学習とは
機械学習とは人工知能(AI)の分野の一つであり、人間の学習能力をコンピューターで実現するための手法です。
世界で初めて機械学習のプログラムを開発したアーサー・サミュエルは「明示的にプログラムしなくても学習する能力をコンピューターに与える研究」と定義しています。
今では機械学習を利用したシステムは身近なものとなっており、ビジネスでも非常に注目されている分野です。
機械学習について詳しくは以下記事をご参照ください。
機械学習とは?特徴や使用用途(ビジネス)、利用例について
機械学習の学習とは
機械学習は以下の流れで開発が進みます。
- データの収集
- データの整形(前処理)
- データを学習(機械学習)
- 学習済みモデルが生成される
- 学習済みモデルを評価(精度評価)
- 学習済みモデルをシステムに組み込む
機械学習には大量の学習データが必要になります。それらデータから法則やルールを見つけ出して、データの分類や将来の予測が可能になります。
つまり機械学習の学習とは、大量のデータが必要となり、それらデータの法則やルールを見つけ出すための手法と言えます。
学習はデータの数が多いほど制度が高くなります。機械学習での「データの収集」について詳しくは以下記事をご参照ください。
【機械学習】学習データの収集について:データセット、スクレイピング
学習によって導き出された規則やルールは「学習済みモデル」と呼びます。危害学習による予測プログラムや分類プログラムは、この学習済みモデルに未知のデータを与えて、結果を取得します。
機械学習の学習方法
機械学習には以下に記す3つの学習方法があります。
- 教師あり学習
- 教師なし学習
- 強化学習
各学習方法によって特徴や利用用途、準備する学習データなど様々な点で異なります。次項より各学習方法について見ていきましょう。
教師あり学習
教師あり学習とは、学習データと答えとなる正解(ラベル)を与えて学習を行う手法です。学習データと正解(ラベル)から規則やパターンを見つけ、未知のデータから正解を導き出す学習済みモデルを生成します。
例えば手書き文字の文字認識では、手書き文字のデータと、そのデータが表している文字(正解)をセットで学習させるということです。
教師あり学習は文字認識のほかに画像の分類やデータの予測、スパムメールの判定など多くのシステムで利用されています。
近年注目を浴びているディープラーニング(深層学習)は教師あり学習を発展させたものです。
教師あり学習の利用は以下の2種類に分けられます。
- 分類
- 回帰
分類
分類とはデータがどのグループに所属するかクラス分けするのに利用します。分類は幅広い用途で利用されています。
分類は以下のような利用用途に使われます。
- 文字認識
- 画像の分類
- メールの分類(悪意のあるメールか否か)
- 正常か否かの判断
- YesかNoの二値分類
分類で使用されるアルゴリズムには決定木やランダムフォレスト、ロジスティック回帰、K近傍法などがあります。
回帰
回帰は連続する数値の傾向から将来を予測するのに利用します。
回帰は以下のような利用用途に使われます。
- 気象分析
- 株価の予測
- 売上の予測
回帰で使用されるアルゴリズムには線形回帰などがあります。
教師なし学習
教師なし学習とは、学習データに正解(ラベル)がなく、データのみが与えられる手法です。学習データに正解を与える「教師あり学習」とは対をなす学習手法です。
教師なし学習は正解・不正解がない問題に対して、それの特徴やパターンを見つけ出すことを目的とします。
教師なし学習の利用は以下の2種類に分けられます。
- クラスタリング
- 次元削減
クラスタリング
教師なし学習では正解がないため、与えられたデータを何かしらの観点に基づいてグルーピング化します。このグルーピング化することを「クラスタリング」と呼びます。
つまり「教師なし学習」は学習データを似たような(近い値の)データをグループ分けするということです。
教師あり学習と異なり答えがないので、データをグループ分けしてもその意味を理解できないため、最終的には人間が解釈する必要があります。
クラスタリングのアルゴリズムにはK-means法などがあります。
次元削減
次元削減ではデータの特徴やルールを見つけ出す分析手法です。データの次元数を減らして、そのデータの特徴を見つけ出すことを目的としています。
強化学習
強化学習とは行動によって得られる報酬が最大化するように、繰り返し試行錯誤して学習していく手法です。
例えば囲碁や将棋、チェスなどのAIプログラムを作成するのに強化学習は利用されています。
教師あり学習や教師なし学習とは大きく異なり、静的なデータセットを必要としません。ルールや環境(状態、行動、価値)を与えて、そこから試行錯誤することで学習していきます。
ゲームのAIプログラム以外ではロボットの制御や自動車の自動運転といった分野で活躍しています。