機械学習のアルゴリズム
機械学習の背後にある数学とロジックの概要。
機械学習アルゴリズムとは
機械学習アルゴリズムは、人々が複雑なデータ セット内を探索し、分析し、意味を見つけるのに役立つコードです。各アルゴリズムが、特定の目標を達成するためにマシンが従うことができる、明確なステップバイステップ手順の有限集合になっています。機械学習モデルの目標は、人々が予測の作成や情報の分類に使用できるパターンを確立または発見することです。 機械学習とは
機械学習のアルゴリズムでは、トレーニング データ (それよりも大きなセットの代表である、データのサブセット) に基づくパラメーターが使用されます。世界をよりリアルに表すためにトレーニング データが拡張されると、アルゴリズムの計算結果はより正確になります。
さまざまなアルゴリズムによって、さまざまな方法でデータが分析されます。アルゴリズムは、多くの場合、教師あり学習、教師なし学習、および強化学習に使用されている機械学習の手法によってグループ化されています。最も一般的に使用されるアルゴリズムは、回帰と分類を使用してターゲット カテゴリの予測、通常と異なるデータ ポイントの検出、値の予測、類似点の検出を行うというものです。
機械学習の手法
機械学習のアルゴリズムについてさらに学習していくと、アルゴリズムは一般的に次の 3 つの機械学習手法のいずれかに分類されることがわかります。
教師あり学習
教師あり学習では、アルゴリズムによる予測は指定された一連のラベル付きの例に基づいて行われます。この手法は、どのような結果になるかを把握している場合に便利です。
たとえば、過去 100 年の毎年の都市人口を含むデータセットを指定し、それに基づいて、特定の都市の今後 4 年間の人口を確認するとします。この結果では、データセットに既に存在するラベル (人口、都市、年) が使用されます。
教師なし学習
教師なし学習では、データ ポイントはラベル付きではありません。アルゴリズムによって、データが整理されるか、その構造が記述されることによってラベルが付けられます。この手法は、どのような結果になるかを把握していない場合に便利です。
たとえば、顧客データを入力し、類似の製品が好きな顧客のセグメントを作成するとします。用意されるデータはラベル付きではなく、結果の中のラベルは、データ ポイント間で検出された類似性に基づいて生成されます。
強化学習
強化学習で使用されるアルゴリズムは、結果から学習し、次に取るアクションを決定するというものです。各アクションの後、そのアルゴリズムは、選択が正しかったか、間違っていたか、どちらでもなかったかを判断するうえで役立つフィードバックを受け取ります。人間の指図なしで小さい決定を数多く行う必要がある自動化されたシステムに適した手法です。
たとえば、あなたが自律走行車を設計しているとします。そして車が確実に交通法規を守るようにして、乗車している人の安全を確保したいと思っています。この自動車は経験と強化の履歴を獲得するにつれて、どのように車線内にとどまり、制限速度を守り、歩行者に遭遇したときにブレーキをかけるかを学習します。
機械学習のアルゴリズムでできること
機械学習のアルゴリズムは、複雑すぎて手作業の分析では回答が得られない質問に回答するのに役立ちます。機械学習のアルゴリズムにはさまざまな種類がありますが、機械学習アルゴリズムのユース ケースは一般的に、次のカテゴリのいずれかに分類されます。
ターゲット カテゴリを予測する
2 クラス (バイナリ) 分類アルゴリズム では、データが 2 つのカテゴリに分けられます。考えられる回答が 2 つだけで相互排他的である質問 (これには "はい/いいえ" で答える質問も含まれます) に便利です。例:
- このタイヤが次の 1,000 マイルで使えなくなる: "はい" か "いいえ" か
- 照会が多いのはどちらか: 10 米ドル クレジットか 15% 割引か
多クラス (多項) 分類アルゴリズム では、データが 3 つ以上のカテゴリに分けられます。考えられる回答が 3 つ以上で相互排他的である質問に便利です。例:
- 多くの旅行者が航空券を購入するのは何月か
- この写真の人物は、どのような感情を表しているか
通常と異なるデータ ポイントを見つける
異常検出アルゴリズム では、"正常" を表す定義済みパラメーターの外側に位置するデータ ポイントが特定されます。たとえば、次のような質問に回答するのに異常検出アルゴリズムを使用します。
- このバッチの故障パーツはどこにあるか
- クレジットカードによる購入のうち、詐欺の可能性があるのはどれか
値を予測する
回帰アルゴリズム では、新しいデータ ポイントの値が履歴データに基づいて予測されます。次のような質問への回答に役立ちます。
- 自分が住む都市の 2 ベッドルーム住宅の平均コストは来年どれくらいになるか
- 火曜日の来院患者数はどれくらいになるか
経時的な値の変化を知る
時系列アルゴリズム では、特定の値が時間の経過と共にどのように変化するかが示されます。時系列分析と時系列予測では、時間の経過と共に一定の間隔でデータが収集され、このデータを使用して予測が行われ、傾向、季節性、周期性、不規則性が特定されます。時系列アルゴリズムは、次のような質問に回答するのに使用されます。
- 特定の株が今後 1 年で値上がりしそうか値下がりしそうか
- 自分の来年の支出はいくらになるか
類似点を検出する
クラスタリング アルゴリズム では、データ ポイント間の類似性のレベルを特定することでデータが複数のグループに分けられます。クラスタリング アルゴリズムは次のような質問に適しています。
- どの視聴者が同じ種類の映画を好むか
- どのプリンター モデルが同じように故障するか
分類
分類アルゴリズム では、予測計算が使用され、あらかじめ設定されたカテゴリにデータが割り当てられます。分類アルゴリズムは入力データに対してトレーニングされ、次のような質問に回答するのに使用されます。
- このメールは迷惑メールか
- 特定のテキストのセンチメント (肯定、否定、または中立) は何か
機械学習ライブラリとは
機械学習ライブラリは、特定の言語で記述された関数、フレームワーク、モジュール、ルーチンの集合です。開発者は、複雑なタスクを実行できる機械学習ソリューションを作成するための構成要素として、機械学習ライブラリのコードを使用します。開発者は、機械学習ソリューションですべてのアルゴリズムと数式を手動でコーディングする必要はなく、利用可能な多数の ML ライブラリのいずれかで必要な関数とモジュールを見つけ、それらを使用して、ニーズを満たすソリューションを構築できます。
Azure Machine Learning による実験を開始する
Azure Machine Learning を使用して独自の機械学習モデルを構築し、デプロイすることで、さまざまなアルゴリズムによってどのようにデータが分析されるかを確認してください。