機械学習とは

1.機械学習の概要

図1:機械学習とは

機械学習とは、AI(人工知能)一種で、コンピューターに人間と同様の知能を持たせるための技術のことを言います。機械学習では入力データを数学的処理手順(アルゴリズム)に基づき、そのデータの特徴を捉えて法則(モデル)化を行います。そしてその法則(モデル)を新しい入力データに対して再現することで、予測や意思決定を行うことが可能となります。

2.機械学習の原理

図2:機械学習の原理

機械学習の原理は、先ず大量の入力データからそのデータの規則性(特徴)を抽出し、数式(モデル)化を行います。このプロセス(過程)を「学習」といいます。次に学習過程で作成した数式モデルに新しいデータを入力することにより、予測を行います。このプロセス(過程)を「推論」と言います。各プロセス(過程)で行われる数学的処理の手順(アルゴリズム)は特定の問題を解く手順を、単純な計算や操作の組み合わせとして明確に定義し、コンピューターにプログラミングすることにより実行するものです。目的によってアルゴリズムを使い分けることで期待通りの結果を得られることができます。
代表的なアルゴリズムは以下です。

表1:数学的処理手順(アルゴリズム)の代表例

表中「4ニューラルネットワーク」のディープラーニング(深層学習)は、機械学習の中核をなすアルゴリズムになるのでもう少し解説します。一言でいうと、「ニューラルネットワークの中間層を深めたもの」です。ニューラルネットワークの中間層を増やして複数列を作り、多層化することで、情報伝達と処理の増加、特徴量・汎用性・予測の精度を向上させたのがディープラーニングです。3つの代表的な手法があります。

  1. CNN(畳み込みネットワーク) 最もよく使用されているネットワーク構造です。「畳み込み層」と「プーリング層」で構成され、畳み込み層は画像の局所的な特徴を抽出して際立たせ、プーリング層は局所的な特徴をまとめてフィルタリングし、分析します。これによって、画像の特徴を抽象化し、パターン学習を進めていきます。動画や音声の認識ができないというデメリットはありますが、画像の識別/認識が早く、幅広い分野で利用されています。
  2. RNN(再帰型ネットワーク) 音声データのような可変長の時系列データをニューラルネットワークで扱うため、隠れ層の値を再び隠れ層に入力するというネットワーク構造を持ちます。時系列データの学習や自然言語処理分野で利用されています。
  3. LSTM法(Long Short Term Memory)RNNのデメリットを解消した、長期の時系列データを学習することができるモデルです。自然言語分野での処理に活用されています。このアルゴリズムでは画像からのキャプション生成や自然なテキストの読み上げが可能です。加えて動画をリアルタイムで分析して字幕を自動で表示すこともできます。

3.機械学習の用途

機械学習は、さまざまな用途に応用されています。以下に、代表的な例を挙げます。

表2:機械学習の用途

以上のように、機械学習は多くの分野で活用されており、社会に大きな影響を与えています。今後も、機械学習の技術は進化し続け、新たな用途が生まれると考えられます。

4.機械学習の種類

機械学習には大きく分けて3つの種類があります。それぞれの特徴と応用例を紹介します。

図3:教師あり学習

まず、教師あり学習という種類があります。教師あり学習とは、入力データとそれに対応する正解データ(ラベル)を用いて、コンピューターに予測モデルを学習させる方法です。例えば、画像に写っている楽器の種類を判別するタスクでは、画像が入力データで、楽器の種類が正解データになります。教師あり学習には、分類や回帰などの問題を解くことができます。教師あり学習の応用例としては、スパムメールの検出や顔認識、音声認識などが事例として挙げられます。

図4:教師なし学習

次に、教師なし学習という種類があります。教師なし学習とは、入力データだけを用いて、コンピューターにデータの構造やパターンを発見させる方法です。正解データは与えられません。例えば、商品の販売データから同時購買される商品グループを見つける分析では、販売データが入力データになります。教師なし学習には、クラスタリングや次元削減などの問題を解くことができます。教師なし学習の応用例としては、商品セグメンテーションや異常検知、画像圧縮などが事例として挙げられます。

図5:強化学習

最後に、強化学習という種類があります。強化学習とは、エージェントと呼ばれる行動主体が環境と相互作用しながら、報酬と呼ばれる目標値を最大化するように行動方策を学習する方法です。例えば、チェスや将棋などのゲームでは、エージェントは自分の手番で駒を動かす行動を選択し、勝利すれば報酬を得ます。強化学習には、探索と利用のトレードオフや遅延報酬などの問題に対処することができます。強化学習の応用例としては、自動運転やゲームAIなどが事例として挙げられます。

以上が機械学習の種類についてのまとめです。機械学習は多様な分野で活用されており、今後もさらなる発展が期待されます。

5.機械学習の利点と欠点

機械学習には多くの利点がありますが、同時に欠点も存在します。
機械学習の利点は、人間が行うことが困難な複雑な問題を解決することができることです。例えば、自然言語処理、画像分析や売上/在庫予測などの分野では、機械学習の高い精度によりビジネス効率を大幅に向上させています。また、人間の能力や時間を節約することもできます。例えば、自動運転や音声アシスタントなどの分野では、人間の負担を大幅に軽減しています。

逆に欠点としては、品質の高いデータや適切なアルゴリズムが不可欠です。データが不足したり偏ったりした場合、機械学習は正しく学習できなかったり誤った結果を出力する恐れがあります。また、アルゴリズムが複雑すぎたりブラックボックス化したりした場合、人間の理解や説明が困難になります。さらに、倫理や法律の問題を引き起こすこともあります。例えば、プライバシー/セキュリティの侵害や差別/偏見の拡大などのリスクもあることを十分認識すべきです。

6.機械学習のロボットへの利用

機械学習は、ロボットにとっても非常に有用な技術です。なぜなら、ロボットは、人間のように柔軟に対応できるようになるためです。例えば、機械学習を用いたロボットは、画像や音声などのセンサー情報を処理して、物体を認識したり、言語を理解したり、対話したりすることができます。また、機械学習を用いたロボットは、自らの行動や環境の変化からフィードバックを得て、最適な行動を選択したり、新しいスキルを獲得したりすることができます。以下は自然言語処理、画像分析および音声分析を活用したロボットアプリの想定例です。独り暮らしの老人家庭において、①会話(思い出話)、②ロコモ体操、③音声注文サービス、④安否確認機能を提供するものです。

図6:ロボットへの利用(想定例)

今後、機械学習やロボットの技術が進化することによりさまざまな分野で応用事例が増えることが大きく期待されます。

【(著) Alto Software株式会社】