半教師あり学習とは
IBM watsonx.aiはこちら
さまざまな色とサイズのドットのグリッド

公開日:2023年12月12日
寄稿者:Dave Bergmann

半教師あり学習とは

半教師あり学習は、教師あり学習と教師なし学習を組み合わせた機械学習の一つであり、ラベル付けされたデータとラベル付けされていないデータの両方を使用して、分類および回帰タスクのための人工知能(AI)モデルをトレーニングします。

半教師あり学習は一般的に、教師あり学習と同じユースケースで使用されますが、従来の教師あり学習に必要なラベル付けされたデータに加えて、ラベル付けされていないデータをモデルのトレーニングに組み込む、さまざまな手法によって区別されます。

半教師あり学習は、十分な量のラベル付けされたデータを取得するのが極めて困難または高価であるが、大量のラベルなしデータを取得するのは比較的容易な状況で主に使用されます。このようなシナリオでは、完全な教師あり学習でも教師なし学習でも、適切な解決策は得られません。

ラベル付きデータと機械学習

分類や回帰などの予測タスク向けにAIモデルをトレーニングするには、通常、ラベル付きデータ(必要なコンテキストを提供し、各サンプル入力の正しい予測(出力)を示す注釈付きデータ・ポイント)が必要です。トレーニングにおいて、損失関数が特定の入力に対するモデルの予測と、その入力のラベルによって提供される「グラウンド・トゥルース」との差(損失)を測定します。モデルは、損失を最小化するようにモデルの重みを更新する勾配降下法などの方法を用いて、これらのラベル付きサンプルから学習します。この機械学習プロセスには人間が積極的に関与するため、「教師あり」学習と呼ばれます。

複雑なAIタスクでは、データを適切にラベル付けするのに、膨大な労力を必要とします。たとえば、自動車とオートバイを区別するように画像分類モデルをトレーニングするには、数百(数千とは言わないまでも)のトレーニング画像に「car」または「motorcycle」というラベルを付ける必要があります。物体検出のようなより詳細なコンピューター・ビジョンタスクの場合、人間は各画像に含まれる物体だけでなく、各物体がどこにあるかに注釈を付ける必要があります。画像のセグメンテーションなど、さらに詳細なタスクの場合、データ・ラベルは、画像ごとに異なる画像セグメントの特定のピクセルごとの境界に注釈を付ける必要があります。

したがって、データのラベル付けは、特定のユースケースでは、特に面倒な作業になる可能性があります。創薬、遺伝子配列決定、タンパク質分類など、より特殊な機械学習のユースケースでは、データのアノテーションに膨大な時間がかかるだけでなく、特殊な分野の専門知識も必要になります。

半教師あり学習では、比較的豊富なラベルなしデータも使用しながら、少量のラベル付きデータから最大の成果を引き出すことができます。

IBM watsonx.aiのツアーを見る

AIモデルのトレーニング、検証、ファイン・チューニング、デプロイを行うための、AI開発者向けの次世代エンタープライズ・スタジオをご活用ください。

関連コンテンツ

IBMニュースレターを購読する

半教師あり学習、教師あり学習と教師なし学習

半教師あり学習は、教師あり学習と教師なし学習のハイブリッド、または中間と考えることができます。

半教師あり学習と教師あり学習

半教師あり機械学習と完な全教師あり機械学習の主な違いは、後者は完全にラベル付けされたデータ・セットを使用してのみトレーニングできるのに対して、前者はトレーニング・プロセスでラベル付きデータ・サンプルとラベルなしデータ・サンプルの両方を使用することです。半教師あり学習手法は、ラベルなしサンプルからの情報を組み込むために、教師ありアルゴリズム(この文脈では「ベース学習器」と呼ばれます)を変更または補足します。ラベル付きのデータ・ポイントは、ベース学習器の予測を根拠にして、学習問題に構造(存在するクラスの数や各クラスの基本特性など)を追加するために使用されます。

分類モデルをトレーニングする目的は、正確な 決定境界を学習することです。、もしくは、2次元を超えるデータの場合は「平面」または超平面)が、ある分類カテゴリのデータ・ポイントを別の分類カテゴリに属するデータ・ポイントから分離します。完全な教師あり分類モデルは、技術的には少数のラベル付きデータ・ポイントのみを使用して、決定境界を学習できますが、現実世界の例にうまく一般化できない可能性があり、モデルの予測の信頼性が低くなります。

古典的な半月状のデータ・セットは、ラベル付きデータ・ポイントが少なすぎることに依存する教師ありモデルの欠点を浮き彫りにします。「正しい」決定境界は2つの半月のそれぞれを分離しますが、教師あり学習モデルは、利用可能ないくつかのラベル付きデータ・ポイントを過学習する可能性があります。ラベルなしデータ・ポイントは役立つコンテキストを明確に提供しますが、従来の教師ありアルゴリズムでは、ラベルなしデータを処理できません。

半教師あり学習と教師なし学習

半教師あり(および完全な教師あり)学習とは異なり、教師なし学習アルゴリズムでは、ラベル付きデータも損失関数も使用しません。教師なし学習では、モデルの精度を測定および最適化できる「グラウンド・トゥルース」コンテキストを回避します。

特に大規模言語モデルの場合、ますます一般的になっている半教師ありアプローチは、ラベルなしデータ・セットの意味のある表現をモデルが学習することを必要とする教師なしタスクを介して、モデルを「事前トレーニング」することです。このようなタスクに「グラウンド・トゥルース」と損失関数(手動でのデータ・アノテーションなし)が含まれる場合、それらのタスクは自己教師あり学習と呼ばれます。その後、少量のラベル付きデータに対して「教師ありファイン・チューニング」を行った後、事前にトレーニングされたモデルは、完全な教師ありモデルと同等のパフォーマンスを達成できることがよくあります。

教師なし学習法は多くの場面で役に立ちますが、コンテキストがないため、それだけでは分類に適さないことがあります。例えば、典型的なクラスタリング・アルゴリズムが、互いに近接していることに基づいて、データ・ポイントをあらかじめ決められた数のクラスターにグループ分けする場合、半月状のデータ・セットをどのように扱うかを考えてみましょう。

半教師あり学習と自己教師あり学習

教師あり学習も自己教師あり学習も、大量のラベル付きデータの必要性を回避することを目的としていますが、半教師あり学習がある程度のラベル付きデータを含むのに対して、オートエンコーダーのような自己教師あり学習法は、完全に教師なしの学習です。

教師あり(および半教師あり)学習では、ラベル付きデータの形で外部の「グラウンド・トゥルース」が必要ですが、自己教師あり学習タスクは、ラベル付けされていないサンプルの根底にある構造からグラウンド・トゥルースを導き出します。多くの自己教師ありタスクは、それ自体では役に立ちません。それらの有用性は、その後の「下流のタスク」の目的に役立つ、データ表現をモデルに教えることにあります。そのため、それらはしばしば「プレテキスト・タスク」と呼ばれます。

したがって、教師ありの下流タスクと組み合わせると、自己教師ありのプリテキスト・タスクは、半教師あり学習プロセスの一部を構成します。これは、モデルのトレーニングにラベル付きデータとラベルなしデータの両方を使用する学習方法です。

半教師あり学習の仕組み

半教師あり学習は、モデルのトレーニングに使用されるラベルなしデータと、さまざまなクラスのデータ・ポイントが相互にどのように関連するかに関する、特定の仮定に依存します。

半教師あり学習(SSL)の必要条件は、モデルのトレーニングで使用されるラベルのないサンプルが、モデルが実行するようにトレーニングされているタスクに関連している必要があることです。より専門的に言えば、SSLでは、入力データの分布p(x)に事後分布p(y|x)に関する情報が含まれている必要があります。つまり、特定のデータ・ポイント(x)が特定のクラス(y)に属する条件付き確率です。例えば、猫の写真と犬の写真を区別する画像分類器をトレーニングするために、ラベルなしデータを使用する場合、トレーニング・データ・セットには猫と犬の両方の画像を含める必要があります。

また、半教師あり学習アルゴリズムに関する2018年の研究では、「ラベルなしデータの量を増やすと、SSLのパフォーマンスが向上する傾向がある」ことがわかった一方で、「不一致のクラス・セットからラベルなしデータを追加すると、ラベルなしデータをまったく使用しない場合と比較して、パフォーマンスが低下する可能性がある」こともわかりました。1

p(x)p(x|y)に対して意味のある関係を持つという基本条件により、その関係の性質について、複数の仮定が生じます。これらの仮定は、すべてではないにしても、ほとんどのSSL手法の背後にある原動力です。一般に、半教師あり学習アルゴリズムは、次の1つ以上の仮定が明示的または暗黙的に満たされることに基づいています。

クラスターの過程

クラスターの仮定では、同じクラスターに属するデータ・ポイント(他の利用可能なデータ・ポイントよりも相互に類似しているデータ・ポイント・セット)も同じクラスに属すると仮定します。

それ自体が独立した仮定とみなされることもあるが、クラスタリングの仮定は、Van EngelenとHoosによって「他の仮定の一般化」とも説明されています。2この考え方では、データ・ポイントのクラスターの決定は、どの類似性の概念を用いるかに依存しています。滑らかさの仮定、低密度の仮定、多様体の仮定は、それぞれ単に「類似する」データ・ポイントの異なる定義を用いているだけです。

滑らかさの仮定

滑らかさの仮定では、2つのデータ・ポイント、xx'が入力空間(xのすべての可能な値のセット)で互いに近接している場合に、それらのラベル、yy'は同じになるはずだと仮定します。

この仮定は、連続性の仮定としても知られており、ほとんどの教師あり学習に共通するものです。例えば、分類器はトレーニング中に関連する各クラスの意味のある近似(または「表現」)を学習し、一度トレーニングされると、どの表現に最も近いかに基づいて、新しいデータ・ポイントの分類を決定します。

SSLの文脈では、滑らかさの仮定には、ラベルのないデータに推移的に適用されるという利点もあります。次の3つのデータ・ポイントを含むシナリオを考えてみましょう。

  • ラベル付きデータ・ポイントx1
  • x1に近いラベルのないデータ・ポイントx2
  • x2には近いが、x1には近くない、もう1つ別のラベルのないデータ・ポイントx3

滑らかさの仮定により、 x2は、x1と同じラベルを持つ必要があります。また、x3は、x2と同じラベルを持つ必要があります。したがって、x3x2に近いため、x1のラベルがx3に推移的に伝播するので、3つのすべてのデータ点が同じラベルを持つと仮定できます。

低密度の仮定

低密度の仮定では、クラス間の決定境界は、高密度領域には入らないと仮定します。言い換えると、決定境界はデータ・ポイントがほとんど含まれない領域にあるはずだと仮定します。

したがって、低密度の仮定は、クラスターの仮定(データ・ポイントの高密度のクラスターは、クラス間の境界ではなく、クラスを表す)と滑らかさの仮定(複数のデータ・ポイントが互いに近接している場合、それらはラベルを共有するはずであり、したがって決定境界の同じ側に位置する)の拡張と考えることができます。

この図は、滑らかさの仮定と低密度の仮定によって、(極めて少ない)ラベル付きデータ・ポイントのみが与えられた教師あり手法よりもはるかに直観的な決定境界が得られることをを示しています。

多様体の仮定

多様体の仮定では、高次元の入力空間は、すべてのデータ・ポイントがその上にある複数の低次元多様体で構成され、同じ多様体上のデータ・ポイントは同じラベルを共有すると仮定します。

直感的な例として、紙をくしゃくしゃにしてボールにしたものを考えてみましょう。球面上の任意の点の位置は、3次元の x、y、z座標でのみマッピングできます。しかし、くしゃくしゃになったボールを平らにして紙に戻すと、同じ点を2次元のx、y座標でマッピングできるようになります。これは次元削減と呼ばれ、オートエンコーダーや畳み込みなどの方法を用いて、数学的に実現できます。

機械学習における次元は、よく知られた物理的な次元ではなく、データの各属性や特徴に対応します。たとえば、機械学習では、32x32ピクセルの小さなRGB画像には、3,072次元(1,024ピクセル)があり、それぞれの次元に3つの値(赤、緑、青)があります。極めて次元が高いデータ・ポイントを比較することは、複雑さと必要な計算リソースの両方の面から、また、その高次元空間のほとんどには当面のタスクにおいて意味のある情報が含まれていないため、困難です。

多様体の仮定とは、モデルが適切な次元削減関数を学習して無関係な情報を排除することで、バラバラのデータ・ポイントがより意味のある表現に収束し、他のSSLの仮定がより信頼できるようになるというものです。

トランスダクティブ学習

トランスダクティブ学習では、使用可能なラベルを使用して、ラベルのないデータ・ポイントの特定のセットのラベル予測を識別し、教師ありベース学習器が使用できるようにします。

帰納的手法は、(ラベル付きおよびラベルなし)入力空間全体をモデル化できる分類器をトレーニングすることを目的としていますが、トランスダクティブ手法は、ラベルなしデータのラベル予測を生成することのみを目的としています。トランスダクティブ学習に使用されるアルゴリズムは、この新しくラベル付けされたデータを用いてトレーニングされる、教師あり分類器モデルで使用されるアルゴリズムとはほとんど無関係です。

ラベル伝搬

ラベル伝播は、滑らかさの仮定とクラスターの仮定を用いて、ラベル付きデータ・ポイントへの相対的な近さに基づいて、ラベルなしデータ・ポイントのラベル割り当てを計算するグラフベースのアルゴリズムです。

このアルゴリズムの背後にある直感は、ノードがラベル付きとラベルなしの両方のすべての利用可能なデータ・ポイントである、完全に接続されたグラフをマッピングできるということです。2つのノードがユークリッド距離(ibm.com外部へのリンク)のような距離のある選択された尺度に基づいて、近ければ近いほど、それらの間のエッジはアルゴリズムでより重く重み付けされます。ラベルは、ラベル付きのデータ・ポイントから開始して、滑らかさとクラスターの仮定を用いて、隣接するラベルのないデータ・ポイントに繰り返し伝播します。

能動学習

能動学習アルゴリズムは、データ・ポイントのラベリングを自動化しません。その代わりに、SSLにおいて、手動でラベリングされた場合に、ラベリングされていないどのサンプルが最も有用な情報を提供するかを決定するために使用されます。3例えば、最近の研究では、セマンティック・セグメンテーションのモデルを効果的にトレーニングするために必要なラベル付きデータの量が半分以下になることがわかっています。4

帰納学習

半教師あり学習の帰納法は、ラベル付きデータとラベルなしデータの両方を用いて、分類(または回帰)モデルを直接トレーニングすることを目的としています。

帰納的SSL手法は一般に、ラベルなしデータを組み込む方法(擬似ラベル付けステップ、教師なし学習による前処理、またはモデルの目的関数への直接組み込み)によって区別できます。

ラッパー・メソッド

既存の教師ありアルゴリズムを半教師ありに拡張する比較的簡単な方法は、まず利用可能なラベル付きデータでモデルをトレーニングするか、あるいは単に適切な既存の分類器を使用して、次にラベルなしのデータ・ポイントに対して擬似ラベル予測を生成することです。その後、最初にラベル付けされたデータと擬似ラベル付けされたデータの両方を使用して、両者を区別せずにモデルを再トレーニングできます。

ラッパー・メソッドの主な利点は、その単純さ以外にも、ほぼすべての種類の教師ありベース学習器と互換性があることです。ほとんどのラッパー・メソッドでは、潜在的に不正確な疑似ラベル予測が強化されるリスクを軽減するために、いくつかの正則化手法が導入されています。

自己学習
自己学習は、基本的なラッパー・メソッドです。決定論的ではなく確率論的な擬似ラベル予測が必要です。たとえば、単に「犬」を出力するのではなく、「85%が犬、15%が猫」を出力するモデルです。

確率論的擬似ラベル予測は、自己学習アルゴリズムがエントロピー最小化のようなプロセスで、ある信頼値が閾値を超える予測のみを受け入れることを可能にします。5このプロセスは、擬似分類プロセスを最適化するか、一定数の擬似ラベル付きサンプルに到達するように、反復的に実行できます。

共同学習
共同学習は、複数の教師ありベース学習器をトレーニングして、擬似ラベルを割り当てることで、自己学習の概念を拡張するものです。

多様化は、当初の不十分な予測を強化する傾向を減らすことを目的としています。したがって、各ベース学習器の予測が互いに強く相関しないことが重要です。一般的なアプローチは、分類子ごとに異なるアルゴリズムを使用することです。もう一つは、各分類子がデータの異なるサブセットに焦点を当てることです。たとえば、動画データの場合、一方のベース学習器を画像データでトレーニングし、もう一方を音声データでトレーニングします。

教師なし学習による前処理

ラベル付けされたデータとラベル付けされていないデータを同時に使用するラッパー・メソッド(および本質的に半教師ありアルゴリズム)とは異なり、SSL法の中には、ラベル付けされていないデータとラベル付けされたデータを別々のステップで使用するものがあります(教師なし学習による前処理ステップと、その後の教師あり学習ステップ)。

ラッパー・メソッドと同様に、このような手法は、基本的にあらゆる教師ありベース学習器に使用できます。ただし、ラッパー・メソッドとは対照的に、「メイン」の教師ありモデルは、最終的には元の(人間が注釈を付けた)ラベル付きデータ・ポイントでのみトレーニングされます。

このような前処理の手法には、ラベル付けされていないデータから有用な特徴を抽出するものから、ラベル付けされていないデータ・ポイントを事前にクラスタリングするもの、(自己教師あり学習で実行されるプレテキスト・タスクに似たプロセスで)教師ありモデルの初期パラメーターを決定するために、「事前トレーニング」を行うものなどがあります。

クラスター化してからラベルを付ける
簡単な半教師あり学習の1つは、教師なしアルゴリズムを用いて、すべてのデータ・ポイント(ラベル付きとラベルなしの両方)をクラスタリングすることです。クラスタリングの仮定を活用することで、これらのクラスターは独立した分類器モデルのトレーニングに役立てることができます。あるいは、与えられたクラスター内のラベル付きデータ・ポイントがすべて同じクラスである場合、ラベルなしデータポイントを擬似的にラベル付けし、ラッパー・メソッドに似た方法で進めることができます。

この記事の前半の「半月」の例で示したように、単純な方法(k最近傍など)では、不適切な予測が得られる可能性があります。DBSCAN(低密度の仮定を用いる)のような、より洗練されたクラスタリング・アルゴリズム6は、より高い信頼性を達成しています。

事前トレーニングと特徴抽出
教師なし(または自己教師あり)の事前トレーニングは、モデルが入力空間の有用な表現を学習することを可能にし、教師あり学習でモデルをファイン・チューニングするために必要なラベル付きデータの量を減らすことができます。

一般的なアプローチは、ニューラル・ネットワーク(多くの場合、オートエンコーダー)を採用して、入力データの埋め込みや特徴表現を学習させて、これらの特徴に基づいて、教師ありベース学習器をトレーニングすることです。これには次元削減が伴うことが多く、多様体の仮定を用いるのに役立ちます。

本質的に半教師あり学習

一部のSSLメソッドは、別の擬似ラベル付けまたは前処理ステップでラベルなしデータを処理するのではなく、ラベルなしデータをベース学習器の目的関数に直接取り込みます。

半教師付きサポート・ベクトル・マシン
異なるカテゴリーのデータ・ポイントが線形に分離可能でない場合、つまり直線ではカテゴリー間の境界をきちんと正確に定義できない場合、サポート・ベクトル・マシン(SVM)アルゴリズムは、カテゴリーを超平面によって分離できる高次元特徴空間にデータをマッピングします。この決定境界を決定する際、SVMアルゴリズムは決定境界とそれに最も近いデータ・ポイントの間のマージンを最大化します。これは、実際には低密度の仮定を適用しています。

教師ありでは、ラベル付きデータ・ポイントが決定境界の間違った側にある場合、正則化項によってアルゴリズムにペナルティが課されます。半教師ありSVM(S3VM)では、ラベルのないデータ・ポイント(分類が不明)では、これは不可能です。したがって、S3VMは、規定のマージン内にあるデータ・ポイントにもペナルティを課します。

本質的に半教師あり深層学習モデル
さまざまなニューラル・ネットワーク・アーキテクチャーが半教師あり学習に適応されています。これは、これらのアーキテクチャーで通常使用される損失項を追加または変更することで実現され、ラベルのないデータ・ポイントをトレーニングに組み込むことが可能になります。

提案されている半教師付き深層学習アーキテクチャーには、ラダー・ネットワーク7擬似アンサンブル8時間アンサンブル9および敵対的生成ネットワーク(GANS)の選択的な修正10などがあります。

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

基盤モデル、生成AI、機械学習のトレーニング、検証、チューニング、デプロイが容易になり、少量のデータを使用して、短時間でAIアプリケーションを開発できます。

watsonx.aiの詳細はこちら

IBM watsonx.data

IBM watsonx.dataのデータ・ストアは、オープンなレイクハウス・アーキテクチャー上に構築され、クエリー、ガバナンス、データへのアクセスと共有を実現するオープン・データ形式で構成された、目的に合ったデータ・ストアによって、企業の分析とAIの拡張を容易にします。数分でデータに接続し、信頼できるインサイトを迅速に獲得して、データ・ウェアハウスのコストを削減できます。

watsonx.dataの詳細はこちら
半教師付き学習に関するリソース

半教師あり学習と、機械学習全体におけるその立ち位置について詳しく学ぶためのコースとリソースです。

機械学習:回帰と分類

教師あり機械学習の2つの重要なサブセットである回帰と分類について学びます。回帰モデルをトレーニングして連続的な結果を予測し、予測モデルをトレーニングして、カテゴリー別の結果を分類する方法を学習します。

データ・ラベリングとは

1つ以上のラベルを追加すると、機械学習モデルが正確な予測を行えるようにするコンテキストが得られます。さまざまな手法やベスト・プラクティスを含め、データのラベル付けの活用方法と利点について探ります。

ラベルなしデータが自己学習における一般化をどのように改善するか

半教師あり学習アルゴリズムである自己学習は、ラベル付けされていない大量のデータを使用して、ラベル付けされたデータが限られている場合の学習を改善します。この研究では、既知の反復自学習パラダイムの理論的分析を確立し、トレーニングにおけるラベルなしデータの利点を証明します。

次のステップ

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

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

1 "Realistic Evaluation of Deep Semi-Supervised Learning Algorithms"(ibm.com外部へのリンク)、arXiv、2019年6月17日
2 "A survey on semi-supervised learning" (ibm.com外部へのリンク)、Springer、2019年11月15日
3 "Transductive active learning – A new semi-supervised learning approach based on iteratively refined generative models to capture structure in data"(ibm.com外部へのリンク)、Information Sciences (Volume 293)、2014年9月18日
4 "Semantic Segmentation with Active Semi-Supervised Learning" (ibm.com外部へのリンク)、arXiv、2022年10月16日
5 "Semi-supervised learning by Entropy Minimization" (ibm.com外部へのリンク)、Advances in Neural Information Processing Systems 17、2004年
6 "Density-based semi-supervised clustering" (ibm.com外部へのリンク)、Data Mining and Knowledge Discovery、2010年11月
7 "Semi-Supervised Learning with Ladder Networks" (ibm.com外部へのリンク)、arXiv、2015年11月24日
8 "Learning with Pseudo-Ensembles" (ibm.com外部へのリンク)、arXiv、2014年11月16日
9 "Temporal Ensembling for Semi-Supervised Learning" (ibm.com外部へのリンク)、arXiv、2017年11月15日
10 "Improved Techniques for Training GANs" (ibm.com外部へのリンク)、arXiv、2016年6月10日