機械学習についてまとめてました。

近年IT技術の進歩にが進み人工知能が話題です。テレビをつけると人間対AIの勝負をしておりAIの方が優秀じゃないかとまで言われる始末です。

ただやはり複雑なことでは人間の脳の方が優秀でAIが人に勝つまで発展するには、まだ10年以上かかると言われていました。2015年以前のAIはアマチュアの知能レベルに達するのがやっとでした。

AIのこの急激な発展を支えたのが、AIに「学習」させる技術の進化だと言われています。そのAIを学習させると言うときに「機械学習」と「ディープラーニング」と言う言葉が出てきました。この記事では「機械学習」と「ディープラーニング」がどのような意味か、実際にはどのように使用しているのか紹介していきます。

AIを学習させるとは

AIに「学習」をさせるとはどういうことでしょうか?例えば人間だと猫について一度学習すると特徴を理解し、類似する生き物ならば猫と断定することは難しいことではないのですが、コンピュータではそうはいきません。なのでAIに学習させて自身で猫がどの生き物か判断できるように学習することです。

AIの学習のための技術には、大きく分けて2種類の技術があります。「機械学習」と「ディープラーニング(深層学習)」です。システムの効率化やデータ分析の高速化などにも使われるこれらの技術はどのようなものなのでしょうか。

機械学習の意味とは

機械学習と言っても実はディープラーニングとまったくの別物というわけではありません。大きなくくりで言うとほぼ同じ意味になります。ネットの記事やテレビでは機械学習、ディープラーニングをあわせて機械学習またはAIと読んでいますね。前提として「AI > 機械学習 > ディープラーニング」のイメージは持っておきましょう。

機械学習はデータの中のどの要素が結果に影響を及ぼしているのか(特徴量という)を人間が判断、調整することで予測や認識の精度をあげています。同技術は、開発者があらかじめすべての動作をプログラムするのではなく、データをAI自身が解析し、法則性やルールを見つけ出す特徴を持っています。つまり、「トレーニング」により特定のタスクを実行できるようになるようなAIになります。

例えば画像認識の例ですと、タグという情報が付いてある画像を大量にAIに記憶させます。そのタグの形で種類を識別しなさいと命令をすれば類似する画像が出たときに識別できると言うことです。この機能は迷惑メール対策などに使用されています。

ディープラーニング

先ほどから何度も出てきているディープラーニングとは以前までの機械学習の技術を発展させたものになります。従来の機械学習との大きな違いは、情報やデータを分析する際に使う枠組みがかなり異なっていることです。これは、人間の神経を真似て作ったニューラルネットワークで、コンピューターによるデータの分析と学習を強力なものに仕立て上げているからです。

前述で説明した機械学習の学習の仕方では大量の画像にタグをつけ人間がどこに注目して判断するかを指示して学習させていたものに対して、ディープラーニングではデータの中に存在しているパターンやルールの発見、特徴量の設定、学習なども機械が自動的に行うことが特徴です。人間が一つ一つ判断する必要がないのが画期的です。

例えるとそれぞれの画像の注目すべきところを人間の脳と同じようにAIが自分で学習し、「目の付けどころ」を判定して性能を向上させていきます。

「目の付けどころ」を自動で判定する機能が従来の機械学習になかった要素であり利便性が高い効果になります。例えばショッピングサイトでは、服の好みをAIが学習し人その利用者がクリックする頻度などを判定し、利用者の好みに合いそうな商品を絞り込んで提案してくれる機能などを実装しています。

機械学習とディープラーニングの使い分け

機械学習はある程度人間のさじ加減で認識をコントロールすることができますが、大量の画像やデータを学習させる必要があります。ディープラーニングは場合によって思わぬ方向に学習が進む可能性がありますが、何のデータを読み込ませるかを慎重に選ぶことにより、より効率的にコンピューターが学習すると期待する向きもあり人間では認識できない部分でも判断基準にすることができるようになります。

まとめ

今や当たり前のように使用している画像検索やネットショッピングの商品おすすめ機能などに機械学習の技術が使われておりIT技術の成長の速さに驚かされます。

機械学習とディープラーニング、両方のメリットデメリットを理解しておくと今後の役に立つことでしょう。機械学習やディープラーニングはこれからもどんどん発展していく分野なので継続してこれらの知識を吸収していってください。