最新のテクノロジー・ニュースを購読している100,000人以上の読者の仲間に加わりましょう
週2回配信されるThink Newsletterなら、AI、オートメーション、データ、およびそれらに関連する最も重要かつ興味深い業界トレンドの最新情報をいち早く確認できます。IBMプライバシー・ステートメント をご覧ください。
機械学習は、トレーニング・データのパターンを「学習」し、その後、新しいデータについて正確な推論を行うことができるアルゴリズムに焦点を当てた人工知能(AI) のサブセットです。このパターン認識機能により、機械学習モデルは、明示的なハードコード化された指示がなくても、意思決定や予測を行うことができます。
機械学習はAIの分野を支配するようになりました。予測モデルから自律走行車、大規模言語モデル(LLM)、その他の生成AIツールまで、ほとんどの現代のAIシステムのバックボーンを提供しています。
機械学習(ML)の中心的な前提は、モデル・トレーニングと呼ばれるプロセスを通じて、モデルが使用される現実世界の問題によく似たタスクのデータセットでモデルの性能を最適化すれば、モデルは最終的なユースケースで表示される新しいデータに対して正確な予測を行うことができるというものです。
トレーニング自体は単に目的を達成する手段にすぎません。一般化、つまりトレーニング・データに対する強力なパフォーマンスを現実世界のシナリオで有用な結果に変換することは、機械学習の基本的な目標です。本質的には、トレーニングされたモデルはトレーニング・データから学習したパターンを適用して、現実世界のタスクの正しいアウトプットを推論します。したがって、AIモデルのデプロイメントはAI推論と呼ばれます。
ディープラーニング、あるいはそれよりも「ディープ」と言える人工ニューラル・ネットワークによって駆動される機械学習は、過去数十年にわたって、AIが使用されるほぼすべての領域で最先端のAIモデル・アーキテクチャーとして登場しました。従来の機械学習の明示的に定義されたアルゴリズムとは対照的に、ディープラーニングは、非常に複雑なデータの複雑なニュアンスを学習する比類のない能力を提供する数学的オペレーションの分散「ネットワーク」に依存しています。ディープラーニングには非常に大量のデータと演算リソースが必要なため、その登場は「ビッグデータ」とグラフィックス処理装置(GPU)の重要性の高まりと一致しています。
機械学習の分野はデータサイエンスの分野と密接に絡み合っています。ある意味で、機械学習は、データ分析を自動化し、(さらに重要なことに)その分析から得た学習を関連するタスクの自律的な実行に適用するためのアルゴリズムと手法の集合として理解できます。
この用語の起源は、(核となる概念自体ではありませんが)多くの場合、 IBM Journalに掲載されたArthur L. Samuelの1959年の記事『Some Studies in Machine Learning Using the Game of Checkers』に起因していると言われます。この論文のはじめに、Samuelは機械学習の理想的な結果について、「コンピューターはプログラミングされることで、プログラムを作った人よりも、より優れたチェッカーのゲームをすることを学習するようになる」ということをはっきりと説明しています。1
「機械学習」と「人工知能」は同じ意味で使用されることがよくありますが、それらは必ずしも同義ではありません。簡潔に述べると、すべての機械学習はAIですが、すべてのAIが機械学習ではありません。
一般に「AI」といえば、SF(典型的には『2001年宇宙の旅』のHAL9000や『エクス・マキナ』のエヴァなど、より正確には人工汎用知能(AGI)と呼ばれるものの描写を通じて)と関連付けられていますが、最近では生成AIとも関連付けられています。しかし、「人工知能」とは、人間による積極的な関与なしに、情報を使用して意思決定や予測を行うことができるプログラムを指す包括的な用語です。
最も基本的なAIシステムは、データサイエンティストによって明示的にプログラムされたルールとロジックを備えた一連のif-then-elseステートメントです。最も単純なレベルでは、基本的なサーモスタットでさえも、次のような単純なルールでプログラムされている場合はルールベースのAIシステムであると言えます。
と
サーモスタットは、それ以上人間の介入なしに自律的に意思決定を行うことができます。より複雑なレベルでは、医療専門家によってプログラムされた大規模で複雑なルールベースの決定木が、症状、状況、併存疾患を解析して診断や予後を予測するのに役立ちます。2
専門家によるシステムとは異なり、機械学習モデルで動作するロジックは明示的にプログラムされているのではなく、体験を通じて学習されます。Eメールスパムをフィルタリングするプログラムを考えてみましょう。ルールベースのAIでは、データサイエンティストがスパムに関する正確で普遍的な基準を手動で考案する必要があります。機械学習では、適切なアルゴリズムとサンプルEメールの十分なデータセットの選択のみが必要です。トレーニングでは、モデルにサンプルEメールを提示してどのメールがスパムかを予測します。予測の誤差が計算され、そのアルゴリズムが誤差を減らすために調整されます。モデルが正確になるまで、このプロセスが繰り返されます。新しくトレーニングされたMLモデルは、スパムを識別する方法を暗黙的に学習しました。
AIシステムが遂行すべきタスクが複雑になるにつれて、ルールベースのモデルでは柔軟性に対応できなくなります。モデルが考慮すべきあらゆるパターンや変数をすべて明示的に定義することは、事実上不可能だからです。そのため、データそのものから暗黙的に学習パターンを抽出できる機械学習システムこそ、より柔軟でスケーラブルかつ実用的な解決策となるため、人工知能の主流となっています。
週2回配信されるThink Newsletterなら、AI、オートメーション、データ、およびそれらに関連する最も重要かつ興味深い業界トレンドの最新情報をいち早く確認できます。IBMプライバシー・ステートメント をご覧ください。
機械学習は、数学的論理によって機能します。したがって、各データ・ポイントの関連する特性(または「特徴」)は必ず数値で表現されるため、データ自体を数学的アルゴリズムに入力できるようになり、特定のインプットを目的のアウトプットにマッピングすることを「学習」します。
機械学習におけるデータ・ポイントは通常、ベクトル形式で表現されます。ベクトル形式では、データ・ポイントのベクトル埋め込みの各要素(または次元)が、特定の特徴の数値に対応します。金融データや地理空間座標など、本質的に数値的なデータ・モダリティーの場合、これは比較的単純です。しかし、テキスト、画像、ソーシャルメディアのグラフデータ、アプリユーザーの行動など、多くのデータモダリティーは本質的に数値的ではないため、ML対応の方法で表現できるような、直感的な特徴量エンジニアリングを直接的に伴いません。
機械学習アルゴリズムで使用するデータの特徴を選択するプロセスは、特徴選択と呼ばれます。特徴抽出技術は、データを最も関連性が高く意味のある次元のみに絞り込みます。どちらも、機械学習で使用するために未加工データを前処理するより広範な分野である特徴量エンジニアリングのサブセットです。ディープラーニングとの注目すべき違いの1つは、通常、ディープラーニングでは未加工データを使用し、特徴量エンジニアリング(または少なくとも特徴抽出)プロセスの多くを自動化することです。これにより、ディープラーニングは従来の機械学習よりも解釈可能性は低いものの、スケーラブルになります。
具体的な例として、床面積、築年数、寝室数の3つの変数の加重平均に基づいて住宅販売価格を予測する単純な線形回帰アルゴリズムを考えてみましょう。各家は3次元ベクトル埋め込み(
このアルゴリズムは、次のような単純な数学関数です。
料金 = (A * 平方フィート) + (B * 部屋数) – (C *年齢) + 基本料金
ここでは、 および 、 がモデル・パラメーターです。これらを調整することで、モデルの各変数の重み付けが調整されます。機械学習の目標は、このようなモデル・パラメーターの最適な値、つまり関数全体が最も正確な成果をアウトプットするパラメーター値を見つけることです。実際の機械学習のほとんどのインスタンスには、より多くの入力変数を持つより複雑なアルゴリズムが含まれていますが、アルゴリズムの調整可能なパラメーターを最適化することで、より高い精度を実現するという原則は変わっていません。
すべての機械学習方法は、トレーニング目標の性質に基づいて、また、それに伴うトレーニング・データの種類によって(常にではないが高い頻度で)、教師あり学習、教師なし学習、強化学習の3つの異なる学習パラダイムのいずれかに分類できます。
特定のモデルのエンド・ツー・エンドのトレーニング・プロセスには、これらの学習パラダイムから複数を活用するハイブリッド・アプローチを含めることができます(多くの場合実際に含まれます)。たとえば、教師なし学習は、教師あり学習または強化学習で使用することを目的として、データを前処理するためによく使用されます。大規模言語モデル(LLM)は通常、初期トレーニング(事前トレーニング)と教師あり学習のさまざまな方法による微調整が行われ、その後、人間からのフィードバックによる強化学習(RLHF)などのRL手法によるさらなる微調整が行われます。
類似しているが異なる実践として、さまざまなアンサンブル学習法が複数のアルゴリズムのアウトプットを集約します。
教師あり学習アルゴリズムは、分類や回帰などの精度が求められるタスクのモデルをトレーニングします。教師あり機械学習は、最先端のディープラーニング・モデルと、業種・業務をまたいで現在でも広く採用されている従来の幅広いMLモデルの両方を強化します。
モデルのアウトプットを、精度を測定し最適化するためには、真値、つまり任意のインプットに対する理想的な、あるいは「正しい」アウトプットと比較する必要があります。従来の教師あり学習では、その真実はラベル付けされたデータによって提供されます。Eメール・スパム検知モデルは、データ・セットのEメールがそれぞれ
教師あり学習に不可欠なのは、一連のトレーニング・インプット全体にわたってモデルの出力とグラウンド・トゥルースとの間の相違(「損失」)を測定する損失関数の使用です。教師あり学習の目的は、損失関数の出力を最小化することとして数学的に定義されます。損失が計算されると、損失を削減するパラメータ調整を識別するために、さまざまな最適化アルゴリズム(そのほとんどは損失関数の導関数の計算を伴います)が使用されます。
このプロセスでは従来、データの注釈の形でグラウンド・トゥルースを提供するために人間が介入する必要があるため、「教師あり」学習と呼ばれます。そのため、ラベル付きデータの使用は、歴史的に教師あり学習の決定的な特性と考えられていました。ただし、根本的には、何らかのグラウンド・トゥルースと、そこからの逸脱を測定する損失関数のアウトプットを最小化するというトレーニング目標の存在が教師あり学習の特徴となります。
より汎用性の高い教師あり学習の概念に対応するために、最新のML用語では、広くグラウンド・トゥルースのあらゆるソースを指して「教師」または「教師信号」と呼びます。
データのラベル付けは、複雑なタスクや大規模なデータセットの場合、法外なコストと時間がかかる可能性があります。自己教師学習では、ラベルのないデータから教師信号が直接取得されるタスクのトレーニングが必要になります。つまり、「自己」教師学習です。
例えば、オートエンコーダーは入力データを圧縮(またはエンコード)し、その圧縮表現を使用して元のインプットを再構築(デコード)するようにトレーニングされます。トレーニングの目的は、元の入力自体をグラウンド・トゥルースとして使用して、再構成誤差を最小限に抑えることです。自己教師あり学習は、LLMの主なトレーニング方法でもあります。モデルには、特定の単語が隠されているかマスクされているテキスト・サンプルが提供され、欠落している単語を予測するタスクが課されます。
自己教師学習は、幅広い機能を備えた基盤モデルを提供でき、その後、より具体的なタスクに合わせてファイン・チューニングできるため、転移学習と頻繁に関連付けられます。
自己教師学習は本質的にラベルなしデータに対する教師あり学習ですが、半教師あり学習法ではラベル付きデータとラベルなしデータの両方を使用します。大まかに言えば、半教師あり学習は、利用可能なラベル付きデータからの情報を使用して、ラベルなしデータ・ポイントについて仮定を行う手法であり、後者を教師あり学習ワークフローに組み込むことができます。
教師なし機械学習アルゴリズムでは、類似性、相関関係、潜在的なグループ化など、ラベルなしデータに内在するパターンを識別します。これらは、このようなパターンが人間の観察者には必ずしも明らかではないシナリオで最も役立ちます。教師なし学習は、既知の「正しい」アウトプットの存在を前提としないため、監視信号や従来の損失関数を必要としません。つまり、「教師なし」なのです。
ほとんどの教師なし学習方法は、次のいずれかの機能を実行します。
その名前が示すように、教師なし学習アルゴリズムは、広義では「自分自身を最適化する」ものとして理解できます。例えば、このアニメーション、k平均法クラスタリング・アルゴリズムが各クラスターの重心を独自に反復的に最適化する方法を示しています。したがって、教師なしモデルのトレーニングの課題は、効果的なデータ前処理と、学習率やクラスター数など、学習プロセスに影響を与えるもののそれ自体は学習不可能なハイパーパラメーターの適切な調整に重点が置かれています。
教師あり学習では、理想的なサンプルと一致するようにモデルを最適化してトレーニングし、教師なし学習アルゴリズムではデータセットに自ら適合させますが、強化学習モデルは試行錯誤を通じて全体的にトレーニングされます。これらは、ロボティクス、ビデオゲーム、推論モデル、およびあり得る解決策やアプローチの分野、特に大きく、開放的であるか、または定義が難しいその他のユースケースでよく使用されます。RL資料では、AIシステムは「エージェント」と呼ばれることがよくあります。
強化学習(RL)は、教師あり学習で使用される独立したインプット・データとアウトプット・データのペアではなく、相互依存する状態・アクション・報酬のデータ・タプルで動作します。強化学習の目的は、誤差を最小限に抑えることではなく、報酬を最大化するためにパラメーターを最適化することです。
強化学習の数学的フレームワークは、主に以下のコンポーネントに基づいて組み込まれます。
Proximal Policy Optimization(PPO)のようなポリシー・ベースのRL手法では、モデルは政策を直接学習します。Q学習のような価値ベースの手法では、エージェントは各状態がどの程度「良い」かのスコアを計算する価値関数を学習し、より価値の高い状態につながる行動を選択します。迷路を考えてみましょう。ポリシー・ベースのエージェントでは「この角で、左に曲がる」と学習しますが、価値ベースのエージェントでは各位置のスコアを学習し、スコアの高い隣接する位置のみに動きます。Actor-critic法などのハイブリッド・アプローチでは、価値関数を学習し、それを使用してポリシーを最適化します。
深層強化学習では、ポリシーはニューラル・ネットワークとして表現されます。
ディープラーニングでは従来の機械学習の明示的に設計されたアルゴリズムではなく、多くの層を持つ(つまり「ディープ」な)人工ニューラル・ネットワークを採用します。ニューラル ネットワークは機械学習の歴史の初期に導入されましたが、 GPUの進歩もあって 2000 年代後半から 2010 年代前半にかけて、AI のほとんどのサブフィールドで主流となりました。
大枠では人間の脳にヒントを得ているニューラル・ネットワークは、相互に接続された「ノード」の層で構成され、それぞれの層は独自の数学的操作(「有効化」と呼ばれる)を実行します。各ノードの有効化関数のアウトプットは、ネットワークのアウトプットが計算される最終層まで、次の層の各ノードのインプットとして機能します。重要なのは、各ノードで実行される有効化関数が非線形であり、neural networksが複雑なパターンと依存関係をモデル化できるようにすることです。
2つのニューロン間の各接続には、固有の「重み」が与えられます。これは、あるニューロンが次の層のニューロンに与える寄与を増減させる乗数です。これらの重みは、各ニューロンの有効化関数に追加される一意の偏りの項とともに、機械学習によって最適化されるパラメーターです。
バックプロパゲーションアルゴリズムを使用すると、個別の各ノードが損失関数のアウトプット全体にどのように寄与するかを計算できるため、勾配降下アルゴリズムを使用して、数百万または数十億のモデル重み付けを個別に最適化できます。最適な結果を得るために必要な、量と粒度が高い更新を行うため、ディープラーニングには従来のMLと比較して非常に大量のデータと計算リソースが必要です。
この分散構造により、ディープラーニング・モデルに驚異的なパワーと汎用性がもたらされます。トレーニング・データを、2次元グラフ上に散在するデータ・ポイントと考えてみてください。基本的に、従来の機械学習は、これらすべてのデータ・ポイントを通過する単一の曲線を見つけることを目的としています。ディープラーニングでは、任意の数の小さな、調整可能なラインを組み合わせて、目的の形状を形成します。ニューラル・ネットワークは普遍的な近似化ツールです。どんな機能に対しても、それを再現できるニューラル・ネットワーク配置が存在することは理論的に証明されています。3, 4
とはいえ、理論的に可能であるということは、既存のトレーニング方法で現実に達成できるということを必ずしも意味しません。長年にわたり、特定のタスクにおける適切なパフォーマンスは、ディープラーニング・モデルであっても手の届かないところにありました。しかし時間の経過とともに、ニューラル・ネットワーク・アーキテクチャーに修正が加えられ、MLモデルの新しい機能が解き放たれました。
畳み込みニューラル・ネットワーク (CNN) は、ニューラル・ネットワークに畳み込み層を追加します。数学における畳み込みとは、ある関数が別の関数の形状を変更する(または畳み込み を行う)操作です。CNNでは、畳み込み層を使用して重み付けされた「フィルター」を適用し、データから重要な特徴量を抽出します。CNNは主にコンピューター・ビジョンや画像データに関連付けられていますが、他にも多くの重要なユースケースがあります。
リカレント・ニューラル・ネットワーク(RNN) は、連続データを処理するように設計されています。従来のフィードフォワード・ニューラルネットワークでは、1つの入力を1つの出力にマッピングするのに対し、RNNは、入力のシーケンスを1つの出力にマッピングします。これは入力シーケンス内の特定のステップに対する出力が、後に続くステップの計算に対する入力として機能するという再帰ループで実行します。これにより、RNNは文脈と順序を理解できるようになります。
2017 年に初めて導入されたトランスフォーマー・モデルは、LLMやその他の生成AIの柱の出現に大きく貢献し、機械学習のほとんどのサブドメインで最先端の結果を達成しました。RNNと同様に、トランスフォーマーは表向きはシーケンシャル・データ用に設計されていますが、賢明な回避策により、ほとんどのデータ・モダリティーをトランスフォーマーで処理できるようになりました。トランスフォーマー・モデルの独自の強みは、革新的な注意メカニズムにあります。このメカニズムにより、モデルはシーケンス内の特定の瞬間に最も関連性の高いインプットの部分に選択的に焦点を絞ることができます。
Mambaモデルは、状態空間モデル(SSM)の独自のバリエーションに基づいて2023年に初めて導入された比較的新しいニューラル・ネットワーク・アーキテクチャーです。トランスフォーマーと同様、Mambaモデルでは、特定の瞬間に最も関連性の高い情報を選択的に優先させる革新的な手段を提供します。Mambaでは最近、特にLLMにとって、Transformerアーキテクチャーのライバルとして浮上しています。
機械学習のほとんどのアプリケーションは、主にユースケースと使用するデータ・モダリティーによって定義される以下のカテゴリーのいずれか、あるいは複数に当てはまります。
コンピューター・ビジョンは、医療診断から顔認識、自動運転車に至るまで、画像データ、動画データ、「見る」モデルや機械を必要とするその他のデータ・モダリティーに関係するAIのサブ領域です。コンピューター・ビジョンの注目すべきサブフィールドには、画像分類、オブジェクト検知、画像セグメンテーション、光学文字認識(OCR)などがあります。
自然言語処理 (NLP)の分野は、テキスト、音声、その他の言語データに関するさまざまなタスクにわたります。NLP の注目すべき下位分類としては、チャットボット、音声認識、言語翻訳、感情分析、テキスト生成、要約、 AI エージェントなどがあります。最新のNLPでは、大規模言語モデルにより、前例のないペースで最先端のテクノロジーが発展し続けています。
時系列モデルは、異常検知、市場分析、関連するパターン認識または予測タスクに適用されます。さまざまな予測のユースケースで、過去のデータを用いた機械学習を使用します。
拡散モデル、変分オートエンコーダー(VAE) 、敵対的生成ネットワーク(GAN)を使用して、トレーニング・データから学習したピクセル・パターンを適用する元の画像を生成できます。
機械学習運用(MLOps)は、機械学習モデルの構築、デプロイ、保守に組立ラインアプローチを実装するための一連のプラクティスです。
トレーニング・データの慎重なキュレーションと前処理、および適切なモデルの選択は、MLOps パイプラインの重要なステップです。モデルが(トレーニングデータへの単なる過剰適合ではなく)一般化を適切に実行できるようにするには、ベンチマーク・データセットの設計から、特定の性能メトリクスの優先順位付けまで、トレーニング後の検証を丁寧に行う必要があります。
デプロイメント後、モデルのドリフト、推論効率の問題、その他の悪影響の発生がないかモデルを監視する必要があります。特に規制の厳しい業種や変化の激しい業種では、モデルガバナンスの明確な実践が継続的な有効性に不可欠です。
機械学習プロジェクトの構築、トレーニング、テスト用に、数多くのオープンソース・ツール、ライブラリー、フレームワークが存在します。このようなライブラリは、MLベースのモデルとワークフローの構築プロセスを効率化するために、事前構成された一連のモジュールと抽象化を提供しますが、実践者はそれらを最大限に活用するために、一般的に使用されるプログラミング言語、特にPythonに精通している必要があります。
特にディープラーニング・モデルの構築用の主要なオープン・ソース・ライブラリとしては、 PyTorch 、 TensorFlow 、Keras、Hugging Face Transformers ライブラリなどがあります。
従来の ML に重点を置いた注目すべきオープンソースの機械学習ライブラリとツールキットには、Pandas、 Scikit-learn 、 XGBoost 、 Matplotlib 、SciPy、NumPy などがあります。
IBM自体が、初心者から上級のML実践者までを対象とした重要なチュートリアルライブラリーを維持および更新しています。
AI開発者向けの次世代エンタープライズ・スタジオであるIBM watsonx.aiを使用して、生成AI、基盤モデル、機械学習機能をトレーニング、検証、チューニング、導入しましょう。わずかなデータとわずかな時間でAIアプリケーションを構築できます。
業界をリードするIBMのAI専門知識とソリューション製品群を使用すれば、ビジネスにAIを活用できます。
AIの導入で重要なワークフローと業務を再構築し、エクスペリエンス、リアルタイムの意思決定とビジネス価値を最大化します。
1. 「Some Studies in Machine Learning Using the Game of Checkers」IBM Journal(MITを通じてアクセス)、1959年7月3日
2. 「Using Decision Trees as an Expert System for Clinical Decision Support for COVID-19」Interactive Journal of Medical Research, Vol 12、2023年1月30日
3. 「Kolmogorov’s Mapping Neural Network Existence Theorem」Proceedings of the IEEE First International Conference on Neural Networks(ウォータールー大学を通じてアクセス)、1987年
4. 「Multilayer Feedforward Networks with a Non-Polynomial Activation Function Can Approximate Any Function」Center for Research on Information Systems(ニューヨーク大学)1992年3月