機械学習アルゴリズムとは

著者

Dave Bergmann

Senior Staff Writer, AI Models

IBM Think

機械学習アルゴリズムとは

機械学習アルゴリズムとは、「マシン」(人工知能(AI)システム)がトレーニング・データ内のパターンを識別し、そのパターン認識を適用して新しいデータに対して正確な予測を行うことを学習する手順と数学的ロジックです。機械学習アルゴリズムは、単純な線形回帰モデルから最先端のディープラーニング技術まで、現代のAIとデータサイエンスの基本的な構成要素です。

「アルゴリズム」と「モデル」という用語はしばしば同じ意味で使用されますが、両者は互いに関連性はあるものの、異なる概念を表します。アルゴリズムとは何らかの機能または目的を実行するための段階的なプロセスの総称であり、通常は数学的言語または 擬似コードで記述されます。人工知能の文脈におけるAIモデルは、インプットデータを受け取り、それ以上の人間の介入なしに、予測または決定を下してアウトプットを出すプログラム一般を指します。

機械学習アルゴリズムは、実際のユースケースで有用な予測ができるように機械学習モデルをトレーニングする際に使用される、明確に定義された一連の手順です。この手順は、モデルがインプットを受けたデータ・ポイントを対応するアウトプットへとマッピングする方法だけでなく、関連する複数の例によるトレーニングデータセットを「適合」させるためにモデルの予測行動を最適化するプロセスも含みます。それは機械がデータから学習できるようにするアルゴリズムといえます

簡単に言えば、機械学習アルゴリズムをデータセットに適用した結果がトレーニング済みモデルです。「トレーニング」とは、より有用なアウトプットが得られるようにモデルのパラメータ(モデルがインプットについての予測や決定を行うために使用する数学的ロジックの、調整可能な部分)を更新していく、反復的なプロセスとして理解できます。

特定の1つのタスクを実行するようモデルをトレーニングするために、明示的に設計された機械学習アルゴリズムも存在しますが、それは規則というよりは例外にあたります。大まかに言えば、それぞれの機械学習アルゴリズムは、特定の種類のタスク(または特定の種類や量のデータ)の処理に利用できる、特定の数学的または実用的な性質を有しています。多くの場合、同じ機械学習技術を使用して、複数の(ただし同様の)タスクのためのモデルをトレーニングできます。逆に、特定のタスクのモデルをトレーニングするのに適したMLアルゴリズムは、ほとんどの場合、複数存在します。

機械学習アルゴリズムの主なメリットは、AIモデルが経験から暗黙のうちに学習できるという点です。これは、データサイエンティスト、対象分野の専門家、またはMLエンジニアがモデルの意思決定ロジックを手動かつ明示的にプログラムする必要がある「古典的」な、または「ルールベース」のAI技術とは対照的です。過去数十年にわたり、機械学習システムはルールベースAIよりも人工知能およびデータ分析の主流モードとして台頭してきました。その理由はいくつかありますが、特に暗黙のデータ駆動型機械学習は本質的に柔軟性が高く、スケーラブルで、アクセスしやすいためです。

そうは言っても、トレーニング・データにモデルを適合させることは、単なる手段ではないことに注意しなければなりません。機械学習の基本的な前提は、モデルが使用される現実世界の問題に十分に類似したサンプル・タスクでモデルの性能を最適化すれば、トレーニングを受けたモデルは、トレーニング中に見たことのない新しいデータでも、適切な性能を発揮するということです。機械学習の最終的な目標は一般化、つまりトレーニング・データでの性能を新しい未見のデータに応用することです。トレーニングのみに近視眼的に焦点を当てると、モデルの知識がトレーニング・データのパターンに合わせて徹底的に調整され、一般化ができなくなるという過剰適合のリスクが生じ、トレーニングでは優れていても現実世界のシナリオでは失敗するというモデルが生まれてしまいます。

したがって、有用な機械学習モデルをトレーニングするには、適切な種類の機械学習アルゴリズムを選択して設定するだけではなく、トレーニングデータの適切なキュレーションとトレーニング後の性能の丁寧な検証も必要となります。

The DX Leaders

AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。

ご登録いただきありがとうございます。

ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。

機械学習アルゴリズムの種類

機械学習アルゴリズムは、教師あり学習、教師なし学習強化学習の3つの基本的なカテゴリに分類できます。それぞれの学習パラダイムは主に、明示的な目標、その目的に伴うトレーニング・タスクの種類、そのタスクにおけるモデルの性能を最適化するために使用される手法が異なります。

  • 教師あり学習アルゴリズムでは、与えられた入力に対して「正しい」出力を予測するようにモデルをトレーニングします。言い換えれば、独立変数(入力データの特徴量)と従属変数(出力、つまり「ターゲット」)の関係を学習します。これらは、分類や回帰など、既知の「グラウンド・トゥルース」と比較してある程度の精度が求められるタスクのモデルをトレーニングするために使用されます。そのグラウンド・トゥルースは通常(常にではない)ラベル付きデータの形式で提供されます。つまり、モデルにコンテキストを提供するために注釈が付けられたデータであり、例えば、ラベル付き [input, output] のラベルの組み合わせですを付したデータセットなどがあります。

  • 教師なし学習アルゴリズムでは、ラベルなしデータセットの固有のパターン、依存関係、相関関係を識別するようにモデルをトレーニングします。教師あり学習とは異なり、教師なし学習では、アウトプットを比較する外部のグラウンド・トゥルースの有無を前提としません。

  • 強化学習(RL)アルゴリズムは、試行錯誤を通じてモデルをトレーニングして、その環境を評価し、最大の報酬を得るアクションを実行します。強化学習は、単一のグラウンド・トゥルースの存在を必要としないものの、「良い」行動(報酬を受ける)と「悪い」行動(罰則を受ける)を必要とするシナリオに適しています。教師あり学習アルゴリズムの目的は、誤差を最小限に抑える方法でパラメーターを最適化することですが、強化学習アルゴリズムの目的は、報酬を最大化する方法でモデル・パラメーターを最適化することです。

これら3つのパラダイムのどれにも適合するMLアルゴリズムはありませんが、分類が比較的曖昧な学習方法がいくつかあります。例えば、教師あり学習では、教師あり学習と教師なし学習の両方を組み合わせ、自己教師あり学習は入力データを操作し、ラベルなしデータによる教師あり学習を可能にする方法でトレーニングタスクを設計します。

モデルは複数の種類の機械学習アルゴリズムでトレーニングできます。例えば、大規模言語モデル(LLM)では通常、自己教師あり学習による初期トレーニング(「事前トレーニング」)を受けますが、その後、従来の教師あり学習アルゴリズムと強化学習アルゴリズムの両方を通じてファイン・チューニングされます。同様に、アンサンブル学習アルゴリズムでは、複数のモデルを1つの「最終」モデルに集約します。

機械学習アルゴリズムは万能ではありません。どのアルゴリズムにも、モデルが動作する特定のシナリオとデータセットに合わせた設定が必要な、各種のハイパーパラメーターがあります。ピザにたとえてみましょう。ピザを作るための基本的な「アルゴリズム」は、円形の生地の上にトマトソースを塗り、そのソースの上にモッツァレラ・チーズを載せ、オーブンで焼くものと定義できます。ただし、具体的な好み、材料、予算、または制約に対応するために、個別に「アルゴリズム」を設定する方法がほぼ無数に存在します。

オフィスでミーティングをするビジネスチーム

IBMお客様事例

お客様のビジネス課題(顧客満足度の向上、営業力強化、コスト削減、業務改善、セキュリティー強化、システム運用管理の改善、グローバル展開、社会貢献など)を解決した多岐にわたる事例のご紹介です。

教師あり学習アルゴリズム

教師あり機械学習アルゴリズムの形式的な目標は、損失関数 のアウトプットを最小化するようにモデルパラメータ を最適化することです。損失関数は、各インプットに対するモデルの予測によるアウトプットと、グラウンド・トゥルースによるアウトプットの間の乖離(「損失」)を測定します。

従来の教師あり学習では、グラウンド・トゥルースはラベル付けされたデータによって提供されます。たとえば、スパムEメールを検知するモデルをトレーニングするには、通常、人間のアノテーターがEメール例のコーパスを手動でレビューし、それぞれを「スパム」または「非スパム」としてラベル付けする必要があります。モデルトレーニングの目的は、特定のEメールに対するモデルのアウトプットが、人間がそのEメールにつけたラベルと安定して一致するようになるまで、モデルのパラメーターを調整することです。この手法では機械が学習する内容を人間が直接監督することから、「教師あり」学習と呼ばれます。そのため教師あり学習はしばしば、単にラベル付きデータを使用する機械学習として定義されることがあります。

しかし場合によっては(特に最新のディープラーニングでは)大規模なデータセットや複雑なデータポイントが必要となり、十分なラベル付きトレーニング・データを取得するには法外な時間と労力がかかります。主にこのようなシナリオに対処するために開発された自己教師あり学習は、ラベルのないデータからラベル(または「擬似ラベル」)を推測できるようにするトレーニング・タスクを用意します。これにより、教師あり学習の「ラベル付きデータを必要とする」という従来の定義はやや不十分になります。したがって、教師あり学習アルゴリズムをより適切に、より広範に定義すると、モデルのアウトプットを最適化するための何らかのグラウンド・トゥルース (または「教師によるシグナル」)、およびモデルのアウトプットをグラウンド・トゥルースと比較するためのいくつかの損失関数を使用する機械学習手法、ということになります。

教師あり学習アルゴリズムは、 分類 タスク、 回帰 タスク、またはその両方を行うモデルのトレーニングに使用されます。

  • 分類タスクは、あるデータ・ポイントが属する特定のカテゴリーを推測するなど、離散的な予測を行うものです。分類タスクは、二項分類(「はい」または「いいえ」、「承認」または「拒否」、「スパム」または「非スパム」)か多項分類のいずれかです。分類アルゴリズムの中には二項分類にしか適さないものもありますが、多項分類器であれば二項分類も実行できます。

  •  回帰は 、数量、価格、期間、温度など 連続した 値を予測するために使用されます。これらは、時系列分析、予測、料金体系の設定、確率予想などのユースケースで使用されます。

多くの教師あり学習アルゴリズムは、回帰または分類を行うモデルのトレーニングに使用できます。たとえば、あるモデルは回帰を使用して、特定のデータ・ポイントがそれぞれの潜在的なカテゴリに属する確率を予測し、最も高い確率のカテゴリをアウトプットできます。

一般的な回帰アルゴリズム

  • 線形回帰 は、基本的かつ広く使用されている機械学習アルゴリズムの1つです。線形回帰アルゴリズムは、アウトプット変数(従属変数)を、1つ以上の重み付けされたインプット変数(独立変数)の組み合わせとして計算します。各インプット変数の最適な重み付けを学習することで、アルゴリズムはトレーニングで見たことのあるデータ・ポイントに関する「最適な線」を生成します。線形回帰には、同様の論理を使用して従属変数と独立変数の間の数学的にさまざまな関係をモデル化するさ幅広いバリエーションや拡張版が存在します。例としては多項回帰(非線形的、曲線的な関係のモデル化)や分位点回帰(データセットの分布内の複数の具体的なポイントの関係をモデル化する)などがあります。
  • 決定木アルゴリズムは、枝分かれした木のような図として視覚化できる "if-then-else" の決定分岐シーケンスを通じて、最終的な予測アウトプットにたどりつくものです。この種のアルゴリズムは、回帰と分類の両方に利用できます。ほとんどの教師あり学習アルゴリズムとは異なり、このアルゴリズムの目的は、単一のグローバルな損失関数を最小化することでアウトプット予測を最適化するのではなく、決定木の個々の分岐ノードでの予測力を最適化することです。

  • 状態空間モデル(SSM) 動的なシステムとシーケンシャルなデータを、相互に関連する2つの方程式でモデル化します。1つは状態方程式で、直接観測できないシステムの内部ダイナミクス (「状態」)を記述します。もう1つは出力方程式で、それらの内部ダイナミクスが観測可能な成果、つまりシステムのアウトプットとどのように関連しているかを記述します。電気工学から財務予測、 自然言語処理(NLP)まで、さまざまな分野で使用されています。

一般的な分類アルゴリズム

  • ナイーブ・ベイズ分類器は、ベイズの定理のロジックに基づいて動作します。これは基本的に、後のイベント(結果など)からの情報を使用して、前のイベント(入力など)の理解を更新できるという考えを数学的に定式化したものです。言い換えれば、モデルは、特定のインプット変数の相対的な重要度を、それが特定の結果とどれだけ強く相関するかに基づいて学習します。その由来である「ナイーブ」な仮定では、分類に寄与するすべての特徴が、互いに独立しています。この簡素化により、アルゴリズムはスパム検知のような単純なタスクでは高速かつ効果的になります。

  • ロジスティック回帰では、線形回帰アルゴリズムを適応させて、入力特徴量の加重合計をシグモイド関数に入力し、入力値を0から1の間の値に圧縮することで、二値分類問題を解決します。結果として得られる値は、ある事象(この場合は特定の分類)が発生する確率として解釈することができます。

  • K最近傍(KNN)アルゴリズムでは、類似したデータ・ポイントが互いに近くにあると仮定して、ベクトル埋め込み空間内での他の既に分類済みの(つまり、ラベル付けされた)データ・ポイントに対する近接性に基づいてデータ・ポイントを分類します。kは、考慮される近傍データ・ポイントの数を指します。例えば、k = 5のKNNアルゴリズムでは、入力データ・ポイントを5つの最近傍データ・ポイントと比較し、これら5つの内で最も多く表されるカテゴリーに基づいて分類されます。

  • サポートベクターマシン(SVM)は、表向きは二値分類を実行する強力なモデルですが、マルチクラス分類の問題にも適応できます。SVMアルゴリズムの目標は、データ・ポイントの分類方法を直接学習することではありません。代わりに、ラベル付きデータ・ポイントの2つのカテゴリーに分離する最適な決定境界を学習し、当てはまる境界の側に基づいて新しいデータ・ポイントを分類することを目標としています。SVMアルゴリズムは、この境界を、反対クラスのデータ・ポイント間のマージン(またはギャップ)を最大化する超平面として定義しており、これは半教師あり学習低密度仮定に似た概念です。論理的には、その超平面の計算をサポートできる唯一のデータ・ポイントは、境界に最も近い各クラスのデータ・ポイントです。したがって、これらの境界隣接するデータ・ポイントのベクトル埋め込みは、サポート・ベクトルと呼ばれます。

自己教師あり学習アルゴリズム

自己教師あり学習アルゴリズムの目標は、教師からのシグナルとしてラベルなしデータ自体の構造を使用するタスクを設計することで、ラベル付きデータを必要とせずに教師あり学習を実行することです。自己教師あり学習の手法は、一般に、自己予測または対照学習の2つの下位分類のいずれかに当てはまります。

自己予測

自己予測アルゴリズムは、任意のデータ・ポイントのある要素について、そのデータ・ポイントに関する別の情報が与えられた時に予測を行うよう、モデルをトレーニングします。Yann LeCunは、そのような手法の「インプットの一部について知らないというふりをして、それを予測すること」というシンプルな言葉で表しています。 1 例:

  • 入力の任意の部分を他の部分から予測します。
  • 過去から未来を予測します。
  • 目に見えるものからマスクされたものを予測します。
  • 利用可能なすべてのパーツから遮蔽されたパーツを予測します。

自己予測を使用してトレーニングされたモデルは、通常、識別型ではなく、生成型です。自己予測アルゴリズムを使用してトレーニングされた機械学習モデルの代表的な例としては、オートエンコーダー大規模言語モデル(LLM)が挙げられます。

  • オートエンコーダーには、元のインプットを潜在変数のみに圧縮した後に再構築する役割があります。元のインプットは、グラウンド・トゥルースとして機能します。

  • 自己回帰LLM(ChatGPTの立ち上げ後に有名になったテキスト生成モデル)は、そのシーケンス内の前のトークンを与えて、シーケンス内の次のトークンを繰り返し予測するというタスクを課されます。各予測について、シーケンス内の実際の次のトークンがグランド・トゥルースとして機能します。

対照学習

対照学習アルゴリズムでは、モデルに複数のデータ・サンプルを入力し、それらがどのように異なるか(または類似しているか)かを予測するタスクを与えます。データ・ポイントのペアは、多くの場合はデータ拡張で作成します。これはラベルなしデータを変換またはかく乱して、新しいインスタンスや拡張されたビューを作成する手法です。たとえば、画像データの一般的な拡張手法には、回転、ランダム・トリミング、反転、ノイズ処理、フィルタリング、色付けなどがあります。

対照学習は、コンピューター・ビジョンモデルのトレーニングで主に使用されます。例えば、異なる角度から見た同一のオブジェクトの認識をモデルが学習するのに役立ちます。これはマルチモーダルAIのトレーニングにも不可欠です。たとえば、ベクトル埋め込みを1つのデータ・モダリティ(文書など)から別のデータ・モダリティ(音声や画像など)に「翻訳」する学習に役立ちます。

教師なし学習アルゴリズム

教師なし機械学習は、ラベル付けされていないデータ内の固有のパターン、相関関係、構造を発見するためのモデルを学習するために使用されます。モデルがアウトプットするために学習すべき「正しい」答えの存在を伴う教師あり学習や、モデルが実行する可能性のある「良い」と「悪い」のアクションのさまざまなアクションを伴う強化学習とは異なり、教師なし学習は、理想的なアウトプットが事前にわからないシナリオで最も有用です。

これらの目標は、事前に定義されたグラウンド・トゥルースや報酬構造によって管理されないため、「教師なし」と呼ばれます。したがって、教師なし学習アルゴリズムは、そのタスクに測定や最適化に必要な既知の理想的なアウトプットを必要としないため、損失関数を必要としません。学習プロセスの成否は、モデルの内部パラメーターを調整するアルゴリズムを通じてではなく、主に手動によるハイパーパラメーターの調整によって決まります。

教師なし学習アルゴリズムには、 クラスター アルゴリズム、 アソシエーションアルゴリズム、次元削減 アルゴリズムの3つの基本的なサブセットがあります。

クラスタリング・アルゴリズム

クラスタリング・アルゴリズムは、市場セグメンテーションなどのタスクのために、ラベルのないデータ・ポイントを相互の近接性または類似性に基づいて「クラスター」またはグループに分割します。また、すべてのデータ・ポイントが分類されるべきクラスターを学習し、外れ値のデータ・ポイントがどのクラスターにもうまく適合しない場合を識別することで、異常検知 の予測モデルとして使用することもできます。

  • K平均法クラスタリングアルゴリズムは、データをk個のクラスターに分割し、特定のデータ・ポイントはをその中心(重心)に最も近いクラスターに割り当てます。このプロセスは、k個の重心の初期配置から始まり、多くの場合ランダム化されます(指定された規則によって決定することもあります)。各データ・ポイントは、最も近い重心のクラスターに割り当てられます。その後、それぞれの重心は、先ほど割り当てられたすべてのデータポイントの平均(平均値)を表す位置に再配置されます。そしてデータポイントは再び最も近い重心に従ってクラスター化され、それぞれの重心の位置が再び調整されます。このプロセスを、クラスターの重心の位置が安定するまで繰り返します。
  • 混合ガウス・モデル(GMM)は、いわば「柔らかい」クラスタリング・アルゴリズムです。GMMは、データ・セットが複数のガウス(つまり、古典的な「正規」または「ベル曲線」)分布の混合であると仮定し、特定のデータ・ポイントがそれぞれの正規分散クラスターに属する確率を予測します。GMMアルゴリズムは、トレーニング・データ・セットに最適な各ガウス分布のパラメーター(具体的には、各分布の平均、分散、重み)を学習するように設計されています。
  • DBSCAN (Density-Based Spatial Clustering Applications with Noise) は、密に詰められたデータポイントからクラスターを作成します。すべてのデータ・ポイントをクラスターにグループ化するのではなく、低密度領域に単独にあるデータ・ポイントを外れ値としてマークします。一定数の隣接データ・ポイントが指定された範囲内に存在するかどうかに基づいて、クラスターに属するのに十分な密度のエリアを識別します。K平均とは異なり、DBSCANは任意の形状のクラスターを検出でき、クラスター数を事前に指定する必要がありません。

アソシエーション・アルゴリズム

  • アソシエーション・アルゴリズムは、大規模なデータセット内の変数間の相関関係を識別します。これらは、マーケットバスケット分析や製品推奨エンジンなどのタスクで最もよく使用されます。例えば、eコマース・サービスでは、関連付けアルゴリズムを使用して、どのアイテムが頻繁に組み合わせて購入されるかを特定し、その情報を使用して、在庫内の関連商品を動的に宣伝することができます。

  • アプリオリアルゴリズムはアソシエーションの古典的な手法です。このアルゴリズムでは、「ボトムアップ」アプローチを使用してデータセットを複数回渡し、個々の項目の組み合わせが漸増する頻度を調査して、出現頻度の低い組み合わせを除外します。アプリオリ手法の原則は、複数の項目のより大きな分類グループが頻繁に出現すると見なされれば、そのグループの下位分類も頻繁に出現するに違いない、ということです。逆に、アイテムのより小さな分類グループの出現頻度が低ければ、その小グループを含むすべての上位分類グループの出現頻度も低くなるはずです。シンプルで適応性が高い反面、アプリオリ・アルゴリズムはメモリを大量に消費し、計算コストがかかります。

  • 動的項目集合計数法(DIC)は、古典的なアプリオリ・アルゴリズムと同様のロジックで動作しますが、より計算効率の高いアソシエーションの手法です。それぞれのパスでデータセット全体を探索するのではなく、データベースのサブセットのみから始めて、定期的に新しい項目を追加し、焦点を「動的に」拡大します。

その他、言及しておくべきアソシエーション・アルゴリズムとしては、CHARM(Closed Association Rule Mining) 2 やCARMA(Continuous Association Rule Mining Algorithm)などがあります3

次元削減アルゴリズム

次元削減アルゴリズムは、データ・ポイントを取得し、そのデータ・ポイントのより効率的な表現をアウトプットするように設計されています。具体的には、より少数の特徴によって正確に記述できる空間への高次元データ・ポイントのマッピングを学習するように設計されています。言い換えれば、データを効果的に表現するために必要な次元の数を減らすということです。

次元削減はデータの前処理のステップとして実行されることが多く、予測を改善したり計算負荷を軽減したりするために、データの複雑さとノイズを軽減するのに役立ちます。これは、データセットの潜在空間(現在のタスクに最も関連性の高い主要な機能のサブセットのみを保持する圧縮された(低次元のデータ表現)をモデリングするための重要なステップでもあります。その他の一般的な次元削減のユースケースとしては、データ圧縮やデータの可視化などがあります。

  • 主成分分析 (PCA) は、データセットの元の変数(多くが互いに相関しているため、ある程度冗長になっているもの)を、それぞれが元の変数の線形結合である相関のない変数の小さな下位分類として要約することで、複雑なデータセットを簡素化します。より具体的には、このアルゴリズムは、データの主要コンポーネント、つまり他の線形組み合わせと比較して最大の分散を持つ変数の線形組み合わせを優先します。
  • t-distributed Stochastic Neighbor Embedding (t-SNE) は、データ可視化の目的で一般的に使用される非線形次元削減アルゴリズムです。二次元または三次元のデータを表現する用途にほとんど特化しており、高次元空間で互いに近接したデータ・ポイントを、新しい低次元空間でも互いに近接したままにすることを主な目的とします。

  • オートエンコーダ は、一般には自己教師学習アルゴリズム(損失関数を最小化することを目的としたもの)を通じてトレーニングされたエンコーダー/デコーダーニューラルネットワークアーキテクチャの一種ですが、ラベルなしデータの次元削減(この場合は潜在空間のモデリング)を実行します。エンコーダーは、徐々に小さくなっていく一連のレイヤーから構成され、インプットデータがデコーダーに到達する前に、データを低次元に「絞り込む」「ボトルネック」を強制的に通過させます。徐々に大きくなる一連の層で構成されるデコーダーには、再構成損失を最小限に抑えるという目的を持って、この圧縮表現を使用して元のデータを再構成するタスクが与えられます。これにより、エンコーダは、元の入力を正確に再構築するために最も役立つ情報のみを抽出して、通すことを学習します。

半教師あり学習アルゴリズム

半教師あり学習は、一般的に教師あり学習と同じユースケースで使用されますが、ラベル付きデータのサブセットとともに、ラベルなしデータをモデル・トレーニングに組み込む手法によって区別されます。これらは、十分なラベル付けされたデータを取得するのが極めて困難または高価であるものの、関連するラベルなしデータを取得するのは比較的容易である、という状況で役立ちます。

半教師あり学習で使用されるラベルなしサンプルは、モデルが実行するようトレーニングされているタスクに関連したものでなければなりません。たとえば、猫と犬の写真を区別する画像分類器をトレーニングする場合、猫と犬のラベルなしの画像を含めることはトレーニングに役立ちますが、馬や自動運転車の画像は役に立ちません。この条件は、半教師付き手法の形式的な論理を提供する、データ点が互いにどのように関係するかについての一連の仮定を知らせます。

半教師あり学習アルゴリズムは、一般に、変換型、帰納型、または本質的に自己教師型に分類されます。

  • 変換型手法は、従来の教師あり学習アルゴリズムに適用できるように、トレーニング中に利用可能なラベルなしデータポイントを分類することに重点を置いています。例えばラベル伝播は、既知のラベルをグラフの隣接ノードにあるデータ・ポイントに「伝播」させることで、ラベルなしデータの「擬似ラベル」を推測するグラフベースの手法です。

  • 帰納型手法は、学習中に存在するラベル付けされていないデータと、新しい未見のデータポイントの両方を分類できる汎化可能なモデルを構築することを目的としています。自己トレーニングでは、モデルはまず、小規模なラベル付きデータセットに対して従来の教師あり学習でトレーニングされます。次にラベルのないデータ・ポイントについて確率的予測を行うタスクをモデルに与え、一定の信頼度のしきい値を超える予測のみを受け入れます。共同トレーニングは アンサンブル学習で自己学習を拡張し、データのさまざまな特徴に基づいてさまざまなタイプの基本学習モデルをトレーニングします。クラスタリング後ラベル付け手法では、利用可能なすべてのデータ・ポイントに対して教師なしクラスタリングを実行し、そのクラスター内でどのラベルが最も頻繁に表現されるかに基づいて、各クラスターにラベルを割り当てます。

  • ラダー・ネットワーク 4 半教師ありサポート・ベクトル・マシン(S3VM) 5 などの一部のアルゴリズムは、本質的には半教師あり学習のために設計されています(一方、変換型や帰納型の手法は、従来の教師ありアルゴリズムの応用、またはそれに手順を追加したものです)。

強化学習アルゴリズム

強化学習(RL)アルゴリズムは、単一の「正しい」アウトプット(または動作)はないものの、「良い」アウトプットが存在するタスクに適しています。これらは、ロボット工学、ビデオゲーム、推論モデルなど、可能な解決策やアプローチの空間が特に大きく、制限がなく、定義が難しいユースケースでよく使用されます。RLの用語では、トレーニング対象のエンティティーは通常、「エージェント」と呼ばれます。

教師によるシグナルや明示的に定義されたタスクではなく、モデルが試行錯誤を通じて総合的に学習することを可能にする報酬シグナルを使用します。この報酬シグナルは、報酬関数、個別にトレーニングされた報酬モデル、またはルールベースの報酬システムから得られます。

RLアルゴリズムはポリシーを最適化するものです。数学的に言えば、ポリシー( π )は状態s )をインプットとして受け取り、アクションa ) を返します(π(s)→a)。RLアルゴリズムの目標は、特定の状態に対して最大の報酬を獲得するアクションを取るポリシーを学習することです。

RLアルゴリズムには、価値ベース、またはポリシー・ベースがあります。ポリシー・ベースのアルゴリズムでは、モデルは最適なポリシーを直接学習します。価値ベースのアルゴリズムでは、エージェントは、各状態がどの程度「良い」かを示すスコアを計算する価値関数を学習し、通常はその状態から実行できるアクションに対する潜在的な報酬に基づいて、より価値の高い状態につながるアクションを選択します。ハイブリッド・アプローチでは価値関数を学習し、それをポリシーの最適化に使用します。

言及すべき強化アルゴリズムとしては以下のものがあります。

  • 価値ベースの手法から生まれたQ学習

  • 人間のフィードバックからの強化学習(RLHF)で広く使用されているポリシー・ベースの手法であるProximal policy optimization(PPO)
    Actor-criticと、価値ベースの手法とポリシー・ベースの手法を組み合わせたAdvantage Actor Critic(A2C)などの派生手法

  • REINFORCE (「REward Increment = Nonnegative Factor × Offset Reinforcement × Characteristic Eligibility」の略)は、ポリシー・ベースの代表的な手法です

アンサンブル学習アルゴリズム

アンサンブル学習とは、複数の機械学習アルゴリズム(この文脈では「学習者」と呼ばれることが多い)を組み合わせて、構成アルゴリズム単体では実現できないほど正確で信頼性の高い性能を実現する手法を指します。

アンサンブル学習アルゴリズムは通常 、ブースティング、スタッキングまたは バギング 技術を利用します。

ブースティング

ブースティング・アルゴリズムはモデルを順次構築し、後続の新しいモデルはそれぞれ、前のモデルのエラーを修正するようにトレーニングされます。当初は「弱い」学習器の進歩が、最終的には単一の精度の高い「強い」学習器に到達します。

  • アダプティブ・ブースティング AdaBoost )は、以前のモデルによって誤分類されていたインスタンスにより多くの重みを与え、後続モデルの更新によってそれらのトレーニング例のパフォーマンスが向上することを優先します。最終的な予測は、重み付けされた多数派投票によって決定され、より遅く、より正確なモデルは、最終的なアウトプットに対する影響力を持ちます。

  • 勾配ブースティングは、以前のモデルが誤って処理したデータ・ポイントではなく、以前の学習者によるエラーに焦点を当てます。具体的には、特定のデータ・ポイントにおける先行モデルのエラーを修正(予測)するように、各モデルをトレーニングします。後続の各モデルの予測を集約することにより、アンサンブルは最終的に元のデータ・ポイントの正しいアウトプットをリバース・エンジニアリングできます。XGBoost (eXtreme Gradient Boosting の略) は、勾配ブースティングを効率的に実装するためのオープンソースの機械学習ライブラリです。

バギング

バギングアルゴリズム(ブートストラップ集約とも呼ばれる) では、トレーニング・データセットのランダムにサンプリングされた異なるサブセットで複数のモデルを並行してトレーニングし、投票(分類問題の場合)または平均化(回帰問題の場合)を通じて予測を組み合わせます。このアプローチは、分散を低減し、過剰適合を防ぐのに非常に効果的です。

例えばランダムフォレスト ・アルゴリズムは、バギングを使用して相関のない決定木モデルのアンサンブルを構築します。

スタッキング

スタッキング・アルゴリズムは、(多くの場合、それぞれが特定のタイプの予測に特化している)複数のベース学習器からの予測を組み合わせ、これらのベース・モデルのアウトプットで最終的な「メタモデル」をトレーニングして、最終成果物の予測をより正確かつ堅固にします。

関連知識蒸留の手法では最終モデルは、基本学習者の最終アウトプット予測(「ハードターゲット」)に加え、中間アウトプット(「ロジット」または「ソフトターゲット」)によるトレーニングも受けて、「思考プロセス」の再現を目指します。

ディープラーニングアルゴリズム

ディープラーニング機械学習のサブセットであり、多層人工ニューラル・ネットワークを使用することが特徴です。通常はラベル付きデータに対する教師あり学習、または(特に生成AIモデルでよく見られるように)ラベルなしデータに対する自己教師あり学習を通じてトレーニングされます。深層強化学習では、ニューラル・ネットワークがRLエージェントのポリシーとして機能します。ディープラーニングは、2010年代初頭以降、人工知能の最先端の進歩の大部分を担ってきました。その最も重要な強みの一つは、従来の機械学習では手動で行われることが多い特徴エンジニアリングのプロセスを自動化できることです。

「従来の」機械学習の明示的に定義されたアルゴリズムとは異なり、ディープラーニング・モデルは、それぞれが数学的演算 (「活性化関数」と呼ばれる) を実行する、相互接続された多数の「ニューロン」(または「ノード」) 層で構成されています。各ニューロンの有効化関数へのインプットは、前の層の各ニューロンの有効化関数のアウトプットの重み付けされた組み合わせです。最終層のニューロンは、モデルの最終アウトプットを計算します。重要なのは、各ノードで実行される有効化関数が非線形であることから、ニューラル・ネットワークが複雑なパターンと依存関係をモデル化できるようにすることです。現代の AI におけるニューラル・ネットワークは最先端のディープラーニングと関連付けられることが最も多いものの、制限付きボルツマン・マシンなどの「非ディープ」ニューラル・ネットワークも数十年前から使用されています。

ディープラーニング・アルゴリズムの驚異的なパワーと汎用性を実現しているのは、その分散的な構造です。トレーニング・データを二次元グラフ上に散在するデータ ポイントとして考えてみましょう。モデル・トレーニングの目標は、それらの各データ・ポイントを通る線を見つけることです。従来の機械学習アルゴリズムが、1本の線(または曲線)を生み出す1つの数学関数を使って課題の達成を試みるのに対し、ディープラーニング・アルゴリズムは、任意の数の小さな線を任意の数で組み合わせて、目的の形状を形成することができます。ディープニューラルネットワークは普遍的近似器です。いかなる機能に対しても、それを再現できるニューラル・ネットワーク配置が存在することは理論的に証明されています。 6

アーキテクチャーとアルゴリズムの比較

  • ディープラーニングの文脈では、特定のモデル・タイプは「アーキテクチャー」と呼ばれることがよくあります。これはアルゴリズムに関連している概念ですが、アルゴリズムとは異なるものです。

  • ニューラル・ネットワーク・アーキテクチャーとは、レイアウト、つまり層の数とサイズ、特殊なレイヤーの使用、有効化関数の選択を指します。同様のニューラル・ネットワーク・アーキテクチャーは、多くの場合、トレーニングによって複数の種類のタスクの1つを実行したり、複数のデータ・モダリティーの1つを処理したりできます。

  • ディープラーニングのアルゴリズムは、モデルに使用されるニューラル・ネットワーク・アーキテクチャーだけでなく、モデルが実行するようにトレーニングされているタスクと、そのタスクのためにモデルを最適化するために実行されるステップも含まれます。

オートエンコーダーを考えてみましょう。アーキテクチャーに関して言えば、オートエンコーダーはエンコーダー-デコーダー・モデルです。エンコーダー・ネットワークが特徴付ける層は徐々に小さくなり、デコーダー・ネットワークが特徴付ける層は徐々に大きくなります。しかし、オートエンコーダーは、数あるエンコーダー/デコーダー・モデルの1つにすぎません。例えば、画像セグメンテーションモデルには非常によく似たアーキテクチャーがあり、段階的に小さくなる畳み込み層でデータをダウンサンプリングして主要な特徴量を分離およびセグメント化し、その後、段階的に大きくなる層で(セグメント化された)データを元のサイズにアップサンプリングします。

オートエンコーダーをオートエンコーダーたらしめるものは、(単なる)アーキテクチャーではなく、トレーニングに使用されるアルゴリズムです。オートエンコーダーは、元のインプットを再構築するタスクをもち再構築損失を測定する関数(多くの場合、追加の正規化項によって変更されます)を最小限に抑えるようにモデル・トレーニングを通じて最適化されます同じアーキテクチャーをもつが、異なるタスクを実行するようにトレーニングされ、異なる目的に最適化されたモデルは、オートエンコーダーではありません。

関連ソリューション
IBM watsonx.ai

AI開発者向けの次世代エンタープライズ・スタジオであるIBM watsonx.aiを使用して、生成AI、基盤モデル、機械学習機能をトレーニング、検証、チューニング、導入しましょう。わずかなデータとわずかな時間でAIアプリケーションを構築できます。

watsonx.aiをご覧ください。
人工知能ソリューション

業界をリードするIBMのAI専門知識とソリューション製品群を使用すれば、ビジネスにAIを活用できます。

AIソリューションはこちら
AIコンサルティングとサービス

AIの導入で重要なワークフローと業務を再構築し、エクスペリエンス、リアルタイムの意思決定とビジネス価値を最大化します。

AIサービスはこちら
次のステップ

AI開発ライフサイクル全体にわたる機能にワンストップでアクセスできます。使いやすいインターフェース、ワークフロー、業界標準のAPIやSDKを利用して、強力なAIソリューションを構築できます。

watsonx.aiの詳細はこちら デモを予約
脚注

すべてのリンクはIBM.comの外部にあります。
1. “Energy-Based Self-Supervised Learning,” Yann LeCun (accessed via UCLA), 19 November 2019
2. “CHARM: An Efficient Algorithm for Closed Itemset Mining,” Proceedings of the 2002 SIAM International Conference on Data Mining
3. “Online Association Rule Mining,” Proceedings of the 1999 ACM SIGMOD International Conference on Management of Data, 1 June 1999
4. “Semi-Supervised Learning with Ladder Networks,” arXiv, 24 November 2015
5. “Kolmogorov’s Mapping Neural Network Existence Theorem,” Proceedings of the IEEE First International Conference on Neural Networks  (accessed through University of Waterloo)1987
6. “Multilayer Feedforward Networks with a Non-Polynomial Activation Function Can Approximate Any Function,” Center for Research on Information Systems (New York University), March 1992