機械学習は、データを分析して学習し、予測や意思決定を行うための重要な技術です。しかし、機械学習の能力や使用方法について十分に理解されていないことがあります。
そこで、本記事では、機械学習の主要な技術である「教師あり学習」と「教師なし学習:それぞれの特徴や違いについてご紹介します。各アルゴリズムの特性やメリットとデメリットを紹介しながら、機械学習の種類について詳しく掘り下げていきますので、ぜひご確認ください。
機械学習の種類とその特徴
機械学習と一口と言っても、現在ではさまざまな種類があります。その中でも「教師あり学習」と「教師なし学習」は非常に重要な手法です。ここで、教師あり学習と教師なし学習それぞれの特徴について確認しておきましょう。
教師あり学習とは
教師あり学習はラベル付きのトレーニングデータ(教師データ)を与え、次から与えられるデータとトレーニングデータを比べ、トレーニングデータに当てはまるかどうかを判断していく学習方法です。このラベルとはデータの特性(もしくは正解・不正解)が与えられ、それに伴って判断をしていくため教師あり学習と呼ばれています。
教師あり学習のメリットは下記のようなものがあります。
・予測精度が高い
・応用分野が幅広い
・予測結果が予想しやすい
一方で、教師あり学習は正解データを与えなければならないため、用意する手間やそもそも用意ができない可能性があるといったデメリットがあります。
教師なし学習とは
教師なし学習は与えられたデータから共通点などを見つけ、似ているものをまとめていく学習方法です。与えられたデータから自分で考えていくため、教師あり学習と違い正解データを与える必要がありません。
教師なし学習には下記のようなメリットがあります。
・正解データを用意する必要がない
・人間で把握できていなかった共通項の発見
・将来の予測にも利用が可能
しかし、教師なし学習は教師あり学習と比べると精度が低いことが多いです。また、なぜそうなったのか解釈が難しくなってしまう場合もあります。
各種類の主要なアルゴリズム
教師あり学習と教師なし学習にはそれぞれ異なったアルゴリズムが用いられます。正解データの有無だけでなく、適用するアルゴリズムによって出力に至るまでの流れも異なるため、アルゴリズムについてもしっかりと理解しておきましょう。
教師あり学習の主要アルゴリズム
まず、教師あり学習は目的として、分類、回帰、クラス分類、アンサンブル学習の4つがあります。そして、各目的で用いられる主要なアルゴリズムは下記のとおりです。
分類は名称のとおり、与えられたデータを分類していく手法です。与えられたデータがどのカテゴリー(属性)に属するかを人工知能が判断していきます。
回帰は与えられたデータの値を予測し、結果に対する原因を推測するものです。たとえば、宣伝広告費と来客数を数字に直し、宣伝広告費をかけると来客数が増えるかなどを考えていきます。
クラス分類は与えられたデータが複数のカテゴリーに属する場合、どのカテゴリーにもっとも属する度合いが高いかを判断していく技術です。アルゴリズムによって異なりますが、属する度合いや確立などで表現されることが多くなっています。
アンサンブル学習とは複数の学習モデルを組み合わせ、より高精度なものにする技術です。ただし、たくさん組み合わせれば良いといったわけではなく、目的にそって適切な学習モデルを選択しなければなりません。
①分類
・サポートベクトルマシン: 正解との外れ度を計算することで分類していくモデルであり、文書分類、画像認識、医療診断などに用いられる
・ランダムフォレスト: 複数の決定木を用いることで高い予測性能を持つモデルであり、株価予測や天候予測などに用いられる
②回帰
・線形回帰: 連続値の目標変数を予測するために使用され、経済予測、価格予測、生態学モデリングに用いられる
・決定木 : ある目的に対して細分化していくモデルであり、意思決定支援、医療診断、クレジットスコア予測に利用される
③クラス分類
・ニューラルネットワーク : 人間の脳を模したモデルであり、複雑なパターン認識、自然言語処理、画像認識、音声認識など幅広い分野で利用される
④アンサンブル学習: 精度の低い予測機を複数組み合わせることで精度の高いモデルを構築する手法
教師なし学習の学習アルゴリズム
教師なし学習は目的として、クラスタリング、次元削減、異常検知、モデル生成とされることが多いです。それぞれの目的で利用されるアルゴリズムには下記のようなものがあります。
クラスタリングはデータの中から似ているデータを集め、カテゴリー化していく学習モデルです。顧客情報を入れることでどのような顧客属性であると購入しやすいのかなどを考える際に用いられます。
次元削減はデータの次元を減らす技術です。機械学習は高度な情報を扱うことができますが、それでも情報すべてを扱えるわけではありません。そこで、データ量を削減することで機械学習がより効率的になされるようにしていくのです。
異常検知とはデータの中から異常なデータを検出する学習モデルです。ある1つのデータだけがその他のデータ群とかけ離れているときに異常と判断するなどのアルゴリズムがあります。
生成モデルは入力された情報を確率変数として扱うことで精度をあげる学習モデルです。たとえば、画像処理であれば、ある確率分布から生成された入力画像に対してそれがどのくらいの確率でクラスに当てはまるのかということを考えます。このとき、入力画像の確率分布をうまく求めることができれば、疑似的に入力画像に相当する画像の生成が可能になります。この画像をさらに識別モデルで解析するといった流れで効率よく処理をおこなっていくのです。
クラスタリング
・k-means:データをk個のクラス(種別)に分類するアルゴリズムであり、顧客分類や画像分類に用いられる
・階層クラスタリング:データをツリー構造で分類していくアルゴリズムであり、生物学的分類などで利用される
②次元削減
・PCA:データの情報を保ちながら新しい座標系を見つけ出す(次元を削減する)アルゴリズムであり、金融分析などで利用される
・t-SNE:高次元なデータと低次元なデータを確率分布で表現する手法であり、単語の類似性の可視化などで利用
③異常検知
・Isolation Forest:決定木を用い、データが孤立するまでの深さから異常値を推定する手法
④生成モデル
・GAN:偽物のデータを作るGeneratorをあえて組み込み、本物かどうかを判断するDiscriminatorの精度を上げていく手法
・VAE:確率的潜在変数を用いて空間をモデル化し、分布によって判断していく手法
このように目的によってさまざまな手法が提案されています。また、機械学習に関するアルゴリズムは近年でも新しいものが次々と出てきています。
機械学習を実施する際の注意点
機械学習は非常に便利な技術ですが、その分注意すべきポイントもいくつかあります。ここで注意点について確認しておき、実際に活用する際に効果的に利用できるようにしておきましょう。
アルゴリズム選択のポイント
まず、アルゴリズムそれぞれには適しているデータがあります。たとえば、画像データを処理する場合には畳み込み層を扱うことができるニューラルネットワークが良いでしょう。アルゴリズムはデータによって結果が大きく変わるため、入力するデータはアルゴリズムに適しているのかを確認しておきましょう。
次に、学習の目的も明確にしておく必要があります。分類がしたいのに予測のアルゴリズムを用いても効果的ではありません。なぜ機械学習を用いるのかを言葉として明確にし、その後に目的とマッチしたアルゴリズムを選ぶことが必要です。
ビジネスでの活用方法と事例
ビジネスの活用方法としては、顧客分析や意思決定などが挙げられます。とくに、顧客分析は、なぜお客さんは自社の商品を購入しているのか、どのぐらいの年代をターゲットとすれば良いのか、とマーケティング部分に深く関わってきます。
たとえば、ストリーミング配信事業をおこなっているNetflixではユーザーの趣味・興味や利用したデバイス、時間帯などを機械学習で分析することでオリジナルコンテンツの内容を考えています。こちらは顧客分析を機械学習でおこなっている例であり、世界的企業も機械学習を積極的に活用していることがわかります。
機械学習とその他の技術との関連
機械学習は適用先やアルゴリズムの種類が非常に多いことから、他の技術との違いが分かりにくいと言われることがあります。とくに、統計学と深層学習は混合されやすいです。ここで、これらとの違いについて確認し、どれを用いるべきなのかを考えられるようにしておきましょう。
機械学習と統計学の違い
統計学はデータから規則性を見出し、データに根拠を持たせるための分野です。それに対し、機械学習は予測精度を向上させていくための技術になります。つまり、機械学習と統計学は現在と未来のどちらに着目しているのかといった目的がそもそも違うのです。
また手法も異なるため、これらはしっかりと区別しておかなければなりません。しかし、まったく関係がないわけではなく、機械学習によって得られたデータが正しいかどうかを判断するために統計学が用いられ、機械学習にデータを与えるために統計学が用いられることがあります。このように相互に補完し合う関係があることは覚えておきましょう。
AIや深層学習との関連
深層学習は機械学習の手法のなかでもニューラルネットワークと呼ばれる人間の脳を模したシステムを利用しているものを指します。つまり、深層学習は機械学習の1種なのです。
そして、それらを含め機械がタスクをこなすようなものをAIと呼びます。つまり、これら3つには「AI>機械学習>深層学習」といった関係があるのです。これらの関係は曖昧になりやすいですが、それぞれの概要を知っておくことでしっかりと判断することができます。