機械学習の用語集

この用語集では、機械学習の用語を定義します。

A

アブレーション

特徴またはコンポーネントをモデルから一時的に削除して、その重要性を評価する手法。次に、その特徴またはコンポーネントのないモデルを再トレーニングします。再トレーニングしたモデルのパフォーマンスが大幅に低下した場合、削除された特徴またはコンポーネントが重要だった可能性があります。

たとえば、10 個の特徴量で分類モデルをトレーニングし、テストセットで 88% の精度を達成したとします。最初の特徴量の重要度を確認するには、他の 9 つの特徴量のみを使用してモデルを再トレーニングできます。再トレーニングしたモデルのパフォーマンスが大幅に低下した場合(精度が 55% など)、削除された特徴量が重要だった可能性があります。逆に、再トレーニングしたモデルのパフォーマンスが同等であれば、その特徴はそれほど重要ではなかった可能性があります。

アブレーションは、次のような要素の重要性を特定するうえでも役立ちます。

  • 大規模な ML システムのサブシステム全体など、大規模なコンポーネント
  • プロセスまたは手法(データの前処理ステップなど)

どちらの場合も、コンポーネントを削除した後のシステムのパフォーマンスの変化(または変化なし)を確認します。

A/B テスト

2 つ(またはそれ以上)の手法(AB)を統計的に比較する方法。通常、A は既存の手法で、B は新しい手法です。A/B テストでは、どの手法のパフォーマンスが優れているかだけでなく、その差が統計的に有意かどうかも判断できます。

A/B テストでは通常、2 つの手法の単一の指標を比較します。たとえば、2 つの手法のモデルの精度を比較します。ただし、A/B テストでは、有限の数の指標を比較することもできます。

アクセラレータ チップ

#GoogleCloud

ディープ ラーニング アルゴリズムに必要な主要な計算を実行するように設計された、特殊なハードウェア コンポーネントのカテゴリ。

アクセラレータ チップ(略してアクセラレータ)を使用すると、汎用 CPU と比較してトレーニング タスクと推論タスクの速度と効率を大幅に向上させることができます。ニューラル ネットワークのトレーニングや、同様の計算負荷の高いタスクに最適です。

アクセラレータ チップの例としては、次のようなものがあります。

  • Google の Tensor Processing Unit(TPU)と、ディープ ラーニング専用のハードウェア。
  • NVIDIA の GPU は、元々はグラフィック処理用に設計されていますが、並列処理を可能にするように設計されているため、処理速度を大幅に向上させることができます。

accuracy

#fundamentals
#Metric

正しい分類予測数を予測の合計数で割った値。具体的には、次のことが求められます。

Accuracy=correct predictionscorrect predictions + incorrect predictions 

たとえば、40 件の予測を正しく行い、10 件の予測を誤ったモデルの精度は次のようになります。

Accuracy=4040 + 10=80%

バイナリ分類では、正しい予測誤った予測のさまざまなカテゴリに固有の名前が付けられます。したがって、バイナリ分類の精度の式は次のとおりです。

Accuracy=TP+TNTP+TN+FP+FN

ここで

  • TP は、真陽性(正しい予測)の数です。
  • TN は、真陰性(正しい予測)の数です。
  • FP は、偽陽性(誤った予測)の数です。
  • FN は、偽陰性(誤った予測)の数です。

精度を 適合率再現率と比較します。

状況によっては有用な指標ですが、他の状況では誤解を招く可能性があります。特に、精度は通常、クラスのバランスが取れていないデータセットを処理する分類モデルを評価するための指標としては不適切です。

たとえば、ある亜熱帯都市で雪が降るのは 100 年に 25 日間だけであるとします。雪が降らない日(負のクラス)が雪が降る日(正のクラス)よりもはるかに多いため、この都市の雪データセットはクラスのバランスが崩れています。毎日雪が降るか降らないかを予測するはずのバイナリ分類モデルが、毎日「雪なし」と予測するとします。このモデルは非常に正確ですが、予測力はありません。次の表に、100 年間の予測の結果をまとめます。

カテゴリ 数値
TP 0
TN 36499
FP 0
FN 25

したがって、このモデルの精度は次のようになります。

accuracy = (TP + TN) / (TP + TN + FP + FN)
accuracy = (0 + 36499) / (0 + 36499 + 0 + 25) = 0.9993 = 99.93%

精度が 99.93% と非常に高いように見えますが、実際にはモデルに予測力はありません。

クラスのバランスが取れていないデータセットでトレーニングされたモデルを評価する場合、通常、精度再現率精度よりも有用な指標です。


詳細については、ML 集中講座の分類: 精度、再現率、適合率、関連指標をご覧ください。

アクション

#rl

強化学習では、エージェント環境状態を遷移するメカニズムです。エージェントは、ポリシーを使用してアクションを選択します。

活性化関数

#fundamentals

ニューラル ネットワークが特徴とラベルの間の非線形(複雑)な関係を学習できるようにする関数。

一般的な活性化関数には次のようなものがあります。

活性化関数のグラフは単一の直線ではありません。たとえば、ReLU 活性化関数のグラフは 2 本の直線で構成されています。

2 本の線の直交座標プロット。最初の線は、y 値が常に 0 で、x 軸に沿って -∞,0 から 0,-0 まで延びています。2 行目は 0,0 から始まります。この線の傾きは +1 であるため、0,0 から +∞,+∞ まで延びています。

シグモイド活性化関数のグラフは次のようになります。

2 次元の曲線プロット。X 値は -∞ から +∞ の範囲にまたがり、Y 値はほぼ 0 からほぼ 1 の範囲にまたがっています。x が 0 の場合、y は 0.5 です。曲線の傾斜は常に正で、0,0.5 で最大になり、x の絶対値が増加するにつれて徐々に減少します。

ニューラル ネットワークでは、活性化関数はニューロンへのすべての入力の加重合計を操作します。ニューロンは、重み付きの合計を計算するために、関連する値と重みの積を合計します。たとえば、ニューロンに関連する入力が次のように構成されているとします。

入力値 入力重み
2 -1.3
-1 0.6
3 0.4
したがって、加重和は次のようになります。
weighted sum = (2)(-1.3) + (-1)(0.6) + (3)(0.4) = -2.0
このニューラル ネットワークの設計者が、シグモイド関数を活性化関数として選択したとします。この場合、ニューロンは -2.0 のシグモイド(約 0.12)を計算します。したがって、ニューロンはニューラル ネットワークの次のレイヤに -2.0 ではなく 0.12 を渡します。次の図は、プロセスの関連部分を示しています。

3 つの特徴を持つ入力層。3 つの特徴値と 3 つの重みを隠れ層のニューロンに渡します。隠れ層は元の値(-2.0)を計算し、元の値を活性化関数に渡します。アクティベーション関数は、元の値の sigmoid を計算し、結果(0.12)をニューラル ネットワークの次のレイヤに渡します。


詳細については、ML 集中講座のニューラル ネットワーク: 活性化関数をご覧ください。

能動的学習

アルゴリズムが学習するデータの一部を選択するトレーニング アプローチ。アクティブ ラーニングは、ラベル付きの例が不足している場合や、入手するのが高価な場合に特に有用です。能動的学習アルゴリズムは、ラベル付きのさまざまな例を盲目的に探すのではなく、学習に必要な特定の範囲の例を選択的に探します。

AdaGrad

パラメータの勾配を再スケーリングし、各パラメータに独立した学習率を効果的に付与する高度な勾配降下アルゴリズム。詳細については、オンライン学習と確率的最適化のための適応型サブグラディエント法をご覧ください。

エージェント

#rl

強化学習では、ポリシーを使用して、環境状態間の遷移から得られる期待されるリターンを最大化するエンティティ。

より一般的な意味で、エージェントとは、目標を達成するために一連のアクションを自律的に計画して実行し、環境の変化に適応できるソフトウェアです。たとえば、LLM ベースのエージェントは、強化学習ポリシーを適用するのではなく、LLM を使用してプランを生成できます。

アグロメレーション クラスタリング

#clustering

階層型クラスタリングをご覧ください。

異常検出

外れ値を特定するプロセス。たとえば、特定の特徴量の平均が 100 で標準偏差が 10 の場合、異常検出では 200 の値が疑わしいとフラグが立てられます。

AR

拡張現実の略。

PR 曲線の下の面積

#Metric

PR AUC(PR 曲線の下の面積)をご覧ください。

ROC 曲線の下の面積

#Metric

AUC(ROC 曲線の下の面積)をご覧ください。

汎用人工知能

幅広い問題解決、創造性、適応性を示す非人間のメカニズム。たとえば、人工汎用知能を示すプログラムは、テキストを翻訳したり、交響曲を作曲したり、まだ発明されていないゲームで優れた能力を発揮したりできます。

人工知能

#fundamentals

複雑なタスクを解決できる人間以外のプログラムまたはモデル。たとえば、テキストを翻訳するプログラムやモデル、放射線画像から疾患を特定するプログラムやモデルはどちらも人工知能を備えています。

正式には、機械学習は人工知能のサブフィールドです。しかし、近年、一部の組織では「人工知能」と「機械学習」という用語を同義に使用し始めています。

Attention、

#language

特定の単語または単語の一部が重要であることを示すために、ニューラル ネットワークで使用されるメカニズム。アテンションは、モデルが次のトークンまたは単語を予測するために必要な情報量を圧縮します。一般的なアテンション メカニズムは、入力セットの加重和で構成されます。各入力の重みは、ニューラル ネットワークの別の部分で計算されます。

Transformer の構成要素である自己注意マルチヘッド自己注意も参照してください。

セルフ アテンションの詳細については、機械学習集中講座の LLM: 大規模言語モデルとはをご覧ください。

属性

#fairness

特徴と同義。

ML の公平性では、属性は個人に関連する特性を指すことが多いです。

属性サンプリング

#df

ディシジョン フォレストをトレーニングするための戦術。各ディシジョン ツリーは、条件を学習するときに、可能な特徴のランダムなサブセットのみを考慮します。通常、ノードごとに異なる特徴量のサブセットがサンプリングされます。一方、属性サンプリングなしで決定木をトレーニングする場合、各ノードに対して考えられるすべての特徴が考慮されます。

AUC(ROC 曲線の下の面積)

#fundamentals
#Metric

0.0 ~ 1.0 の数値。バイナリ分類モデルが正クラス負クラスを分離する能力を表します。AUC が 1.0 に近いほど、モデルがクラスを区別する能力が高くなります。

たとえば、次の図は、正クラス(緑色の楕円)と負クラス(紫色の長方形)を完全に分離する分類モデルを示しています。この現実離れした完璧なモデルの AUC は 1.0 です。

一方に 8 つのポジティブ サンプル、もう一方に 9 つのネガティブ サンプルがある数直線。

一方、次の図は、ランダムな結果を生成する分類モデルの結果を示しています。このモデルの AUC は 0.5 です。

6 つのポジティブ サンプルと 6 つのネガティブ サンプルを含む数直線。サンプルの順序は、正、負、正、負、正、負、正、負、正、負、正、負です。

はい。上記のモデルの AUC は 0.0 ではなく 0.5 です。

ほとんどのモデルは、両極端の中間にあります。たとえば、次のモデルは正と負をある程度分離しているため、AUC は 0.5 ~ 1.0 の範囲にあります。

6 つのポジティブ サンプルと 6 つのネガティブ サンプルを含む数直線。サンプルの順序は、負、負、負、負、正、負、正、正、負、正、正、正です。

AUC では、分類しきい値に設定した値は無視されます。代わりに、AUC は可能な分類しきい値をすべて考慮します。

AUC は、ROC 曲線の下の面積を表します。たとえば、正例と負例を完全に分離するモデルの ROC 曲線は次のようになります。

直交グラフ。X 軸は偽陽性率、Y 軸は真陽性率です。グラフは 0,0 から始まり、まっすぐ上に 0,1 まで上がり、まっすぐ右に進んで 1,1 で終了します。

AUC は、上の図のグレーの領域の面積です。この異例なケースでは、面積はグレー領域の長さ(1.0)にグレー領域の幅(1.0)を掛けたものです。したがって、1.0 と 1.0 の積は正確に 1.0 の AUC になります。これは、可能な限り高い AUC スコアです。

逆に、クラスをまったく分離できない分類モデルの ROC 曲線は次のとおりです。このグレーの領域の面積は 0.5 です。

直交グラフ。X 軸は偽陽性率、Y 軸は真陽性率です。グラフは 0,0 から始まり、斜めに 1,1 まで伸びています。

一般的な ROC 曲線は次のようになります。

直交グラフ。X 軸は偽陽性率、Y 軸は真陽性率です。グラフは 0,0 から始まり、不規則な弧を描いて 1,0 に至ります。

この曲線の下の面積を手動で計算するのは大変な作業です。そのため、通常はプログラムで AUC 値のほとんどを計算します。


AUC は、分類モデルが、無作為に選択した陽性のサンプルが陽性に分類される確率が、無作為に選択した陰性のサンプルが陽性に分類される確率よりも高い可能性を表します。


詳細については、機械学習集中講座の分類: ROC と AUC をご覧ください。

拡張現実

#image

コンピュータ生成の画像をユーザーの現実世界ビューに重ねて、合成ビューを提供する技術。

オートエンコーダ

#language
#image

入力から最も重要な情報を抽出することを学習するシステム。オートエンコーダは、エンコーダデコーダの組み合わせです。オートエンコーダは、次の 2 段階のプロセスに依存します。

  1. エンコーダは、入力を(通常は)非圧縮の低次元(中間)形式にマッピングします。
  2. デコーダは、低次元形式を元の高次元入力形式にマッピングすることで、元の入力の非可逆バージョンを構築します。

オートエンコーダは、デコーダがエンコーダの中間形式から元の入力をできるだけ正確に再構成しようとすることで、エンドツーエンドでトレーニングされます。中間形式は元の形式よりも小さい(低次元)ため、オートエンコーダは入力内のどの情報が重要かを学習する必要があります。出力は入力と完全には一致しません。

次に例を示します。

  • 入力データがグラフィックの場合、正確でないコピーは元のグラフィックに似ていますが、多少変更されています。正確でないコピーでは、元のグラフィックからノイズが除去されたり、欠落しているピクセルが埋め込まれたりする可能性があります。
  • 入力データがテキストの場合、オートエンコーダは元のテキストを模倣した(ただし同一ではない)新しいテキストを生成します。

変分オートエンコーダもご覧ください。

自動評価

#language
#generativeAI

ソフトウェアを使用してモデルの出力の品質を判断する。

モデルの出力が比較的単純な場合は、スクリプトまたはプログラムでモデルの出力をゴールドレスポンスと比較できます。このタイプの自動評価は、プログラムによる評価とも呼ばれます。ROUGEBLEU などの指標は、プログラムによる評価に役立ちます。

モデルの出力が複雑であるか、正解が 1 つではない場合は、自動採点ツールと呼ばれる別の ML プログラムが自動評価を実行することがあります。

人間による評価とは対照的です。

自動化バイアス

#fairness

自動化された意思決定システムが誤りを犯した場合でも、人間の意思決定者が自動化されていない情報よりも自動化された意思決定システムによる推奨事項を優先する場合。

詳細については、ML 集中講座の公平性: バイアスの種類をご覧ください。

AutoML

機械学習 モデルを構築するための自動化プロセス。AutoML は、次のようなタスクを自動的に実行できます。

AutoML は、機械学習パイプラインの開発にかかる時間と労力を節約し、予測精度を向上させることができるため、データ サイエンティストに役立ちます。複雑な ML タスクをより簡単に利用できるようにすることで、専門家以外のユーザーにも役立ちます。

詳細については、機械学習集中講座の自動 ML(AutoML)をご覧ください。

自動評価

#language
#generativeAI
生成 AI モデルの出力の品質を判断するハイブリッド メカニズム。人間による評価自動評価を組み合わせています。自動評価ツールは、人間による評価によって作成されたデータに基づいてトレーニングされた ML モデルです。理想的には、自動評価ツールは人間のエバリュエータを模倣するように学習します。

事前構築された自動評価ツールを使用できますが、最適な自動評価ツールは、評価するタスクに固有にファインチューニングされています。

自己回帰モデル

#language
#image
#generativeAI

独自の過去の予測に基づいて予測を推定するモデル。たとえば、自己回帰言語モデルは、以前に予測されたトークンに基づいて次のトークンを予測します。Transformer ベースの大規模言語モデルはすべて自動回帰型です。

一方、GAN ベースの画像モデルは、ステップで反復処理せずに 1 回の順方向パスで画像を生成するため、通常は自己回帰的ではありません。ただし、特定の画像生成モデルは、画像を段階的に生成するため、自己回帰的です。

補助損失

損失関数 - ニューラル ネットワークモデルのメイン損失関数とともに使用され、重みがランダムに初期化される初期反復処理中にトレーニングを加速するのに役立ちます。

補助損失関数は、効果的な勾配を前のレイヤにプッシュします。これにより、勾配の消失の問題に対処して、トレーニング中の収束が容易になります。

k での平均適合率

#language
#Metric

書籍のおすすめの番号付きリストなど、ランク付けされた結果を生成する単一のプロンプトでのモデルのパフォーマンスを要約するための指標。k での平均適合率は、各関連結果の k での適合率値の平均です。したがって、k での平均適合率の計算式は次のようになります。

average precision at k=1ni=1nprecision at k for each relevant item

ここで

  • n は、リスト内の関連アイテムの数です。

k での再呼び出しとは対照的です。

大規模言語モデルに次のクエリが与えられたとします。

List the 6 funniest movies of all time in order.

大規模言語モデルは次のリストを返します。

  1. 全般
  2. Mean Girls
  3. Platoon
  4. ブライズメイズ 史上最悪のウェディングプラン
  5. Citizen Kane
  6. This is Spinal Tap
返されたリストの映画のうち 4 本は非常に面白い(つまり関連性が高い)ですが、2 本はドラマ(関連性なし)です。次の表に結果の詳細を示します。
位置 映画 関連性が高いか? k での適合率
1 全般 1.0
2 Mean Girls 1.0
3 Platoon いいえ 関連性なし
4 ブライズメイズ 史上最悪のウェディングプラン 0.75
5 Citizen Kane いいえ 関連性なし
6 This is Spinal Tap 0.67

関連する結果の数は 4 件です。したがって、6 での平均適合率は次のように計算できます。

average precision at 6=14(1.0 + 1.0 + 0.75 + 0.67)
average precision at 6=~0.85

軸合わせ条件

#df

ディシジョン ツリーでは、単一の特徴のみを含む条件。たとえば、area が特徴である場合、次は軸に沿った条件です。

area > 200

斜めの条件とは対照的です。

B

誤差逆伝播法

#fundamentals

ニューラル ネットワーク勾配降下を実装するアルゴリズム。

ニューラル ネットワークのトレーニングでは、次の 2 パス サイクルを何度もiterationsします。

  1. 順伝播中、システムはサンプルバッチを処理して予測を生成します。システムは、各予測を各ラベル値と比較します。予測値とラベル値の差が、その例の損失です。システムは、すべてのサンプルの損失を集計して、現在のバッチの合計損失を計算します。
  2. バックワード パス(バックプロパゲーション)では、システムはすべての隠れ層のすべてのニューロンの重みを調整することで損失を低減します。

ニューラル ネットワークには、多くの隠れ層に多くのニューロンが含まれていることがよくあります。これらのニューロンはそれぞれ、さまざまな方法で全体的な損失に貢献します。バックプロパゲーションでは、特定のニューロンに適用される重みを増やすか減らすかを決定します。

学習率は、各バックワード パスで各重みを増減する程度を制御する乗数です。学習率が大きいほど、各重みが増減する量は小さい学習率の場合よりも多くなります。

微分学の言葉で言えば、バックプロパゲーションでは微分学からチェーンルールを実装します。つまり、バックプロパゲーションでは、各パラメータに対するエラーの偏導関数が計算されます。

数年前、ML 担当者はバックプロパゲーションを実装するためのコードを記述する必要がありました。Keras などの最新の ML API では、バックプロパゲーションを実装できます。さて、

詳細については、ML 集中講座のニューラル ネットワークをご覧ください。

バギング

#df

アンサンブルトレーニングする方法。各構成要素のモデルは、置換サンプリングされたトレーニング サンプルのランダムなサブセットでトレーニングします。たとえば、ランダム フォレストは、バギングでトレーニングされたディシジョン ツリーのコレクションです。

bagging という用語は、bootstrap aggregating の略です。

詳細については、意思決定木コースのランダム フォレストをご覧ください。

バッグ オブ ワード

#language

語句や文章内の単語の表現(順序は問いません)。たとえば、バッグ オブ ワードは次の 3 つのフレーズを同じ方法で表します。

  • 犬がジャンプする
  • 犬に飛びかかる
  • 犬が

各単語は、スパース ベクトルのインデックスにマッピングされます。このベクトルには、語彙内のすべての単語のインデックスが含まれています。たとえば、「犬が飛び跳ねる」というフレーズは、単語「犬」、「飛び跳ねる」に対応する 3 つのインデックスでゼロ以外の値を持つ特徴ベクトルにマッピングされます。ゼロ以外の値は次のいずれかになります。

  • 単語が存在することを示す 1。
  • バッグに単語が出現する回数。たとえば、フレーズが「the maroon dog is a dog with maroon fur」の場合、maroondog の両方が 2 として表され、他の単語は 1 として表されます。
  • 単語がバッグに出現する回数のログなど、その他の値。

ベースライン

#Metric

別のモデル(通常はより複雑なモデル)のパフォーマンスを比較するための参照点として使用されるモデル。たとえば、ロジスティック回帰モデルは、ディープラーニング モデルの優れたベースラインとして機能します。

特定の問題の場合、ベースラインは、新しいモデルが有用であるために新しいモデルが達成する必要がある最小の期待パフォーマンスをモデル デベロッパーが定量化するために役立ちます。

Batch

#fundamentals

1 回のトレーニングの反復で使用されるサンプルのセット。バッチサイズによって、バッチ内のサンプル数が決まります。

バッチとエポックの関連については、エポックをご覧ください。

詳細については、機械学習集中講座の線形回帰: ハイパーパラメータをご覧ください。

バッチ推論

#TensorFlow
#GoogleCloud

小さなサブセット(「バッチ」)に分割された複数のラベルなしの例に対する予測を推論するプロセス。

バッチ推論では、アクセラレータ チップの並列化機能を利用できます。つまり、複数のアクセラレータがラベルのないサンプルの異なるバッチで予測を同時に推論できるため、1 秒あたりの推論数が大幅に増加します。

詳細については、ML 集中講座の本番環境の ML システム: 静的推論と動的推論をご覧ください。

バッチ正規化

隠れ層活性化関数の入力または出力を正規化します。バッチ正規化には次の利点があります。

バッチサイズ

#fundamentals

バッチ内のサンプルの数。たとえば、バッチサイズが 100 の場合、モデルは 1 回の反復処理で 100 個のサンプルを処理します。

一般的なバッチサイズ戦略は次のとおりです。

  • 確率的勾配降下法(SGD): バッチサイズが 1 です。
  • フルバッチ。バッチサイズは、トレーニング セット全体のサンプル数です。たとえば、トレーニング セットに 100 万のサンプルが含まれている場合、バッチサイズは 100 万のサンプルになります。通常、フルバッチは非効率的な戦略です。
  • ミニバッチ: バッチサイズは通常 10 ~ 1,000 です。通常、ミニバッチが最も効率的な戦略です。

詳しくは以下をご覧ください。

ベイズ ニューラル ネットワーク

重みと出力の不確実性を考慮した確率的ニューラル ネットワーク。標準のニューラル ネットワーク回帰モデルは通常、スカラー値を予測します。たとえば、標準モデルは住宅価格を 853,000 と予測します。一方、ベイジアン ニューラル ネットワークは値の分布を予測します。たとえば、ベイジアン モデルは、標準偏差 67,200 の住宅価格 853,000 を予測します。

ベイズ ニューラル ネットワークは、 ベイズの定理に基づいて、重みと予測の不確実性を計算します。ベイジアン ニューラル ネットワークは、医薬品に関連するモデルなど、不確実性を定量化することが重要な場合に役立ちます。ベイズ ニューラル ネットワークは、過剰適合を防ぐのにも役立ちます。

ベイズ最適化

計算コストの高い目的関数を最適化する確率的回帰モデル手法。ベイズ学習手法を使用して不確実性を定量化するサロゲートを最適化します。ベイズ最適化自体は非常に費用がかかるため、通常は、ハイパーパラメータの選択など、パラメータ数が少なく評価に費用がかかるタスクを最適化するために使用されます。

ベルマン方程式

#rl

強化学習では、最適な Q 関数によって次の同一性が満たされます。

Q(s,a)=r(s,a)+γEs|s,amaxaQ(s,a)

強化学習アルゴリズムはこの ID を適用して、次の更新ルールを使用して Q 学習を作成します。

Q(s,a)Q(s,a)+α[r(s,a)+γmaxa1Q(s,a)Q(s,a)]

ベルマンの式は、強化学習以外にも動的プログラミングに応用できます。 ベルマン方程式の Wikipedia エントリをご覧ください。

BERT(Bidirectional Encoder Representations from Transformers)

#language

テキストの表現用のモデル アーキテクチャ。トレーニング済みの BERT モデルは、テキスト分類やその他の ML タスク用の大規模モデルの一部として機能できます。

BERT には次の特徴があります。

BERT のバリエーションには次のようなものがあります。

BERT の概要については、オープンソース化された BERT: 自然言語処理の最先端の事前トレーニングをご覧ください。

バイアス(倫理/公平性)

#fairness
#fundamentals

1. 特定のこと、人、グループに対する固定観念、偏見、またはえこひいき。こうしたバイアスは、データの収集と解釈、システムの設計、ユーザーがシステムを操作する方法に影響する可能性があります。このタイプのバイアスには次のようなものがあります。

2. サンプリングや報告の手順で体系的に生じたエラー。このタイプのバイアスには次のようなものがあります。

機械学習モデルのバイアス項予測バイアスと混同しないでください。

詳細については、ML 集中講座の公平性: バイアスの種類をご覧ください。

バイアス(数学)またはバイアス項

#fundamentals

原点からの切片またはオフセット。バイアスは機械学習モデルのパラメータで、次のいずれかで表されます。

  • b
  • w0

たとえば、バイアスは次の式の b です。

y=b+w1x1+w2x2+wnxn

単純な 2 次元線の場合、バイアスは「y 切片」を意味します。たとえば、次の図の線のバイアス値は 2 です。

傾き 0.5、バイアス(y 切片)2 の線のグラフ。

バイアスが存在するのは、すべてのモデルが原点(0,0)から始まるわけではありません。たとえば、遊園地の入場料が 2 ユーロで、滞在時間 1 時間ごとに 0.5 ユーロの追加料金が発生するとします。したがって、合計費用をマッピングするモデルには 2 ユーロの最小費用があるため、バイアスが 2 になります。

バイアスは、倫理と公平性に関するバイアス予測バイアスとは異なります。

詳細については、機械学習集中講座の線形回帰をご覧ください。

双方向

#language

ターゲット テキストの区間のの両方のテキストを評価するシステムを説明する用語。一方、単方向システムは、ターゲット セクションのテキストのにあるテキストのみを評価します。

たとえば、次の質問で下線付きの単語の確率を決定する必要があるマスクされた言語モデルについて考えてみましょう。

お客様の _____ は

一方通行の言語モデルでは、「What」、「is」、「the」という単語から得られるコンテキストのみに基づいて確率を算出する必要があります。一方、双方向言語モデルは「with」と「you」からコンテキストを取得できるため、モデルがより良い予測を生成できる可能性があります。

双方向言語モデル

#language

言語モデル。テキストの抜粋内の特定の位置に特定のトークンが存在する可能性を、その前後のテキストに基づいて判断します。

ビグラム

#seq
#language

N=2 のN グラム

バイナリ分類

#fundamentals

相互に排他的な 2 つのクラスのうちの 1 つを予測する分類タスクの一種。

たとえば、次の 2 つの ML モデルはそれぞれバイナリ分類を行います。

  • メール メッセージがスパム(正クラス)かスパム以外(負クラス)かを判断するモデル。
  • 医学的な症状を評価して、特定の病気(陽性クラス)にかかっているか、かかっていないか(陰性クラス)を判断するモデル。

マルチクラス分類とは対照的です。

ロジスティック回帰分類しきい値もご覧ください。

詳細については、ML 集中講座の分類をご覧ください。

バイナリ条件

#df

ディシジョン ツリーで、結果が 2 つ(通常は「はい」または「いいえ」)しかない条件。たとえば、次はバイナリ条件です。

temperature >= 100

バイナリ以外の条件とは対照的です。

詳細については、決定木コースの条件の種類をご覧ください。

ビニング

バケット化と同義。

BLEU(Bilingual Evaluation Understudy)

#language

スペイン語から日本語への機械翻訳を評価するための 0.0 ~ 1.0 の指標。

スコアを計算するために、BLEU は通常、ML モデルの翻訳(生成テキスト)を人間の専門家の翻訳(参照テキスト)と比較します。生成されたテキストと参照テキストのn グラムの一致度によって、BLEU スコアが決まります。

この指標に関する元の論文は、BLEU: a Method for Automatic Evaluation of Machine Translation です。

BLEURT もご覧ください。

BLEURT(Bilingual Evaluation Understudy from Transformers)

#language

ある言語から別の言語への機械翻訳(特に英語との間の翻訳)を評価するための指標。

英語との間の翻訳では、BLEURT は BLEU よりも人間の評価に近づいています。BLEU とは異なり、BLEURT は意味の類似性を重視し、パラフレーズに対応できます。

BLEURT は、事前トレーニング済みの大規模言語モデル(正確には BERT)に依存し、人間の翻訳者のテキストでファイン チューニングされます。

この指標に関する元の論文は BLEURT: Learning Robust Metrics for Text Generation です。

ブースト

モデルが現在誤って分類している例を重み付けして、単純で精度が低い一連の分類子(「弱い」分類子)を反復的に組み合わせて、高精度の分類子(「強い」分類子)にする機械学習手法。

詳細については、ディシジョン フォレスト コースの勾配ブースト ディシジョン ツリーをご覧ください。

境界ボックス

#image

画像内の対象領域(下の画像の犬など)を囲む長方形の(xy)座標。

ソファに座っている犬の写真。左上の座標が(275, 1271)、右下の座標が(2954, 2761)の緑色の境界ボックスが犬の体を囲んでいる

ブロードキャスト

マトリックス演算のオペランドの形状を、その演算に対応するディメンションに拡張します。たとえば、線形代数では、行列加算演算の 2 つのオペランドのディメンションが同じである必要があります。したがって、形状が(m、n)のマトリックスを長さが n のベクトルに追加することはできません。ブロードキャストでは、各列に同じ値を複製することで、長さ n のベクトルを形状 (m, n) のマトリックスに仮想的に拡張し、このオペレーションを可能にします。

A と B の定義が次のとおりの場合、A と B のディメンションが異なるため、線形代数では A+B を禁止しています。

A = [[7, 10, 4],
     [13, 5, 9]]
B = [2]

一方、ブロードキャストでは、B を次のように仮想的に拡張することで、A+B のオペレーションが可能になります。

 [[2, 2, 2],
  [2, 2, 2]]

したがって、A+B は有効な演算になります。

[[7, 10, 4],  +  [[2, 2, 2],  =  [[ 9, 12, 6],
 [13, 5, 9]]      [2, 2, 2]]      [15, 7, 11]]

詳細については、NumPy でのブロードキャストの説明をご覧ください。

バケット化、

#fundamentals

単一の特徴量を複数のバイナリ特徴量(バケットまたはビン)に変換します。通常は値の範囲に基づいて変換します。切り捨てられた特徴量は通常、連続特徴量です。

たとえば、温度を単一の連続浮動小数点型の特徴量として表すのではなく、温度の範囲を個別のバケットに分割できます。次に例を示します。

  • 摂氏 10 度以下は「コールド」バケットになります。
  • 11 ~ 24 度が「温暖」バケットになります。
  • 25 度以上は「暖かい」バケットになります。

モデルは、同じバケット内のすべての値を同じ方法で処理します。たとえば、値 1322 はどちらも温帯バケットに含まれているため、モデルは 2 つの値を同じ方法で処理します。

温度を連続的な特徴として表すと、モデルは温度を単一の特徴として扱います。温度を 3 つのバケットとして表すと、モデルは各バケットを個別の特徴として扱います。つまり、モデルは各バケットとラベルの個別の関係を学習できます。たとえば、線形回帰モデルは、バケットごとに個別の重みを学習できます。

バケット数を増やすと、モデルが学習する関係の数が増えるため、モデルの複雑さが増します。たとえば、寒冷、温暖、暖かいバケットは、基本的にモデルがトレーニングする 3 つの個別の特徴です。フリーズとホットなど、さらに 2 つのバケットを追加する場合、モデルは 5 つの個別の特徴量でトレーニングする必要があります。

作成するバケットの数や、各バケットの範囲をどのように把握すればよいですか?通常、回答を得るにはかなりのテストが必要です。


詳細については、機械学習集中講座の数値データ: ビニングをご覧ください。

C

キャリブレーション レイヤ

予測後の調整。通常は予測バイアスを考慮して行います。調整後の予測と確率は、観測されたラベルセットの分布と一致する必要があります。

候補の生成

#recsystems

レコメンデーション システムによって選択された最初の一連の最適化案。たとえば、10 万タイトルを提供する書店について考えてみましょう。候補生成フェーズでは、特定のユーザーに適した書籍のリストが、500 冊程度に絞られます。しかし、500 冊でもユーザーにおすすめするには多すぎます。その後の、より費用のかかるおすすめシステムのフェーズ(スコアリング再ランク付けなど)では、この 500 件を、より小さく有用なおすすめのセットに絞り込みます。

詳細については、レコメンデーション システム コースの候補生成の概要をご覧ください。

候補サンプリング

トレーニング時の最適化。陽性ラベルの確率をすべて計算します(softmax などを使用して)。ただし、陰性ラベルについてはランダム サンプルに限ります。たとえば、beagledog というラベルが付いた例が与えられた場合、候補サンプリングは、次に示す予測確率と対応する損失項を計算します。

  • beagle
  • dog
  • 残りのネガティブ クラスのランダムなサブセット(catlollipopfence など)。

負のクラスは、正のクラスが常に適切な正の強化を得ている限り、負の強化をより少ない頻度で学習できるという考え方です。これは実際に経験的に観察されています。

候補サンプリングは、特に負のクラスの数が多い場合に、すべての負のクラスの予測を計算するトレーニング アルゴリズムよりも計算効率が高くなります。

カテゴリデータ

#fundamentals

特定の値のセットを持つ特徴。たとえば、traffic-light-state という名前のカテゴリ特徴について考えてみましょう。この特徴には、次の 3 つの値のいずれかしか設定できません。

  • red
  • yellow
  • green

traffic-light-state をカテゴリ特徴量として表現することで、モデルは redgreenyellow が運転行動に与える影響の違いを学習できます。

カテゴリ特徴は、離散特徴とも呼ばれます。

数値データとは対照的です。

詳細については、機械学習集中講座のカテゴリデータの操作をご覧ください。

因果言語モデル

#language

単方向言語モデルと同義。

言語モデルにおけるさまざまな方向性のアプローチを比較するには、双方向言語モデルをご覧ください。

centroid

#clustering

k 平均法またはk 中央値アルゴリズムによって決定されるクラスタの中心。たとえば、k が 3 の場合、K 平均法または K 中央値アルゴリズムは 3 つのセントロイドを見つけます。

詳細については、クラスタリング コースのクラスタ化アルゴリズムをご覧ください。

重心ベースのクラスタリング

#clustering

データを非階層クラスタに編成するクラスタリングアルゴリズムのカテゴリ。K 平均法は、最も広く使用されている重心ベースのクラスタリング アルゴリズムです。

階層クラスタリングアルゴリズムとは対照的です。

詳細については、クラスタリング コースのクラスタ化アルゴリズムをご覧ください。

Chain-of-Thought プロンプト

#language
#generativeAI

大規模言語モデル(LLM)が推論を段階的に説明するように促すプロンプト エンジニアリング手法。たとえば、次のプロンプトについて考えてみましょう。2 番目の文に特に注意してください。

時速 0 マイルから時速 60 マイルに 7 秒で達する自動車で、ドライバーが感じる g はいくつですか。回答に、関連するすべての計算を示します。

LLM のレスポンスは次のようになります。

  • 0、60、7 の値を適切な場所に挿入して、一連の物理学式を表示します。
  • これらの数式が選択された理由と、さまざまな変数の意味を説明します。

思考プロセス プロンプトを使用すると、LLM はすべての計算を実行するため、より正確な回答が得られる可能性があります。また、思考の流れプロンプトを使用すると、ユーザーは LLM のステップを調べて、回答が妥当かどうかを判断できます。

チャット

#language
#generativeAI

ML システム(通常は大規模言語モデル)とのやり取りの内容。チャットでの以前のやり取り(入力内容と大規模言語モデルの応答方法)が、チャットの後続部分のコンテキストになります。

chatbot は、大規模言語モデルのアプリケーションです。

チェックポイント

トレーニング中またはトレーニング完了後に、モデルのパラメータの状態をキャプチャするデータ。たとえば、トレーニング中に次のことを行えます。

  1. トレーニングを停止します。これは、意図的に行う場合もあれば、特定のエラーの結果として行う場合もあります。
  2. チェックポイントをキャプチャします。
  3. 後で、別のハードウェアでチェックポイントを再読み込みします。
  4. トレーニングを再開します。

クラス

#fundamentals

ラベルが属するカテゴリ。次に例を示します。

  • スパムを検出するバイナリ分類モデルでは、2 つのクラスは「スパム」と「スパム以外」になります。
  • 犬の品種を識別するマルチクラス分類モデルでは、クラスはプードル、ビーグル、パグなどです。

分類モデルはクラスを予測します。一方、回帰モデルはクラスではなく数値を予測します。

詳細については、ML 集中講座の分類をご覧ください。

分類モデル

#fundamentals

予測がクラスであるモデル。たとえば、次のすべてが分類モデルです。

  • 入力文の言語(フランス語?スペイン語?イタリア語)
  • 樹種を予測するモデル(メープル?オークですか?バオバブ?)。
  • 特定の医学的状態の陽性または陰性のクラスを予測するモデル。

一方、回帰モデルはクラスではなく数値を予測します。

一般的な分類モデルには次の 2 種類があります。

分類しきい値

#fundamentals

バイナリ分類では、0 ~ 1 の値で、ロジスティック回帰モデルの元の出力を、正クラスまたは負クラスの予測に変換します。分類しきい値は、モデル トレーニングによって選択される値ではなく、人間が選択する値です。

ロジスティック回帰モデルは、0 ~ 1 の元の値を出力します。以下の手順を行います。

  • この元の値が分類しきい値より大きい場合、正クラスが予測されます。
  • この元の値が分類しきい値より小さい場合、負のクラスが予測されます。

たとえば、分類しきい値が 0.8 であるとします。元の値が 0.9 の場合、モデルは正のクラスを予測します。元の値が 0.7 の場合、モデルは負のクラスを予測します。

分類しきい値の選択は、偽陽性偽陰性の数に大きく影響します。

モデルやデータセットが進化するにつれて、エンジニアは分類しきい値を変更することもあります。分類しきい値が変更されると、正のクラスの予測が突然負のクラスになることがあります。その逆も同様です。

たとえば、バイナリ分類の疾患予測モデルについて考えてみましょう。1 年目にシステムが実行された場合、次のようにします。

  • 特定の患者の元の値は 0.95 です。
  • 分類しきい値は 0.94 です。

したがって、システムは陽性のクラスを診断します。(患者は息をのんで「気分が悪い」)

1 年後、値は次のようになります。

  • 同じ患者の元の値は 0.95 のままです。
  • 分類しきい値が 0.97 に変更されます。

したがって、システムは、その患者を陰性クラスに再分類します。(「Happy day! 病気ではありません」)同じ患者。別の診断。


詳細については、機械学習集中講座のしきい値と混同行列をご覧ください。

分類器

#fundamentals

分類モデルの一般的な用語。

クラスの不均衡なデータセット

#fundamentals

各クラスのラベルの合計数が大きく異なる分類問題のデータセット。たとえば、2 つのラベルが次のように分割されているバイナリ分類データセットについて考えてみましょう。

  • 1,000,000 個の否定ラベル
  • 10 個の正のラベル

ネガティブ ラベルとポジティブ ラベルの比率は 100,000:1 であるため、これはクラスのバランスが取れていないデータセットです。

一方、次のデータセットは、負のラベルと正のラベルの比率が比較的 1 に近いため、クラスの不均衡ではありません

  • 517 件の否定ラベル
  • 483 個の正のラベル

マルチクラスのデータセットは、クラスの不均衡になることもあります。たとえば、次のマルチクラス分類データセットも、1 つのラベルの例が他の 2 つよりもはるかに多いため、クラスの不均衡があります。

  • クラスが「green」の 1,000,000 個のラベル
  • クラスが「purple」の 200 個のラベル
  • クラス「orange」の 350 個のラベル

エントロピー多数クラス少数クラスもご覧ください。

クリッピング

#fundamentals

次のいずれか、または両方を行うことで外れ値を処理する手法。

  • 最大しきい値を超える特徴量の値を最大しきい値まで減らす。
  • 最小しきい値未満の特徴値を最小しきい値まで増やす。

たとえば、特定の特徴の値の 0.5% 未満が 40 ~ 60 の範囲外にあるとします。この場合は、次のように対応できます。

  • 60(最大しきい値)を超えるすべての値を 60 にクリップします。
  • 40(最小しきい値)未満の値はすべて、40 に切り捨てられます。

外れ値はモデルに損傷を与え、トレーニング中に重みのオーバーフローを引き起こすことがあります。一部の外れ値は、精度などの指標を大幅に損なうこともあります。クリッピングは、損傷を制限する一般的な手法です。

勾配クリッピングは、トレーニング中に勾配値を指定された範囲内に強制します。

詳細については、機械学習集中講座の数値データ: 正規化をご覧ください。

Cloud TPU

#TensorFlow
#GoogleCloud

Google Cloud での ML ワークロードの高速化を目的として設計された特殊なハードウェア アクセラレータ。

クラスタリング

#clustering

関連するをグループ化します。これは特に、教師なし学習で重要です。すべての例がグループ化されたら、必要に応じて各クラスタに意味を付与できます。

クラスタリング アルゴリズムには多くの種類があります。たとえば、K 平均法アルゴリズムは、次の図に示すように、重心への近さに基づいてサンプルをクラスタ化します。

X 軸に「木の幅」、Y 軸に「木の高さ」とラベルが付けられた 2 次元グラフ。このグラフには、2 つの重心と数十個のデータポイントが含まれています。データポイントは近接性に基づいて分類されます。つまり、一方のセントロイドに最も近いデータポイントはクラスタ 1 に分類され、もう一方のセントロイドに最も近いデータポイントはクラスタ 2 に分類されます。

人間の研究者は、クラスタを確認して、クラスタ 1 を「矮小な木」に、クラスタ 2 を「フルサイズの木」にラベル付けできます。

別の例として、中心点からのサンプルの距離に基づくクラスタリング アルゴリズムについて考えてみましょう。次に例を示します。

ダーツボードの中心の周囲の穴のように、数十個のデータポイントが同心円状に配置されています。データポイントの内側のリングはクラスタ 1、中央のリングはクラスタ 2、外側のリングはクラスタ 3 に分類されます。

詳細については、クラスタリング コースをご覧ください。

共同適応

ニューロンが、ネットワーク全体の動作ではなく、特定の他のニューロンの出力にほぼ完全に依存してトレーニング データ内のパターンを予測する場合。協調適応を引き起こすパターンが検証データにない場合、協調適応により過学習が発生します。ドロップアウト正規化は、ドロップアウトによりニューロンが特定の他のニューロンにのみ依存できないため、協調適応を減らします。

コラボレーション フィルタリング

#recsystems

他の多くのユーザーの関心に基づいて、1 人のユーザーの関心について予測を行う。コラボレーション フィルタリングは、レコメンデーション システムでよく使用されます。

詳細については、レコメンデーション システム コースの協調フィルタリングをご覧ください。

コンセプト ドリフト

特徴とラベルの関係の変化。時間の経過とともに、コンセプト ドリフトによってモデルの品質が低下します。

トレーニング中に、モデルはトレーニング セット内の特徴とラベルの関係を学習します。トレーニング セットのラベルが実世界の適切な代用物である場合、モデルは実世界で優れた予測を行う必要があります。ただし、コンセプトドリフトにより、モデルの予測は時間の経過とともに低下する傾向があります。

たとえば、特定の自動車モデルが「燃費が良い」かどうかを予測するバイナリ分類モデルについて考えてみましょう。つまり、特徴は次のようなものになります。

  • 車両重量
  • エンジンの圧縮
  • 伝送タイプ

ラベルは次のいずれかです。

  • 燃料効率
  • 燃費が悪い

しかし、「燃費の良い車」のコンセプトは常に変化しています。1994 年に「燃費効率が高い」とラベル付けされた自動車モデルは、2024 年にはほぼ確実に「燃費効率が低い」とラベル付けされます。コンセプト ドリフトが発生しているモデルは、時間の経過とともに有用な予測が得られにくくなります。

非定常性と比較対照してください。

コンセプト ドリフトを補正するには、コンセプト ドリフトのレートよりも速くモデルを再トレーニングします。たとえば、コンセプト ドリフトによって 2 か月ごとにモデルの精度が大幅に低下する場合は、2 か月よりも頻繁にモデルを再トレーニングします。


商品の状態(condition)

#df

ディシジョン ツリーでは、式を評価するノード。たとえば、次の部分の分類ツリーには 2 つの条件が含まれています。

(x > 0)と(y > 0)の 2 つの条件で構成されるディシジョン ツリー。

条件は、分割またはテストとも呼ばれます。

とのコントラスト条件。

関連項目:

詳細については、決定木コースの条件の種類をご覧ください。

虚構

#language

hallucination の類義語。

技術的には、幻覚よりも虚言の方が正確な用語であると考えられます。しかし、幻覚が最初に広まりました。

構成

モデルのトレーニングに使用される初期プロパティ値を割り当てるプロセス。次に例を示します。

ML プロジェクトでは、特別な構成ファイルを使用して構成することも、次のような構成ライブラリを使用して構成することもできます。

確証バイアス

#fairness

既存の信念や仮説を裏付けるような方法で情報の検索、解釈、優先、回想を行う傾向。機械学習開発者は、既存の信念を裏付ける結果に影響する方法で、データの収集やラベル付けを誤って行う可能性があります。確証バイアスは、暗黙的なバイアスの一種です。

テスト担当者のバイアスは、既存の仮説が確認されるまでテスト担当者がモデルのトレーニングを継続する、確証バイアスの一種です。

混同行列

#fundamentals

分類モデルが行った正しい予測と誤った予測の数をまとめた NxN 表。たとえば、二値分類モデルの次の混同行列について考えてみましょう。

腫瘍(予測) 腫瘍以外(予測)
腫瘍(グラウンド トゥルース) 18(TP) 1(FN)
腫瘍以外(グラウンド トゥルース) 6(FP) 452(TN)

上の混同行列は、次のことを示しています。

  • 正解ラベルが「腫瘍」の 19 件の予測のうち、モデルは 18 件を正しく分類し、1 件を誤って分類しました。
  • グラウンドトゥルースが「腫瘍なし」の 458 件の予測のうち、モデルは 452 件を正しく分類し、6 件を誤って分類しました。

マルチクラス分類問題の混同行列は、間違いのパターンを特定するのに役立ちます。たとえば、3 種類のアヤメ(Virginica、Versicolor、Setosa)を分類する 3 クラスのマルチクラス分類モデルの混同行列について考えてみましょう。正解が Virginica の場合、混同行列は、モデルが Setosa よりも Versicolor を誤って予測する可能性の方がはるかに高いことを示しています。

  Setosa(予測) Versicolor(予測) Virginica(予測)
Setosa(グラウンド トゥルース) 88 12 0
Versicolor(グラウンド トゥルース) 6 141 7
Virginica(グラウンド トゥルース) 2 27 109

別の例として、混同行列から、手書きの数字を認識するようにトレーニングされたモデルが、4 ではなく 9 を誤って予測する傾向があること、または 7 ではなく 1 を誤って予測する傾向があることが明らかになります。

混同行列には、適合率再現率など、さまざまなパフォーマンス指標を計算するのに十分な情報が含まれています。

選挙区の解析

#language

文を小さな文法構造(「構成要素」)に分割する。自然言語理解モデルなど、ML システムの後半部分では、元の文よりも構成要素を簡単に解析できます。たとえば、次の文について考えてみましょう。

友人が 2 匹の猫を飼い始めた。

コンスティチュエンシー パーサーは、この文を次の 2 つの構成要素に分割できます。

  • My friend は名詞句です。
  • 2 匹の猫を飼い始めたは動詞句です。

これらの構成要素は、さらに小さな構成要素に分割できます。たとえば、動詞句

2 匹の猫を飼い始めた

はさらに次のように分類できます。

  • adopted は動詞です。
  • 2 匹の猫も名詞句です。

コンテキストに応じた言語エンベディング

#language
#generativeAI

流暢な人間の話者のように単語やフレーズを「理解」することに近いエンベディング。コンテキスト化された言語エンベディングは、複雑な構文、セマンティクス、コンテキストを理解できます。

たとえば、英語の単語「cow」のエンベディングについて考えてみましょう。word2vec などの古いエンベディングでは、エンベディング空間における cow から bull までの距離が、ewe(メスの羊)から ram(オスの羊)までの距離や、female から male までの距離と類似するように、英語の単語を表現できます。コンテキストに応じた言語エンベディングでは、英語話者が牛または雄牛のいずれかを指すために「cow」という単語を日常的に使用していることを認識することで、さらに一歩進んだことができます。

コンテキスト ウィンドウ

#language
#generativeAI

モデルが特定のプロンプトで処理できるトークンの数。コンテキスト ウィンドウが大きいほど、モデルはより多くの情報を使用して、プロンプトに一貫性のある回答を提供できます。

連続特徴

#fundamentals

温度や重量など、無限の値の範囲を持つ浮動小数点特徴量

離散特徴とは対照的です。

便宜的サンプリング

迅速なテストを実施するために、科学的に収集されていないデータセットを使用する。後で、科学的に収集されたデータセットに切り替えることが重要です。

収束

#fundamentals

損失値が反復処理ごとにほとんど変化しない場合、またはまったく変化しない場合に到達する状態。たとえば、次の損失曲線は、700 回程度の反復で収束することを示しています。

デカルトグラフ。X 軸は損失です。Y 軸はトレーニング イテレーションの数です。最初の数回の反復では損失が非常に高くなりますが、急激に低下します。約 100 回のイテレーション後、損失は引き続き減少していますが、はるかに緩やかになっています。約 700 回のイテレーション後、損失は横ばいになります。

追加のトレーニングでモデルが改善されなくなると、モデルは収束します。

ディープラーニングでは、損失値が多くの反復処理で一定またはほぼ一定のままになり、最終的に減少することがあります。損失値が長期間一定の場合、一時的に収束したように見えることがあります。

早期停止もご覧ください。

詳細については、ML 集中講座のモデルの収束と損失曲線をご覧ください。

凸関数

関数のグラフの上にある領域が凸集合である関数。典型的な凸関数は、文字 U のような形をしています。たとえば、次の関数はすべて凸関数です。

U 字型の曲線。それぞれに 1 つの最小点があります。

一方、次の関数は凸ではありません。グラフの上にある領域が凸集合ではないことに注目してください。

2 つの異なる局所最小点を持つ W 字型の曲線。

厳密凸関数には、局所最小点が 1 つあり、これがグローバル最小点にもなります。古典的な U 字型関数は厳密凸関数です。ただし、一部の凸関数(直線など)は U 字型ではありません。

次のような一般的な損失関数の多くは凸関数です。

勾配降下法の多くのバリエーションでは、厳密凸関数の最小値に近い点が確実に見つかります。同様に、確率的勾配降下法の多くのバリエーションでは、厳密凸関数の最小値に近い点を見つける可能性が高くなります(ただし、保証されるわけではありません)。

2 つの凸関数の合計(L2 損失 + L1 正規化など)は凸関数です。

ディープモデルは決して凸関数ではありません。驚くべきことに、凸最適化用に設計されたアルゴリズムは、それらのソリューションがグローバル最小値であるとは限らないにもかかわらず、ディープラーニング ネットワークで妥当なソリューションを見つける傾向があります。


詳細については、ML 集中講座の収束と凸関数をご覧ください。

凸最適化

勾配降下などの数学手法を使用して、凸関数の最小値を見つけるプロセス。機械学習の多くの研究は、さまざまな問題を凸最適化問題として定式化し、それらの問題をより効率的に解決することに焦点を当てています。

詳細については、Boyd と Vandenberghe の Convex Optimization をご覧ください。

凸集合

ユークリッド空間のサブセットで、サブセット内の任意の 2 点間を結ぶ線がサブセット内に完全に収まるもの。たとえば、次の 2 つの形状は凸集合です。

長方形のイラスト。楕円の別のイラスト。

一方、次の 2 つのシェイプは凸集合ではありません。

スライスが欠落している円グラフのイラスト。
          極めて不規則な多角形の別の例。

畳み込み

#image

数学では、簡単に言えば、2 つの関数の混合です。ML では、畳み込みによって畳み込みフィルタと入力行列が混合され、重みがトレーニングされます。

機械学習における「畳み込み」という用語は、多くの場合、畳み込み演算または畳み込みレイヤの省略形として使用されます。

畳み込みがないと、機械学習アルゴリズムは大きなテンソル内のセルごとに個別の重みを学習する必要があります。たとえば、2K x 2K の画像で機械学習アルゴリズムをトレーニングする場合、400 万個の個別の重みを検出する必要があります。畳み込みにより、機械学習アルゴリズムは畳み込みフィルタ内のすべてのセルの重みを見つけるだけで済むため、モデルのトレーニングに必要なメモリが大幅に削減されます。畳み込みフィルタが適用されると、各セルがフィルタで乗算されるように、セル全体にレプリケートされます。

詳細については、画像分類コースの畳み込みニューラル ネットワークの概要をご覧ください。

畳み込みフィルタ

#image

畳み込み演算の 2 つのアクターの 1 つ。(もう一方の演算子は入力マトリックスのスライスです)。畳み込みフィルタは、入力マトリックスと同じランクを持ち、サイズが小さいマトリックスです。たとえば、28x28 の入力行列が与えられた場合、フィルタは 28x28 より小さい任意の 2D 行列にすることができます。

写真の操作では、通常、畳み込みフィルタ内のすべてのセルは 1 と 0 の一定のパターンに設定されます。機械学習では、通常、畳み込みフィルタに乱数をシードし、ネットワークが理想的な値をトレーニングします。

詳細については、画像分類コースの畳み込みをご覧ください。

畳み込みレイヤ

#image

ディープ ニューラル ネットワークのレイヤ。畳み込みフィルタが入力行列に渡されます。たとえば、次の 3x3 の畳み込みフィルタについて考えてみましょう。

次の値を持つ 3x3 行列: [[0,1,0], [1,0,1], [0,1,0]]

次のアニメーションは、5x5 入力行列を含む 9 つの畳み込み演算で構成される畳み込みレイヤを示しています。各畳み込み演算は、入力行列の異なる 3x3 スライスに対して動作します。結果の 3x3 行列(右側)は、9 つの畳み込み演算の結果で構成されています。

2 つの行列を示すアニメーション。最初の行列は 5x5 行列です。[[128,97,53,201,198], [35,22,25,200,195], [37,24,28,197,182], [33,28,92,195,179], [31,40,100,192,177]]2 つ目の行列は 3x3 行列です。
          [[181,303,618], [115,338,605], [169,351,560]].
          2 つ目の行列は、5x5 行列の異なる 3x3 サブセットに畳み込みフィルタ [[0, 1, 0], [1, 0, 1], [0, 1, 0]] を適用することで計算されます。

詳細については、画像分類コースの全結合層をご覧ください。

畳み込みニューラル ネットワーク

#image

少なくとも 1 つのレイヤが畳み込みレイヤであるニューラル ネットワーク。一般的な畳み込みニューラル ネットワークは、次のレイヤの組み合わせで構成されます。

畳み込みニューラル ネットワークは、画像認識などの特定の問題で大きな成功を収めています。

畳み込み演算

#image

次の 2 段階の算術演算:

  1. 畳み込みフィルタと入力行列のスライスの要素ごとの乗算。(入力マトリックスのスライスには、畳み込みフィルタと同じランクとサイズがあります)。
  2. 結果の積行列のすべての値の合計。

たとえば、次の 5x5 入力行列について考えてみましょう。

5x5 行列: [[128,97,53,201,198], [35,22,25,200,195], [37,24,28,197,182], [33,28,92,195,179], [31,40,100,192,177]]。

次に、2x2 畳み込みフィルタについて考えてみましょう。

2 x 2 マトリックス: [[1, 0], [0, 1]]

各畳み込み演算には、入力行列の 2x2 スライスが 1 つ含まれます。たとえば、入力行列の左上にある 2x2 スライスを使用するとします。このスライスに対する畳み込み演算は次のようになります。

入力行列の左上の 2x2 セクション([[128,97], [35,22]])に畳み込みフィルタ [[1, 0], [0, 1]] を適用します。畳み込みフィルタは 128 と 22 をそのまま残しますが、97 と 35 はゼロにします。したがって、畳み込み演算の結果は 150(128+22)になります。

畳み込みレイヤは、一連の畳み込み演算で構成され、それぞれが入力行列の異なるスライスに作用します。

費用

#Metric

損失と同義。

共同トレーニング

セミスーパービジョン学習アプローチは、次のすべての条件に該当する場合に特に役立ちます。

コトレーニングは、基本的に独立したシグナルを増幅してより強力なシグナルにします。たとえば、個々の中古車を「良好」または「不良」に分類する分類モデルについて考えてみましょう。1 つの予測特徴セットでは、車の年式、メーカー、モデルなどの集計特性に重点を置くことができます。別の予測特徴セットでは、前所有者の運転記録や車のメンテナンス履歴に重点を置くことができます。

共同トレーニングに関する先駆的な論文は、Blum と Mitchell による Combining Labeled and Unlabeled Data with Co-Training です。

反事実的公平性

#fairness
#Metric

分類モデルが、1 つ以上の機密性の高い属性を除き、1 人の個人に対して、最初の個人と同一の別の個人に対しても同じ結果を生成しているかどうかを確認する公平性指標。反事実的公平性について分類モデルを評価することは、モデルにおけるバイアスの潜在的な原因を特定する 1 つの方法です。

詳しくは、次のいずれかをご覧ください。

対象範囲のバイアス

#fairness

選択バイアスをご覧ください。

クラッシュ ブラッサム

#language

意味があいまいな文またはフレーズ。クラッシュ ブロッサムは、自然言語理解において重大な問題となります。たとえば、ヘッドライン「Red Tape Holds Up Skyscraper」は、NLU モデルがヘッドラインを文字通りまたは比喩的に解釈する可能性があるため、クラッシュ ブロッサムです。

謎めいた見出しについて補足させていただきます。
  • 煩雑な手続きは、次のいずれかを指す場合があります。
    • 接着剤
    • 過度の官僚主義
  • [Holds Up] は次のいずれかを指します。
    • 構造サポート
    • 処理の遅れ

批評家

#rl

Deep Q-Network と同義。

交差エントロピー

#Metric

対数損失マルチクラス分類問題に一般化したものです。交差エントロピーは、2 つの確率分布の差異を定量化します。困惑度もご覧ください。

交差検証

トレーニング セットから除外された重複しない 1 つ以上のデータサブセットに対してモデルをテストし、モデルが新しいデータにどの程度一般化できるかを推定するメカニズム。

累積分布関数(CDF)

#Metric

ターゲット値以下のサンプルの頻度を定義する関数。たとえば、連続値の正規分布について考えてみましょう。CDF は、約 50% のサンプルが平均以下であり、約 84% のサンプルが平均の 1 標準偏差以下であることを示します。

D

データ分析

サンプル、測定、可視化を考慮してデータを理解する。データ分析は、最初のモデルを構築する前にデータセットを初めて受信するときに特に役立ちます。また、テストの理解やシステムの問題のデバッグにも不可欠です。

データの拡張

#image

既存のサンプルを変換して追加のサンプルを作成し、トレーニング サンプルの範囲と数を人為的に増やす。たとえば、画像が特徴の 1 つであるが、データセットに、モデルが有用な関連性を学習するのに十分な画像サンプルが含まれていないとします。モデルを適切にトレーニングできるように、データセットに十分なラベル付き画像を追加することをおすすめします。それが不可能な場合は、データ拡張を使用して各画像を回転、伸ばし、反射させ、元の画像のバリエーションを多数生成できます。これにより、優れたトレーニングを可能にする十分なラベル付きデータが得られる可能性があります。

DataFrame

#fundamentals

メモリ内のデータセットを表す一般的な pandas データ型。

DataFrame は、テーブルやスプレッドシートに似ています。DataFrame の各列には名前(ヘッダー)があり、各行は一意の数値で識別されます。

DataFrame の各列は 2 次元配列のように構造化されていますが、各列に独自のデータ型を割り当てることができます。

公式の pandas.DataFrame リファレンス ページもご覧ください。

データ並列処理

トレーニングまたは推論をスケーリングする方法。モデル全体を複数のデバイスに複製し、入力データのサブセットを各デバイスに渡します。データ並列処理では、非常に大きなバッチサイズでのトレーニングと推論が可能になります。ただし、データ並列処理では、モデルがすべてのデバイスに収まるほど小さくする必要があります。

通常、データ並列処理によりトレーニングと推論の速度が向上します。

モデル並列処理もご覧ください。

Dataset API(tf.data)

#TensorFlow

データを読み取り、機械学習アルゴリズムで必要な形式に変換するための高レベルの TensorFlow API。tf.data.Dataset オブジェクトは要素のシーケンスを表します。各要素には 1 つ以上の テンソルが含まれています。tf.data.Iterator オブジェクトは、Dataset の要素へのアクセスを提供します。

データセット

#fundamentals

元データのコレクション。通常は(必ずしもそうであるとは限りません)次のいずれかの形式で編成されます。

  • スプレッドシート
  • CSV(カンマ区切り)形式のファイル

決定境界

バイナリクラスまたはマルチクラス分類問題モデルによって学習されたクラス間の区切り文字。たとえば、バイナリ分類問題を表す次の画像では、決定境界はオレンジ色のクラスと青色のクラスの境界です。

クラス間の明確な境界。

デシジョン フォレスト

#df

複数のディシジョン ツリーから作成されたモデル。デシジョン フォレストは、ディシジョン ツリーの予測を集約して予測を行います。よく使用されるディシジョン フォレストのタイプには、ランダム フォレスト勾配ブースト ツリーがあります。

詳細については、決定木コースの決定木のセクションをご覧ください。

決定しきい値

分類しきい値と同義。

ディシジョン ツリー

#df

一連の条件と階層的に編成されたリーフで構成される教師あり学習モデル。たとえば、次の図はディシジョン ツリーです。

4 つの条件からなるディシジョン ツリーが階層的に配置され、5 つのリーフにつながっています。

デコーダ

#language

一般に、処理済み、高密度、内部表現から、より未加工、スパース、外部表現に変換する ML システム。

デコーダは多くの場合、より大きなモデルのコンポーネントであり、エンコーダとペアになっています。

シーケンス間タスクでは、デコーダはエンコーダによって生成された内部状態から開始して、次のシーケンスを予測します。

Transformer アーキテクチャ内のデコーダの定義については、Transformer をご覧ください。

詳細については、ML 集中講座の大規模言語モデルをご覧ください。

ディープモデル

#fundamentals

複数の隠れ層を含むニューラル ネットワーク

ディープモデルは、ディープ ニューラル ネットワークとも呼ばれます。

ワイドモデルとの比較

ネットワークでよく

ディープラーニング モデルと同義。

Deep Q-Network(DQN)

#rl

Q 学習では、Q 関数を予測するディープ ニューラル ネットワーク

Critic は Deep Q-Network の類義語です。

人口学的等価性

#fairness
#Metric

モデルの分類結果が特定の機密属性に依存しない場合、満たされる公平性指標

たとえば、リリパット人とブロブディンガ人両方がグルブドゥブドゥリブ大学に応募した場合、あるグループが平均的に他方よりも優れているかどうかにかかわらず、入学したリリパット人の割合が入学したブロブディンガ人の割合と同じであれば、人種的平等が達成されます。

これは、オッズ均等化機会の平等とは対照的です。これらの要件では、集計された分類結果が機密属性に依存することを許可しますが、特定の指定されたグラウンド トゥルースラベルの分類結果が機密属性に依存することを許可しません。属性の均等性を最適化する際のトレードオフを示す可視化については、「よりスマートな機械学習による差別の是正」をご覧ください。

詳細については、機械学習集中講座の公平性: 人口統計の均等性をご覧ください。

ノイズ除去

#language

自己教師あり学習の一般的なアプローチ。次のように機能します。

  1. データセットにノイズが人為的に追加されます。
  2. モデルはノイズを除去しようとします。

ノイズ除去により、ラベルのないサンプルから学習できます。元のデータセットがターゲットまたはラベルとして機能し、ノイズのあるデータが入力として機能します。

一部のマスクされた言語モデルは、次のようにノイズ除去を使用します。

  1. 一部のトークンをマスクすることで、ラベルのない文にノイズが人為的に追加されます。
  2. モデルは元のトークンを予測しようとします。

高密度特徴

#fundamentals

ほとんどまたはすべての値がゼロ以外の特徴量。通常は浮動小数点値のテンソルです。たとえば、次の 10 要素のテンソルは、9 つの値がゼロ以外であるため、密です。

8 3 7 5 2 4 0 4 9 6

スパースな特徴とは対照的です。

高密度レイヤ

全結合層と同義。

深さ

#fundamentals

ニューラル ネットワークにおける次の合計:

たとえば、隠れ層が 5 つ、出力層が 1 つのニューラル ネットワークの深さは 6 です。

入力レイヤは深さに影響しません。

深さ方向に分離可能な畳み込みニューラル ネットワーク(sepCNN)

#image

Inception に基づく畳み込みニューラル ネットワーク アーキテクチャ。ただし、Inception モジュールは空間方向の分離可能な畳み込みに置き換えられています。Xception とも呼ばれます。

深度方向可分畳み込み(可分畳み込みとも呼ばれます)は、標準の 3D 畳み込みを、計算効率の高い 2 つの個別の畳み込み演算に分解します。1 つ目は深度が 1 の深度方向畳み込み(n ✕ n ✕ 1)、2 つ目は長さと幅が 1 の点畳み込み(1 ✕ 1 ✕ n)です。

詳細については、Xception: Depthwise Separable Convolutions を使用したディープラーニングをご覧ください。

派生ラベル

プロキシラベルと同義。

デバイス

#TensorFlow
#GoogleCloud

次の 2 つの定義が可能なオーバーロードされた用語。

  1. TensorFlow セッションを実行できるハードウェアのカテゴリ(CPU、GPU、TPU など)。
  2. アクセラレータ チップ(GPU または TPU)で ML モデルをトレーニングする場合、テンソルエンベディングを実際に操作するシステムの部分。デバイスはアクセラレータ チップを搭載しています。一方、ホストは通常 CPU で実行されます。

差分プライバシー

ML では、モデルのトレーニング セットに含まれる機密データ(個人情報など)が漏洩しないようにする匿名化アプローチです。このアプローチにより、モデルは特定の個人についてあまり学習または記憶しません。これは、モデルのトレーニング中にノイズをサンプリングして追加し、個々のデータポイントを不明瞭にして、機密性の高いトレーニング データが漏えいするリスクを軽減することで実現されます。

差分プライバシーは ML 以外でも使用されています。たとえば、データ サイエンティストは、さまざまなユーザー属性のプロダクト使用状況統計情報を計算する際に、差分プライバシーを使用して個人のプライバシーを保護することがあります。

次元の削減

特徴ベクトルで特定の特徴を表すために使用される次元数を減らす(通常はエンベディング ベクトルに変換する)。

ディメンション

次のいずれかの定義を持つオーバーロードされた用語。

  • テンソル内の座標のレベル数。次に例を示します。

    • スカラーには次元がありません(例: ["Hello"])。
    • ベクトルは 1 つのディメンション(例: [3, 5, 7, 11])を持ちます。
    • マトリックスには 2 つのディメンションがあります(例: [[2, 4, 18], [5, 7, 14]])。1 次元ベクトル内の特定のセルは 1 つの座標で指定できますが、2 次元行列内の特定のセルを指定するには 2 つの座標が必要です。
  • 特徴ベクトル内のエントリの数。

  • エンベディング レイヤ内の要素数。

直接プロンプト

#language
#generativeAI

ゼロショット プロンプトと同義。

離散的な特徴

#fundamentals

有効な値が有限の特徴。たとえば、値が「動物」、「野菜」、「鉱物」のいずれかである特徴は、離散(カテゴリ)特徴です。

連続特徴とは対照的です。

識別モデル

1 つ以上の特徴のセットからラベルを予測するモデル。より正式には、識別モデルは特徴と重みが与えられた出力の条件付き確率を定義します。つまり、次のように定義します。

p(output | features, weights)

たとえば、特徴と重みからメールがスパムかどうかを予測するモデルは識別モデルです。

分類モデルや回帰モデルなど、教師あり学習モデルのほとんどは識別モデルです。

生成モデルとは対照的です。

識別子

が本物か偽物かを判断するシステム。

または、生成敵対ネットワーク内のサブシステムで、ジェネレータによって作成された例が本物か偽物かを判断します。

詳細については、GAN コースの識別子をご覧ください。

差別的な影響

#fairness

異なる人口サブグループに不均衡な影響を与える個人に関する意思決定。これは通常、アルゴリズムによる意思決定プロセスが、一部のサブグループに他のグループよりも有害または有益な影響を及ぼす状況を指します。

たとえば、リリパット人が小型住宅ローンの対象かどうかを判断するアルゴリズムでは、郵送先住所に特定の郵便番号が含まれている場合に「対象外」と分類される可能性が高くなります。ビッグエンディアン リリパット族の方がリトルエンディアン リリパット族よりもこの郵便番号の郵送先住所を持つ可能性が高い場合、このアルゴリズムによって差別的な影響が生じる可能性があります。

差別的取扱いとは対照的に、サブグループの特性によってアルゴリズムによる意思決定プロセスに明示的に入力された結果として生じる差異に焦点を当てています。

不均一な扱い

#fairness

被験者のセンシティブな属性をアルゴリズムによる意思決定プロセスに組み込み、異なるサブグループの人々を異なる方法で扱う。

たとえば、リリパット人がローン申請で提供したデータに基づいて、リリパット人が小型住宅ローンの利用資格があるかどうかを判断するアルゴリズムについて考えてみましょう。アルゴリズムが、Lilliputian の Big-Endian または Little-Endian の関連性を入力として使用している場合、そのディメンションに沿って差別的な扱いが行われています。

これは、サブグループがモデルへの入力であるかどうかにかかわらず、サブグループに対するアルゴリズムによる決定の社会的影響の差異に焦点を当てた差別的影響とは対照的です。

での精製

#generativeAI

1 つのモデル(教師モデル)のサイズを、元のモデルの予測を可能な限り忠実にエミュレートする小規模なモデル(生徒モデル)に縮小するプロセス。蒸留は、小規模なモデルには大規模なモデル(教師)にはない 2 つの重要な利点があるため、有用です。

  • 推論時間の短縮
  • メモリとエネルギーの使用量の削減

ただし、通常、生徒の予測は教師の予測ほど正確ではありません。

抽出では、生徒モデルと教師モデルの予測の出力の差に基づいて損失関数を最小化するように生徒モデルをトレーニングします。

蒸留と次の用語を比較対照します。

詳細については、機械学習集中講座の LLM: ファインチューニング、蒸留、プロンプト エンジニアリングをご覧ください。

配信

特定の特徴量またはラベルのさまざまな値の頻度と範囲。分布は、特定の値がどの程度あり得るかを捉えます。

次の図は、2 つの異なる分布のヒストグラムを示しています。

  • 左側は、富のパワー ロー分布と、その富を所有する人数を示しています。
  • 右側は、身長の正規分布とその身長の人数を示しています。

2 つのヒストグラム。1 つのヒストグラムは、富を X 軸に、その富を持つ人の数を Y 軸に示すべき乗法分布を示しています。ほとんどの人は富をほとんど持っていませんが、一部の人々は非常に多くの富を持っています。もう一方のヒストグラムは、身長を X 軸、身長に応じた人数を Y 軸に表示した正規分布を示しています。ほとんどの人は平均値の近くに集まっています。

各特徴とラベルの分布を理解することで、値を正規化する方法と外れ値を検出する方法を決定できます。

「分布外」というフレーズは、データセットにない値や非常にまれな値を指します。たとえば、猫の画像で構成されたデータセットでは、土星の画像は分布外と見なされます。

分割クラスタリング

#clustering

階層型クラスタリングをご覧ください。

downsampling

#image

次のいずれかを意味するオーバーロードされた用語。

  • モデルのトレーニングを効率的に行うために、特徴量の情報量を減らします。たとえば、画像認識モデルをトレーニングする前に、高解像度の画像を低解像度の形式にダウンサンプリングします。
  • 過剰に代表されているクラスのサンプルの割合を不均衡に低くして、過小代表クラスのモデル トレーニングを改善する。たとえば、クラスの不均衡なデータセットでは、モデルは多数派クラスについて多く学習し、少数派クラスについて十分に学習しない傾向があります。ダウンサンプリングは、多数クラスと少数クラスのトレーニング量のバランスを取るのに役立ちます。

詳細については、機械学習集中講座のデータセット: 不均衡なデータセットをご覧ください。

DQN

#rl

Deep Q-Network の略。

ドロップアウト正則化

ニューラル ネットワークのトレーニングに役立つ正則化の一種。ドロップアウト正規化では、単一の勾配ステップでネットワーク レイヤ内の固定数のユニットをランダムに選択して削除します。ドロップアウトするユニットが多いほど、正則化は強くなります。これは、小規模なネットワークの指数関数的に大きなアンサンブルをエミュレートするようにネットワークをトレーニングするのと同様です。詳細については、Dropout: A Simple Way to Prevent Neural Networks from Overfitting をご覧ください。

動的

#fundamentals

頻繁または継続的に行う作業。機械学習では、動的とオンラインという用語は同義です。機械学習における動的とオンラインの一般的な用途は次のとおりです。

  • 動的モデル(またはオンライン モデル)は、頻繁または継続的に再トレーニングされるモデルです。
  • 動的トレーニング(またはオンライン トレーニング)は、頻繁または継続的にトレーニングを行うプロセスです。
  • 動的推論(またはオンライン推論)は、オンデマンドで予測を生成するプロセスです。

動的モデル

#fundamentals

頻繁に(場合によっては継続的に)再トレーニングされるモデル。動的モデルは、変化するデータに常に適応する「生涯学習者」です。動的モデルは、オンライン モデルとも呼ばれます。

静的モデルとは対照的です。

E

積極的実行

#TensorFlow

オペレーションがすぐに実行される TensorFlow プログラミング環境。一方、グラフ実行で呼び出されたオペレーションは、明示的に評価されるまで実行されません。早期実行は、ほとんどのプログラミング言語のコードと同様に、命令型インターフェースです。一般に、積極的実行プログラムはグラフ実行プログラムよりもはるかに簡単にデバッグできます。

早期停止

#fundamentals

トレーニングの損失が減少しきる前にトレーニングを終了する正規化の方法。早期停止では、検証データセットの損失が上昇し始め、汎化のパフォーマンスが低下したときに、モデルのトレーニングを意図的に停止します。

早期停止は直感に反するように思えますが、結局のところ、損失がまだ減少しているときにトレーニングを停止するようにモデルに指示することは、デザートが完全に焼き上がっていないうちに調理を停止するようにシェフに指示するようなものです。ただし、モデルのトレーニングを長時間行うと、過学習につながる可能性があります。つまり、モデルを長時間トレーニングすると、モデルがトレーニング データに過度に適合し、新しいサンプルに対して適切な予測を行えなくなる可能性があります。


土木工事距離(EMD)

#Metric

2 つの分布の相対的な類似性を測定する指標。地球移動距離が小さいほど、分布は類似しています。

編集距離

#language
#Metric

2 つのテキスト文字列の類似度を測定する値。機械学習では、編集距離が次の理由で役立ちます。

  • 編集距離は簡単に計算できます。
  • 編集距離は、類似しているとわかっている 2 つの文字列を比較できます。
  • 編集距離は、異なる文字列が特定の文字列にどれほど類似しているかを判断できます。

編集距離にはいくつかの定義があり、それぞれが異なる文字列演算を使用します。例については、Levenshtein 距離をご覧ください。

Einsum 表記

2 つのテンソルを結合する方法を表す効率的な記法。テンソルは、一方のテンスルの要素に他方のテンソルの要素を乗算し、その積を合計することで結合されます。Einsum 表記では、各テンソルの軸を識別するために記号が使用され、同じ記号が並べ替えられて、結果として得られる新しいテンソルの形状が指定されます。

NumPy には、一般的な Einsum の実装が用意されています。

エンベディング レイヤ

#language
#fundamentals

高次元のカテゴリ特徴でトレーニングし、低次元のエンベディング ベクトルを徐々に学習する特別な隠れ層。エンベディング層を使用すると、高次元のカテゴリ特徴のみをトレーニングする場合よりも、ニューラル ネットワークをはるかに効率的にトレーニングできます。

たとえば、現在 Google Earth では約 73,000 種類の樹木をサポートしています。木の種類がモデルの特徴であるとします。モデルの入力レイヤには、73,000 要素の長さのワンホット ベクトルが含まれています。たとえば、baobab は次のように表されます。

73,000 個の要素の配列。最初の 6,232 要素は値 0 を保持します。次の要素には値 1 が格納されます。最後の 66,767 個の要素はゼロの値を保持します。

73,000 要素の配列は非常に長いです。モデルにエンベディング レイヤを追加しないと、72,999 個のゼロを乗算するため、トレーニングに非常に時間がかかります。エンベディング レイヤを 12 つのディメンションで構成するとします。エンベディング レイヤは、木の種類ごとに新しいエンベディング ベクトルを徐々に学習します。

状況によっては、エンベディング レイヤの代わりにハッシュ化が適切な場合があります。

詳細については、機械学習集中講座のエンベディングをご覧ください。

エンベディング空間

#language

高次元ベクトル空間の特徴がマッピングされる d 次元ベクトル空間。エンベディング空間は、対象のアプリケーションにとって意味のある構造をキャプチャするようにトレーニングされます。

2 つのエンベディングのドット積は、それらの類似度を測定したものです。

エンベディング ベクトル

#language

広義には、その隠れ層への入力を表す隠れ層から取得された浮動小数点数の配列です。エンベディング ベクトルは、エンベディング レイヤでトレーニングされた浮動小数点数の配列であることがよくあります。たとえば、エンベディング レイヤが地球上の 73,000 種類の樹木のエンベディング ベクトルを学習する必要がある場合を考えてみましょう。次の配列は、バオバブの木のエンベディング ベクトルです。

12 個の要素からなる配列。各要素は 0.0 ~ 1.0 の浮動小数点数を保持します。

エンベディング ベクトルはランダムな数値の集まりではありません。エンベディング層は、トレーニング中にニューラル ネットワークが他の重みを学習するのと同様に、トレーニングを通じてこれらの値を決定します。配列の各要素は、樹種の特性に基づく評価です。どの要素がどの樹種の特徴を表していますか。これは人間が判断するのは非常に困難です。

エンベディング ベクトルの数学的に注目すべき点は、類似したアイテムが類似した浮動小数点数のセットを持ちます。たとえば、類似の樹木種は、類似していない樹木種よりも浮動小数点数のセットが類似しています。レッドウッドとセコイアは関連する樹木種であるため、レッドウッドとココナツのヤシよりも浮動小数点数のセットが類似しています。エンベディング ベクトルの数値は、同じ入力でモデルを再トレーニングしても、モデルを再トレーニングするたびに変化します。

経験累積分布関数(eCDF または EDF)

#Metric

実際のデータセットからの経験的な測定に基づく累積分布関数。X 軸上の任意の点における関数の値は、指定された値以下のデータセット内の観測値の割合です。

経験的リスク最小化(ERM)

トレーニング セットの損失を最小化する関数を選択します。構造リスクの最小化とは対照的です。

エンコーダ

#language

一般に、未加工、スパース、または外部表現から、より処理された、より密度の高い、またはより内部的な表現に変換する ML システム。

エンコーダは、多くの場合、より大きなモデルのコンポーネントであり、デコーダとペアになっています。一部の Transformer はエンコーダとデコーダをペアで使用しますが、他の Transformer はエンコーダまたはデコーダのみを使用します。

一部のシステムでは、エンコーダの出力を分類ネットワークまたは回帰ネットワークへの入力として使用します。

シーケンスからシーケンスへのタスクでは、エンコーダは入力シーケンスを受け取り、内部状態(ベクトル)を返します。次に、デコーダがその内部状態を使用して次のシーケンスを予測します。

Transformer アーキテクチャでのエンコーダの定義については、Transformer をご覧ください。

詳細については、機械学習集中講座の LLM: 大規模言語モデルとはをご覧ください。

アンサンブル

個別にトレーニングされたモデルのコレクション。予測は平均化または集約されます。多くの場合、アンサンブルは単一モデルよりも優れた予測を生成します。たとえば、ランダム フォレストは、複数のディシジョン ツリーから構築されたアンサンブルです。すべての決定木がアンサンブルであるとは限りません。

詳細については、機械学習集中講座のランダム フォレストをご覧ください。

エントロピー

#df
#Metric

情報理論では、確率分布の予測可能性の説明です。エントロピーは、各に含まれる情報量としても定義されます。分布のエントロピーが最大になるのは、確率変数のすべての値が同等の確率で発生する場合です。

2 つの可能な値「0」と「1」を持つセット(バイナリ分類問題のラベルなど)のエントロピーは次の式で表されます。

  H = -p log p - q log q = -p log p - (1-p) * log (1-p)

ここで

  • H はエントロピーです。
  • p は「1」の例の割合です。
  • q は「0」の例の割合です。q = (1 - p) です。
  • log は通常 log2 です。この場合、エントロピーの単位はビットです。

たとえば、次のように仮定します。

  • 100 個のサンプルに値「1」が含まれている
  • 300 件のサンプルに値「0」が含まれている

したがって、エントロピー値は次のようになります。

  • p = 0.25
  • q = 0.75
  • H =(-0.25)log2(0.25)-(0.75)log2(0.75)= 0.81 ビット / サンプル

完全にバランスが取れたセット(200 個の「0」と 200 個の「1」など)では、エントロピーはサンプルあたり 1.0 ビットになります。セットのアンバランスが増加すると、エントロピーは 0.0 に近づきます。

分類ツリーでは、エントロピーは情報量の増加を定式化して、分類分類ツリーの成長中に分割ツール条件を選択するのに役立ちます。

エントロピーを次と比較します。

エントロピーは、シャノンのエントロピーとも呼ばれます。

詳細については、意思決定フォレスト コースの数値特徴量を使用した二値分類の Exact スプリッタをご覧ください。

環境

#rl

強化学習では、エージェントが含まれ、エージェントがその世界の状態を観察できる世界。たとえば、表現された世界は、チェスのようなゲームや迷路のような物理的な世界にすることができます。エージェントが環境にアクションを適用すると、環境は状態間を遷移します。

エピソード

#rl

強化学習では、エージェント環境を学習するために繰り返す試行のことです。

エポック

#fundamentals

トレーニング セット全体に対する完全なトレーニング パス。各サンプルが 1 回処理されます。

エポックは、N/バッチサイズ のトレーニング イテレーションを表します。ここで、N はサンプルの合計数です。

たとえば、次のようにします。

  • このデータセットは 1,000 個のサンプルで構成されています。
  • バッチサイズは 50 サンプルです。

したがって、1 つのエポックには 20 回の反復処理が必要です。

1 epoch = (N/batch size) = (1,000 / 50) = 20 iterations

詳細については、機械学習集中講座の線形回帰: ハイパーパラメータをご覧ください。

イプシロン グリーディ ポリシー

#rl

強化学習におけるポリシー。ε 確率でランダム ポリシーに従うか、そうでない場合は貪欲ポリシーに従います。たとえば、ε が 0.9 の場合、ポリシーは 90% の確率でランダム ポリシーに従い、10% の確率で貪欲ポリシーに従います。

アルゴリズムは、連続するエピソードを通じて、ランダムなポリシーの実行から貪欲なポリシーの実行に移行するために、ε の値を減らします。ポリシーをシフトすることで、エージェントはまず環境をランダムに探索し、次にランダム探索の結果を貪欲にエクスプロイトします。

機会の平等

#fairness
#Metric

公平性指標。モデルが機微な属性のすべての値について望ましい結果を同等に予測しているかどうかを評価します。つまり、モデルの望ましい結果が陽性のクラスである場合、目標はすべてのグループで真陽性率を同じにすることとなります。

機会の平等はオッズの均等化に関連しています。これは、真陽性率と偽陽性率両方がすべてのグループで同じであることを必要とします。

Glubbdubdrib 大学が、厳格な数学プログラムにリリパット人とブロブディンガム人の両方を受け入れているとします。リリプト人の中等学校では、数学クラスの充実したカリキュラムが提供されており、ほとんどの生徒が大学プログラムの資格を得ています。ブロブディンガニアの中等学校では数学クラスがまったく提供されていないため、資格を取得する生徒は非常に少なくなっています。国籍(リリパット人またはブロブディンガ人)に関連する「入学」という優先ラベルについて、資格要件を満たす生徒が、リリパット人かブロブディンガ人かにかかわらず、入学する可能性に差がない場合は、機会均等が満たされています。

たとえば、100 人のリリパット人と 100 人のブロブディンガニア人が Glubbdubdrib 大学に申し込み、入学審査の結果が次のように出たとします。

表 1. リリパット申請者(90% が資格要件を満たしている)

  リードの精査が完了 見込みなし
入学 45 3
不承認 45 7
合計 90 10
入学が認められた資格要件を満たす生徒の割合: 45/90 = 50%
入学が認められなかった資格要件を満たさない生徒の割合: 7/10 = 70%
入学が認められたリリプト人の生徒の合計割合: (45+3)/100 = 48%

 

表 2. Brobdingnagian の申請者(10% が資格要件を満たしている):

  リードの精査が完了 見込みなし
入学 5 9
不承認 5 81
合計 10 90
入学が認められた資格要件を満たしている学生の割合: 5/10 = 50%
資格要件を満たしていない不合格となった学生の割合: 81/90 = 90%
ブロブディンガニアの入学が認められた学生の合計割合: (5+9)/100 = 14%

上記の例では、資格要件を満たしたリリパット人とブロブディンガム人の両方に入学するチャンスが 50% あるため、資格要件を満たした生徒の入学機会の平等が満たされています。

機会均等は満たされていますが、次の 2 つの公平性指標は満たされていません。

  • 人口構成の平等: リリパット人とブロブディンガ人では大学への入学率が異なります。リリパット人の学生の 48% が合格しますが、ブロブディンガ人の学生は 14% しか合格しません。
  • 均等なオッズ: 資格要件を満たしているリリパット人とブロブディンガ人には、どちらも同じ入学チャンスが与えられますが、資格要件を満たしていないリリパット人とブロブディンガ人には、どちらも同じ不合格のチャンスが与えられるという追加の制約は満たされません。資格のないリリパット人の不承認率は 70% であるのに対し、資格のないブロブディンガム人の不承認率は 90% です。

詳細については、機械学習集中講座の公平性: 機会の平等をご覧ください。

オッズが等しい

#fairness
#Metric

モデルが、正クラス負クラスの両方に対して、機密性の高い属性のすべての値で結果を同等に予測しているかどうかを評価する公平性指標です。つまり、真陽性率偽陰性率の両方が、すべてのグループで同じである必要があります。

オッズの均等化は、単一クラスのエラー率(正または負)のみに焦点を当てた機会の平等に関連しています。

たとえば、Glubbdubdrib 大学が厳格な数学プログラムに Lilliputians と Brobdingnagians の両方を受け入れているとします。リリプト人の中等学校では、数学クラスの充実したカリキュラムが提供されており、ほとんどの生徒が大学プログラムの資格を得ています。ブロブディンガニアの中等学校では数学クラスがまったく提供されていないため、資格を取得する生徒は非常に少なくなっています。平等な機会は、申請者がリリパット人かブロブディンガジャン人かにかかわらず、資格要件を満たしていればプログラムへの入学が同じ確率で認められ、資格要件を満たしていない場合は不承認になる確率が同じである場合に満たされます。

100 人のリリパット人と 100 人のブロブディンガニア人が Glubbdubdrib 大学に申し込み、入学審査の結果が次のように出たとします。

表 3: リリパット申請者(90% が資格要件を満たしている)

  リードの精査が完了 見込みなし
入学 45 2
不承認 45 8
合計 90 10
入学が認められた資格要件を満たす生徒の割合: 45/90 = 50%
資格要件を満たさない不合格となった生徒の割合: 8/10 = 80%
入学が認められたリリプトゥー人の割合: (45+2)/100 = 47%

 

表 4. Brobdingnagian の申請者(10% が資格要件を満たしている):

  リードの精査が完了 見込みなし
入学 5 18
不承認 5 72
合計 10 90
入学が認められた資格要件を満たしている学生の割合: 5/10 = 50%
資格要件を満たしていない不合格となった学生の割合: 72/90 = 80%
ブロブディンガニアの学生の入学が認められた割合: (5+18)/100 = 23%

資格要件を満たしているリリパット人とブロブディンガジャンの学生はどちらも入学できる確率が 50%、資格要件を満たしていないリリパット人とブロブディンガジャンの学生はどちらも不合格になる確率が 80% であるため、均等なオッズが満たされています。

オッズの均等化は、「教師あり学習における機会の平等」で次のように正式に定義されています。「予測子 Ŷ が保護対象属性 A と結果 Y に関してオッズの均等化を満たす場合、Ŷ と A は Y を条件として独立している。」

Estimator

#TensorFlow

非推奨の TensorFlow API。Estimator の代わりに tf.keras を使用します。

evals

#language
#generativeAI
#Metric

主に LLM 評価の略語として使用されます。より広い意味で、evals はあらゆる形式の評価の略語です。

評価

#language
#generativeAI
#Metric

モデルの品質を測定したり、異なるモデルを比較したりするプロセス。

教師あり機械学習モデルを評価するには、通常、検証セットテストセットと比較して判断します。LLM の評価には通常、幅広い品質と安全性の評価が含まれます。

#fundamentals

特徴の 1 行の値と、ラベル教師あり学習の例は、次の 2 つの一般的なカテゴリに分類されます。

  • ラベル付きの例は、1 つ以上の特徴とラベルで構成されます。ラベル付きのサンプルはトレーニング中に使用されます。
  • ラベルなしの例は、1 つ以上の特徴で構成されますが、ラベルはありません。ラベルなしの例は推論時に使用されます。

たとえば、天候が生徒のテスト成績に与える影響を特定するモデルをトレーニングしているとします。ラベル付きの例を 3 つ示します。

機能 ラベル
温度 湿度 気圧 テストの点数
15 47 998 良い
19 34 1020 非常に良い
18 92 1012 悪い

ラベルのない例を 3 つ示します。

温度 湿度 気圧  
12 62 1014  
21 47 1017  
19 41 1021  

データセットの行は、通常、サンプルの元のソースです。つまり、サンプルは通常、データセット内の列のサブセットで構成されます。さらに、サンプルの特徴には、特徴の交差などの合成特徴も含めることができます。

詳細については、機械学習の概要コースの教師あり学習をご覧ください。

エクスペリエンスの再現

#rl

強化学習では、トレーニング データの時間的関連性を低減するために DQN 手法が使用されます。エージェントは、状態遷移を再生バッファに保存し、再生バッファから遷移をサンプリングしてトレーニング データを作成します。

実験者のバイアス

#fairness

確証バイアスをご覧ください。

勾配爆発問題

#seq

ディープ ニューラル ネットワーク(特に再帰ニューラル ネットワーク)の勾配が驚くほど急勾配(高)になる傾向。勾配が急な場合、ディープラーニング ネットワーク内の各ノード重みが大幅に更新されることがあります。

勾配爆発の問題が発生しているモデルは、トレーニングが困難または不可能です。勾配クリッピングを使用すると、この問題を軽減できます。

勾配消失問題と比較してください。

F

F1

#Metric

適合率再現率の両方に依存する「ロールアップ」2 値分類指標。式は次のとおりです。

F1=2 * precision * recallprecision + recall

適合率と再現率の値が次のとおりであるとします。

  • precision = 0.6
  • recall = 0.4

F1 は次のように計算します。

F1=2 * 0.6 * 0.40.6 + 0.4=0.48

適合率と再現率が非常に類似している場合(上の例のように)、F1 は平均に近くなります。精度と再現率が大きく異なる場合、F1 は低い値に近づきます。次に例を示します。

  • precision = 0.9
  • recall = 0.1
F1=2 * 0.9 * 0.10.9 + 0.1=0.18

事実性

#generativeAI

ML の世界では、出力が現実に基づくモデルを記述するプロパティ。事実性は指標ではなく概念です。たとえば、次のようなプロンプト大規模言語モデルに送信するとします。

食塩の化学式は何ですか。

事実性を最適化するモデルは、次のように返信します。

NaCl

すべてのモデルが事実に基づいていると仮定するのは魅力的です。ただし、次のようなプロンプトでは、生成 AI モデルは事実性ではなく創造性を最適化する必要があります。

宇宙飛行士と毛虫についてのライムリークを教えて。

作成されたライムリックが現実に基づいている可能性は低いです。

接地とは対照的です。

公平性の制約

#fairness
アルゴリズムに制約を適用して、公平性の 1 つ以上の定義が満たされるようにする。公平性制約の例としては、次のようなものがあります。

  • モデルの出力の後処理
  • 損失関数を変更して、公平性指標への違反に対するペナルティを組み込む。
  • 数学的な制約を最適化問題に直接追加する。

公平性指標

#fairness
#Metric

測定可能な「公平性」の数学的定義。よく使用される公平性指標には次のようなものがあります。

多くの公平性指標は相互に排他的です。公平性指標の不整合をご覧ください。

偽陰性(FN)

#fundamentals
#Metric

モデルが陰性クラスを誤って予測している例。たとえば、モデルは特定のメール メッセージがスパムではない(負のクラス)と予測しますが、そのメール メッセージは実際にはスパムです。

偽陰性率

#Metric

モデルが陰性のクラスを誤って予測した実際の正例の割合。次の式は、誤判定率を計算します。

false negative rate=false negativesfalse negatives+true positives

詳細については、機械学習集中講座のしきい値と混同行列をご覧ください。

偽陽性(FP)

#fundamentals
#Metric

モデルが陽性のクラスを誤って予測している例。たとえば、モデルは特定のメール メッセージがスパム(正クラス)であると予測しますが、そのメール メッセージは実際にはスパムではありません

詳細については、機械学習集中講座のしきい値と混同行列をご覧ください。

偽陽性率(FPR)

#fundamentals
#Metric

モデルが陽性クラスを誤って予測した実際の陰性サンプルの割合。次の式は、誤検出率を計算します。

false positive rate=false positivesfalse positives+true negatives

偽陽性率は、ROC 曲線の X 軸です。

詳細については、機械学習集中講座の分類: ROC と AUC をご覧ください。

特徴;特徴表現

#fundamentals

ML モデルへの入力変数。は 1 つ以上の特徴で構成されます。たとえば、天候が生徒のテストスコアに与える影響を判断するモデルをトレーニングしているとします。次の表に、それぞれ 3 つの特徴と 1 つのラベルを含む 3 つの例を示します。

機能 ラベル
温度 湿度 気圧 テストのスコア
15 47 998 92
19 34 1020 84
18 92 1012 87

ラベルと対比してください。

詳細については、機械学習の概要コースの教師あり学習をご覧ください。

特徴クロス

#fundamentals

カテゴリまたはバケット化された特徴量を「クロス」することで形成される合成特徴量

たとえば、次の 4 つのバケットのいずれかで気温を表す「気分予測」モデルについて考えてみましょう。

  • freezing
  • chilly
  • temperate
  • warm

風速は次の 3 つのバケットのいずれかで表されます。

  • still
  • light
  • windy

特徴量クロスなしの場合、線形モデルは上記の 7 つのバケットごとに個別にトレーニングされます。そのため、モデルは windy でのトレーニングとは独立して、freezing でトレーニングされます。

または、温度と風速の特徴クロスを作成することもできます。この合成特徴には、次の 12 個の値が考えられます。

  • freezing-still
  • freezing-light
  • freezing-windy
  • chilly-still
  • chilly-light
  • chilly-windy
  • temperate-still
  • temperate-light
  • temperate-windy
  • warm-still
  • warm-light
  • warm-windy

特徴クロスにより、モデルは freezing-windy 日と freezing-still 日の気分の違いを学習できます。

それぞれに多くの異なるバケットがある 2 つの特徴量から合成特徴量を作成すると、結果として得られる特徴量クロスには膨大な数の組み合わせが存在します。たとえば、一方の特徴に 1,000 個のバケットがあり、もう一方の特徴に 2,000 個のバケットがある場合、結果として得られる特徴の交差には 2,000,000 個のバケットがあります。

正式には、クロスはデカルト積です。

特徴量の交差は主に線形モデルで使用され、ニューラル ネットワークではあまり使用されません。

詳細については、機械学習集中講座のカテゴリデータ: 特徴量の交差をご覧ください。

2つのステップが含まれます

#fundamentals
#TensorFlow

次の手順を含むプロセス:

  1. モデルのトレーニングに役立つ可能性がある特徴を特定する。
  2. データセットの元データを、それらの特徴量の効率的なバージョンに変換します。

たとえば、temperature が便利な機能であると判断できます。次に、バケット化を試して、モデルがさまざまな temperature 範囲から学習できる内容を最適化できます。

特徴量エンジニアリングは、特徴量抽出または特徴量化と呼ばれることもあります。

TensorFlow では、特徴量エンジニアリングは、未加工のログファイル エントリを tf.Example プロトコル バッファに変換することを意味します。tf.Transform もご覧ください。


詳細については、ML 集中講座の数値データ: モデルが特徴ベクトルを使用してデータを取り込む方法をご覧ください。

特徴抽出

次のいずれかの定義を持つオーバーロードされた用語。

特徴の重要度

#df
#Metric

変数の重要度と同義。

機能セット

#fundamentals

機械学習モデルがトレーニングする特徴量のグループ。たとえば、住宅価格を予測するモデルの単純な特徴セットは、郵便番号、物件の広さ、物件の状態で構成できます。

特徴仕様

#TensorFlow

tf.Example プロトコル バッファから特徴データを抽出するために必要な情報について説明します。tf.Example プロトコル バッファはデータのコンテナにすぎないため、次のように指定する必要があります。

  • 抽出するデータ(特徴のキー)
  • データ型(float や int など)
  • 長さ(固定または可変)

特徴ベクトル

#fundamentals

を構成する特徴値の配列。特徴ベクトルは、トレーニング推論時に入力されます。たとえば、2 つの離散特徴を持つモデルの特徴ベクトルは次のようになります。

[0.92, 0.56]

4 つの層: 入力層、2 つの隠れ層、1 つの出力層。入力レイヤには、値 0.92 を含むノードと値 0.56 を含むノードの 2 つのノードがあります。

各サンプルは特徴ベクトルに異なる値を指定するため、次のサンプルの特徴ベクトルは次のようになります。

[0.73, 0.49]

特徴量エンジニアリングでは、特徴ベクトルで特徴を表現する方法を決定します。たとえば、5 つの可能な値を持つバイナリ カテゴリ特徴は、ワンホット エンコーディングで表すことができます。この場合、特定の例の特徴ベクトルの部分は、4 つのゼロと 3 番目の位置にある 1.0 で構成されます。

[0.0, 0.0, 1.0, 0.0, 0.0]

別の例として、モデルが次の 3 つの特徴で構成されているとします。

  • ワンホット エンコーディングで表される、5 つの可能な値を持つバイナリのカテゴリ特徴(例: [0.0, 1.0, 0.0, 0.0, 0.0]
  • ワンホット エンコーディングで表される3 つの可能な値を持つ別のバイナリ カテゴリ特徴(例: [0.0, 0.0, 1.0])。
  • 浮動小数点特徴(例: 8.3)。

この場合、各サンプルの特徴ベクトルは 9 個の値で表されます。上記のリストに示されている例の値の場合、特徴ベクトルは次のようになります。

0.0
1.0
0.0
0.0
0.0
0.0
0.0
1.0
8.3

詳細については、ML 集中講座の数値データ: モデルが特徴ベクトルを使用してデータを取り込む方法をご覧ください。

特徴量化

ドキュメントや動画などの入力ソースから特徴を抽出し、それらの特徴を特徴ベクトルにマッピングするプロセス。

ML の専門家の中には、特徴量化を特徴量エンジニアリング特徴量抽出の同義語として使用する人もいます。

フェデレーション ラーニング

スマートフォンなどのデバイスに分散されているサンプルを使用して ML モデルトレーニングする分散型 ML の手法。フェデレーション ラーニングでは、デバイスのサブセットが中央の調整サーバーから現在のモデルをダウンロードします。デバイスは、デバイスに保存されているサンプルを使用してモデルを改善します。デバイスは、モデルの改善点(トレーニング例は除く)を調整サーバー(Coordinator Server)にアップロードします。アップロードされた改善点は、他の更新と集約され、改善されたグローバル モデルが生成されます。集計後、デバイスによって計算されたモデルの更新は不要になるため、破棄できます。

トレーニング用サンプルはアップロードされないため、フェデレーション ラーニングは、データ収集の集中化とデータ最小化のプライバシー原則に準拠しています。

詳細については、フェデレーション ラーニングのコミック(コミックです)をご覧ください。

フィードバック ループ

#fundamentals

機械学習では、モデルの予測が同じモデルまたは別のモデルのトレーニング データに影響を与える状況です。たとえば、映画をおすすめするモデルは、ユーザーが視聴する映画に影響し、その後の映画のレコメンデーション モデルに影響します。

詳細については、ML 集中講座の本番環境の ML システム: 確認すべき質問をご覧ください。

フィードフォワード ニューラル ネットワーク(FFN)

循環型または再帰型の接続のないニューラル ネットワーク。たとえば、従来のディープニューラル ネットワークはフィードフォワード ニューラル ネットワークです。これは、循環型の回帰型ニューラル ネットワークとは対照的です。

少数ショット学習

オブジェクト分類によく使用される機械学習アプローチ。少数のトレーニング サンプルから効果的な分類モデルをトレーニングするように設計されています。

ワンショット学習ゼロショット学習もご覧ください。

少数ショット プロンプト

#language
#generativeAI

大規模言語モデルがどのように応答すべきかを示す複数の(「少数」の)例を含むプロンプト。たとえば、次の長いプロンプトには、大規模言語モデルにクエリに回答する方法を示す 2 つの例が含まれています。

1 つのプロンプトの一部 メモ
指定した国の公式通貨は何ですか? LLM に回答を求める質問。
フランス: EUR 1 つの例を挙げましょう。
英国: GBP 別の例をご紹介します。
インド: 実際のクエリ。

一般的に、少数ショット プロンプトは、ゼロショット プロンプトワンショット プロンプトよりも望ましい結果をもたらします。ただし、少数ショット プロンプトでは長いプロンプトが必要になります。

少数ショット プロンプトは、プロンプトベースの学習に適用される少数ショット学習の一種です。

詳細については、機械学習集中講座のプロンプト エンジニアリングをご覧ください。

フィドル

#language

侵入的なコードやインフラストラクチャを使用せずに、関数とクラスの値を設定する Python ファーストの構成ライブラリ。Pax やその他の ML コードベースの場合、これらの関数とクラスはモデルトレーニングハイパーパラメータを表します。

Fiddle は、機械学習のコードベースが通常次の 3 つに分割されていることを前提としています。

  • レイヤとオプティマイザーを定義するライブラリ コード。
  • ライブラリを呼び出してすべてを接続するデータセットの「グルー」コード。

Fiddle は、評価されていない変更可能な形式でグルーコードの呼び出し構造をキャプチャします。

ファインチューニング

#language
#image
#generativeAI

2 つ目のタスク固有のトレーニング パスは、事前トレーニング済みモデルで実行され、特定のユースケースに合わせてパラメータを調整します。たとえば、一部の大規模言語モデルの完全なトレーニング シーケンスは次のとおりです。

  1. 事前トレーニング: すべての英語の Wikipedia ページなど、膨大な一般的なデータセットで大規模言語モデルをトレーニングします。
  2. ファインチューニング: 医療に関するクエリへの回答など、特定のタスクを実行するように事前トレーニング済みモデルをトレーニングします。通常、ファインチューニングでは、特定のタスクに焦点を当てた数百または数千のサンプルが使用されます。

別の例として、大規模な画像モデルの完全なトレーニング シーケンスは次のとおりです。

  1. 事前トレーニング: 膨大な一般的な画像データセット(ウィキメディア コモンズ内のすべての画像など)で大規模な画像モデルをトレーニングします。
  2. ファインチューニング: オルカの画像の生成など、特定のタスクを実行するように事前トレーニング済みモデルをトレーニングします。

ファインチューニングでは、次の戦略を組み合わせて使用できます。

  • 事前トレーニング済みモデルの既存のパラメータすべて変更する。これは「完全なファインチューニング」と呼ばれることもあります。
  • 事前トレーニング済みモデルの既存のパラメータの一部のみを変更し(通常は出力レイヤに最も近いレイヤ)、他の既存のパラメータは変更しない(通常は入力レイヤに最も近いレイヤ)。パラメータ効率チューニングをご覧ください。
  • レイヤを追加します。通常は、出力レイヤに最も近い既存のレイヤの上に追加します。

ファインチューニングは転移学習の一種です。そのため、ファインチューニングでは、トレーニング済みモデルのトレーニングに使用したものとは異なる損失関数やモデルタイプを使用する場合があります。たとえば、事前トレーニング済みの大規模画像モデルをファインチューニングして、入力画像の鳥の数を返す回帰モデルを生成できます。

ファインチューニングと次の用語を比較します。

詳細については、機械学習集中講座のファインチューニングをご覧ください。

亜麻

#language

JAX 上に構築された、高性能のオープンソースのディープ ラーニング用 ライブラリ。Flax には、ニューラル ネットワークトレーニング関数と、パフォーマンスを評価するメソッドが用意されています。

Flaxformer

#language

オープンソースの Transformer ライブラリFlax 上に構築され、主に自然言語処理とマルチモーダル研究用に設計されています。

忘れるゲート

#seq

長期短期記憶セルの一部で、セル内の情報の流れを調節します。忘却ゲートでは、セルの状態から破棄する情報を決定することでコンテキストを維持します。

成功率

#generativeAI
#Metric

ML モデルの生成テキストを評価するための指標。成功率は、生成された「成功した」テキスト出力の数を生成されたテキスト出力の合計数で割った値です。たとえば、大規模言語モデルが 10 個のコードブロックを生成し、そのうち 5 個が成功した場合、成功率は 50% になります。

成功率は統計学全体で広く役立ちますが、ML 内では、この指標は主にコード生成や数学の問題など、検証可能なタスクの測定に役立ちます。

完全な Softmax

softmax と同義。

候補サンプリングとは対照的です。

詳細については、ML 集中講座のニューラル ネットワーク: マルチクラス分類をご覧ください。

全結合層

ノードが後続の隠れ層のすべてのノードに接続されている隠れ層

全結合レイヤは、密結合レイヤとも呼ばれます。

関数変換

関数を入力として受け取り、変換された関数を出力として返す関数。JAX は関数変換を使用します。

G

GAN

敵対的生成ネットワークの略。

Gemini

#language
#image
#generativeAI

Google の最先端の AI を構成するエコシステム。このエコシステムの要素には次のようなものがあります。

  • さまざまな Gemini モデル
  • Gemini モデルへのインタラクティブな会話型インターフェース。ユーザーがプロンプトを入力すると、Gemini がそのプロンプトに応答します。
  • 各種 Gemini API。
  • Gemini モデルに基づくさまざまなビジネス プロダクト(Gemini for Google Cloud など)。

Gemini モデル

#language
#image
#generativeAI

Google の最先端の Transformer ベースのマルチモーダル モデル。Gemini モデルは、エージェントと統合するように特別に設計されています。

ユーザーは、インタラクティブなダイアログ インターフェースや SDK など、さまざまな方法で Gemini モデルを操作できます。

一般化

#fundamentals

これまでにない新しいデータに対して正しい予測を行うモデルの能力。一般化できるモデルは、過学習しているモデルとは対照的です。

トレーニング セットのサンプルでモデルをトレーニングします。その結果、モデルはトレーニング セット内のデータの特殊性を学習します。一般化とは、基本的に、トレーニング セットにない例に対してモデルが適切な予測を行うことができるかどうかを問うものです。

一般化を促進するために、正則化により、モデルがトレーニング セット内のデータの特殊性に厳密に従ってトレーニングされないようにします。


詳細については、機械学習集中講座の一般化をご覧ください。

一般化曲線

#fundamentals

反復処理回数の関数として、トレーニングの損失検証の損失の両方をプロットします。

一般化曲線は、過剰適合の可能性を検出するのに役立ちます。たとえば、次の一般化曲線は、最終的に検証損失がトレーニング損失よりも大幅に高くなるため、過学習を示唆しています。

Y 軸に損失、x 軸にイテレーションとラベルが付けられた座標型グラフ。2 つのグラフが表示されます。1 つのプロットはトレーニング損失を示し、もう 1 つは検証損失を示します。2 つのプロットは最初は同じように始まりますが、最終的にはトレーニング損失が検証損失よりもはるかに低くなります。

詳細については、機械学習集中講座の一般化をご覧ください。

一般化線形モデル

ガウス ノイズに基づく最小二乗回帰モデルを、ポアソン ノイズやカテゴリ ノイズなど、他の種類のノイズに基づく他の種類のモデルに一般化したもの。一般化線形モデルの例を次に示します。

一般化線形モデルのパラメータは、凸最適化によって見つけることができます。

一般化線形モデルには次のような特性があります。

  • 最適な最小二乗回帰モデルの平均予測は、トレーニング データのラベルの平均と同じです。
  • 最適なロジスティック回帰モデルによって予測される平均確率は、トレーニング データの平均ラベルと同じです。

一般化線形モデルの性能は、その特徴によって制限されます。一般化線形モデルは、ディープ モデルとは異なり、「新しい特徴を学習」できません。

生成されたテキスト

#language
#generativeAI

通常、ML モデルが出力するテキストです。大規模言語モデルを評価する場合、一部の指標では、生成されたテキストを参照テキストと比較します。たとえば、ML モデルがフランス語からオランダ語に翻訳する際の有効性を判断するとします。この例の場合は、次のようになります。

  • 生成されたテキストは、ML モデルが出力するオランダ語の翻訳です。
  • 参照テキストは、人間の翻訳者(またはソフトウェア)が作成したオランダ語の翻訳です。

評価戦略によっては、参照テキストが使用されない場合があります。

敵対的生成ネットワーク(GAN)

新しいデータを作成するシステム。生成器がデータを作成し、識別子が作成されたデータが有効か無効かを判断します。

詳細については、生成敵対ネットワークのコースをご覧ください。

生成 AI

#language
#image
#generativeAI

正式な定義のない新しい変革分野。ただし、ほとんどの専門家は、生成 AI モデルが次のすべてのコンテンツを作成(「生成」)できると考えています。

  • 複雑
  • 一貫性
  • オリジナル

たとえば、生成 AI モデルは高度なエッセイや画像を作成できます。

LSTMRNN などの以前のテクノロジーでも、独自の連続したコンテンツを生成できます。一部の専門家は、これらの初期のテクノロジーを生成 AI と見なしていますが、真の生成 AI には、それらの初期のテクノロジーが生成できるよりも複雑な出力が必要だと考える専門家もいます。

予測 ML とは対照的です。

生成モデル

実用的なモデルは、次のいずれかを行います。

  • トレーニング データセットから新しいサンプルを作成(生成)します。たとえば、生成モデルは詩のデータセットでトレーニングした後、詩を作成できます。敵対的生成ネットワーク生成器は、このカテゴリに分類されます。
  • 新しい例がトレーニング セットから取得されたか、トレーニング セットを作成した同じメカニズムから作成されたかの確率を決定します。たとえば、英語の文からなるデータセットでトレーニングした後、生成モデルは新しい入力が有効な英語の文である確率を決定できます。

生成モデルは、理論的にはデータセット内の例や特定の特徴の分布を識別できます。具体的には、次のことが求められます。

p(examples)

教師なし学習モデルは生成モデルです。

識別モデルとは対照的です。

ジェネレータ

新しいを作成する生成敵対ネットワーク内のサブシステム。

識別モデルとは対照的です。

ジニ不純度

#df
#Metric

エントロピーに似た指標。分割ツールは、Gini 不純物またはエントロピーから導出された値を使用して、分類決定木条件を作成します。情報量の増加はエントロピーから導出されます。ジニ不純度から導出された指標に、広く認められた同等の用語はありません。ただし、この名前のない指標は情報量の増加と同じくらい重要です。

ジニ不純度は、ジニ係数または単にジニとも呼ばれます。

ジニ不純度は、同じ分布から取得された新しいデータを誤って分類する確率です。2 つの可能な値「0」と「1」を持つセット(二値分類問題のラベルなど)の Gini 不純度は、次の式で計算されます。

   I = 1 - (p2 + q2) = 1 - (p2 + (1-p)2)

ここで

  • I はジニ不純物です。
  • p は「1」の例の割合です。
  • q は「0」の例の割合です。q = 1-p に注意してください。

たとえば、次のデータセットについて考えてみましょう。

  • 100 個のラベル(データセットの 0.25)に値「1」が含まれている
  • 300 個のラベル(データセットの 0.75)に値「0」が含まれている

したがって、Gini 不純度は次のようになります。

  • p = 0.25
  • q = 0.75
  • I = 1 - (0.252 + 0.752) = 0.375

したがって、同じデータセットのラベルをランダムに選択した場合、誤分類される確率は 37.5%、正しく分類される確率は 62.5% になります。

完全にバランスの取れたラベル(200 個の「0」と 200 個の「1」など)では、Gini 不純度は 0.5 になります。不均衡なラベルでは、Gini 不純物が 0.0 に近くなります。


ゴールドデータセット

グラウンド トゥルースをキャプチャする、手動でキュレートされた一連のデータ。チームは、1 つ以上のゴールドデータセットを使用してモデルの品質を評価できます。

一部のゴールドデータセットは、グラウンド トゥルースの異なるサブドメインをキャプチャします。たとえば、画像分類用のゴールドデータセットでは、照明条件と画像解像度をキャプチャできます。

ゴールデン レスポンス

#language
#generativeAI

正しいと知られている回答。たとえば、次のようなプロンプトがあるとします。

2 + 2

理想的な回答は次のとおりです。

4

ROUGE などの評価指標では、参照テキストとモデルの生成テキストを比較します。プロンプトに正しい回答が 1 つある場合、通常、ゴールデン回答が参照テキストとして使用されます。

一部のプロンプトには正解が 1 つではないものがあります。たとえば、「このドキュメントを要約してください」というプロンプトには、多くの正解がある可能性があります。このようなプロンプトの場合、モデルは非常に幅広い要約を生成できるため、参照テキストは実用的でないことがよくあります。ただし、この状況ではゴールド レスポンスが役立つ場合があります。たとえば、優れたドキュメントの要約を含むゴールドレスポンスを使用することで、自動評価ツールをトレーニングして、優れたドキュメントの要約のパターンを検出できます。


GPT(Generative Pre-trained Transformer)

#language

OpenAI が開発した Transformer ベースの大規模言語モデルのファミリー。

GPT バリアントを適用できるモダリティは次のとおりです。

  • 画像生成(ImageGPT など)
  • テキストから画像への生成(DALL-E など)。

グラデーション

すべての独立変数に対する偏微分のベクトル。機械学習では、勾配はモデル関数の偏微分ベクトルです。勾配は最も急な上昇方向を向いています。

勾配の蓄積

イテレーションごとに 1 回ではなく、エポックごとに 1 回のみパラメータを更新するバックプロパゲーション手法。各ミニバッチを処理した後、勾配の累積は勾配の合計を更新するだけです。その後、エポックの最後のミニバッチを処理した後、システムはすべての勾配変化の合計に基づいてパラメータを更新します。

勾配の蓄積は、トレーニングで使用可能なメモリの量と比較してバッチサイズが非常に大きい場合に便利です。メモリが問題の場合は、バッチサイズを小さくするのが一般的です。ただし、通常のバックプロパゲーションのバッチサイズを小さくすると、パラメータの更新回数が増加します。勾配の蓄積により、モデルはメモリの問題を回避しながら効率的にトレーニングできます。

勾配ブースト(ディシジョン)ツリー(GBT)

#df

デシジョン フォレストの一種で、次のような特徴があります。

詳細については、ディシジョン フォレスト コースの勾配ブースト決定ツリーをご覧ください。

勾配ブースト

#df

弱いモデルをトレーニングして、強力なモデルの品質を反復的に改善(損失を削減)するトレーニング アルゴリズム。たとえば、弱いモデルには、線形モデルや小規模なディシジョン ツリー モデルがあります。強力なモデルは、以前にトレーニングされたすべての弱いモデルの合計になります。

最も単純な形の勾配ブーストでは、反復処理のたびに、強力なモデルの損失勾配を予測するように弱いモデルがトレーニングされます。次に、勾配降下法と同様に、予測された勾配を減算して、強力なモデルの出力を更新します。

F0=0
Fi+1=Fiξfi

ここで

  • F0 は開始時の強力なモデルです。
  • Fi+1 は次の強力なモデルです。
  • Fi は現在の強力なモデルです。
  • ξ は 0.0 ~ 1.0 の値で、縮小と呼ばれます。これは、勾配降下法の学習率に似ています。
  • fi は、Fi の損失勾配を予測するようにトレーニングされた弱いモデルです。

最新の勾配ブーストのバリエーションでは、損失の 2 階微分(ヘッセ)も計算に含めています。

ディシジョン ツリーは、勾配ブーストで弱いモデルとしてよく使用されます。勾配ブースト(ディシジョン)ツリーをご覧ください。

グラデーションのクリッピング

#seq

勾配降下を使用してモデルをトレーニングするときに、勾配の最大値を人為的に制限(クリップ)することで、勾配の急増の問題を軽減するためによく使用されるメカニズム。

勾配降下法

#fundamentals

損失を最小限に抑える数学的な手法。勾配降下法は、重みバイアスを反復的に調整し、損失を最小限に抑える最適な組み合わせを徐々に見つけます。

勾配降下法は、機械学習よりもはるかに古い手法です。

詳細については、機械学習集中講座の線形回帰: 勾配降下法をご覧ください。

グラフ

#TensorFlow

TensorFlow では、計算仕様。グラフ内のノードはオペレーションを表します。エッジは有向で、オペレーションの結果(Tensor)をオペランドとして別のオペレーションに渡すことを表します。TensorBoard を使用してグラフを可視化します。

グラフ実行

#TensorFlow

プログラムが最初にグラフを構築し、そのグラフの一部またはすべてを実行する TensorFlow プログラミング環境。グラフ実行は、TensorFlow 1.x のデフォルトの実行モードです。

早期実行とは対照的です。

貪欲なポリシー

#rl

強化学習におけるポリシー。期待されるリターンが最も高いアクションを常に選択します。

根拠性

出力が特定のソース マテリアルに基づく(「基づいている」)モデルのプロパティ。たとえば、物理学教科書全体を入力(「コンテキスト」)として大規模言語モデルに提供するとします。次に、その大規模言語モデルに物理に関する質問をプロンプトします。モデルの回答がその教科書の情報に基づいている場合、そのモデルは教科書に根拠づけられていることになります。

根拠に基づくモデルは、必ずしも事実に基づくモデルとは限りません。たとえば、入力された物理学教科書に誤りがある可能性があります。

グラウンド トゥルース

#fundamentals

現実。

実際に発生した事象。

たとえば、大学 1 年生の学生が 6 年以内に卒業するかどうかを予測するバイナリ分類モデルについて考えてみましょう。このモデルのグラウンド トゥルースは、その生徒が実際に 6 年以内に卒業したかどうかです。

モデルの品質はグラウンド トゥルースと比較して評価されます。ただし、グラウンド トゥルースは必ずしも完全に真実であるとは限りません。たとえば、次の例は、グラウンド トゥルースにある可能性のある不完全性を示しています。

  • 卒業例では、各生徒の卒業記録が常に正しいことは確実ですか?大学の記録管理は完璧ですか?
  • ラベルが、計測機器(気圧計など)によって測定された浮動小数点値であるとします。各計測機器が同じ基準で調整されていること、または各測定が同じ状況で行われたことをどのように確認すればよいですか?
  • ラベルが人間の意見に依存するものである場合、各人間のレーティング担当者がイベントを同じ方法で評価していることをどのように確認できるでしょうか。一貫性を高めるために、専門家の人間のレーティング担当者が介入することがあります。

グループ帰属バイアス

#fairness

個人に当てはまることを、そのグループ内の全員に当てはまると仮定する。データ収集に便宜的サンプリングを使用すると、グループ アトリビューションのバイアスの影響が悪化する可能性があります。代表性のないサンプルでは、現実を反映していないアトリビューションが作成される可能性があります。

自分が属していないグループに対する均一性のバイアス所属グループのバイアスもご覧ください。詳細については、ML 集中講座の公平性: バイアスの種類をご覧ください。

H

ハルシネーション

#language

現実世界について主張していると思われる生成 AI モデルが、もっともらしいが事実と異なる出力を生成すること。たとえば、バラク オバマが 1865 年に亡くなったと主張する生成 AI モデルは幻覚を起こしています。

ハッシュ ; ハッシュ化

機械学習では、カテゴリデータをバケット化するメカニズムです。特に、カテゴリの数は多いものの、データセットに実際に出現するカテゴリの数は比較的少ない場合に使用します。

たとえば、地球には約 73,000 種類の樹木が生息しています。73,000 種類の樹木を 73,000 個の個別のカテゴリ バケットで表すことができます。または、データセットに実際に表示される樹木の種類が 200 種類しかない場合は、ハッシュを使用して樹木の種類を 500 個のバケットに分割できます。

1 つのバケットに複数の樹木種を含めることができます。たとえば、ハッシュ化により、遺伝的に類似していない 2 つの種であるバオバブと赤いカエデが同じバケットに配置される可能性があります。いずれにしても、ハッシュ化は、大規模なカテゴリセットを選択した数のバケットにマッピングする優れた方法です。ハッシュ化では、値を確定的な方法でグループ化することで、考えられる値が多数あるカテゴリ特徴を、はるかに少ない数の値に変換します。

詳細については、機械学習集中講座のカテゴリデータ: 語彙とワンホット エンコードをご覧ください。

ヒューリスティック

問題に対するシンプルで迅速に実装できるソリューション。たとえば、「ヒューリスティクスにより、86% の精度を達成しました。ディープラーニング ネットワークに切り替えると、精度は 98% に向上しました。」

隠れ層

#fundamentals

ニューラル ネットワークの層。入力層(特徴)と出力層(予測)の間にあります。各隠れ層は、1 つ以上のニューロンで構成されます。たとえば、次のニューラル ネットワークには 2 つの隠れレイヤがあります。最初のレイヤには 3 つのニューロンがあり、2 番目のレイヤには 2 つのニューロンがあります。

4 つのレイヤ。最初のレイヤは、2 つの特徴量を含む入力レイヤです。2 番目のレイヤは、3 つのニューロンを含む隠れ層です。3 つ目のレイヤは、2 つのニューロンを含む隠れ層です。4 番目の層は出力層です。各特徴には 3 つのエッジがあり、それぞれが 2 番目のレイヤ内の異なるニューロンを参照しています。2 番目のレイヤの各ニューロンには 2 つのエッジがあり、それぞれが 3 番目のレイヤの異なるニューロンを参照しています。3 番目のレイヤの各ニューロンには、出力レイヤを指すエッジが 1 つあります。

ディープ ニューラル ネットワークには、複数の隠れ層が含まれています。たとえば、上の図は、モデルに 2 つの隠しレイヤが含まれているため、ディープニューラル ネットワークです。

詳細については、ML 集中講座のニューラル ネットワーク: ノードと隠れ層をご覧ください。

階層クラスタリング

#clustering

クラスタのツリーを作成するクラスタリングアルゴリズムのカテゴリ。階層クラスタリングは、植物分類などの階層データに適しています。階層クラスタリング アルゴリズムには次の 2 種類があります。

  • アグロメレーション クラスタリングでは、まずすべてのサンプルを独自のクラスタに割り当て、最も近いクラスタを反復的にマージして階層ツリーを作成します。
  • 分割クラスタリングでは、まずすべてのサンプルを 1 つのクラスタにグループ化し、次にクラスタを階層ツリーに反復的に分割します。

重心ベースのクラスタリングとは対照的です。

詳細については、クラスタリング コースのクラスタリング アルゴリズムをご覧ください。

ヒルクライム

モデルの改善が止まるまで(「丘の頂上に到達」)ML モデルを反復的に改善する(「上り坂を歩く」)アルゴリズム。アルゴリズムの一般的な形式は次のとおりです。

  1. 開始モデルを構築します。
  2. トレーニングまたはファインチューニングの方法を少し調整して、新しい候補モデルを作成します。これには、若干異なるトレーニング セットまたは異なるハイパーパラメータを使用する場合があります。
  3. 新しい候補モデルを評価し、次のいずれかを行います。
    • 候補モデルが開始モデルよりも優れている場合、その候補モデルが新しい開始モデルになります。この場合は、手順 1、2、3 を繰り返します。
    • 開始モデルよりも優れたモデルがない場合は、頂点に達しているため、反復処理を停止する必要があります。

ハイパーパラメータ調整のガイダンスについては、Deep Learning Tuning Playbook をご覧ください。特徴量エンジニアリングのガイダンスについては、ML 集中講座のデータモジュールをご覧ください。

ヒンジの紛失

#Metric

各トレーニング サンプルから可能な限り離れた分類境界を見つけ、サンプルと境界間のマージンを最大化するように設計された分類用の損失関数のファミリー。KSVM はヒンジ損失(または関連する関数(平方ヒンジ損失など))を使用します。二項分類の場合、ヒンジ損失関数は次のように定義されます。

loss=max(0,1(yy))

ここで、y は正解ラベル(-1 または +1)で、y'分類モデルの元の出力です。

y=b+w1x1+w2x2+wnxn

したがって、ヒンジ損失と(y * y')のプロットは次のようになります。

2 つの線分で構成される直交グラフ。最初の線分は(-3, 4)から始まり、(1, 0)で終わります。2 番目の線分は(1, 0)から始まり、傾斜 0 で無限に続きます。

過去のバイアス

#fairness

世界にすでに存在し、データセットに組み込まれているバイアスの一種。こうしたバイアスは、既存の文化的固定観念、人口統計的な不平等、特定の社会的グループに対する偏見を反映する傾向があります。

たとえば、ローン申請者がローンの支払いを滞納するかどうかを予測する分類モデルについて考えてみましょう。このモデルは、2 つの異なる地域の地方銀行から 1980 年代の過去のローン債務不履行データに基づいてトレーニングされています。コミュニティ A の過去の申請者が、コミュニティ B の申請者よりもローンのデフォルト率が 6 倍高い場合、モデルは過去の偏見を学習し、コミュニティ A のローンを承認する可能性が低くなる可能性があります。これは、そのコミュニティでデフォルト率が高くなった過去の状況が、もはや関連性がない場合でも同様です。

詳細については、ML 集中講座の公平性: バイアスの種類をご覧ください。

ホールドアウト データ

トレーニング中に意図的に使用されない(「ホールドアウト」)サンプル検証データセットテストデータセットは、ホールドアウト データの例です。ホールドアウト データは、トレーニングに使用したデータ以外のデータに一般化するモデルの能力を評価するのに役立ちます。ホールドアウト セットの損失は、トレーニング セットの損失よりも、未知のデータセットの損失をより正確に推定できます。

ホスト

#TensorFlow
#GoogleCloud

アクセラレータ チップ(GPU または TPU)で ML モデルをトレーニングする場合、システムの次の両方を制御する部分:

  • コードの全体的なフロー。
  • 入力パイプラインの抽出と変換。

ホストは通常、アクセラレータ チップではなく CPU で実行されます。デバイスは、アクセラレータ チップでテンソルを操作します。

人間による評価

#language
#generativeAI

人間が ML モデルの出力の品質を判断するプロセス。たとえば、バイリンガルの人間に ML 翻訳モデルの品質を判断してもらうなどです。人間による評価は、唯一の正解がないモデルの評価に特に役立ちます。

自動評価自動評価ツールによる評価とは対照的です。

人間参加型(HITL)

#generativeAI

次のいずれかを意味する、あいまいな定義の慣用句。

  • 生成 AI の出力を批判的または懐疑的に見るポリシー。たとえば、この ML 用語集を作成した人間は、大規模言語モデルができることには驚いていますが、大規模言語モデルが犯す間違いには注意しています。
  • 人間がモデルの動作の形成、評価、改善に貢献できるようにするための戦略またはシステム。人間をループに維持することで、AI は機械知能と人間知能の両方からメリットを得ることができます。たとえば、AI がコードを生成し、ソフトウェア エンジニアがレビューするシステムは、人間がループ内にあるシステムです。

ハイパーパラメータ

#fundamentals

ユーザーまたはハイパーパラメータ チューニング サービスが、モデルのトレーニングを連続して実行する際に調整する変数。たとえば、学習率はハイパーパラメータです。1 回のトレーニング セッションの前に学習率を 0.01 に設定できます。0.01 が大きすぎると判断した場合は、次のトレーニング セッションで学習率を 0.003 に設定できます。

一方、パラメータは、トレーニング中にモデルが学習するさまざまな重みバイアスです。

詳細については、機械学習集中講座の線形回帰: ハイパーパラメータをご覧ください。

超平面

空間を 2 つのサブスペースに分割する境界。たとえば、直線は 2 次元の超平面であり、平面は 3 次元の超平面です。機械学習では、ハイパープレーンは高次元空間を分離する境界です。カーネル サポート ベクトル マシンは、ハイパープレーンを使用することで、正クラスと負クラスを分離します。多くの場合、非常に高次元の空間で分離します。

I

i.i.d.

独立同分布の略語。

画像認識

#image

画像内のオブジェクト、パターン、コンセプトを分類するプロセス。画像認識は、画像分類とも呼ばれます。

詳細については、ML 演習: 画像分類をご覧ください。

詳細については、ML 演習: 画像分類コースをご覧ください。

不均衡なデータセット

クラス不均衡データセットと同義。

暗黙のバイアス

#fairness

自分の心のモデルと記憶に基づいて、関連付けや推測を自動的に行う。無意識の偏見は、次のようなことに影響する可能性があります。

  • データの収集と分類方法。
  • 機械学習システムの設計と開発方法。

たとえば、結婚式の写真を識別する分類モデルを構築する場合、エンジニアは写真に白いドレスが写っているかどうかを特徴として使用できます。ただし、白いドレスは特定の時代や特定の文化でのみ慣習となっています。

確証バイアスもご覧ください。

補完

値の補完の略称。

公平性の指標の不整合

#fairness
#Metric

公平性の概念の中には相互に矛盾するものがあり、同時に満たすことができないという考え方。そのため、すべての ML 問題に適用できる公平性を定量化する単一の普遍的な指標はありません。

公平性の指標が互換性がないことは、公平性への取り組みが実を結ばないという意味ではありません。代わりに、ユースケースに固有の害を防ぐことを目標に、特定の ML 問題のコンテキストに沿って公平性を定義する必要があることを示唆しています。

公平性指標の非互換性について詳しくは、「公平性の可能性(不可能性)について」をご覧ください。

コンテキスト内学習

#language
#generativeAI

少数ショット プロンプトと同義。

独立同分布(i.i.d)

#fundamentals

変化しない分布から抽出されたデータで、抽出される各値が以前に抽出された値に依存しないデータ。i.i.d. は機械学習の理想気体です。これは有用な数学的な構成ですが、現実世界ではほとんど正確に見つかりません。たとえば、ウェブページへの訪問者の分布は、短い期間では独立分散である可能性があります。つまり、その短い期間では分布は変化せず、1 人の訪問は通常別の人の訪問とは独立しています。ただし、期間を広げると、ウェブページの訪問者数に季節的な違いが現れる可能性があります。

非定常性もご覧ください。

個人の公平性

#fairness
#Metric

類似の個人が類似して分類されるかどうかを確認する公平性指標。たとえば、Brobdingnagian アカデミーは、同じ成績と標準化テストのスコアを持つ 2 人の生徒が、入学する可能性を同等に確保することで、個人の公平性を満たしたいと考えています。

個人の公正性は、「類似性」(この場合は成績とテストのスコア)の定義に完全に依存します。類似性指標で重要な情報(生徒のカリキュラムの厳しさなど)が欠落していると、新しい公正性の問題が発生するリスクがあります。

個々の公平性について詳しくは、「認識による公平性」をご覧ください。

推論

#fundamentals

ML における、トレーニング済みモデルをラベルなしの例に適用して予測を行うプロセス。

統計学では、推論には少し異なる意味があります。詳細については、 統計的推論に関する Wikipedia の記事をご覧ください。

教師あり学習システムにおける推論の役割については、ML 入門コースの教師あり学習をご覧ください。

推論パス

#df

ディシジョン ツリーでは、推論中に、特定のルートから他の条件に移動し、リーフで終了します。たとえば、次の意思決定ツリーでは、太い矢印は、次の特徴値を持つ例の推論パスを示しています。

  • x = 7
  • y = 12
  • z = -3

次の図の推論パスは、リーフ(Zeta)に到達する前に 3 つの条件を通過します。

4 つの条件と 5 つのリーフで構成されるディシジョン ツリー。ルート条件は(x > 0)です。答えが「はい」であるため、推論パスはルートから次の条件(y > 0)に移動します。答えが「はい」であるため、推論パスは次の条件(z > 0)に進みます。答えが「いいえ」であるため、推論パスは終端ノード(リーフ(Zeta))に移動します。

3 つの太い矢印は推論パスを示しています。

詳細については、ディシジョン フォレスト コースのディシジョン ツリーをご覧ください。

情報利得

#df
#Metric

ディシジョン フォレストでは、ノードのエントロピーと、その子ノードのエントロピーの重み付け(例数による)の合計との差です。ノードのエントロピーは、そのノードのサンプルのエントロピーです。

たとえば、次のエントロピー値について考えてみましょう。

  • 親ノードのエントロピー = 0.6
  • 関連する例が 16 個ある 1 つの子ノードのエントロピー = 0.2
  • 関連する例が 24 個ある別の子ノードのエントロピー = 0.1

つまり、例の 40% が 1 つの子ノードに、60% がもう 1 つの子ノードに分類されます。そのため、次のようになります。

  • 子ノードの加重エントロピーの合計 =(0.4 × 0.2)+(0.6 × 0.1)= 0.14

したがって、情報利得は次のようになります。

  • 情報利得 = 親ノードのエントロピー - 子ノードの重み付けエントロピーの合計
  • 情報利得 = 0.6 - 0.14 = 0.46

ほとんどの分割ツールは、情報量を最大化する条件を作成しようとします。

所属グループのバイアス

#fairness

自分のグループや自分の特性に偏見を示す。テスターまたは評価者が ML デベロッパーの友人、家族、同僚である場合、グループ内バイアスによりプロダクト テストまたはデータセットが無効になる可能性があります。

所属グループのバイアスとは、グループ帰属バイアスの一種です。自分が属していないグループに対する均一性のバイアスもご覧ください。

詳細については、ML 集中講座の公平性: バイアスの種類をご覧ください。

入力ジェネレータ

データがニューラル ネットワークに読み込まれるメカニズム。

入力ジェネレータは、トレーニング、評価、推論のバッチを生成するために反復処理されるテンソルに変換する元データの処理を担当するコンポーネントと考えることができます。

入力レイヤ

#fundamentals

特徴ベクトルを保持するニューラル ネットワークレイヤ。つまり、入力レイヤはトレーニングまたは推論用のサンプルを提供します。たとえば、次のニューラル ネットワークの入力レイヤは 2 つの特徴で構成されています。

4 つのレイヤ(入力レイヤ、2 つの隠れ層、出力レイヤ)

セット内の条件

#df

ディシジョン ツリーでは、アイテムのセット内に 1 つのアイテムが存在するかどうかをテストする条件。たとえば、次はセット内条件です。

  house-style in [tudor, colonial, cape]

推論中に、住宅スタイルの特徴量の値が tudorcolonial、または cape の場合、この条件は「はい」と評価されます。住宅スタイルの特徴の値が他の場合(ranch など)は、この条件は「いいえ」と評価されます。

通常、セット内条件は、ワンホット エンコードされた特徴をテストする条件よりも効率的なディシジョン ツリーにつながります。

インスタンス

と同義。

指示チューニング

#generativeAI

生成 AI モデルが指示に従う能力を向上させるファインチューニングの一種。命令のチューニングでは、通常はさまざまなタスクを網羅する一連の命令プロンプトでモデルをトレーニングします。生成された命令チューニング済みモデルは、さまざまなタスクでゼロショット プロンプトに対する有用なレスポンスを生成する傾向があります。

比較対照:

解釈可能性

#fundamentals

ML モデルの推論を人間にわかりやすい言葉で説明または提示する能力。

たとえば、ほとんどの線形回帰モデルは、解釈性に優れています。(確認するだけでよい線形回帰モデルや ディシジョンフォレストデシジョン フォレストは解釈性も高く、ただし、一部のモデルでは、解釈可能にするために高度な可視化が必要になります。

Learning Interpretability Tool(LIT)を使用して ML モデルを解釈できます。

評価者間の一致

#Metric

タスクを実施する際に人間の評価者が一致する頻度の測定値。評価者が一致しない場合は、タスクの手順を改善する必要があります。アノテーション作成者間の合意や評価者間の信頼性とも呼ばれます。最も一般的な判定者間の合意測定の 1 つである Cohen のカッパもご覧ください。

詳細については、機械学習集中講座のカテゴリデータ: 一般的な問題をご覧ください。

Intersection over Union(IoU)

#image

2 つの集合の共通部分をその和で除算した値。機械学習の画像検出タスクでは、IoU を使用して、グラウンド トゥルースの境界ボックスに対するモデルの予測境界ボックスの精度を測定します。この場合、2 つのボックスの IoU は、重複領域と合計領域の比率であり、その値は 0(予測境界ボックスとグラウンド トゥルースの境界ボックスが重複しない)から 1(予測境界ボックスとグラウンド トゥルースの境界ボックスが完全に同じ座標を持つ)の範囲です。

たとえば、次の画像では、

  • 予測された境界ボックス(モデルが絵画のナイトテーブルが配置されていると予測する場所を区切る座標)は紫色の枠線で囲まれています。
  • グラウンド トゥルースの境界ボックス(絵画のナイトテーブルが実際に存在する場所を区切る座標)は緑色の枠線で囲まれています。

ファン ゴッホの絵画「アルルの寝室」で、ベッドの横のナイトテーブルの周囲に 2 つの異なるバウンディング ボックスが設定されています。グラウンド トゥルースの境界ボックス(緑色)は、夜間テーブルを完全に囲んでいます。予測された境界ボックス(紫色)は、グラウンド トゥルースの境界ボックスの下 50% と右にオフセットされています。夜間のテーブルの右下 1/4 を囲んでいますが、テーブルの残りの部分は囲んでいません。

ここで、予測境界ボックスと正解境界ボックスの交差(左下)は 1、予測境界ボックスと正解境界ボックスの和(右下)は 7 であるため、IoU は 17です。

上記と同じ画像ですが、各境界ボックスが 4 つの象限に分割されています。グラウンド トゥルースの境界ボックスの右下と予測境界ボックスの左上は重なるため、合計 7 つの四分割があります。この重複する部分(緑色でハイライト表示)は交差を表し、面積は 1 です。 上記と同じ画像ですが、各境界ボックスが 4 つの象限に分割されています。グラウンド トゥルースの境界ボックスの右下象限と予測境界ボックスの左上象限が重複するため、合計 7 つの象限があります。両方の境界ボックスで囲まれた内部全体(緑色でハイライト表示)が結合を表し、面積は 7 です。

IoU

IoU の略。

アイテム マトリックス

#recsystems

レコメンデーション システムでは、アイテムに関する潜在シグナルを保持する行列分解によって生成されたエンベディング ベクトルの行列。アイテム マトリックスの各行には、すべてのアイテムの単一の潜在特徴の値が格納されます。たとえば、映画のレコメンデーション システムについて考えてみましょう。アイテム マトリックスの各列は 1 つの映画を表します。潜在シグナルは、ジャンルを表す場合もあれば、ジャンル、スター、映画の年齢などの要素間の複雑な相互作用を含む、解釈が難しいシグナルである場合もあります。

アイテム マトリックスの列数は、分解されるターゲット マトリックスの列数と同じです。たとえば、10,000 本の映画タイトルを評価する映画おすすめシステムの場合、アイテム マトリックスには 10,000 個の列があります。

アイテム

#recsystems

レコメンデーション システムでは、システムが推奨するエンティティ。たとえば、動画はビデオストアがおすすめするアイテムであり、書籍は書店がおすすめするアイテムです。

繰り返し

#fundamentals

トレーニング中にモデルのパラメータ(モデルの重みバイアス)を 1 回更新します。バッチサイズは、モデルが 1 回の反復で処理するサンプルの数を決定します。たとえば、バッチサイズが 20 の場合、モデルはパラメータを調整する前に 20 個のサンプルを処理します。

ニューラル ネットワークをトレーニングする場合、1 回の反復処理には次の 2 つのパスが含まれます。

  1. 1 つのバッチで損失を評価する順伝播。
  2. バックワード パス(バックプロパゲーション): 損失と学習率に基づいてモデルのパラメータを調整します。

詳細については、機械学習集中講座の勾配降下をご覧ください。

J

JAX

高性能数値計算のために、XLA(Accelerated Linear Algebra)と自動微分機能を組み合わせた配列計算ライブラリ。JAX は、コンポーザブル変換を使用して高速化された数値コードを記述するためのシンプルで強力な API を提供します。JAX には次のような機能があります。

  • grad(自動微分)
  • jit(ジャストインタイム コンパイル)
  • vmap(自動ベクトル化またはバッチ処理)
  • pmap(並列化)

JAX は、数値コードの変換を表現してコンポーズするための言語です。Python の NumPy ライブラリに似ていますが、その範囲ははるかに広くなっています。(実際、JAX の .numpy ライブラリは、機能的には同等ですが、Python NumPy ライブラリを完全に書き直したものです)。

JAX は、モデルとデータを GPU と TPU アクセラレータ チップ間の並列処理に適した形式に変換することで、多くの ML タスクを高速化するために特に適しています。

FlaxOptaxPax など、多くのライブラリが JAX インフラストラクチャ上に構築されています。

K

Keras

一般的な Python ML API。Keras は、TensorFlow などの複数のディープ ラーニング フレームワークで実行され、tf.keras として使用できます。

カーネル サポート ベクター マシン(KSVM)

入力データベクトルを高次元空間にマッピングすることで、正クラス負クラスの間のマージンを最大化しようとする分類アルゴリズム。たとえば、入力データセットに 100 個の特徴がある分類問題について考えてみましょう。正クラスと負クラス間のマージンを最大化するために、KSVM は内部でこれらの特徴を 100 万次元の空間にマッピングできます。KSVM は、ヒンジ損失と呼ばれる損失関数を使用します。

キーポイント

#image

画像内の特定の特徴の座標。たとえば、花の種類を区別する画像認識モデルの場合、キーポイントは各花びらの中心、茎、雄しべなどです。

K 分割交差検証

新しいデータに一般化するモデルの能力を予測するアルゴリズム。k 分割の k は、データセットのサンプルを分割する同等のグループの数を指します。つまり、モデルを k 回トレーニングしてテストします。トレーニングとテストの各ラウンドでは、異なるグループがテストセットになり、残りのすべてのグループがトレーニング セットになります。k 回のラウンドでトレーニングとテストを行った後、選択したテスト指標の平均と標準偏差を計算します。

たとえば、データセットが 120 個のサンプルで構成されているとします。さらに、k を 4 に設定するとします。したがって、サンプルをシャッフルした後、データセットを 30 個のサンプルの 4 つの均等なグループに分割し、4 回のトレーニングとテストを実施します。

4 つの均等なサンプル グループに分割されたデータセット。ラウンド 1 では、最初の 3 つのグループがトレーニングに使用され、最後のグループがテストに使用されます。ラウンド 2 では、最初の 2 つのグループと最後のグループがトレーニングに使用され、3 番目のグループがテストに使用されます。ラウンド 3 では、最初のグループと最後の 2 つのグループがトレーニングに使用され、2 番目のグループがテストに使用されます。ラウンド 4 では、最初のグループはテストに使用され、最後の 3 つのグループはトレーニングに使用されます。

たとえば、線形回帰モデルでは平均二乗誤差(MSE)が最も有意な指標になる可能性があります。したがって、4 つのラウンド全体の MSE の平均と標準偏差を確認します。

K 平均法

#clustering

教師なし学習で例をグループ化する一般的なクラスタリング アルゴリズム。k 平均法アルゴリズムは基本的に次の処理を行います。

  • 最適な k 個の中心点(セントロイド)を反復的に決定します。
  • 各サンプルを最も近いセントロイドに割り当てます。同じ重心の近くにある例は同じグループに属します。

K 平均法アルゴリズムは、各サンプルから最も近いセントロイドまでの距離の累積平方を最小化するようにセントロイドの位置を選択します。

たとえば、犬の高さと犬の幅の次のプロットについて考えてみましょう。

数十個のデータポイントを含むカーテシアン プロット。

k=3 の場合、K 平均法アルゴリズムは 3 つの重心を決定します。各サンプルは、最も近い重心に割り当てられ、3 つのグループが生成されます。

3 つの重心が追加されていることを除き、前の図と同じカーテシアン プロットです。上記のデータポイントは 3 つの個別のグループにクラスタ化されています。各グループは、特定のセントロイドに最も近いデータポイントを表しています。

犬用のセーターのサイズ(小、中、大)を決定したいとメーカーが考えています。3 つのセントロイドは、そのクラスタ内の各犬の平均高さと平均幅を示します。したがって、メーカーは、これらの 3 つの重心に基づいてセーターサイズを決定する必要があります。通常、クラスタの重心はクラスタ内の例ではありません。

上の図は、2 つの特徴量(高さと幅)のみを含む例の K 平均法を示しています。k 平均法では、多くの特徴にわたってサンプルをグループ化できます。

詳細については、クラスタリング コースのK 平均法クラスタリングとはをご覧ください。

K 中央値

#clustering

k 平均法に密接に関連するクラスタリング アルゴリズム。2 つの実質的な違いは次のとおりです。

  • k 平均法では、セントロイド候補と各サンプル間の距離の二乗の合計を最小化することでセントロイドが決定されます。
  • k-median では、セントロイド候補と各例の間隔の合計を最小化することでセントロイドが決定されます。

距離の定義も異なります。

  • K 平均法は、セントロイドからサンプルまでのユークリッド距離に依存します。(2 次元では、ユークリッド距離とはピタゴラスの定理を使用して斜辺を計算することを意味します)。たとえば、(2,2)と(5,-2)の間の K 平均法距離は次のようになります。
Euclidean distance=(25)2+(22)2=5
  • K メディアンは、セントロイドからサンプルまでの マンハッタン距離に依存します。この距離は、各ディメンションの絶対差分の合計です。たとえば、(2,2)と(5,-2)の間の k-median 距離は次のようになります。
Manhattan distance=|25|+|22|=7

L

L0 正規化

#fundamentals

モデル内のゼロ以外の重み合計数にペナルティを適用する正則化の一種。たとえば、11 個の非ゼロ重みを持つモデルは、10 個の非ゼロ重みを持つ同様のモデルよりも大きなペナルティが適用されます。

L0 正則化は、L0 ノルム正則化とも呼ばれます。

L0 正則化は、トレーニングを最適化問題に変えるため、大規模モデルでは一般的に実用的ではありません。


L1 損失

#fundamentals
#Metric

実際のラベル値とモデルが予測する値の差の絶対値を計算する損失関数。たとえば、5 つのサンプルバッチに対する L1 損失の計算は次のとおりです。

例の実際の値 モデルの予測値 デルタの絶対値
7 6 1
5 4 1
8 11 3
4 6 2
9 8 1
  8 = L1 の損失

L1 損失は、L2 損失よりも外れ値に敏感ではありません。

平均絶対誤差は、サンプルあたりの平均 L1 損失です。

L1loss=i=0n|yiy^i|

ここで
  • n はサンプル数です。
  • y はラベルの実際の値です。
  • y^ は、モデルが y に対して予測する値です。

詳細については、機械学習集中講座の線形回帰: 損失関数をご覧ください。

L1 正則化

#fundamentals

重みの絶対値の合計に比例して重みにペナルティーを適用する正則化の一種。L1 正則化は、無関係またはほとんど関連性のない特徴量の重みを正確に 0 に近づけるのに役立ちます。重みが 0 の特徴量は、モデルから実質的に削除されます。

L2 正則化とは対照的です。

L2 損失

#fundamentals
#Metric

実際のラベル値とモデルが予測する値の差の二乗を計算する損失関数。たとえば、5 つのサンプルを含むバッチの L2 損失の計算は次のようになります。

例の実際の値 モデルの予測値 デルタの二乗
7 6 1
5 4 1
8 11 9
4 6 4
9 8 1
  16 = L2 損失

二乗のため、L2 損失は外れ値の影響を増幅します。つまり、L2 損失は、L1 損失よりも不適切な予測に強く反応します。たとえば、前のバッチの L1 損失は 16 ではなく 8 になります。1 つの外れ値が 16 件中 9 件を占めていることに注目してください。

回帰モデルでは通常、損失関数として L2 損失を使用します。

平均二乗誤差は、例あたりの平均 L2 損失です。二乗損失は、L2 損失の別名です。

L2loss=i=0n(yiy^i)2

ここで
  • n はサンプル数です。
  • y はラベルの実際の値です。
  • y^ は、モデルが y に対して予測する値です。

詳細については、機械学習集中講座のロジスティック回帰: 損失と正則化をご覧ください。

L2 正規化

#fundamentals

正則化の一種で、重みの平方の合計に比例して重みにペナルティーを科します。L2 正則化は、外れ値の重み(正の値が大きい値または負の値が小さい値)を 0 に近づけますが、0 にはなりません。値が 0 に非常に近い特徴はモデルに残りますが、モデルの予測にはあまり影響しません。

L2 正則化は、線形モデルの一般化を常に改善します。

L1 正則化とは対照的です。

詳細については、機械学習集中講座の過剰適合: L2 正規化をご覧ください。

ラベル

#fundamentals

教師あり機械学習では、の「回答」または「結果」の部分。

ラベル付きの例は、1 つ以上の特徴量とラベルで構成されます。たとえば、スパム検出データセットでは、ラベルは「スパム」または「スパムではない」のいずれかになります。降雨データセットでは、ラベルは特定の期間に降った雨の量です。

詳細については、ML の概要の教師あり学習をご覧ください。

ラベル付きサンプル

#fundamentals

1 つ以上の特徴ラベルを含む例。たとえば、次の表は、住宅査定モデルの 3 つのラベル付きサンプルを示しています。それぞれに 3 つの特徴と 1 つのラベルがあります。

寝室の数 浴室の数 家の築年数 住宅価格(ラベル)
3 2 15 $345,000
2 1 72 $179,000
4 2 34 $392,000

教師あり機械学習では、モデルはラベル付きの例でトレーニングし、ラベルなしの例で予測を行います。

ラベル付きサンプルとラベルなしサンプルを比較します。

詳細については、ML の概要の教師あり学習をご覧ください。

ラベル漏洩

特徴量ラベルの代用として使用されているモデル設計上の欠陥。たとえば、見込み顧客が特定の商品を購入するかどうかを予測するバイナリ分類モデルについて考えてみましょう。モデルの特徴の 1 つが SpokeToCustomerAgent という名前のブール値であるとします。さらに、見込み顧客が実際に商品を購入したにのみ、カスタマー エージェントが割り当てられるとします。トレーニング中に、モデルは SpokeToCustomerAgent とラベルの関連性をすばやく学習します。

詳細については、機械学習集中講座のパイプラインのモニタリングをご覧ください。

lambda

#fundamentals

正則化率と同義。

ラムダはオーバーロードされた用語です。ここでは、正則化におけるこの用語の定義に焦点を当てます。

LaMDA(対話アプリケーション用言語モデル)

#language

Google が開発した Transformer ベースの大規模言語モデル。大規模な会話データセットでトレーニングされており、リアルな会話レスポンスを生成できます。

LaMDA: Google の画期的な会話テクノロジーで概要を確認できます。

landmarks

#image

キーポイントと同義です。

言語モデル

#language

長いトークン シーケンス内で発生するトークンまたはトークン シーケンスの確率を推定するモデル

直感に反しますが、テキストを評価するモデルの多くは言語モデルではありません。たとえば、テキスト分類モデルと感情分析モデルは言語モデルではありません。


詳細については、機械学習集中講座の言語モデルとはをご覧ください。

大規模言語モデル

#language

少なくとも、パラメータが非常に多い言語モデルが必要です。よりカジュアルな言い方をすれば、GeminiGPT など、Transformer ベースの言語モデルです。

詳細については、ML 集中講座の大規模言語モデル(LLM)をご覧ください。

潜在空間

#language

エンベディング空間と同義。

レイヤ

#fundamentals

ニューラル ネットワーク内のニューロンのセット。一般的なレイヤの種類は次の 3 つです。

たとえば、次の図は、1 つの入力レイヤ、2 つの隠れ層、1 つの出力レイヤを持つニューラル ネットワークを示しています。

入力層が 1 つ、隠れ層が 2 つ、出力層が 1 つのニューラル ネットワーク。入力レイヤは 2 つの特徴で構成されています。最初の隠れ層は 3 つのニューロンで構成され、2 番目の隠れ層は 2 つのニューロンで構成されています。出力レイヤは単一のノードで構成されます。

TensorFlow では、レイヤも Python 関数であり、テンソルと構成オプションを入力として受け取り、他のテンソルを出力します。

Layers API(tf.layers)

#TensorFlow

レイヤの合成としてディープニューラル ネットワークを構築するための TensorFlow API。Layers API を使用すると、次のようなさまざまなタイプのレイヤを作成できます。

  • tf.layers.Dense: 全結合層
  • tf.layers.Conv2D: 畳み込みレイヤ。

Layers API は、Keras レイヤ API の規則に準拠しています。つまり、接頭辞が異なることを除き、Layers API の関数はすべて、Keras Layers API の関数と同じ名前とシグネチャを持ちます。

#df

ディシジョン ツリー内の任意のエンドポイント。リーフは、条件とは異なり、テストを実行しません。むしろ、リーフは可能な予測です。リーフは、推論パスの終端ノードでもあります。

たとえば、次のディシジョン ツリーには 3 つのリーフがあります。

2 つの条件から 3 つのリーフに至るディシジョン ツリー。

詳細については、ディシジョン フォレスト コースのディシジョン ツリーをご覧ください。

Learning Interpretability Tool(LIT)

モデルの理解とデータ可視化のためのビジュアルでインタラクティブなツール。

オープンソースの LIT を使用して、モデルの解釈や、テキスト、画像、表形式データを可視化できます。

学習率

#fundamentals

反復処理で重みとバイアスをどの程度調整するかを勾配降下法アルゴリズムに指示する浮動小数点数。たとえば、学習率が 0.3 の場合、重みとバイアスの調整は学習率が 0.1 の場合の 3 倍強くなります。

学習率は重要なハイパーパラメータです。学習率を低く設定しすぎると、トレーニングに時間がかかりすぎます。学習率を高く設定しすぎると、勾配降下法が収束に達しないことがよくあります。

各反復処理で、勾配降下法アルゴリズムは学習率に勾配を乗算します。得られた積は勾配ステップと呼ばれます。


詳細については、機械学習集中講座の線形回帰: ハイパーパラメータをご覧ください。

最小二乗回帰

L2 損失を最小限に抑えてトレーニングされた線形回帰モデル。

Levenshtein 距離

#language
#metric

ある単語を別の単語に変更するために必要な削除、挿入、置換オペレーションの最小数を計算する編集距離指標。たとえば、「heart」と「darts」の Levenshtein 距離は 3 です。これは、次の 3 つの編集が、1 つの単語を別の単語に変換するために必要な変更の最小数だからです。

  1. heart → deart(「h」を「d」に置き換える)
  2. deart → dart(「e」を削除)
  3. dart → darts(「s」を挿入)

上記の順序が 3 つの編集の唯一のパスはないことに注意してください。

リニア

#fundamentals

2 つ以上の変数間の関係で、加算と乗算のみで表すことができます。

直線関係のプロットは線になります。

nonlinearとは対照的です。

線形モデル

#fundamentals

特徴ごとに 1 つの重みを割り当てて予測を行うモデル。(線形モデルにもバイアスが組み込まれています)。一方、ディープラーニング モデルでは、特徴と予測の関係は通常非線形です。

通常、線形モデルはトレーニングが容易で、ディープラーニング モデルよりも解釈可能です。ただし、ディープモデルは特徴間の複雑な関係を学習できます。

線形回帰ロジスティック回帰は、2 種類の線形モデルです。

線形モデルは次の式で表されます。

y=b+w1x1+w2x2+wnxn
各要素の意味は次のとおりです。
  • y' は未加工の予測です。(特定の種類の線形モデルでは、この元の予測がさらに変更されます。たとえば、ロジスティック回帰をご覧ください)。
  • b はバイアスです。
  • w は重みです。w1 は最初の特徴の重み、w2 は 2 番目の特徴の重み、というようにします。
  • x は特徴量であるため、x1 は最初の特徴量の値、x2 は 2 番目の特徴量の値になります。
たとえば、3 つの特徴の線形モデルが次のバイアスと重みを学習したとします。
  • b = 7
  • w1 = -2.5
  • w2 = -1.2
  • w3 = 1.4
したがって、3 つの特徴量(x1、x2、x3)が指定されている場合、線形モデルは次の式を使用して各予測を生成します。
y' = 7 + (-2.5)(x1) + (-1.2)(x2) + (1.4)(x3)

特定の例に次の値が含まれているとします。

  • x1 = 4
  • x2 = -10
  • x3 = 5
これらの値を式に代入すると、この例の予測が得られます。
y' = 7 + (-2.5)(4) + (-1.2)(-10) + (1.4)(5)
y' = 16

線形モデルには、線形方程式のみを使用して予測を行うモデルだけでなく、線形方程式を予測を行う式の 1 つのコンポーネントとして使用する、より広範なモデルも含まれます。たとえば、ロジスティック回帰では、元の予測(y')をポストプロセッシングして、0 ~ 1 の範囲の最終予測値を生成します。


線形回帰

#fundamentals

次の両方が当てはまる ML モデルのタイプ。

  • モデルは線形モデルです。
  • 予測は浮動小数点値です。(これは線形回帰回帰部分です)。

線形回帰とロジスティック回帰を比較します。また、回帰と分類を比較してください。

詳細については、機械学習集中講座の線形回帰をご覧ください。

LIT

Learning Interpretability Tool(LIT)の略称。以前は Language Interpretability Tool と呼ばれていました。

LLM

#language
#generativeAI

大規模言語モデルの略語。

LLM 評価(evals)

#language
#generativeAI
#Metric

大規模言語モデル(LLM)のパフォーマンスを評価するための一連の指標とベンチマーク。LLM 評価の概要は次のとおりです。

  • 研究者が LLM の改善が必要な領域を特定できるようにします。
  • さまざまな LLM を比較し、特定のタスクに最適な LLM を特定する場合に役立ちます。
  • LLM を安全かつ倫理的に使用できるようにします。

詳細については、機械学習集中講座の大規模言語モデル(LLM)をご覧ください。

ロジスティック回帰

#fundamentals

確率を予測する回帰モデルの一種。ロジスティック回帰モデルには次の特徴があります。

  • ラベルはカテゴリです。ロジスティック回帰という用語は通常、バイナリ ロジスティック回帰、つまり、2 つの可能な値を持つラベルの確率を計算するモデルを指します。あまり一般的ではないバリエーションである多項式ロジスティック回帰は、2 つ以上の候補値を持つラベルの確率を計算します。
  • トレーニング中の損失関数は ログ損失です。(2 つを超える値が可能なラベルの場合は、複数のログロス単位を並列に配置できます)。
  • このモデルは、ディープ ニューラル ネットワークではなく、線形アーキテクチャです。ただし、この定義の残りの部分は、カテゴリラベルの確率を予測するディープラーニング モデルにも適用されます。

たとえば、入力メールがスパムであるか、スパムでないかの確率を計算するロジスティック回帰モデルについて考えてみましょう。推論中に、モデルが 0.72 を予測したとします。したがって、モデルは次のことを推定しています。

  • メールが迷惑メールである確率は 72% です。
  • メールが迷惑メールではない可能性は 28% です。

ロジスティック回帰モデルは、次の 2 段階のアーキテクチャを使用します。

  1. モデルは、入力特徴の線形関数を適用して、元の予測(y')を生成します。
  2. モデルは、その元の予測を シグモイド関数の入力として使用します。この関数は、元の予測を 0 ~ 1 の範囲の値に変換します。

他の回帰モデルと同様に、ロジスティック回帰モデルは数値を予測します。ただし、通常、この数値は次のようにバイナリ分類モデルの一部になります。

  • 予測された数が分類しきい値より大きい場合、バイナリ分類モデルは陽性のクラスを予測します。
  • 予測された数が分類しきい値より小さい場合、バイナリ分類モデルは負のクラスを予測します。

詳細については、機械学習集中講座のロジスティック回帰をご覧ください。

ロジット

分類モデルが生成した未加工(正規化されていない)予測のベクトル。通常は正規化関数に渡されます。モデルがマルチクラス分類の問題を解決している場合、通常、ロジットは softmax 関数の入力になります。次に、Softmax 関数は、考えられるクラスごとに 1 つの値を持つ(正規化された)確率ベクトルを生成します。

ログ損失

#fundamentals

バイナリロジスティック回帰で使用される損失関数

次の式は、ログロスを計算します。

Log Loss=(x,y)Dylog(y)(1y)log(1y)
ここで
  • (x,y)D は、ラベル付きの多くの例( (x,y) ペア)を含むデータセットです。
  • y は、ラベル付きサンプルのラベルです。これはロジスティック回帰であるため、 y のすべての値は 0 または 1 にする必要があります。
  • y は、 xの特徴セットに基づく予測値(0 ~ 1 の範囲)です。

詳細については、機械学習集中講座のロジスティック回帰: 損失と正則化をご覧ください。

ログオッズ

#fundamentals

あるイベントの確率の対数。

イベントがバイナリ確率の場合、オッズは成功確率(p)と失敗確率(1-p)の比率を指します。たとえば、特定のイベントの成功確率が 90%、失敗確率が 10% であるとします。この場合、オッズは次のように計算されます。

odds=p(1-p)=.9.1=9

対数オッズは、オッズの単なる対数です。慣例では、「対数」は自然対数を指しますが、実際には 1 より大きい任意の基数の対数に使用できます。慣例に従い、この例のログオッズは次のようになります。

log-odds=ln(9) =2.2

対数オッズ関数は、シグモイド関数の逆関数です。


長短期記憶(LSTM)

#seq

手書き認識、機械翻訳、画像キャプションなどのアプリケーションでデータシーケンスを処理するために使用される、再帰型ニューラル ネットワークのセルタイプ。LSTM は、長いデータシーケンスが原因で RNN をトレーニングする際に発生する勾配消失問題に対処します。これは、RNN 内の以前のセルからの新しい入力とコンテキストに基づいて、内部メモリ状態の履歴を維持することで実現されます。

LoRA

#language
#generativeAI

低ランク適応性の略。

損失

#fundamentals
#Metric

教師ありモデルトレーニング中に、モデルの予測ラベルからどのくらい離れているかを表す測定値。

損失関数は損失を計算します。

詳細については、機械学習集中講座の線形回帰: 損失関数をご覧ください。

損失アグリゲータ

複数のモデルの予測を組み合わせて 1 つの予測を作成し、モデルパフォーマンスを向上させる機械学習アルゴリズムの一種。その結果、損失アグリゲータは予測の分散を低減し、予測の精度を向上させることができます。

損失曲線

#fundamentals

トレーニングの反復処理回数の関数として損失をプロットしたグラフ。次のグラフは、一般的な損失曲線を示しています。

損失とトレーニングの反復処理の関係を示す直交グラフ。最初の反復処理では損失が急激に低下し、その後は徐々に低下し、最後の反復処理では緩やかな傾斜を示しています。

損失曲線は、モデルが収束または過学習しているタイミングを特定するのに役立ちます。

損失曲線には、次のタイプの損失をすべてプロットできます。

一般化曲線もご覧ください。

詳細については、機械学習集中講座の過剰適合: 損失曲線の解釈をご覧ください。

損失関数

#fundamentals
#Metric

トレーニングまたはテスト中に、サンプルのバッチの損失を計算する数学関数。損失関数は、適切な予測を行うモデルに対して、不適切な予測を行うモデルよりも低い損失を返します。

通常、トレーニングの目標は、損失関数が返す損失を最小限に抑えることです。

損失関数にはさまざまな種類があります。構築するモデルの種類に適した損失関数を選択します。次に例を示します。

損失サーフェス

体重と体脂肪率のグラフ。勾配降下は、損失曲面が局所最小値となる重みを見つけることを目的としています。

低ランク適応(LoRA)

#language
#generativeAI

パラメータ効率的なファイン チューニング手法。モデルの事前トレーニング済み重みを「凍結」(変更できなくする)し、トレーニング可能な重みの小さなセットをモデルに挿入します。このトレーニング可能な重みセット(更新行列とも呼ばれます)はベースモデルよりもかなり小さいため、トレーニングが大幅に高速化されます。

LoRA には次の利点があります。

  • ファインチューニングが適用されるドメインのモデルの予測の品質が向上します。
  • モデルのすべてのパラメータをファインチューニングする手法よりも高速にファインチューニングできます。
  • 同じベースモデルを共有する複数の特殊モデルの同時提供を可能にすることで、推論の計算コストを削減します。
LoRA で使用される更新マトリックスは、ランク分解マトリックスで構成されています。これは、ベースモデルから派生したもので、ノイズを除去し、モデルの最も重要な特徴にトレーニングを集中させるのに役立ちます。

LSTM

#seq

長・短期記憶の略。

M

機械学習

#fundamentals

入力データからモデルトレーニングするプログラムまたはシステム。トレーニングされたモデルは、モデルのトレーニングに使用したものと同じ分布から抽出された新しい(これまでにない)データから有用な予測を行うことができます。

機械学習は、これらのプログラムやシステムに関連する研究分野も指します。

詳細については、機械学習の概要コースをご覧ください。

機械翻訳

#generativeAI

ソフトウェア(通常は機械学習モデル)を使用して、ある人間の言語から別の人間の言語にテキストを変換する(例: 英語から日本語に変換する)。

多数クラス

#fundamentals

クラスの不均衡なデータセットでより一般的なラベル。たとえば、99% が負のラベルで 1% が正のラベルを含むデータセットの場合、負のラベルが多数クラスになります。

少数クラスとは対照的です。

詳細については、ML 集中講座のデータセット: 不均衡なデータセットをご覧ください。

マルコフ決定プロセス(MDP)

#rl

マルコフ特性が成立することを前提として、決定(またはアクション)が下され、一連の状態を移動する意思決定モデルを表すグラフ。強化学習では、これらの状態間の遷移は数値の報酬を返します。

マルコフ特性

#rl

特定の環境のプロパティ。状態遷移は、現在の状態とエージェントのアクションに暗黙的に含まれる情報によって完全に決定されます。

マスク言語モデル

#language

シーケンス内の空白を埋める候補トークンの確率を予測する言語モデル。たとえば、マスクされた言語モデルは、次の文の下線に置き換える候補語の確率を計算できます。

帽子の ____ が戻ってきました。

通常、文献では下線ではなく「MASK」という文字列が使用されます。次に例を示します。

帽子の「MASK」が復元されました。

最新のマスク付き言語モデルのほとんどは双方向です。

matplotlib

オープンソースの Python 2D プロット ライブラリ。matplotlib は、機械学習のさまざまな側面を可視化できます。

行列分解

#recsystems

数学では、ドット積がターゲット マトリックスに近似するマトリックスを見つけるメカニズム。

レコメンデーション システムでは、ターゲット行列にアイテムに対するユーザーの評価が格納されることがよくあります。たとえば、映画のレコメンデーション システムのターゲット マトリックスは次のようになります。正の整数はユーザー評価で、0 はユーザーが映画を評価していないことを意味します。

  カサブランカ フィラデルフィア物語 Black Panther(「ブラック パンサー」) ワンダーウーマン パルプフィクション
ユーザー 1 5.0 3.0 0.0 2.0 0.0
ユーザー 2 4.0 0.0 0.0 1.0 5.0
ユーザー 3 3.0 1.0 4.0 5.0 0.0

映画のレコメンデーション システムは、評価されていない映画のユーザー評価を予測することを目的としています。たとえば、ユーザー 1 は Black Panther を気に入るでしょうか?

レコメンデーション システムのアプローチの 1 つは、行列分解を使用して次の 2 つの行列を生成することです。

たとえば、3 人のユーザーと 5 つのアイテムに対して行列分解を使用すると、次のユーザー行列とアイテム行列が得られます。

User Matrix                 Item Matrix

1.1   2.3           0.9   0.2   1.4    2.0   1.2
0.6   2.0           1.7   1.2   1.2   -0.1   2.1
2.5   0.5

ユーザー行列とアイテム行列の点積は、元のユーザー評価だけでなく、各ユーザーが視聴していない映画の予測も含むおすすめ情報行列を生成します。たとえば、ユーザー 1 の Casablanca の評価は 5.0 でした。推奨事項マトリックスのそのセルに対応するドット積は 5.0 程度になるはずです。実際には次のようになります。

(1.1 * 0.9) + (2.3 * 1.7) = 4.9

さらに重要なのは、ユーザー 1 は Black Panther を気に入るかどうかです。1 行目と 3 列目に相当する内積を取ると、予測評価 4.3 が得られます。

(1.1 * 1.4) + (2.3 * 1.2) = 4.3

行列分解では通常、ユーザー マトリックスとアイテム マトリックスが生成されますが、これらを合わせるとターゲット マトリックスよりも大幅にコンパクトになります。

平均絶対誤差(MAE)

#Metric

L1 損失を使用する場合のサンプルあたりの平均損失。平均絶対誤差は次のように計算します。

  1. バッチの L1 損失を計算します。
  2. L1 損失をバッチ内の例数で除算します。

Mean Absolute Error=1ni=0n|yiy^i|

ここで

  • n はサンプル数です。
  • y はラベルの実際の値です。
  • y^ は、モデルが y に対して予測する値です。

たとえば、次の 5 つのサンプルのバッチで L1 損失を計算してみましょう。

例の実際の値 モデルの予測値 損失(実際と予測の差)
7 6 1
5 4 1
8 11 3
4 6 2
9 8 1
  8 = L1 の損失

したがって、L1 損失は 8 で、サンプル数は 5 です。したがって、平均絶対誤差は次のようになります。

Mean Absolute Error = L1 loss / Number of Examples
Mean Absolute Error = 8/5 = 1.6

平均絶対誤差を平均二乗誤差二乗平均平方根誤差と比較します。

K での平均適合率(mAP@k)

#language
#generativeAI
#Metric

検証データセット全体のすべての 平均適合率(k で)スコアの統計的平均。k での平均適合率の 1 つの用途は、おすすめシステムによって生成されたおすすめの品質を判断することです。

「平均平均」というフレーズは冗長に聞こえますが、指標の名前としては適切です。この指標は、複数の k での平均適合率の平均値を求めます。

ユーザーごとにおすすめの小説のパーソナライズされたリストを生成するレコメンデーション システムを構築するとします。選択したユーザーからのフィードバックに基づいて、次の 5 つの平均精度(ユーザーごとに 1 つのスコア)を計算します。

  • 0.73
  • 0.77
  • 0.67
  • 0.82
  • 0.76

したがって、K での平均適合率は次のようになります。

mean =0.73 + 0.77 + 0.67 + 0.82 + 0.765=0.75

平均二乗誤差(MSE)

#Metric

L2 損失を使用する場合のサンプルあたりの平均損失。平均二乗誤差は次のように計算します。

  1. バッチの L2 損失を計算します。
  2. L2 損失をバッチ内の例数で除算します。
Mean Squared Error=1ni=0n(yiy^i)2
ここで:
  • n はサンプル数です。
  • y はラベルの実際の値です。
  • y^ は、モデルが y に対して行う予測です。

たとえば、次の 5 つのサンプルのバッチの損失について考えてみましょう。

実際の値 モデルの予測 損失 二乗損失
7 6 1 1
5 4 1 1
8 11 3 9
4 6 2 4
9 8 1 1
16 = L2 損失

したがって、平均二乗誤差は次のようになります。

Mean Squared Error = L2 loss / Number of Examples
Mean Squared Error = 16/5 = 3.2

平均二乗誤差は、特に線形回帰でよく使用されるトレーニング オプティマイザーです。

平均二乗誤差を平均絶対誤差二乗平均平方根誤差と比較します。

TensorFlow Playground は、平均二乗誤差を使用して損失値を計算します。

外れ値は平均二乗誤差に強く影響します。たとえば、損失が 1 の場合、損失の二乗は 1 ですが、損失が 3 の場合、損失の二乗は 9 です。上の表では、損失が 3 の例が平均二乗誤差の約 56% を占めていますが、損失が 1 の例はそれぞれ平均二乗誤差の 6% しか占めていません。

外れ値は、平均二乗誤差ほど平均絶対誤差に影響しません。たとえば、3 件のアカウントの損失は、平均絶対誤差の約 38% にすぎません。

極端な外れ値がモデルの予測能力に悪影響を及ぼすのを防ぐ方法の一つがクリッピングです。


メッシュ

#TensorFlow
#GoogleCloud

ML 並列プログラミングでは、データとモデルを TPU チップに割り当て、これらの値のシャーディングまたは複製方法を定義する用語。

メッシュは、次のいずれかを意味するオーバーロードされた用語です。

  • TPU チップの物理レイアウト。
  • データとモデルを TPU チップにマッピングするための抽象的な論理構造。

どちらの場合も、メッシュはシェイプとして指定されます。

メタ学習

#language

学習アルゴリズムを発見または改善する機械学習のサブセット。メタ学習システムでは、少量のデータや以前のタスクで得た経験から新しいタスクをすばやく学習するようにモデルをトレーニングすることもできます。通常、メタ学習アルゴリズムは次の目標を達成しようとします。

  • 手動で作成された特徴量(初期化子やオプティマイザーなど)を改善または学習する。
  • データとコンピューティングの効率を高める。
  • 一般化を改善する。

メタ学習は少数ショット学習に関連しています。

指標

#TensorFlow
#Metric

重視すべき統計情報。

目標とは、機械学習システムが最適化しようとする指標です。

Metrics API(tf.metrics)

#Metric

モデルを評価するための TensorFlow API。たとえば、tf.metrics.accuracy は、モデルの予測がラベルと一致する頻度を決定します。

ミニバッチ

#fundamentals

1 回の反復処理で処理されるバッチの小さなランダム サブセット。ミニバッチのバッチサイズは通常、10 ~ 1,000 サンプルです。

たとえば、トレーニング セット全体(完全なバッチ)が 1,000 個のサンプルで構成されているとします。さらに、各ミニバッチのバッチサイズを 20 に設定したとします。したがって、各反復処理で 1,000 個のサンプルからランダムに 20 個のサンプルを選択し、その損失を決定してから、それに応じて重みバイアスを調整します。

完全なバッチ内のすべてのサンプルの損失よりも、ミニバッチの損失を計算する方がはるかに効率的です。

詳細については、機械学習集中講座の線形回帰: ハイパーパラメータをご覧ください。

ミニバッチ確率的勾配降下法

ミニバッチを使用する勾配降下法アルゴリズム。つまり、ミニバッチ 確率的勾配降下法は、トレーニング データの小さなサブセットに基づいて勾配を推定します。通常の確率的勾配降下法では、サイズ 1 のミニバッチを使用します。

ミニマックス損失

#Metric

生成されたデータと実際のデータの分布間のクロスエントロピーに基づく、生成敵対ネットワークの損失関数。

ミニマックス損失は、生成敵対的ネットワークを説明する最初の論文で使用されています。

詳細については、生成敵対ネットワーク コースの損失関数をご覧ください。

少数派クラス

#fundamentals

クラスの不均衡なデータセットではあまり一般的ではないラベル。たとえば、99% がネガティブ ラベルで 1% がポジティブ ラベルのデータセットの場合、ポジティブ ラベルは少数クラスです。

多数クラスとは対照的です。

100 万個のサンプルを含むトレーニング セットは、非常に印象的です。ただし、少数派のクラスが十分に表現されていない場合、非常に大きなトレーニング セットでも不十分な場合があります。データセットのサンプルの合計数よりも、少数派クラスのサンプル数に重点を置きます。

データセットに少数派クラスのサンプルが十分に含まれていない場合は、downsampling(2 つ目の箇条書きの定義)を使用して少数派クラスを補完することを検討してください。


詳細については、ML 集中講座のデータセット: 不均衡なデータセットをご覧ください。

専門家集団

#language
#generativeAI

パラメータのサブセット(エキスパート)のみを使用して特定の入力トークンまたはを処理することで、ニューラル ネットワークの効率を高めるスキーム。ゲーティング ネットワークは、各入力トークンまたは例を適切なエキスパートに転送します。

詳しくは、次のいずれかの論文をご覧ください。

ML

機械学習の略。

MMIT

#language
#image
#generativeAI

マルチモーダル指示のチューニング済みの略。

MNIST

#image

LeCun、Cortes、Burges によってコンパイルされたパブリック ドメインのデータセット。60,000 個の画像が含まれており、各画像は人間が 0 ~ 9 の特定の数字を手書きした方法を示しています。各画像は 28 x 28 の整数配列として保存されます。各整数は 0 ~ 255 のグレースケール値です。

MNIST は機械学習のカノニカル データセットであり、新しい機械学習アプローチのテストによく使用されます。詳細については、 手書き数字の MNIST データベースをご覧ください。

モダリティ

#language

上位のデータカテゴリ。たとえば、数値、テキスト、画像、動画、音声は 5 つの異なるモダリティです。

モデル

#fundamentals

一般に、入力データを処理して出力を返す数学的な構造。別の言い方をすれば、モデルとは、システムが予測を行うために必要なパラメータと構造のセットです。教師あり機械学習では、モデルはを入力として受け取り、予測を出力として推論します。教師あり機械学習では、モデルは若干異なります。次に例を示します。

モデルの保存、復元、コピーを行うことができます。

教師なし機械学習でもモデルが生成されます。通常は、入力例を最も適切なクラスタにマッピングできる関数です。

次のような代数関数はモデルです。

  f(x, y) = 3x -5xy + y2 + 17

上記の関数は、入力値(xy)を出力にマッピングします。

同様に、次のようなプログラミング関数もモデルです。

def half_of_greater(x, y):
  if (x > y):
    return(x / 2)
  else
    return(y / 2)

呼び出し元が前の Python 関数に引数を渡し、Python 関数は(return ステートメントを介して)出力を生成します。

ディープ ニューラル ネットワークは、代数関数やプログラミング関数とは数学的な構造が大きく異なりますが、入力(例)を受け取り、出力(予測)を返します。

人間のプログラマーがプログラミング関数を手動でコーディングします。一方、機械学習モデルは、自動トレーニング中に最適なパラメータを徐々に学習します。


モデル容量

#Metric

モデルが学習できる問題の複雑さ。モデルが学習できる問題が複雑になるほど、モデルの容量は大きくなります。通常、モデルの容量はモデル パラメータの数に比例して増加します。分類モデルの容量の正式な定義については、VC ディメンションをご覧ください。

モデル カスケード

#generativeAI

特定の推論クエリに最適なモデルを選択するシステム。

非常に大きいモデル(パラメータが多い)から非常に小さいモデル(パラメータが非常に少ない)まで、さまざまなモデルのグループを想像してみてください。非常に大きなモデルは、小さいモデルよりも推論時に多くの計算リソースを消費します。ただし、非常に大きなモデルは通常、小規模なモデルよりも複雑なリクエストを推測できます。モデル カスケードは、推論クエリの複雑さを決定し、推論を実行する適切なモデルを選択します。モデル カスケードの主な目的は、通常は小規模なモデルを選択し、複雑なクエリにのみ大規模なモデルを選択することで、推論コストを削減することです。

小規模なモデルがスマートフォンで実行され、そのモデルのより大きなバージョンがリモート サーバーで実行されているとします。適切なモデル カスケードを使用すると、小規模なモデルで単純なリクエストを処理し、複雑なリクエストを処理するためにリモートモデルを呼び出すだけで、費用とレイテンシを削減できます。

モデルルーターもご覧ください。

モデルの並列処理

#language

1 つのモデルの異なる部分を異なるデバイスに配置するトレーニングまたは推論をスケーリングする方法。モデル並列処理を使用すると、1 つのデバイスに収まらない大きすぎるモデルを使用できます。

モデルの並列処理を実装するには、通常、システムは次のことを行います。

  1. モデルを小さな部分に分割します。
  2. これらの小さな部分のトレーニングを複数のプロセッサに分散します。各プロセッサは、モデルの独自の部分をトレーニングします。
  3. 結果を組み合わせて 1 つのモデルを作成します。

モデルの並列処理により、トレーニングが遅くなります。

データ並列処理もご覧ください。

モデル ルーター

#generativeAI

モデル カスケード推論に最適なモデルを決定するアルゴリズム。モデル ルータ自体は通常、特定の入力に最適なモデルを選択する方法を徐々に学習する ML モデルです。ただし、モデル ルータは、機械学習以外のよりシンプルなアルゴリズムである場合があります。

モデル トレーニング

最適なモデルを決定するプロセス。

MOE

#language
#image
#generativeAI

Mixture of Experts の略。

モメンタム

学習ステップが現在のステップの微分だけでなく、直前のステップの微分にも依存する高度な勾配降下アルゴリズム。モメンタムでは、物理学における運動量と同様に、時間の経過に伴う勾配の指数重み付き移動平均を計算します。モメンタムにより、学習が局所的な最小値に陥るのを防ぐことができます。

MT

#generativeAI

機械翻訳の略。

マルチクラス分類

#fundamentals

教師あり学習における分類問題。データセットに2 つを超える クラスのラベルが含まれています。たとえば、Iris データセットのラベルは、次の 3 つのクラスのいずれかである必要があります。

  • アイリス セトサ
  • アイリス バージニアナ
  • アイリス バーシカラー

新しい例でアヤメの種類を予測する Iris データセットでトレーニングされたモデルは、マルチクラス分類を実行しています。

一方、正確に 2 つのクラスを区別する分類問題は、バイナリ分類モデルです。たとえば、メールが「スパム」か「スパムではない」かを予測するメールモデルは、バイナリ分類モデルです。

クラスタリング問題では、マルチクラス分類は 2 つを超えるクラスタを指します。

詳細については、ML 集中講座のニューラル ネットワーク: マルチクラス分類をご覧ください。

多クラス ロジスティック回帰

多クラス分類問題でロジスティック回帰を使用する。

マルチヘッドセルフアテンション

#language

自己注意の拡張機能で、入力シーケンスの各位置に自己注意メカニズムを複数回適用します。

Transformers では、マルチヘッドセルフアテンションが導入されました。

マルチモーダル インストラクション チューニング

#language

画像、動画、音声など、テキスト以外の入力を処理できる命令チューニングモデル。

マルチモーダル モデル

#language

入力、出力、またはその両方に複数のモダリティを含むモデル。たとえば、画像とテキスト キャプション(2 つのモダリティ)の両方を特徴として受け取り、画像に対するテキスト キャプションの適切さを示すスコアを出力するモデルについて考えてみましょう。したがって、このモデルの入力はマルチモーダルであり、出力は単一モードです。

多項分類

マルチクラス分類と同義。

多項式回帰

多クラス ロジスティック回帰の同義語。

マルチタスク

単一のモデルをトレーニングして複数のタスクを実行する機械学習手法。

マルチタスク モデルは、さまざまなタスクごとに適切なデータでトレーニングすることで作成されます。これにより、モデルはタスク間で情報を共有することを学習し、モデルの学習をより効果的に行うことができます。

複数のタスク用にトレーニングされたモデルは、一般化能力が向上し、さまざまな種類のデータをより堅牢に処理できる傾向があります。

N

NaN トラップ

トレーニング中にモデル内の 1 つの数値が NaN になると、モデル内の他の数値の多くまたはすべてが最終的に NaN になります。

NaN は、Not a Number の略です。

自然言語処理

#language
ユーザーが話したり入力したりした内容を、言語ルールを使用して処理するようにコンピュータに指示する分野。最新の自然言語処理のほとんどは機械学習に依存しています。

自然言語理解

#language

自然言語処理のサブセットで、発話または入力された内容の意図を判断します。自然言語の理解は、自然言語処理を超えて、コンテキスト、皮肉、感情などの複雑な言語の側面を考慮できます。

陰性のクラス

#fundamentals
#Metric

バイナリ分類では、一方のクラスは「陽性」と呼ばれ、もう一方のクラスは「陰性」と呼ばれます。陽性のクラスは、モデルがテスト対象とする物体またはイベントであり、陰性のクラスは他の可能性です。次に例を示します。

  • 医療検査の負のクラスは「腫瘍ではない」などです。
  • メールの分類モデルの負のクラスは「迷惑メールではない」場合があります。

正クラスとは対照的です。

ネガティブ サンプリング

候補サンプリングと同義。

ニューラル アーキテクチャ検索(NAS)

ニューラル ネットワークのアーキテクチャを自動的に設計する手法。NAS アルゴリズムを使用すると、ニューラル ネットワークのトレーニングに必要な時間とリソースを削減できます。

NAS は通常、次を使用します。

  • 検索スペース(可能なアーキテクチャのセット)。
  • 適合性関数。特定のアーキテクチャが特定のタスクでどの程度適切に動作するかを測定するものです。

NAS アルゴリズムは、通常、可能なアーキテクチャの小さなセットから開始し、アルゴリズムが効果的なアーキテクチャについて学習するにつれて、検索スペースを徐々に拡大します。適合性関数は通常、トレーニング セットでのアーキテクチャのパフォーマンスに基づいています。アルゴリズムは通常、強化学習手法を使用してトレーニングされます。

NAS アルゴリズムは、画像の分類、テキスト分類、機械翻訳など、さまざまなタスクで高性能なアーキテクチャを見つけるのに効果的であることが実証されています。

ニューラル ネットワークの

#fundamentals

隠れ層を 1 つ以上含むモデルディープ ニューラル ネットワークは、複数の隠れ層を含むニューラル ネットワークの一種です。たとえば、次の図は、2 つの隠れ層を含むディープ ニューラル ネットワークを示しています。

入力層、2 つの隠れ層、出力層を持つニューラル ネットワーク。

ニューラル ネットワーク内の各ニューロンは、次のレイヤ内のすべてのノードに接続します。たとえば、上の図では、最初の隠れ層の 3 つのニューロンが、2 番目の隠れ層の 2 つのニューロンの両方に個別に接続されています。

コンピュータに実装されたニューラル ネットワークは、脳やその他の神経系にあるニューラル ネットワークと区別するために、人工ニューラル ネットワークと呼ばれることがあります。

一部のニューラル ネットワークは、さまざまな特徴とラベル間の非常に複雑な非線形関係を模倣できます。

畳み込みニューラル ネットワーク再帰ニューラル ネットワークもご覧ください。

詳細については、ML 集中講座のニューラル ネットワークをご覧ください。

ニューロン

#fundamentals

機械学習では、ニューラル ネットワーク隠れ層内の個別のユニットです。各ニューロンは、次の 2 段階のアクションを実行します。

  1. 入力値に対応する重みを乗じた重み付き合計を計算します。
  2. 加重合計を活性化関数に入力として渡します。

最初の隠れ層のニューロンは、入力層の特徴値からの入力を受け入れます。最初の隠れ層以外の隠れ層のニューロンは、前の隠れ層のニューロンからの入力を受け入れます。たとえば、2 番目の隠れ層のニューロンは、1 番目の隠れ層のニューロンからの入力を受け入れます。

次の図は、2 つのニューロンとその入力を示しています。

入力層、2 つの隠れ層、出力層を持つニューラル ネットワーク。2 つのニューロンがハイライト表示されています。1 つは最初の隠れ層にあり、もう 1 つは 2 番目の隠れ層にあります。最初の隠れ層でハイライト表示されているニューロンは、入力レイヤの両方の特徴から入力を受けます。2 番目の隠れ層でハイライト表示されているニューロンは、最初の隠れ層の 3 つのニューロンから入力を受け取ります。

ニューラル ネットワーク内のニューロンは、脳や神経系の他の部分にあるニューロンの動作を模倣します。

N グラム

#seq
#language

順序付きの N 個の単語。たとえば、「truly madly」は 2 グラムです。順序が重要であるため、madly trulytruly madly とは異なる 2 グラムです。

N この種類の N グラムの名前
2 バイグラムまたは 2 グラム to go, go to, eat lunch, eat dinner
3 トリグラムまたは 3 グラム 食べすぎ、幸せに暮らしました、鐘が鳴る
4 4 グラム walk in the park, dust in the wind, the boy ate lentils

多くの自然言語理解モデルは、N グラムを使用して、ユーザーが入力または発音する次の単語を予測します。たとえば、ユーザーが「happily ever」と入力したとします。3 文字語に基づく NLU モデルは、ユーザーが次に「after」という単語を入力すると予測します。

N グラムは、単語の順序付けされていないセットであるバッグ オブ ワードとは対照的です。

詳細については、ML 集中講座の大規模言語モデルをご覧ください。

NLP

#language

自然言語処理の略語。

NLU

#language

自然言語理解の略。

ノード(ディシジョン ツリー)

#df

ディシジョン ツリー条件またはリーフ

2 つの条件と 3 つのリーフを含むディシジョン ツリー。

詳細については、ディシジョン フォレスト コースのディシジョン ツリーをご覧ください。

ノード(ニューラル ネットワーク)

#fundamentals

隠れ層ニューロン

詳細については、ML 集中講座のニューラル ネットワークをご覧ください。

ノード(TensorFlow グラフ)

#TensorFlow

TensorFlow グラフ内の演算。

ノイズ

大まかに言えば、データセット内のシグナルを不明瞭にするすべてのものです。ノイズはさまざまな方法でデータに導入される可能性があります。次に例を示します。

  • 人間のレーティング担当者がラベル付けでミスを犯す。
  • 人間や機器が特徴値を誤って記録したり、特徴値を省略したりする。

ノンバイナリー条件

#df

2 つを超える結果が想定される条件。たとえば、次の非バイナリ条件には、次の 3 つの結果が考えられます。

3 つの結果につながる条件(number_of_legs = ?)。1 つの結果(number_of_legs = 8)は、spider という名前のリーフにつながります。2 番目の結果(number_of_legs = 4)は、dog という名前のリーフにつながります。3 つ目の結果(number_of_legs = 2)は、penguin という名前のリーフにつながります。

詳細については、決定木コースの条件の種類をご覧ください。

非線形

#fundamentals

2 つ以上の変数間の関係で、加算と乗算のみで表すことができないもの。線形の関係は線で表すことができますが、非線形の関係は線で表すことはできません。たとえば、1 つの特徴量を 1 つのラベルに関連付ける 2 つのモデルについて考えてみましょう。左側のモデルは線形で、右側のモデルは非線形です。

2 つのプロット。1 つのプロットは線であるため、これは直線的な関係です。
          一方のグラフは曲線であるため、非線形の関係です。

さまざまな種類の非線形関数を試すには、ML 集中講座のニューラル ネットワーク: ノードと隠れ層をご覧ください。

無回答のバイアス

#fairness

選択バイアスをご覧ください。

非定常性

#fundamentals

1 つ以上のディメンション(通常は時間)で値が変化する特徴。たとえば、非定常性の次の例について考えてみましょう。

  • 特定の店舗で販売される水着の数は季節によって異なります。
  • 特定の地域で収穫される特定の果物の量は、ほとんどの期間はゼロですが、短い期間は大量です。
  • 気候変動により、年間平均気温が変化しています。

定常性とは対照的です。

正解なし(NORA)

#language
#generativeAI

複数の適切な回答があるプロンプト。たとえば、次のプロンプトには正解がありません。

ゾウに関するジョークを教えて。

正解のないプロンプトの評価は難しい場合があります。

NORA

#language
#generativeAI

正解は一つではないの略語。

正規化

#fundamentals

変数の実際の値の範囲を標準の値の範囲に変換するプロセス。たとえば、次のような変換です。

  • -1 ~+1
  • 0 to 1
  • Z スコア(おおよそ -3 ~+3)

たとえば、特定の特徴の実際の値の範囲が 800 ~ 2,400 であるとします。特徴量エンジニアリングの一環として、実際の値を標準範囲(-1 ~+1 など)に正規化できます。

正規化は、特徴量エンジニアリングの一般的なタスクです。通常、特徴ベクトル内のすべての数値特徴の範囲がほぼ同じ場合、モデルのトレーニングはより速く(より正確な予測が生成されます)。

Z スコアの正規化もご覧ください。

詳細については、機械学習集中講座の数値データ: 正規化をご覧ください。

新規性検出

新しい(新しい)例がトレーニング セットと同じ分布から来ているかどうかを判断するプロセス。つまり、トレーニング セットでトレーニングした後、新規検出は(推論中または追加トレーニング中に)新しい例が外れ値であるかどうかを判断します。

外れ値検出とは対照的です。

数値データ

#fundamentals

整数または実数として表される特徴。たとえば、住宅査定モデルでは、住宅の広さ(平方フィートまたは平方メートル)を数値データとして表す可能性があります。特徴を数値データとして表すことは、特徴の値がラベルと数学的な関係にあることを示します。つまり、家の面積は家の価値と数学的な関係があると考えられます。

すべての整数データを数値データとして表す必要はありません。たとえば、一部の国では郵便番号が整数ですが、整数の郵便番号をモデルで数値データとして表す必要はありません。これは、郵便番号 20000 が郵便番号 10000 の 2 倍(または半分)の有効性を持つわけではないためです。さらに、郵便番号が異なると不動産価格も異なるものの、郵便番号 20000 の不動産価格が郵便番号 10000 の不動産価格の 2 倍であるとは限りません。郵便番号は、代わりにカテゴリデータとして表す必要があります。

数値特徴は、連続特徴とも呼ばれます。

詳細については、ML 集中講座の数値データの操作をご覧ください。

NumPy

Python で効率的な配列演算を提供する オープンソースの数学ライブラリpandas は NumPy 上に構築されています。

O

目標

#Metric

アルゴリズムが最適化しようとしている指標

目的関数

#Metric

モデルの最適化対象とする数式または指標。たとえば、線形回帰の目的関数は通常、平均二乗損失です。したがって、線形回帰モデルをトレーニングするときは、平均二乗損失を最小限に抑えることを目的とします。

目的関数を最大化することが目標となる場合もあります。たとえば、目的関数が精度の場合、目標は精度を最大化することです。

損失もご覧ください。

斜め状態

#df

ディシジョン ツリーでは、複数の特徴が関係する条件。たとえば、高さと幅の両方が特徴量である場合、次の条件は斜め条件です。

  height > width

軸方向の条件とは対照的です。

詳細については、決定木コースの条件の種類をご覧ください。

オフライン

#fundamentals

static と同義。

オフライン推論

#fundamentals

モデルが予測のバッチを生成し、それらの予測をキャッシュに保存するプロセス。アプリは、モデルを再実行するのではなく、キャッシュから推論された予測にアクセスできます。

たとえば、地域の天気予報(予測)を 4 時間ごとに生成するモデルについて考えてみましょう。モデルの実行ごとに、システムはすべてのローカルの天気予報をキャッシュに保存します。天気アプリはキャッシュから予報を取得します。

オフライン推論は、静的推論とも呼ばれます。

オンライン推論とは対照的です。

詳細については、ML 集中講座の本番環境の ML システム: 静的推論と動的推論をご覧ください。

ワンホット エンコード

#fundamentals

カテゴリデータをベクトルとして表す場合:

  • 1 つの要素が 1 に設定されています。
  • 他の要素はすべて 0 に設定されます。

ワンホット エンコーディングは、有効な値が有限の文字列または識別子を表すためによく使用されます。たとえば、Scandinavia という特定のカテゴリ特徴に 5 つの値があるとします。

  • 「デンマーク」
  • 「Sweden」
  • 「Norway」
  • 「フィンランド」
  • 「アイスランド」

5 つの値は、1 ホット エンコーディングで次のように表すことができます。

country ベクトル
「デンマーク」 1 0 0 0 0
「Sweden」 0 1 0 0 0
「Norway」 0 0 1 0 0
「フィンランド」 0 0 0 1 0
「アイスランド」 0 0 0 0 1

ワンホット エンコードにより、モデルは 5 つの国ごとに異なる接続を学習できます。

特徴を数値データとして表現することは、ワンホット エンコードの代替手段です。残念ながら、北欧諸国を数値で表すことは適切ではありません。たとえば、次の数値表現について考えてみましょう。

  • 「デンマーク」は 0
  • 「スウェーデン」は 1
  • 「ノルウェー」は 2
  • 「フィンランド」は 3
  • 「アイスランド」は 4

数値エンコーディングでは、モデルは元の数値を数学的に解釈し、それらの数値に基づいてトレーニングを試みます。ただし、実際にはアイスランドの人口はノルウェーの 2 倍(または半分)ではないため、モデルは奇妙な結論に至ります。

詳細については、機械学習集中講座のカテゴリデータ: 語彙とワンホット エンコードをご覧ください。

ワンショット学習

オブジェクト分類によく使用される機械学習アプローチ。単一のトレーニング例から効果的な分類モデルを学習するように設計されています。

少数ショット学習ゼロショット学習もご覧ください。

ワンショット プロンプト

#language
#generativeAI

大規模言語モデルがどのように応答すべきかを示す1 つの例を含むプロンプト。たとえば、次のプロンプトには、クエリにどのように回答するかを大規模言語モデルに示す例が 1 つ含まれています。

1 つのプロンプトの一部 メモ
指定した国の公式通貨は何ですか? LLM に回答を求める質問。
フランス: EUR 1 つの例を挙げましょう。
インド: 実際のクエリ。

ワンショット プロンプトと次の用語を比較します。

1 対すべて

#fundamentals

N クラスの分類問題の場合、N 個の個別のバイナリ分類子(考えられる結果ごとに 1 つのバイナリ分類子)で構成されるソリューション。たとえば、サンプルを動物、植物、鉱物に分類するモデルの場合、1 対すべてのソリューションは、次の 3 つの個別のバイナリ分類子を生成します。

  • 動物と動物以外
  • 野菜と野菜以外の区別
  • 鉱物と非鉱物

オンライン

#fundamentals

動的と同義。

オンライン推論

#fundamentals

予測をオンデマンドで生成する。たとえば、アプリが入力をモデルに渡し、予測のリクエストを発行するとします。オンライン推論を使用するシステムは、モデルを実行して(予測をアプリに返して)リクエストに応答します。

オフライン推論とは対照的です。

詳細については、ML 集中講座の本番環境の ML システム: 静的推論と動的推論をご覧ください。

オペレーション(op)

#TensorFlow

TensorFlow では、テンソルを作成、操作、破棄するプロシージャ。たとえば、行列乗算は、2 つのテンソルを入力として受け取り、1 つのテンソルを出力として生成するオペレーションです。

Optax

JAX の勾配処理と最適化ライブラリ。Optax は、カスタム方法で再結合してディープニューラル ネットワークなどのパラメータモデルを最適化できる構成要素を提供することで、研究を容易にします。その他の目標には次のようなものがあります。

  • コア コンポーネントの読み取り可能で、十分にテストされた効率的な実装を提供します。
  • 低レベルの要素をカスタム オプティマイザー(またはその他の勾配処理コンポーネント)に組み合わせることができるため、生産性が向上します。
  • 誰でも簡単に貢献できるようにすることで、新しいアイデアの採用を加速します。

optimizer

勾配降下アルゴリズムの特定の実装。一般的な最適化ツールには次のようなものがあります。

  • AdaGrad: ADAptive GRADient descent の略です。
  • Adam: ADAptive with Momentum の略。

自分が属していないグループに対する均一性のバイアス

#fairness

態度、価値観、性格特性などの特徴を比較する際に、アウトグループのメンバーをイングループのメンバーよりも類似していると見なす傾向。イングループとは、日常的に交流する相手を指し、アウトグループとは、日常的に交流しない相手を指します。アウトグループに関する属性を参加者に提供してもらってデータセットを作成する場合は、参加者がイングループの人物について挙げる属性よりも、ニュアンスが乏しく、固定観念に偏った属性になる可能性があります。

たとえば、リリパット人は、他のリリパットの家を非常に詳細に説明するかもしれません。建築様式、窓、ドア、サイズのわずかな違いを挙げます。一方、同じリリパット人は、ブロブディンガニア人はすべて同じ家に住んでいると主張するかもしれません。

自分が属していないグループに対する均一性のバイアスは、グループ属性バイアスの一種です。

所属グループのバイアスもご覧ください。

外れ値検出

トレーニング セット内の外れ値を特定するプロセス。

新規性検知とは対照的です。

考慮する

他のほとんどの値から離れている値。ML では、次のいずれも外れ値です。

  • 値が平均から約 3 標準偏差を超える入力データ。
  • 絶対値の大きい重み
  • 予測値が実際の値から比較的離れている。

たとえば、widget-price が特定のモデルの特徴であるとします。平均 widget-price が 7 ユーロで、標準偏差が 1 ユーロであるとします。したがって、widget-price が 12 ユーロまたは 2 ユーロの例は、各価格が平均から 5 標準偏差離れているため、外れ値と見なされます。

外れ値は、入力ミスなどの入力ミスが原因で発生することがよくあります。一方、外れ値が誤りである場合もあります。平均から 5 標準偏差離れた値はまれですが、不可能ではありません。

多くの場合、外れ値はモデルのトレーニングで問題を引き起こします。外れ値を管理する方法の 1 つがクリッピングです。

詳細については、ML 集中講座の数値データの操作をご覧ください。

アウトオブバッグ評価(OOB 評価)

#df

ディシジョン ツリーを、そのディシジョン ツリーのトレーニング中に使用されていないと比較して、ディシジョン フォレストの品質を評価するメカニズム。たとえば、次の図では、システムが各デシジョン ツリーを約 3 分の 2 の例でトレーニングし、残りの 3 分の 1 の例で評価していることがわかります。

3 つのディシジョン ツリーで構成されるディシジョン フォレスト。1 つのディシジョン ツリーは、サンプルの 3 分の 2 でトレーニングし、残りの 3 分の 1 を OOB 評価に使用します。2 つ目の決定木は、前の決定木とは異なる 3 分の 2 の例でトレーニングし、前の決定木とは異なる 3 分の 1 を OOB 評価に使用します。

アウトオブバッグ評価は、クロス バリデーション メカニズムの計算効率が高く保守的な近似です。クロス バリデーションで、クロス バリデーション ラウンドごとに 1 つのモデルがトレーニングされます(たとえば、10 分割クロス バリデーションで 10 個のモデルがトレーニングされます)。OOB 評価では、単一のモデルがトレーニングされます。バギングではトレーニング中に各ツリーから一部のデータが保持されるため、OOB 評価ではそのデータを使用してクロス バリデーションを近似できます。

詳細については、決定木コースの袋外評価をご覧ください。

出力層

#fundamentals

ニューラル ネットワークの「最終」レイヤ。出力層には予測が含まれます。

次の図は、入力レイヤ、2 つの隠れ層、出力レイヤを持つ小さなディープラーニング ネットワークを示しています。

入力層が 1 つ、隠れ層が 2 つ、出力層が 1 つのニューラル ネットワーク。入力レイヤは 2 つの特徴で構成されています。最初の隠れ層は 3 つのニューロンで構成され、2 番目の隠れ層は 2 つのニューロンで構成されています。出力レイヤは単一のノードで構成されます。

過学習

#fundamentals

トレーニング データと非常によく一致するモデルを作成すると、モデルは新しいデータに対して正しい予測を行うことができません。

正則化により、過剰適合を軽減できます。大規模で多様なトレーニング セットでトレーニングを行うと、過学習を軽減することもできます。

オーバーフィッティングは、お気に入りの教師からのアドバイスに厳密に従うようなものです。その教師のクラスでは成功する可能性はありますが、その教師のアイデアに「過剰適合」し、他のクラスでは成功しない可能性があります。さまざまな教師からのアドバイスに従うことで、新しい状況に適応しやすくなります。


詳細については、機械学習集中講座の過剰適合をご覧ください。

oversampling

クラスの不均衡なデータセット少数派クラスサンプルを再利用して、よりバランスの取れたトレーニング セットを作成します。

たとえば、多数クラスと少数クラスの比率が 5,000:1 のバイナリ分類問題について考えてみましょう。データセットに 100 万個のサンプルが含まれている場合、少数派クラスのサンプルは約 200 個しか含まれません。これは、効果的なトレーニングを行うにはサンプル数が少ない可能性があります。この不足を克服するには、200 個のサンプルを複数回オーバーサンプリング(再利用)し、有用なトレーニングに十分なサンプルを取得できます。

オーバーサンプリングを行う場合は、過剰な過学習に注意する必要があります。

アンダーサンプリングとは対照的です。

P

圧縮データ

データをより効率的に保存するためのアプローチ。

圧縮された形式を使用するか、より効率的にアクセスできるようにする他の方法でデータを保存します。パックされたデータは、データにアクセスするために必要なメモリ量と計算量を最小限に抑え、トレーニングの高速化とモデル推論の効率化につながります。

圧縮されたデータは、データ拡張正規化などの他の手法とともに使用されることが多く、モデルのパフォーマンスをさらに向上させます。

pandas

#fundamentals

numpy 上に構築された列指向のデータ分析 API。TensorFlow を含む多くの ML フレームワークは、Pandas データ構造を入力としてサポートしています。詳細については、pandas のドキュメントをご覧ください。

パラメータ

#fundamentals

モデルがトレーニング中に学習する重みバイアス。たとえば、線形回帰モデルでは、パラメータはバイアス(b)とすべての重み(w1w2 など)で構成されます。式は次のとおりです。

y=b+w1x1+w2x2+wnxn

一方、ハイパーパラメータは、ユーザー(またはハイパーパラメータ チューニング サービス)がモデルに提供する値です。たとえば、学習率はハイパーパラメータです。

パラメータ効率チューニング

#language
#generativeAI

大規模な事前トレーニング済み言語モデル(PLM)を完全なファインチューニングよりも効率的にファインチューニングするための一連の手法。パラメータ効率チューニングでは、通常、完全なファインチューニングよりもはるかに少ないパラメータをファインチューニングしますが、通常、完全なファインチューニングから構築された大規模言語モデルと同等(またはほぼ同等)のパフォーマンスを示す大規模言語モデルが生成されます。

パラメータ効率チューニングと次の方法を比較します。

パラメータ効率チューニングは、パラメータ エフィシエント ファインチューニングとも呼ばれます。

パラメータ サーバー(PS)

#TensorFlow

分散環境でモデルのパラメータを追跡するジョブ。

パラメータの更新

トレーニング中にモデルのパラメータを調整するオペレーション。通常は、勾配降下の 1 回の反復処理内で行われます。

偏微分

変数の 1 つを除くすべてが定数と見なされる微分。たとえば、f(x, y)x に対する偏微分は、x の関数として(つまり、y を一定に保って)f の微分です。fx に対する偏微分は、x の変化にのみ焦点を当て、式内の他のすべての変数は無視します。

参加バイアス

#fairness

無回答のバイアスと同義。選択バイアスをご覧ください。

パーティショニング戦略

変数がパラメータ サーバー間で分割されるアルゴリズム。

k でパス(pass@k)

#Metric

大規模言語モデルが生成したコード(Python など)の品質を判断するための指標。具体的には、k でパスすると、生成された k 個のコードブロックのうち少なくとも 1 個のコードブロックがすべての単体テストに合格する可能性を示します。

大規模言語モデルは、複雑なプログラミングの問題に対して適切なコードを生成するのが難しいことがよくあります。ソフトウェア エンジニアは、同じ問題に対して複数k)のソリューションを生成するよう大規模言語モデルに指示することで、この問題に対応しています。次に、ソフトウェア エンジニアが各ソリューションを単体テストでテストします。k でのパスの計算は、単体テストの結果によって異なります。

  • これらのソリューションの1 つ以上が単体テストに合格すると、LLM はそのコード生成チャレンジを合格します。
  • どのソリューションも単体テストに合格しなかった場合、LLM はそのコード生成チャレンジを失敗します。

k でのパスの式は次のとおりです。

pass at k=total number of passestotal number of challenges

一般に、k の値が大きいほど、k スコアで合格率が高くなります。ただし、k の値が大きいほど、大規模言語モデルとユニットテストのリソースが必要になります。

ソフトウェア エンジニアが、大規模言語モデルに、n=50 の難解なコーディング問題に対して k=10 個の解を生成するよう依頼したとします。結果は次のとおりです。

  • 30 枚
  • 20 件の不合格

したがって、10 点の合格点は次のようになります。

pass at 10=3050=0.6

Pax

複数の TPU アクセラレータ チップ スライスまたは Pod にまたがる大規模なニューラル ネットワーク モデルのトレーニング用に設計されたプログラミング フレームワーク。

Pax は Flax 上に構築されており、これは JAX 上に構築されています。

ソフトウェア スタックにおける Pax の位置を示す図。Pax は JAX 上に構築されています。Pax 自体は 3 つのレイヤで構成されています。最下層には TensorStore と Flax が含まれています。中間レイヤには Optax と Flaxformer が含まれています。最上位のレイヤには Praxis Modeling Library が含まれています。Fiddle は Pax 上に構築されています。

パーセプトロン

1 つ以上の入力値を受け取り、入力の重み付き合計に対して関数を実行し、単一の出力値を計算するシステム(ハードウェアまたはソフトウェア)。機械学習では、通常、関数は非線形です(ReLUsigmoidtanh など)。たとえば、次のパーセプトロンは、シグモイド関数を使用して 3 つの入力値を処理します。

f(x1,x2,x3)=sigmoid(w1x1+w2x2+w3x3)

次の図は、ペルセプトロンが 3 つの入力を受け取り、それぞれがペルセプトロンに入力される前に重みによって変更される様子を示しています。

3 つの入力を受け取り、それぞれに個別の重みを掛けるパーセプトロン。ペルセプトロンは単一の値を出力します。

ペルセプトロンは、ニューラル ネットワークニューロンです。

パフォーマンス

#Metric

次の意味を持つオーバーロードされた用語。

  • ソフトウェア エンジニアリングにおける標準的な意味。つまり、このソフトウェアはどれくらい速く(または効率的に)実行されるかです。
  • 機械学習における意味。ここで、パフォーマンスは次の質問に答えます。このモデルの精度はどの程度ですか?つまり、モデルの予測の精度はどの程度かということです。

変数の入れ替えによる重要度

#df
#Metric

特徴量の値を並べ替えたのモデルの予測誤差の増加を評価する変数の重要度の一種。変数の並べ替えの重要度は、モデルに依存しない指標です。

パープレキシティ

#Metric

モデルがタスクをどの程度達成しているかを測定する指標の 1 つです。たとえば、ユーザーがスマートフォンのキーボードで入力している単語の最初の数文字を読み取り、候補となる単語のリストを提供するタスクがあるとします。このタスクの混乱度(P)は、ユーザーが入力しようとしている実際の単語がリストに含まれるようにするために提示する必要がある推測の数に近似しています。

混乱度は、次のように交差エントロピーに関連しています。

P=2cross entropy

pipeline

ML アルゴリズムを取り巻くインフラストラクチャ。パイプラインには、データの収集、データのトレーニング データ ファイルへの配置、1 つ以上のモデルのトレーニング、モデルの本番環境へのエクスポートが含まれます。

詳細については、ML プロジェクトの管理コースの ML パイプラインをご覧ください。

パイプライン

#language

モデル並列処理の一種で、モデルの処理が連続するステージに分割され、各ステージが異なるデバイスで実行されます。1 つのステージが 1 つのバッチを処理している間、前のステージは次のバッチで処理できます。

ステージングされたトレーニングもご覧ください。

pjit

コードを分割して複数のアクセラレータ チップで実行する JAX 関数。ユーザーが関数を pjit に渡すと、同等のセマンティクスを持つ関数が返されます。この関数は、複数のデバイス(GPU や TPU コアなど)で実行される XLA コンピューティングにコンパイルされます。

pjit を使用すると、SPMD パーティショナーを使用して、計算を書き換えることなくシャーディングできます。

2023 年 3 月現在、pjitjit と統合されています。詳細については、分散配列と自動並列化をご覧ください。

PLM

#language
#generativeAI

事前トレーニング済み言語モデルの略称。

pmap

基盤となる複数のハードウェア デバイス(CPU、GPU、TPU)で、異なる入力値を使用して入力関数のコピーを実行する JAX 関数。pmap は SPMD に依存しています。

ポリシー

#rl

強化学習では、状態からアクションへのエージェントの確率的マッピング。

プーリング

#image

前の畳み込みレイヤによって作成されたマトリックス(またはマトリックス)を小さいマトリックスに縮小します。通常、プーリングでは、プールされた領域全体の最大値または平均値を取得します。たとえば、次の 3x3 行列があるとします。

3x3 マトリックス [[5,3,1], [8,2,5], [9,4,3]]。

プール演算は、畳み込み演算と同様に、その行列をスライスに分割し、その畳み込み演算をストライドでスライドします。たとえば、プーリング オペレーションで畳み込み行列が 1x1 のストライドで 2x2 スライスに分割されるとします。次の図に示すように、4 つのプーリング オペレーションが行われます。各プーリング オペレーションが、そのスライス内の 4 つの値の最大値を選択するとします。

入力行列は 3x3 で、値は [[5,3,1], [8,2,5], [9,4,3]] です。入力行列の左上の 2x2 サブマトリックスは [[5,3], [8,2]] であるため、左上のプーリング オペレーションでは値 8(5、3、8、2 の最大値)が生成されます。入力行列の右上の 2x2 サブマトリックスは [[3,1], [2,5]] であるため、右上のプーリング演算では値 5 が得られます。入力行列の左下 2x2 サブマトリックスは [[8,2], [9,4]] であるため、左下のプーリング演算では値 9 が生成されます。入力マトリックスの右下 2x2 サブマトリックスは [[2,5], [4,3]] であるため、右下のプーリング演算では値 5 が生成されます。要約すると、プーリング オペレーションにより、2x2 行列 [[8,5], [9,5]] が生成されます。

プーリングは、入力行列に変換不変性を適用するのに役立ちます。

ビジョン アプリケーションのプーリングは、正式には空間プーリングと呼ばれます。時系列アプリケーションでは、通常、プールを時間的プールと呼びます。より非公式な用語では、プーリングはサブサンプリングまたはダウンサンプリングと呼ばれます。

ML 演習: 画像分類コースの畳み込みニューラル ネットワークの概要をご覧ください。

位置エンコード

#language

シーケンス内のトークンの位置に関する情報をトークンのエンベディングに追加する手法。Transformer モデルは、位置エンコードを使用して、シーケンスのさまざまな部分間の関連性をより深く理解します。

位置エンコードの一般的な実装では、正弦関数を使用します。(具体的には、正弦関数の周波数と振幅は、シーケンス内のトークンの位置によって決まります)。この手法により、Transformer モデルは位置に基づいてシーケンスのさまざまな部分に注意を向けることを学習できます。

陽性クラス

#fundamentals
#Metric

テスト対象のクラス。

たとえば、がんモデルの陽性のクラスは「腫瘍」です。メールの分類モデルの陽性のクラスは「スパム」です。

負のクラスとは対照的です。

多くのテストの「陽性」結果は望ましくない結果であることが多いため、陽性クラスという用語は混乱を招く可能性があります。たとえば、多くの医療検査における陽性クラスは、腫瘍や疾患に対応しています。通常、医師から「おめでとうございます。検査結果は陰性でした。」 いずれにしても、ポジティブ クラスは、テストで検出しようとしているイベントです。

確かに、ポジティブ クラスとネガティブ クラスの両方を同時にテストしています。


後処理

#fairness
#fundamentals

モデルの実行にモデルの出力を調整する。後処理を使用すると、モデル自体を変更せずに公平性制約を適用できます。

たとえば、バイナリ分類器にポスト処理を適用するには、分類しきい値を設定して、真陽性率がその属性のすべての値で同じであることを確認することで、一部の属性の機会均等を維持します。

トレーニング後のモデル

#language
#image
#generativeAI

厳密に定義されていない用語で、通常は、次のような 1 つ以上の後処理を行った事前トレーニング済みモデルを指します。

PR AUC(PR 曲線の下の面積)

#Metric

適合率 / 再現率曲線の補間下の面積。分類しきい値のさまざまな値の(再現率、適合率)ポイントをプロットすることで得られます。

Praxis

Pax のコアとなる高性能 ML ライブラリ。Praxis は多くの場合「レイヤ ライブラリ」と呼ばれます。

Praxis には、Layer クラスの定義だけでなく、次のようなサポート コンポーネントのほとんども含まれています。

Praxis は、Model クラスの定義を提供します。

precision

#Metric

次の質問に回答する分類モデルの指標。

モデルが陽性クラスを予測したとき、予測の正解率はどのくらいでしたか?

式は次のとおりです。

Precision=true positivestrue positives+false positives

ここで

  • 真陽性とは、モデルが陽性のクラスを正しく予測したことを意味します。
  • 偽陽性とは、モデルが陽性のクラスを誤って予測したことを意味します。

たとえば、モデルが 200 件の陽性予測を行ったとします。これらの 200 件の正の予測のうち、

  • 150 件が真陽性でした。
  • 50 件は誤検出でした。

この例の場合は、次のようになります。

Precision=150150+50=0.75

精度再現率とは対照的です。

詳細については、ML 集中講座の分類: 精度、再現率、適合率、関連指標をご覧ください。

k での適合率(precision@k)

#language
#Metric

アイテムのランキング(順序付け)リストを評価するための指標。k での精度は、そのリストの最初の k 個の項目のうち「関連性が高い」項目の割合を示します。具体的には、次のことが求められます。

precision at k=relevant items in first k items of the listk

k の値は、返されるリストの長さ以下にする必要があります。返されるリストの長さは計算の対象外です。

関連性は主観的な場合が多く、専門の人間の評価者であっても、関連性のある項目について意見が一致しないことがよくあります。

比較対象日:

大規模言語モデルに次のクエリが与えられたとします。

List the 6 funniest movies of all time in order.

大規模言語モデルは、次の表の最初の 2 つの列に示すリストを返します。

位置 映画 関連性が高いか?
1 全般
2 Mean Girls
3 Platoon いいえ
4 ブライズメイズ 史上最悪のウェディングプラン
5 Citizen Kane いいえ
6 This is Spinal Tap

最初の 3 本の映画のうち 2 本が関連性が高いため、精度は 3 になります。

precision at 3=23=0.67

最初の 5 本の映画のうち 4 本が非常に面白いため、精度は 5 になります。

precision at 5=45=0.8

適合率と再現率の曲線

#Metric

さまざまな分類しきい値で、適合率再現率の曲線。

予測

#fundamentals

モデルの出力。次に例を示します。

  • バイナリ分類モデルの予測は、陽性のクラスまたは陰性のクラスのいずれかです。
  • マルチクラス分類モデルの予測は 1 つのクラスです。
  • 線形回帰モデルの予測は数値です。

予測バイアス

#Metric

予測の平均がデータセット内のラベルの平均からどの程度離れているかを示す値。

機械学習モデルのバイアス項や、倫理と公正性におけるバイアスとは異なります。

予測 ML

標準(従来型)の機械学習システム。

予測 ML という用語には正式な定義がありません。むしろ、この用語は、生成 AI に基づいていない ML システムのカテゴリを区別します。

予測パリティ

#fairness
#Metric

特定の分類システムで、対象のサブグループで適合率が同等であるかどうかを確認する公平性指標

たとえば、大学の合格を予測するモデルは、リリパット人とブロブディンガニア人の適合率が同じであれば、国籍の予測の平等を満たします。

予測パリティは、予測レート パリティとも呼ばれます。

予測の公平性について詳しくは、「公平性の定義の説明」(セクション 3.2.1)をご覧ください。

予測レートの同等性

#fairness
#Metric

予測的パリティの別名。

前処理

#fairness
モデルのトレーニングに使用する前にデータを処理します。前処理は、英語の辞書にない単語を英語テキスト コーパスから削除するような単純なものから、機密性の高い属性と関連する属性をできるだけ排除するようにデータポイントを再表現するような複雑なものまで、さまざまです。前処理は、公平性制約を満たすのに役立ちます。

事前トレーニング済みモデル

#language
#image
#generativeAI

通常は、すでにトレーニングされているモデルです。この用語は、以前にトレーニングされたエンベディング ベクトルを意味する場合もあります。

事前トレーニング済み言語モデルという用語は、通常、すでにトレーニングされている大規模言語モデルを指します。

事前トレーニング

#language
#image
#generativeAI

大規模なデータセットでのモデルの初期トレーニング。一部の事前トレーニング済みモデルは巨大で扱いづらく、通常は追加のトレーニングで精度を高める必要があります。たとえば、ML の専門家は、Wikipedia のすべての英語ページなど、膨大なテキスト データセットで大規模言語モデルを事前トレーニングする場合があります。事前トレーニングの後、得られたモデルは、次のいずれかの手法でさらに精緻化できます。

事前信念

トレーニングを開始する前に、データについてどのようなことを知っているか。たとえば、L2 正則化では、重みは小さく、ゼロを中心に正規分布しているという事前確信に基づいています。

確率的回帰モデル

特徴重みだけでなく、それらの重みの不確実性も使用する回帰モデル。確率的回帰モデルは、予測とその予測の不確実性を生成します。たとえば、確率的回帰モデルでは、標準偏差が 12 の 325 という予測が得られる場合があります。確率的回帰モデルの詳細については、tensorflow.org の Colab をご覧ください。

確率密度関数

#Metric

特定の値を正確に持つデータサンプルの頻度を特定する関数。データセットの値が連続浮動小数点数の場合、完全一致はほとんど発生しません。ただし、値 x から値 y までの確率密度関数を積分すると、xy の間のデータサンプルの予想頻度が得られます。

たとえば、平均が 200 で標準偏差が 30 の正規分布について考えてみましょう。211.4 ~ 218.7 の範囲内にあるデータサンプルの予想頻度を特定するには、211.4 ~ 218.7 の範囲で正規分布の確率密度関数を積分します。

プロンプト

#language
#generativeAI

大規模言語モデルへの入力として入力されるテキスト。これにより、モデルが特定の動作をするように条件付けられます。プロンプトは、フレーズのように短いものから、小説のテキスト全体のように任意の長さにすることができます。プロンプトは、次の表に示すような複数のカテゴリに分類されます。

プロンプト カテゴリ メモ
質問 ハトはどのくらいの速さで飛ぶことができますか?
手順 アービトラージに関する面白い詩を書いてください。 大規模言語モデルに何かを実行するよう求めるプロンプト。
Markdown コードを HTML に変換します。例:
マークダウン: * リスト項目
HTML: <ul> <li>リスト項目</li> </ul>
この例のプロンプトの最初の文は指示です。プロンプトの残りの部分が例です。
ロール 機械学習のトレーニングで勾配降下法が使用される理由を、物理学の博士号取得者に説明します。 文の最初の部分は指示です。「物理学博士号」というフレーズは役割の部分です。
モデルが完了する部分入力 英国の首相は 部分入力プロンプトは、この例のように突然終了することも、アンダースコアで終了することもできます。

生成 AI モデルは、テキスト、コード、画像、エンベディング、動画など、ほぼすべてのプロンプトに応答できます。

プロンプトベースの学習

#language
#generativeAI

特定のモデルの機能。任意のテキスト入力(プロンプト)に応じて動作を適応させることができます。一般的なプロンプトベースの学習パラダイムでは、大規模言語モデルがプロンプトに応答してテキストを生成します。たとえば、ユーザーが次のプロンプトを入力したとします。

ニュートンの運動の第 3 法則を要約します。

プロンプトベースの学習が可能なモデルは、前のメッセージに回答するように特別にトレーニングされていません。むしろ、モデルは物理学に関する多くの事実、一般的な言語ルール、一般的に有用な回答を構成するものについて多くのことを「知っています」。この知識があれば、(うまくいけば)有用な回答を提供できます。人間からの追加のフィードバック(「その回答は複雑すぎる」や「反応はどうだった?」など)により、一部のプロンプトベースの学習システムでは、回答の有用性を徐々に改善できます。

プロンプト設計

#language
#generativeAI

プロンプト エンジニアリングと同義。

プロンプト エンジニアリング

#language
#generativeAI

大規模言語モデルから望ましい回答を引き出すプロンプトを作成する技術。プロンプトのエンジニアリングは人間が行います。適切に構造化されたプロンプトを作成することは、大規模言語モデルから有用なレスポンスを得るために不可欠な要素です。プロンプト エンジニアリングは、次のような多くの要因によって異なります。

プロンプト設計は、プロンプト エンジニアリングと同義です。

役立つプロンプトの作成について詳しくは、プロンプト設計の概要をご覧ください。

プロンプト調整

#language
#generativeAI

システムが実際のプロンプトの前に追加する「接頭辞」を学習するパラメータ効率チューニング メカニズム。

プロンプト チューニングのバリエーションの 1 つ(接頭辞チューニングとも呼ばれます)は、すべてのレイヤに接頭辞を追加することです。一方、ほとんどのプロンプト チューニングでは、入力レイヤに接頭辞のみが追加されます。

プロンプト チューニングの場合、「接頭辞」(「ソフト プロンプト」とも呼ばれます)は、実際のプロンプトのテキスト トークン エンベディングの先頭に追加される、学習済みのタスク固有のベクトルのことです。システムは、他のすべてのモデル パラメータをフリーズし、特定のタスクでファインチューニングすることで、ソフト プロンプトを学習します。


プロキシ(機密性の高い属性)

#fairness
機密性の高い属性の代用として使用される属性。たとえば、個人の郵便番号は、収入、人種、民族の代用として使用される場合があります。

プロキシラベル

#fundamentals

データセットで直接利用できないラベルを近似するために使用されるデータ。

たとえば、従業員のストレスレベルを予測するモデルをトレーニングする必要がある場合を考えてみましょう。データセットには多くの予測特徴が含まれていますが、ストレスレベルというラベルは含まれていません。ストレス レベルのプロキシラベルとして「職場での事故」を選択します。ストレスの多い従業員は、落ち着いた従業員よりも事故に遭遇する可能性が高くなります。本当にそうでしょうか?職場での事故は、実際にはさまざまな理由で増減している可能性があります。

2 つ目の例として、雨が降っているか?をデータセットのブール値ラベルにしたいものの、データセットに雨データが含まれていないとします。写真が利用可能な場合は、傘を持った人の写真を「雨が降っていますか?」の代替ラベルとして設定できます。これは良いプロキシラベルですか?可能性がありますが、地域によっては、雨よりも日差しを避けるために傘を持っている人が多いかもしれません。

プロキシラベルは不完全な場合が多く、可能であれば、プロキシラベルではなく実際のラベルを選択してください。ただし、実際のラベルがない場合は、プロキシラベルを非常に慎重に選択し、最もひどくないプロキシラベルの候補を選択してください。

詳細については、機械学習集中講座のデータセット: ラベルをご覧ください。

純粋関数

出力が入力のみに基づき、副作用がない関数。具体的には、純粋関数は、ファイルの内容や関数外の変数の値など、グローバル状態を使用しないか、変更しません。

純粋関数を使用してスレッドセーフ コードを作成できます。これは、複数のアクセラレータ チップモデル コードをシャーディングする場合に便利です。

JAX の関数変換メソッドでは、入力関数が純粋関数である必要があります。

Q

Q 関数

#rl

強化学習では、状態アクションを実行し、特定のポリシーに従うことで得られる予想されるリターンを予測する関数。

Q 関数は、状態行動価値関数とも呼ばれます。

Q 学習

#rl

強化学習では、ベルマン方程式を適用して、エージェントマルコフ決定プロセスの最適な Q 関数を学習できるようにするアルゴリズムです。マルコフ決定プロセスは環境をモデル化します。

分位数

分位バケット化の各バケット。

分位バケット化

各バケットに同じ(またはほぼ同じ)数の例が含まれるように、特徴の値をバケットに分散します。たとえば、次の図は 44 個の点を 4 つのバケットに分割し、それぞれに 11 個の点を配置しています。図の各バケットに同じ数の点を含めるため、一部のバケットは異なる幅の X 値にまたがっています。

44 個のデータポイントが、それぞれ 11 個のポイントの 4 つのバケットに分割されています。各バケットには同じ数のデータポイントが含まれますが、バケットによっては、他のバケットよりも特徴値の範囲が広い場合があります。

詳細については、機械学習集中講座の数値データ: ビニングをご覧ください。

量子化

次のいずれかの方法で使用できるオーバーロードされた用語。

  • 特定の特徴量分位バケット化を実装する。
  • データを 0 と 1 に変換して、保存、トレーニング、推論を高速化します。ブール値データは他の形式よりもノイズやエラーに強いため、量子化によってモデルの正確性を高めることができます。量子化手法には、丸め、切り捨て、ビニングなどがあります。
  • モデルのパラメータの保存に使用されるビット数を減らす。たとえば、モデルのパラメータが 32 ビットの浮動小数点数として保存されているとします。量子化では、これらのパラメータを 32 ビットから 4 ビット、8 ビット、または 16 ビットに変換します。量子化により、次のことが行われます。

    • コンピューティング、メモリ、ディスク、ネットワークの使用量
    • 予測の推論に要する時間
    • 消費電力

    ただし、量子化によってモデルの予測の精度が低下することもあります。

キュー

#TensorFlow

キュー データ構造を実装する TensorFlow オペレーション。通常は I/O で使用されます。

R

RAG

#fundamentals

検索拡張生成の略。

ランダム フォレスト

#df

ディシジョン ツリーアンサンブル。各ディシジョン ツリーは、バギングなどの特定のランダム ノイズでトレーニングされます。

ランダム フォレストは、デシジョン フォレストの一種です。

詳細については、ディシジョン フォレスト コースのランダム フォレストをご覧ください。

ランダム ポリシー

#rl

強化学習では、アクションをランダムに選択するポリシー

ランク(順序)

クラスを高いものから低いものに分類する機械学習問題におけるクラスの順序位置。たとえば、行動ランキング システムでは、犬の報酬を最高(ステーキ)から最低(しおれたケール)にランク付けできます。

階数(テンソル)

#TensorFlow

テンソルのディメンション数。たとえば、スカラーのランクは 0、ベクトルのランクは 1、行列のランクは 2 です。

ランク(順序)とは異なります。

ランキング

アイテムのリストを並べ替えることを目的とした教師あり学習の一種。

評価者

#fundamentals

ラベルを提供する人間。「アノテーター」はレーター(評価者)の別名です。

詳細については、機械学習集中講座のカテゴリデータ: 一般的な問題をご覧ください。

recall

#Metric

次の質問に回答する分類モデルの指標。

グラウンド トゥルース陽性クラスの場合、モデルが陽性クラスとして正しく識別した予測の割合はどれくらいですか?

式は次のとおりです。

Recall=true positivestrue positives+false negatives

ここで

  • 真陽性とは、モデルが陽性のクラスを正しく予測したことを意味します。
  • 偽陰性とは、モデルが陰性クラス誤って予測したことを意味します。

たとえば、モデルがグラウンドトゥルースが陽性のクラスであるサンプルに対して 200 件の予測を行ったとします。これらの 200 個の予測のうち、

  • 180 件が真陽性でした。
  • 20 件は偽陰性でした。

この例の場合は、次のようになります。

Recall=180180+20=0.9

再現率は、陽性のクラスがまれな分類モデルの予測力を判断する場合に特に役立ちます。たとえば、特定の疾患の陽性クラスが 100 万人の患者のうち 10 人にしか発生しないクラスの不均衡なデータセットについて考えてみましょう。モデルが 500 万件の予測を行い、次の結果が得られたものとします。

  • 30 件の真陽性
  • 20 件の偽陰性
  • 4,999,000 件の真陰性
  • 950 件の誤検出

したがって、このモデルの再現率は次のようになります。

recall = TP / (TP + FN)
recall = 30 / (30 + 20) = 0.6 = 60%
一方、このモデルの精度は次のとおりです。
accuracy = (TP + TN) / (TP + TN + FP + FN)
accuracy = (30 + 4,999,000) / (30 + 4,999,000 + 950 + 20) = 99.98%

この高い精度は印象的ですが、本質的には意味がありません。クラスのバランスが取れていないデータセットでは、精度よりも再現率のほうがはるかに有用な指標です。


詳細については、分類: 精度、再現率、適合率、関連指標をご覧ください。

k での再現率(recall@k)

#language
#Metric

アイテムのランキング(順序付け)リストを出力するシステムを評価するための指標。k での再現率は、リストの最初の k 個のアイテムに含まれる関連アイテムの割合を、返された関連アイテムの合計数で割った値です。

recall at k=relevant items in first k items of the listtotal number of relevant items in the list

k での精度とは対照的です。

大規模言語モデルに次のクエリが与えられたとします。

List the 10 funniest movies of all time in order.

大規模言語モデルは、最初の 2 つの列に示すリストを返します。

位置 映画 関連性が高いか?
1 全般
2 Mean Girls
3 Platoon いいえ
4 ブライズメイズ 史上最悪のウェディングプラン
5 This is Spinal Tap
6 飛行機
7 Groundhog Day
8 モンティ パイソン アンド ホーリー グレイル
9 Oppenheimer いいえ
10 クルーレス

上記のリストに含まれる映画のうち 8 本は非常に面白いため、「リスト内の関連アイテム」です。したがって、k でのすべての再現率の計算では、分母が 8 になります。分子はどうなるのでしょうか。最初の 4 つの項目のうち 3 つが関連しているため、4 での再現率は次のようになります。

recall at 4=38=0.375

最初の 8 本の映画のうち 7 本が非常に面白いため、8 回目の想起は次のようになります。

recall at 8=78=0.875

レコメンデーション システム

#recsystems

大規模なコーパスから、ユーザーごとに比較的小さなセットの望ましいアイテムを選択するシステム。たとえば、動画レコメンデーション システムは、10 万本の動画のコーパスから 2 本の動画をおすすめします。あるユーザーには カサブランカフィラデルフィア物語を、別のユーザーには ワンダーウーマンブラックパンサーを選択します。動画のおすすめシステムは、次のような要素に基づいておすすめを表示します。

  • 類似のユーザーが評価または視聴した映画。
  • ジャンル、監督、俳優、ターゲット層など

詳細については、レコメンデーション システムのコースをご覧ください。

正規化線形ユニット(ReLU)

#fundamentals

次の動作を持つ活性化関数

  • 入力が負またはゼロの場合、出力は 0 になります。
  • 入力が正の場合、出力は入力と同じになります。

次に例を示します。

  • 入力が -3 の場合、出力は 0 になります。
  • 入力が +3 の場合、出力は 3.0 です。

ReLU のグラフを次に示します。

2 本の線の直交座標プロット。最初の線は、y 値が常に 0 で、x 軸に沿って -∞,0 から 0,-0 まで延びています。2 行目は 0,0 から始まります。この線の傾きは +1 であるため、0,0 から +∞,+∞ まで延びています。

ReLU は非常に一般的な活性化関数です。動作はシンプルですが、ReLU を使用すると、ニューラル ネットワークは特徴量ラベルの間の非線形な関係を学習できます。

再帰型ニューラル ネットワーク

#seq

意図的に複数回実行されるニューラル ネットワーク。各実行の一部が次の実行にフィードされます。具体的には、前の実行の隠れ層が、次の実行の同じ隠れ層に入力の一部を提供します。再帰型ニューラル ネットワークは、シーケンスの評価に特に役立ちます。これにより、隠れ層は、シーケンスの前の部分でニューラル ネットワークの以前の実行から学習できます。

たとえば、次の図は 4 回実行される再帰型ニューラル ネットワークを示しています。最初の実行で隠れ層で学習された値は、2 回目の実行で同じ隠れ層への入力の一部になります。同様に、2 回目の実行で隠れ層で学習された値は、3 回目の実行で同じ隠れ層への入力の一部になります。このように、RNN は、個々の単語の意味だけでなく、シーケンス全体の意味を徐々にトレーニングして予測します。

4 回実行して 4 つの入力単語を処理する RNN。

参照テキスト

#language
#generativeAI

プロンプトに対するエキスパートの回答。たとえば、次のプロンプトがあるとします。

「名前を教えて」という質問を英語からフランス語に翻訳してください。

エキスパートの回答は次のようになります。

Comment vous appelez-vous?

さまざまな指標(ROUGE など)は、参照テキストが ML モデルの生成テキストと一致する度合いを測定します。

回帰モデル

#fundamentals

非公式には、数値予測を生成するモデルです。(これに対し、分類モデルはクラス予測を生成します)。たとえば、次のすべてが回帰モデルです。

  • 特定の住宅の価値をユーロ(423,000 など)で予測するモデル。
  • 特定の木の寿命(23.2 年など)を予測するモデル。
  • 特定の都市で今後 6 時間に降る雨量(0.18 インチなど)を予測するモデル。

一般的な回帰モデルには次の 2 種類があります。

  • 線形回帰: ラベル値を特徴に最も適合する線を見つけます。
  • ロジスティック回帰: システムが通常クラス予測にマッピングする 0.0 ~ 1.0 の確率を生成します。

数値予測を出力するすべてのモデルが回帰モデルであるとは限りません。数値予測は、数値のクラス名を持つ分類モデルに過ぎないこともあります。たとえば、郵便番号を予測するモデルは、回帰モデルではなく分類モデルです。

正則化

#fundamentals

過剰適合を軽減するメカニズム。一般的な正則化のタイプには次のようなものがあります。

正則化は、モデルの複雑さに対するペナルティとして定義することもできます。

正則化は直感に反するものです。通常、正規化を増やすとトレーニング損失が増加します。これは、トレーニング損失を最小化することが目標であるため、混乱を招く可能性があります。

実は、そうではありません。目標はトレーニング損失を最小限に抑えることではありません。目標は、実際の例で優れた予測を行うことです。驚くべきことに、正則化を増やすとトレーニング損失は増加しますが、通常はモデルが実際の例でより良い予測を行うのに役立ちます。


詳細については、機械学習集中講座の過剰適合: モデルの複雑さをご覧ください。

正則化率

#fundamentals

トレーニング中の正規化の相対的な重要性を指定する数値。正則化率を上げると過剰適合は減少しますが、モデルの予測能力が低下する可能性があります。逆に、正則化率を減らすか省略すると、過剰適合が増加します。

正則化率は通常、ギリシャ文字のラムダで表されます。次の簡素化された損失式は、ラムダの影響を示しています。

minimize(loss function + λ(regularization))

ここで、正則化は、次のような正則化メカニズムです。


詳細については、機械学習集中講座の過剰適合: L2 正規化をご覧ください。

強化学習(RL)

#rl

最適なポリシーを学習するアルゴリズム ファミリー。環境とやり取りする際のリターンを最大化することを目的としています。たとえば、ほとんどのゲームの最終的な報酬は勝利です。強化学習システムは、最終的に勝利につながった過去のゲームの動きと、最終的に敗北につながった動きのシーケンスを評価することで、複雑なゲームのプレイのエキスパートになることができます。

人間からのフィードバックを用いた強化学習(RLHF)

#generativeAI
#rl

人間のレーティング エージェントからのフィードバックを使用して、モデルの回答の品質を向上させる。たとえば、RLHF メカニズムでは、モデルのレスポンスの品質を 👍? または 👎? の絵文字で評価するようユーザーに求める場合があります。システムは、そのフィードバックに基づいて今後のレスポンスを調整できます。

ReLU

#fundamentals

正規化線形ユニットの略。

リプレイ バッファ

#rl

DQN のようなアルゴリズムでは、エージェントがエクスペリエンス リプレイで使用するために状態遷移を保存するために使用するメモリ。

レプリカ

トレーニング セットまたはモデルのコピー(通常は別のマシン上)。たとえば、システムは次の戦略を使用してデータ並列処理を実装できます。

  1. 既存のモデルのレプリカを複数のマシンに配置する。
  2. トレーニング セットの異なるサブセットを各レプリカに送信します。
  3. パラメータの更新を集計します。

報告バイアス

#fairness

ユーザーがアクション、結果、プロパティについて記述する頻度が、実世界の頻度や、プロパティが個人のクラスの特徴である程度を反映していないという事実。報告バイアスは、機械学習システムが学習するデータの構成に影響する可能性があります。

たとえば、書籍では「呼吸した」よりも「笑った」という単語が一般的です。書籍コーパスから笑い声と呼吸の相対的な頻度を推定する ML モデルは、笑い声が呼吸よりも一般的であると判断する可能性があります。

詳細については、ML 集中講座の公平性: バイアスの種類をご覧ください。

「bank」が

データを有用な特徴にマッピングするプロセス。

再ランキング

#recsystems

レコメンデーション システムの最後のステージ。スコアが付けられたアイテムは、他の(通常は ML 以外の)アルゴリズムに基づいて再評価される場合があります。再ランク付けでは、スコアリングフェーズで生成されたアイテムのリストを評価し、次のようなアクションを実行します。

  • ユーザーがすでに購入したアイテムを除外する。
  • 新しいアイテムのスコアを高める。

詳細については、レコメンデーション システム コースの再ランク付けをご覧ください。

検索拡張生成(RAG)

#fundamentals

モデルのトレーニング後に取得された知識ソースに基盤を置くことで、大規模言語モデル(LLM)の出力の品質を向上させる手法。RAG は、トレーニング済みの LLM に信頼できるナレッジベースまたはドキュメントから取得した情報へのアクセス権を付与することで、LLM のレスポンスの精度を向上させます。

検索拡張生成を使用する一般的な理由は次のとおりです。

  • モデルが生成した回答の事実に基づく精度を高める。
  • モデルがトレーニングされていない知識にモデルがアクセスできるようにする。
  • モデルが使用する知識を変更する。
  • モデルがソースを引用できるようにする。

たとえば、化学アプリが PaLM API を使用して、ユーザーのクエリに関連する要約を生成するとします。アプリのバックエンドがクエリを受信すると、バックエンドは次の処理を行います。

  1. ユーザーのクエリに関連するデータを検索(「取得」)します。
  2. 関連する化学データをユーザーのクエリに追加(「拡張」)します。
  3. 追加されたデータに基づいて概要を作成するよう LLM に指示します。

リターン

#rl

強化学習では、特定のポリシーと特定の状態が与えられると、リターンは、エージェント状態からエピソードの終わりまでポリシーに従って受け取ると予想されるすべての報酬の合計です。エージェントは、報酬の獲得に必要な状態遷移に応じて報酬を割り引くことで、期待される報酬の遅延を考慮します。

したがって、割引率が γで、エピソードの終了までの報酬が r0,,rNの場合、収益の計算は次のようになります。

Return=r0+γr1+γ2r2++γN1rN1

特典

#rl

強化学習では、環境で定義されている状態アクションを実行した結果の数値です。

リッジ正則化

L2 正則化と同義。リッジ正則化という用語は純粋な統計のコンテキストでより頻繁に使用されますが、L2 正則化は ML でより頻繁に使用されます。

RNN

#seq

再帰型ニューラル ネットワークの略称。

ROC(受信者操作特性)曲線

#fundamentals
#Metric

バイナリ分類で、さまざまな分類しきい値に対する真陽性率偽陽性率のグラフ。

ROC 曲線の形状は、バイナリ分類モデルがポジティブ クラスとネガティブ クラスを分離する能力を示します。たとえば、バイナリ分類モデルがすべての負のクラスをすべての正のクラスから完全に分離しているとします。

右側に 8 つの正例、左側に 7 つの負例がある数直線。

上記のモデルの ROC 曲線は次のようになります。

ROC 曲線。X 軸は偽陽性率、Y 軸は真陽性率です。曲線は逆 L 字型です。曲線は(0.0、0.0)から始まり、(0.0、1.0)まで真上に伸びています。曲線は(0.0、1.0)から(1.0、1.0)に移動します。

一方、次の図は、負のクラスと正のクラスをまったく区別できないひどいモデルの未加工のロジスティック回帰値を示しています。

正の例と負のクラスが完全に混在している数直線。

このモデルの ROC 曲線は次のようになります。

ROC 曲線(実際には(0.0,0.0)から(1.0,1.0)までの直線)。

一方、現実世界では、ほとんどのバイナリ分類モデルは正クラスと負クラスをある程度分離しますが、通常は完全には分離しません。したがって、一般的な ROC 曲線は、次の 2 つの極端な曲線の中間に位置します。

ROC 曲線。X 軸は偽陽性率、Y 軸は真陽性率です。ROC 曲線は、コンパスの針が西から北に移動する不安定な弧を近似しています。

理論的には、ROC 曲線上で(0.0、1.0)に最も近い点が理想的な分類しきい値になります。ただし、理想的な分類しきい値の選択には、他のいくつかの現実的な問題が影響します。たとえば、偽陰性が偽陽性よりもはるかに大きな問題を引き起こす場合などです。

AUC という数値指標は、ROC 曲線を単一の浮動小数点値に要約します。

ロール プロンプト

#language
#generativeAI

生成 AI モデルのレスポンスのターゲット オーディエンスを識別するプロンプトのオプション パート。ロール プロンプトがない場合、大規模言語モデルは、質問したユーザーにとって有用な回答とそうでない回答の両方を返します。ロール プロンプトを使用すると、大規模言語モデルは、特定のターゲット ユーザーにとってより適切で有用な方法で回答できます。たとえば、次のプロンプトのロール プロンプト部分は太字になっています。

  • このドキュメントを 経済学博士号取得者向けに要約してください。
  • 潮汐の仕組みを10 歳の子どもに説明してください。
  • 2008 年の金融危機について説明します。幼児やゴールデン レトリバーに話しかけるように話す。

root

#df

分類ツリーの開始ノード(最初の条件)。ディシジョン ツリーを図で表す場合、ルートをツリーの上部に配置するのが一般的です。次に例を示します。

2 つの条件と 3 つのリーフを含むディシジョン ツリー。開始条件(x > 2)がルートです。

ルート ディレクトリ

#TensorFlow

複数のモデルの TensorFlow チェックポイント ファイルとイベント ファイルのサブディレクトリをホストするために指定するディレクトリ。

二乗平均平方根誤差(RMSE)

#fundamentals
#Metric

平均二乗誤差の平方根。

回転不変性

#image

画像分類問題では、画像の向きが変わっても画像を正しく分類できるアルゴリズムの能力。たとえば、テニスラケットが上向き、横向き、下向きの場合でも、アルゴリズムはテニスラケットを識別できます。回転不変性は必ずしも望ましいとは限りません。たとえば、上下逆さまの 9 を 9 として分類すべきではありません。

変換不変性サイズ不変性もご覧ください。

ROUGE(Recall-Oriented Understudy for Gisting Evaluation)

#language
#Metric

自動要約モデルと機械翻訳モデルを評価する指標ファミリー。ROUGE 指標は、参照テキストが ML モデルの生成テキストと重複する程度を決定します。ROUGE ファミリーの各メンバーは、重複を異なる方法で測定します。ROUGE スコアが高いほど、ROUGE スコアが低い場合よりも、参照テキストと生成テキストの類似性が高くなります。

通常、各 ROUGE ファミリー メンバーは次の指標を生成します。

  • 適合率
  • 再現率
  • F1

詳細と例については、以下をご覧ください。

ROUGE-L

#language
#Metric

ROUGE ファミリーの一員で、リファレンス テキスト生成テキスト最長共通部分列の長さに焦点を当てています。次の式は、ROUGE-L の再現率と精度を計算します。

ROUGE-L recall=longest common sequencenumber of words in the reference text
ROUGE-L precision=longest common sequencenumber of words in the generated text

F1 を使用すると、ROUGE-L の再現率と ROUGE-L の精度を 1 つの指標にまとめることができます。

ROUGE-L F1=2ROUGE-L recallROUGE-L precisionROUGE-L recall+ROUGE-L precision
次の参照テキストと生成テキストについて考えてみましょう。
カテゴリ プロデューサー テキスト
参照テキスト 人間の翻訳者 さまざまなことを理解したい。
生成された文章 ML モデル いろいろなことを学びたい。
したがって、次のコマンドを実行します。
  • 最長の共通部分は 5 文字(I want to of things)です。
  • 参照テキストの単語数は 9 です。
  • 生成されたテキストの単語数は 7 です。
したがって、次のようになります。
ROUGE-L recall=59=0.56
ROUGE-L precision=57=0.71
ROUGE-L F1=20.560.710.56+0.71=0.63

ROUGE-L は、参照テキストと生成テキストの改行を無視するため、最長共通部分列が複数の文にまたがる可能性があります。リファレンス テキストと生成テキストに複数の文が含まれている場合は、通常、ROUGE-L のバリエーションである ROUGE-Lsum の方が優れた指標です。ROUGE-Lsum は、段落内の各の最長共通部分列を特定し、それらの最長共通部分列の平均を計算します。

次の参照テキストと生成テキストについて考えてみましょう。
カテゴリ プロデューサー テキスト
参照テキスト 人間の翻訳者 火星の表面は乾燥しています。水のほとんどは地下深くに存在します。
生成された文章 ML モデル 火星の表面は乾燥しています。しかし、ほとんどの水は地下にあります。
そのため、以下のコマンドを実行します。
First sentence 2 つ目の文
最長共通シーケンス2(火星の乾燥地帯) 3(水は地下にある)
参照テキストの文の長さ 6 7
生成されるテキストの文の長さ 5 8
したがって、
recall of first sentence=26=0.33
recall of second sentence=37=0.43
ROUGE-Lsum recall=0.33+0.432=0.38
precision of first sentence=25=0.4
precision of second sentence=38=0.38
ROUGE-Lsum precision=0.4+0.382=0.39
ROUGE-Lsum F1=20.380.390.38+0.39=0.38

ROUGE-N

#language
#Metric

ROUGE ファミリー内の一連の指標。参照テキスト生成テキストの特定サイズの共有 N グラムを比較します。次に例を示します。

  • ROUGE-1 は、参照テキストと生成テキストで共有されるトークンの数を測定します。
  • ROUGE-2 は、参照テキストと生成テキストで共有される2 グラムの数を測定します。
  • ROUGE-3 は、参照テキストと生成テキストで共有される3 グラムの数を測定します。

ROUGE-N ファミリーの任意のメンバーの ROUGE-N の再現率と ROUGE-N の精度を計算するには、次の式を使用します。

ROUGE-N recall=number of matching N-gramsnumber of N-grams in the reference text
ROUGE-N precision=number of matching N-gramsnumber of N-grams in the generated text

F1 を使用して、ROUGE-N の再現率と ROUGE-N の精度を 1 つの指標にまとめることができます。

ROUGE-N F1=2ROUGE-N recallROUGE-N precisionROUGE-N recall+ROUGE-N precision
ROUGE-2 を使用して、人間の翻訳者と比較して ML モデルの翻訳の有効性を測定するとします。
カテゴリ プロデューサー テキスト 2 文字語
参照テキスト 人間の翻訳者 さまざまなことを理解したい。 知りたい、理解、理解したい 幅広い、多様で多様なもの
生成された文章 ML モデル いろいろなことを学びたい。 たくさん、たくさん、学びたい
したがって、次のコマンドを実行します。
  • 一致する 2 グラムの数は 3 つ(I wantwant toof things)です。
  • 参照テキスト内の 2 グラムの数は 8 です。
  • 生成されたテキスト内の 2 グラムの数は 6 です。
したがって、次のようになります。
ROUGE-2 recall=38=0.375
ROUGE-2 precision=36=0.5
ROUGE-2 F1=20.3750.50.375+0.5=0.43

ROUGE-S

#language
#Metric

ROUGE-N の寛容な形式で、スキップグラムのマッチングを可能にします。つまり、ROUGE-N は完全に一致するN グラムのみをカウントしますが、ROUGE-S は 1 つ以上の単語で区切られた N グラムもカウントします。たとえば、次の点を考えます。

ROUGE-N を計算する際、2 グラムの「白い雲」は「白い雲が渦巻く」と一致しません。ただし、ROUGE-S の計算では、白い雲白い雲が渦巻いていると一致します。

決定係数

#Metric

個々の特徴または特徴セットがラベルのばらつきにどの程度影響しているかを示す回帰指標。R 2 は 0 ~ 1 の値で、次のように解釈できます。

  • R 2 が 0 の場合、ラベルの変動は特徴セットによるものではないことを意味します。
  • R 2 が 1 の場合、ラベルのすべての変動は特徴セットによるものです。
  • 0 ~ 1 の R 2 は、特定の特徴量または特徴量セットからラベルの変化を予測できる程度を示します。たとえば、R 2 が 0.10 の場合、ラベルの分散の 10% が特徴セットによるものであり、R 2 が 0.20 の場合、20% が特徴セットによるものであることを意味します。

R 2 乗は、モデルが予測した値と正解間のピアソン相関係数の 2 乗です。

S

サンプリング バイアス

#fairness

選択バイアスをご覧ください。

置換サンプリング

#df

同じアイテムを複数回選択できる候補アイテムのセットからアイテムを選択する方法。「置換あり」とは、選択のたびに、選択したアイテムが候補アイテムのプールに返されることを意味します。逆の方法である置換なしのサンプリングでは、候補アイテムを選択できるのは 1 回だけです。

たとえば、次のフルーツセットについて考えてみましょう。

fruit = {kiwi, apple, pear, fig, cherry, lime, mango}

システムが最初のアイテムとして fig をランダムに選択したとします。置換ありサンプリングを使用する場合、システムは次のセットから 2 番目のアイテムを選択します。

fruit = {kiwi, apple, pear, fig, cherry, lime, mango}

はい。これは以前と同じセットであるため、システムは fig を再度選択する可能性があります。

入れ替えなしのサンプリングを使用する場合、一度選択したサンプルを再度選択することはできません。たとえば、システムが最初のサンプルとして fig をランダムに選択した場合、fig を再度選択することはできません。そのため、システムは次の(削減された)セットから 2 番目のサンプルを選択します。

fruit = {kiwi, apple, pear, cherry, lime, mango}

置換ありサンプリングの「置換」という単語は、多くの人を混乱させます。英語の「replacement」は「substitution」を意味します。ただし、入れ替えサンプリングでは、実際には「何かを元に戻す」という意味のフランス語の入れ替えの定義が使用されます。

英語の「replacement」はフランス語の「remplacement」に翻訳されます。


SavedModel

#TensorFlow

TensorFlow モデルの保存と復元に推奨される形式。SavedModel は、言語に依存しない復元可能なシリアル化形式です。これにより、高レベルのシステムとツールで TensorFlow モデルを生成、使用、変換できます。

詳細については、TensorFlow プログラマ ガイドの保存と復元のセクションをご覧ください。

割安便

#TensorFlow

モデルのチェックポイントの保存を担当する TensorFlow オブジェクト

スカラー

ランク 0 のテンソルとして表せる単一の数値または単一の文字列。たとえば、次のコード行はそれぞれ TensorFlow で 1 つのスカラーを作成します。

breed = tf.Variable("poodle", tf.string)
temperature = tf.Variable(27, tf.int16)
precision = tf.Variable(0.982375101275, tf.float64)

スケーリング

ラベルの範囲、特徴値、またはその両方をシフトする数学的変換または手法。一部のスケーリングは、正規化などの変換に非常に役立ちます。

ML で役立つ一般的なスケーリングには、次のようなものがあります。

  • リニア スケーリング: 通常は減算と除算を組み合わせて、元の値を -1 ~+1 または 0 ~ 1 の間の値に置き換えます。
  • 対数スケーリング: 元の値をその対数に置き換えます。
  • Z スコア正規化: 元の値を、その特徴量の平均からの標準偏差の数を表す浮動小数点値に置き換えます。

scikit-learn

人気のあるオープンソースの ML プラットフォーム。scikit-learn.org をご覧ください。

得点

#recsystems
#Metric

おすすめシステムの一部で、候補の生成フェーズで生成された各アイテムの値またはランキングを提供します。

選択バイアス

#fairness

データで観測されたサンプルと観測されていないサンプルの間に系統的な差異を生む選択プロセスが原因で、サンプリングされたデータから得られた結論に誤りがある。選択バイアスには次のようなものがあります。

  • カバレッジ バイアス: データセットに表される母集団が、機械学習モデルが予測を行う母集団と一致していません。
  • サンプリング バイアス: 対象グループからランダムにデータが収集されていない。
  • 回答率の偏り参加率の偏りとも呼ばれる): 特定のグループのユーザーは、他のグループのユーザーとは異なる割合でアンケートをオプトアウトします。

たとえば、映画の楽しさを予測する ML モデルを作成しているとします。トレーニング データを収集するために、映画を上映している映画館の最前列の全員にアンケートを配布します。一見、これはデータセットを収集する合理的な方法のように思えますが、この形式のデータ収集では、次のような選択バイアスが生じる可能性があります。

  • カバレッジのバイアス: 映画を視聴することを選択した集団からサンプリングすると、映画に対してそれほど関心を示していないユーザーにモデルの予測を一般化できない可能性があります。
  • サンプリング バイアス: 対象母集団(映画館の全観客)からランダムにサンプリングするのではなく、最前列の観客のみをサンプリングした。最前列に座っている人は、他の列の人に比べて映画に興味を持っている可能性があります。
  • 回答の偏り: 一般的に、強い意見を持つ人は、意見が弱い人に比べて、任意のアンケートに回答する傾向があります。映画に関するアンケートは任意であるため、回答は正規分布(ベル曲線)よりも二峰分布になる傾向があります。

セルフアテンション(セルフアテンションレイヤ)

#language

エンベディングのシーケンス(トークン エンベディングなど)を別のエンベディング シーケンスに変換するニューラル ネットワーク レイヤ。出力シーケンス内の各エンベディングは、アテンション メカニズムを通じて入力シーケンスの要素から情報を統合することで構築されます。

セルフアテンションの「セルフ」は、他のコンテキストではなく、それ自体に注目するシーケンスを指します。自己注意は Transformer の主要な構成要素の一つであり、「クエリ」、「キー」、「値」などの辞書ルックアップ用語を使用します。

セルフアテンション レイヤは、単語ごとに 1 つずつ、入力表現のシーケンスから始まります。単語の入力表現は、単純なエンベディングにできます。入力シーケンス内の各単語について、ネットワークは単語のシーケンス全体のすべての要素に対する単語の関連性をスコアリングします。関連性スコアは、単語の最終表現に他の単語の表現がどの程度組み込まれているかを決定します。

たとえば、次の文について考えてみましょう。

動物は疲れていたため、道路を渡らなかった。

次の図(Transformer: A Novel Neural Network Architecture for Language Understanding より)は、代名詞 it に対するセルフ アテンション レイヤのアテンション パターンを示しています。各線の濃さは、各単語が表現に貢献する度合いを示しています。

次の文が 2 回表示されます。動物は疲れていたため、道路を渡りませんでした。線は、1 つの文の代名詞 it を、別の文の 5 つのトークン(The、animal、street、it、the period)に接続しています。代名詞 it と単語 animal の間の線が最も強い。

セルフアテンション レイヤは、「それ」に関連する単語をハイライト表示します。この場合、アテンション レイヤは、it が参照する可能性のある単語をハイライト表示し、animal に最も高い重みを割り当てることを学習しています。

n 個のトークンのシーケンスの場合、セルフ アテンションはエンベディングのシーケンスを n 回変換します(シーケンス内の各位置で 1 回)。

アテンションマルチヘッドセルフアテンションも参照してください。

セルフ教師あり学習

ラベルなしのサンプルからサロゲート ラベルを作成して、教師なし機械学習の問題を教師あり機械学習の問題に変換する一連の手法。

BERT などの一部の Transformer ベースのモデルは、自己教師あり学習を使用します。

自己教師ありトレーニングは、半教師あり学習のアプローチです。

セルフトレーニング

セルフ トレーニング学習のバリエーションで、次のすべての条件が満たされている場合に特に便利です。

セルフトレーニングは、モデルの改善が停止するまで、次の 2 つのステップを反復処理します。

  1. 教師あり ML を使用して、ラベル付きサンプルでモデルをトレーニングします。
  2. ステップ 1 で作成したモデルを使用して、ラベルのないサンプルの予測(ラベル)を生成し、信頼度が高いサンプルを、予測されたラベルを持つラベル付きサンプルに移動します。

ステップ 2 の反復処理ごとに、ステップ 1 でトレーニングするラベル付きの例が追加されます。

半教師あり学習

一部のトレーニング例にラベルが付いていて、他の例にラベルが付いていないデータでモデルをトレーニングする。半教師あり学習の 1 つの手法は、ラベルのないサンプルのラベルを推定し、推定されたラベルでトレーニングして新しいモデルを作成することです。ラベルの取得に費用がかかるものの、ラベルなしのサンプルが豊富な場合は、半教師あり学習が役立ちます。

セルフ トレーニングは、半教師あり学習の 1 つの手法です。

センシティブ属性

#fairness
法的、倫理的、社会的、個人的な理由で特別な配慮がなされる人間の属性。

感情分析

#language

統計アルゴリズムまたは機械学習アルゴリズムを使用して、サービス、プロダクト、組織、トピックに対するグループの全体的な態度(ポジティブまたはネガティブ)を判断します。たとえば、自然言語理解を使用して、大学のコースからのテキスト フィードバックに対して感情分析を実行し、学生がコースを好むか嫌うかを判断できます。

詳細については、テキスト分類ガイドをご覧ください。

シーケンス モデル

#seq

入力に順序依存関係があるモデル。たとえば、以前に視聴した動画のシーケンスから、次に視聴する動画を予測します。

シーケンスからシーケンスへのタスク

#language

トークンの入力シーケンスをトークンの出力シーケンスに変換するタスク。たとえば、一般的な 2 種類のシーケンス対シーケンス タスクは次のとおりです。

  • 翻訳者:
    • 入力シーケンスの例: 「愛してる」
    • 出力シーケンスの例: 「Je t'aime.」
  • 質問応答:
    • サンプル入力シーケンス: 「ニューヨーク市で車は必要ですか?」
    • 出力シーケンスの例: 「いいえ。車は家に置いてください。」

サービングです

トレーニング済みモデルを、オンライン推論またはオフライン推論を通じて予測を提供できるようにするプロセス。

形状(テンソル)

テンソルの各ディメンションの要素数。シェイプは整数のリストとして表されます。たとえば、次の 2 次元テンソルの形状は [3,4] です。

[[5, 7, 6, 4],
 [2, 9, 4, 8],
 [3, 6, 5, 1]]

TensorFlow では行優先(C スタイル)形式を使用してディメンションの順序を表します。そのため、TensorFlow のシェイプは [4,3] ではなく [3,4] です。つまり、2 次元の TensorFlow テンソルでは、形状は [行数列数] です。

静的シェイプは、コンパイル時に既知のテンサー シェイプです。

動的シェイプはコンパイル時に不明であるため、ランタイム データに依存します。このテンソルは、[3, ?] のように TensorFlow のプレースホルダ ディメンションで表すことができます。

シャード

#TensorFlow
#GoogleCloud

トレーニング セットまたはモデルの論理的な分割。通常、一部のプロセスは、サンプルまたはパラメータを(通常は)同じサイズのチャンクに分割してシャードを作成します。各シャードは異なるマシンに割り当てられます。

モデルのシャーディングはモデルの並列処理と呼ばれ、データのシャーディングはデータの並列処理と呼ばれます。

縮み

#df

勾配ブーストハイパーパラメータ過剰適合を制御します。勾配ブーストの縮小は、勾配降下学習率に似ています。収縮率は 0.0 ~ 1.0 の小数値です。収縮値が小さいほど、収縮値が大きい場合よりも過剰適合が軽減されます。

シグモイド関数

#fundamentals

入力値を制限付きの範囲(通常は 0 ~ 1 または -1 ~+1)に「圧縮」する数学関数。つまり、任意の数値(2、100 万、-10 億など)をシグモイドに渡しても、出力は制約付きの範囲内に収まります。シグモイド活性化関数のグラフは次のようになります。

2 次元の曲線プロット。X 値は -∞ から +∞ の範囲にまたがり、Y 値はほぼ 0 からほぼ 1 の範囲にまたがっています。x が 0 の場合、y は 0.5 です。曲線の傾斜は常に正で、0,0.5 で最大になり、x の絶対値が増加するにつれて徐々に減少します。

シグモイド関数は、次のような機械学習で使用されます。

入力数 x に対するシグモイド関数の式は次のとおりです。

sigmoid(x)=11+ex

ML では、x は通常、重み付き和です。


類似性測度

#clustering
#Metric

クラスタリング アルゴリズムでは、2 つのサンプルの類似度を判断するために使用される指標。

単一プログラム / 複数データ(SPMD)

同じ計算を異なるデバイス上の異なる入力データで並列に実行する並列化手法。SPMD の目標は、より迅速に結果を得ることです。これは、最も一般的な並列プログラミング スタイルです。

サイズ不変性

#image

画像分類問題では、画像のサイズが変化しても画像を正常に分類できるアルゴリズムの能力。たとえば、200 万ピクセルでも 20 万ピクセルでも、アルゴリズムは猫を識別できます。最適な画像分類アルゴリズムでも、サイズの不変性には実用的な限界があることに注意してください。たとえば、アルゴリズム(または人間)が 20 ピクセルの猫の画像を正しく分類することはほとんどありません。

移動不変性回転不変性もご覧ください。

詳細については、クラスタリング コースをご覧ください。

スケッチ

#clustering

教師なし機械学習では、サンプルに対して予備的な類似性分析を行うアルゴリズムのカテゴリです。スケッチ アルゴリズムは、 局所感度ハッシュ関数を使用して、類似する可能性が高いポイントを特定し、バケットにグループ化します。

スケッチを使用すると、大規模なデータセットでの類似性計算に必要な計算量を削減できます。データセット内のすべてのサンプルペアの類似性を計算するのではなく、各バケット内の各ポイントペアの類似性のみ計算します。

skip-gram

#language

元のコンテキストから単語を省略(「スキップ」)する可能性があるn グラム。つまり、N 個の単語が元々隣接していない可能性があります。より正確には、「k スキップ n グラム」は、最大 k 個の単語がスキップされている n グラムです。

たとえば、「the quick brown fox」には次の 2 グラムが考えられます。

  • 「the quick」
  • "quick brown"
  • "brown fox"

「1 スキップ 2 グラム」は、間に最大 1 つの単語が入る単語のペアです。したがって、「the quick brown fox」には、次の 1 スキップ 2 グラムがあります。

  • "the brown"
  • "quick fox"

また、2 つの単語がスキップされる可能性があるため、すべての 2 グラムは 1 スキップ 2 グラムでもあります。

スキップグラムは、単語の周囲のコンテキストをより深く理解するのに役立ちます。この例では、「fox」は 1 スキップ 2 グラムのセットで「quick」に直接関連付けられていますが、2 グラムのセットで直接関連付けられていません。

スキップグラムは、単語エンベディング モデルのトレーニングに役立ちます。

Softmax

#fundamentals

マルチクラス分類モデルで、考えられる各クラスの確率を決定する関数。確率の合計は正確に 1.0 になります。たとえば、次の表は、ソフトマックスがさまざまな確率を分散する方法を示しています。

画像は... 確率
.85
.13
.02

ソフトマックスは、フル ソフトマックスとも呼ばれます。

候補サンプリングとは対照的です。

ソフトマックスの式は次のとおりです。

σi=ezij=1j=Kezj
次のようにします。
  • σi は出力ベクトルです。出力ベクトルの各要素は、この要素の確率を指定します。出力ベクトルのすべての要素の合計は 1.0 です。出力ベクトルには、入力ベクトル z と同じ数の要素が含まれます。
  • z は入力ベクトルです。入力ベクトルの各要素には浮動小数点値が含まれています。
  • K は入力ベクトル(および出力ベクトル)の要素数です。

たとえば、入力ベクトルが次のようになっているとします。

[1.2, 2.5, 1.8]

したがって、ソフトマックスは分母を次のように計算します。

denominator=e1.2+e2.5+e1.8=21.552

したがって、各要素のソフトマックス確率は次のようになります。

σ1=e1.221.552=0.154
σ2=e2.521.552=0.565
σ1=e1.821.552=0.281

したがって、出力ベクトルは次のようになります。

σ=[0.154,0.565,0.281]

σ の 3 つの要素の合計は 1.0 です。さて、


詳細については、ML 集中講座のニューラル ネットワーク: マルチクラス分類をご覧ください。

ソフト プロンプトのチューニング

#language
#generativeAI

リソースを大量に消費するファインチューニングを行わずに、特定のタスク用に大規模言語モデルをチューニングする手法。ソフト プロンプト チューニングでは、モデル内のすべての重みを再トレーニングするのではなく、同じ目標を達成するためにプロンプトを自動的に調整します。

テキスト プロンプトがある場合、通常、ソフト プロンプト チューニングでは、プロンプトに追加のトークン エンベディングを追加し、バックプロパゲーションを使用して入力を最適化します。

「ハード」なプロンプトには、トークン エンベディングではなく実際のトークンが含まれます。

スパースな特徴

#language
#fundamentals

値の大部分がゼロまたは空の特徴量。たとえば、1 つの 1 値と 100 万個の 0 値を含む特徴はスパースです。一方、密な特徴量の値は、ゼロまたは空ではないものがほとんどです。

機械学習では、驚くほど多くの特徴量がスパースな特徴量です。カテゴリ特徴は通常、スパースな特徴です。たとえば、森林に生息する 300 種類の樹木のうち、1 つのサンプルでカエデのみを特定できる場合があります。または、動画ライブラリ内の数百万もの動画のうち、1 つの例で「カサブランカ」と識別される場合があります。

モデルでは、通常、スパース特徴をワンホット エンコーディングで表します。ワンホット エンコーディングが大きい場合は、ワンホット エンコーディングの上にエンベディング レイヤを配置して効率を高めることができます。

スパース表現

#language
#fundamentals

ゼロ以外の要素の位置のみをスパース特徴に保存する。

たとえば、species という名前のカテゴリ特徴が、特定の森林内の 36 種類の樹木を識別するとします。さらに、各が 1 つの種のみを識別すると仮定します。

1 ホット ベクトルを使用して、各例の樹木の種類を表すことができます。ワンホット ベクトルには、1 つの 1(その例の特定の樹木種を表す)と 35 個の 0(その例にない 35 個の樹木種を表す)が含まれます。したがって、maple の 1 ホット表現は次のようになります。

位置 0 ~ 23 が値 0、位置 24 が値 1、位置 25 ~ 35 が値 0 のベクトル。

または、スパース表現では、特定の種の位置のみを特定します。maple が 24 番目の位置にある場合、maple のスパース表現は次のようになります。

24

スパース表現は、1 ホット表現よりもはるかにコンパクトです。

モデル内の各例で、英語の文の単語(単語の順序は含まない)を表す必要があるとします。英語は約 17 万語で構成されているため、英語は約 17 万個の要素を持つカテゴリ型特徴量です。ほとんどの英語の文では、17 万語のうちごく一部の単語しか使用されないため、1 つの例の単語セットは、ほとんど確実にスパース データになります。

次の文について考えてみましょう。

My dog is a great dog

この文の単語を表すには、ワンホット ベクトルのバリエーションを使用できます。このバリアントでは、ベクトルの複数のセルにゼロ以外の値を含めることができます。さらに、このバリエーションでは、セルに 1 以外の整数を含めることができます。「my」、「is」、「a」、「great」という単語は文中に 1 回しか表示されませんが、「dog」という単語は 2 回表示されています。このワンホット ベクトルのバリエーションを使用してこの文の単語を表すと、次の 170,000 要素のベクトルが得られます。

170,000 個の整数のベクトル。数値 1 はベクトル位置 0、45770、58906、91520 にあります。2 は 26,100 番目の位置にあります。
          残りの 169,996 個の位置はゼロです。

同じ文のスパース表現は次のようになります。

0: 1
26100: 2
45770: 1
58906: 1
91520: 1

スパース表現自体はスパース ベクトルではないため、「スパース表現」という用語は多くの人を混乱させます。むしろ、スパース表現は実際にはスパース ベクトルの密な表現です。同義語の「インデックス表現」は、「スパース表現」よりも明確です。


詳細については、機械学習集中講座のカテゴリデータの操作をご覧ください。

スパース ベクトル

#fundamentals

値のほとんどがゼロのベクトル。スパース特徴量スパース性もご覧ください。

スパース性

#Metric

ベクトルまたはマトリックスでゼロ(または null)に設定された要素の数を、そのベクトルまたはマトリックス内のエントリの合計数で割った値。たとえば、98 個のセルにゼロが含まれている 100 要素の行列について考えてみましょう。スパース性の計算は次のとおりです。

sparsity=98100=0.98

特徴量のスパース性は特徴ベクトルのスパース性を指し、モデルのスパース性はモデル重みのスパース性を指します。

空間プーリング

#image

プーリングをご覧ください。

分割

#df

分岐図では、条件の別名。

分割バー

#df

デシジョン ツリーのトレーニング中に、各ノードで最適な条件を見つけるルーティン(およびアルゴリズム)。

SPMD

単一プログラム / 複数のデータの略語。

二乗ヒンジ損失

#Metric

ヒンジ損失の 2 乗。二乗ヒンジ損失は、通常のヒンジ損失よりも外れ値を厳しくペナルティにします。

二乗損失

#fundamentals
#Metric

L2 損失の類義語。

段階的なトレーニング

#language

一連の個別のステージでモデルをトレーニングする手法。目標は、トレーニング プロセスの高速化またはモデル品質の向上です。

以下に、段階的なスタッキング アプローチの図を示します。

  • ステージ 1 には 3 つの隠れ層、ステージ 2 には 6 つの隠れ層、ステージ 3 には 12 個の隠れ層があります。
  • ステージ 2 は、ステージ 1 の 3 つの隠れ層で学習された重みを使用してトレーニングを開始します。ステージ 3 は、ステージ 2 の 6 つの隠れ層で学習された重みを使用してトレーニングを開始します。

ステージ 1、ステージ 2、ステージ 3 の 3 つのステージ。
          各ステージには異なる数のレイヤが含まれています。ステージ 1 には 3 つのレイヤ、ステージ 2 には 6 つのレイヤ、ステージ 3 には 12 個のレイヤが含まれています。ステージ 1 の 3 つのレイヤがステージ 2 の最初の 3 つのレイヤになります。同様に、ステージ 2 の 6 つのレイヤは、ステージ 3 の最初の 6 つのレイヤになります。

パイプライン処理もご覧ください。

state

#rl

強化学習では、環境の現在の構成を表すパラメータ値。エージェントアクションの選択に使用します。

状態アクション価値関数

#rl

Q 関数の類義語。

static

#fundamentals

継続的ではなく、1 回だけ行う作業。静的とオフラインという用語は同義語です。機械学習で静的オフラインの一般的な用途は次のとおりです。

  • 静的モデル(またはオフライン モデル)は、一度トレーニングしてからしばらく使用するモデルです。
  • 静的トレーニング(またはオフライン トレーニング)は、静的モデルをトレーニングするプロセスです。
  • 静的推論(またはオフライン推論)は、モデルが一度にバッチの予測を生成するプロセスです。

動的とは対照的です。

静的推論

#fundamentals

オフライン推論と同義。

定常性

#fundamentals

1 つ以上のディメンション(通常は時間)で値が変化しない特徴。たとえば、2021 年と 2023 年の値がほぼ同じ特徴は、定常性を示しています。

現実世界では、ほとんどの特徴量が定常性を示すことはありません。安定性と同義の特徴(海面など)であっても、時間とともに変化します。

非定常性とは対照的です。

解説

1 つのバッチのフォワード パスとバックワード パス。

順方向パスと逆方向パスの詳細については、バックプロパゲーションをご覧ください。

ステップサイズ

学習率と同義。

確率的勾配降下法(SGD)

#fundamentals

バッチサイズが 1 の勾配降下法アルゴリズム。つまり、Stochastic Gradient Descent は、トレーニング セットから均一にランダムに選択された単一のサンプルでトレーニングします。

詳細については、機械学習集中講座の線形回帰: ハイパーパラメータをご覧ください。

ストライド

#image

畳み込み演算またはプーリングでは、次の一連の入力スライスの各ディメンションの差分。たとえば、次のアニメーションは、畳み込みオペレーション中のストライド(1,1)を示しています。したがって、次の入力スライスは、前の入力スライスの 1 つ右の位置から開始されます。オペレーションが右端に達すると、次のスライスは左端に移動し、1 つの位置下に移動します。

入力 5x5 マトリックスと 3x3 畳み込みフィルタ。ストライドが(1,1)であるため、畳み込みフィルタが 9 回適用されます。最初の畳み込みスライスは、入力行列の左上の 3x3 サブ行列を評価します。2 つ目のスライスは、上部中央の 3x3 サブマトリックスを評価します。3 つ目の畳み込みスライスは、右上の 3x3 サブマトリックスを評価します。4 番目のスライスは、左中央の 3x3 サブマトリックスを評価します。5 番目のスライスは、中央の 3x3 サブマトリックスを評価します。6 番目のスライスは、右中央の 3x3 サブマトリックスを評価します。7 番目のスライスは、左下の 3x3 サブマトリックスを評価します。8 番目のスライスは、下中央の 3x3 サブマトリックスを評価します。9 番目のスライスは、右下の 3x3 サブマトリックスを評価します。

上記の例は 2 次元のストライドを示しています。入力マトリックスが 3 次元の場合、ストライドも 3 次元になります。

構造リスク最小化(SRM)

次の 2 つの目標をバランスよく達成するアルゴリズム:

  • 最も予測力の高いモデル(損失が最も低いモデルなど)を構築する必要がある。
  • モデルをできるだけシンプルに保つ必要がある(強力な正規化など)。

たとえば、トレーニング セットで損失と正則化を最小化する関数は、構造リスク最小化アルゴリズムです。

経験損失最小化とは対照的です。

サブサンプリング

#image

プーリングをご覧ください。

サブワード トークン

#language

言語モデルでは、単語の部分文字列(単語全体の場合もあります)であるトークン

たとえば、「itemize」という単語は、「item」(語根)と「ize」(接尾辞)に分割され、それぞれが独自のトークンで表されます。あまり使用されていない単語をサブワードと呼ばれるこのような部分に分割することで、言語モデルは接頭辞や接尾辞など、単語のより一般的な構成要素を操作できます。

逆に、「going」などの一般的な単語は分割されず、単一のトークンで表される場合があります。

概要

#TensorFlow

TensorFlow では、特定のステップで計算された値または値のセット。通常、トレーニング中のモデル指標の追跡に使用されます。

教師あり ML

#fundamentals

特徴とそれに対応するラベルからモデルをトレーニングします。教師あり機械学習は、一連の質問とそれに対応する回答を学習して、ある分野を学習するようなものです。質問と回答のマッピングを習得した生徒は、同じトピックに関する新しい(これまでにない)質問に回答できるようになります。

教師なし機械学習と比較する。

詳細については、ML の概要コースの教師あり学習をご覧ください。

合成特徴

#fundamentals

入力特徴には存在しないが、1 つ以上の入力特徴から組み立てられた特徴。合成特徴を作成する方法は次のとおりです。

  • 連続特徴を範囲ビンにバケット化します。
  • 特徴クロスの作成。
  • 1 つの特徴値を他の特徴値またはそれ自体で乗算(または除算)する。たとえば、ab が入力特徴の場合、合成特徴の例を次に示します。
    • ab
    • a2
  • 超越関数を特徴値に適用する。たとえば、c が入力特徴の場合、合成特徴の例を次に示します。
    • sin(c)
    • ln(c)

正規化またはスケーリングのみによって作成された特徴量は、合成特徴量と見なされません。

T

T5

#language

2020 年に Google AI によって導入されたテキストツーテキストの転移学習 モデル。T5 は、Transformer アーキテクチャに基づくエンコーダデコーダモデルで、非常に大規模なデータセットでトレーニングされています。テキストの生成、言語の翻訳、会話形式での質問への回答など、さまざまな自然言語処理タスクに効果的です。

T5 という名前は、「Text-to-Text Transfer Transformer」の 5 つの T に由来しています。

T5X

#language

大規模な自然言語処理(NLP)モデルの構築とトレーニングを目的としたオープンソースのML フレームワーク。T5 は、T5X コードベース(JAXFlax で構築)で実装されています。

表形式の Q 学習

#rl

強化学習では、テーブルを使用して状態アクションの組み合わせごとにQ 関数を保存することで、Q 学習を実装します。

ターゲット

ラベルと同義。

ターゲット ネットワーク

#rl

Deep Q-learning では、メインのニューラル ネットワークの安定した近似であるニューラル ネットワーク。メインのニューラル ネットワークは、Q 関数またはポリシーを実装します。次に、ターゲット ネットワークによって予測された Q 値でメイン ネットワークをトレーニングできます。したがって、メイン ネットワークが自身で予測した Q 値でトレーニングするときに発生するフィードバック ループを防ぐことができます。このフィードバックを回避することで、トレーニングの安定性が向上します。

タスク

機械学習の手法を使用して解決できる問題(次に例を示します)。

温度

#language
#image
#generativeAI

モデルの出力のランダム性の度合いを制御するハイパーパラメータ。温度が高いほど、出力のランダム性が高まり、温度が低いほど、出力のランダム性が低くなります。

最適な温度の選択は、特定のアプリケーションとモデルの出力の優先プロパティによって異なります。たとえば、クリエイティブな出力を生成するアプリケーションを作成する場合は、温度を上げます。逆に、画像やテキストを分類するモデルを作成する場合は、モデルの精度と一貫性を高めるために温度を下げる必要があります。

Temperature は、softmax と併用されることがよくあります。

時系列データ

異なる時点で記録されたデータ。たとえば、1 年の各日に記録された冬用コートの販売数は時系列データです。

Tensor

#TensorFlow

TensorFlow プログラムの主なデータ構造。テンソルは N 次元(N は非常に大きい場合があります)のデータ構造です。最も一般的なのはスカラー、ベクトル、行列です。テンソルの要素には、整数値、浮動小数点値、文字列値を格納できます。

TensorBoard

#TensorFlow

1 つ以上の TensorFlow プログラムの実行中に保存されたサマリーを表示するダッシュボード。

TensorFlow

#TensorFlow

大規模な分散機械学習プラットフォーム。この用語は、データフロー グラフでの一般的な計算をサポートする TensorFlow スタック内のベース API レイヤにも使用されます。

TensorFlow は主に ML に使用されますが、データフロー グラフを使用した数値計算を必要とする ML 以外のタスクにも使用できます。

TensorFlow Playground

#TensorFlow

さまざまなハイパーパラメータがモデル(主にニューラル ネットワーク)のトレーニングにどのように影響するかを可視化するプログラム。 http://playground.tensorflow.org にアクセスして、TensorFlow Playground を試します。

TensorFlow Serving

#TensorFlow

トレーニング済みモデルを本番環境にデプロイするためのプラットフォーム。

TPU(Tensor Processing Unit)

#TensorFlow
#GoogleCloud

機械学習ワークロードのパフォーマンスを最適化するアプリケーション固有の集積回路(ASIC)。これらの ASIC は、TPU デバイスに複数の TPU チップとしてデプロイされます。

テンソルの階数

#TensorFlow

階数(テンソル)をご覧ください。

テンソルの形状

#TensorFlow

テンソルがさまざまなディメンションに含む要素数。たとえば、[5, 10] テンソルの形状は、1 つのディメンションでは 5、もう 1 つのディメンションでは 10 です。

テンソルのサイズ

#TensorFlow

テンソルに含まれるスカラーの合計数。たとえば、[5, 10] テンソルのサイズは 50 です。

TensorStore

大規模な多次元配列を効率的に読み書きするためのライブラリ

終了条件

#rl

強化学習では、エージェントが特定の状態に達したときや、状態遷移のしきい値を超えたときなど、エピソードが終了するタイミングを決定する条件。たとえば、オセロでは、プレイヤーが連続する 3 つのマスにマークを付けるか、すべてのマスにマークを付けると、エピソードが終了します。

test

#df

分岐図では、条件の別名。

テスト損失

#fundamentals
#Metric

テストセットに対するモデルの損失を表す指標。通常、モデルを構築する際は、テスト損失を最小限に抑えようとします。これは、低いテスト損失は、低いトレーニング損失や低い検証損失よりも強い品質シグナルであるためです。

テスト損失とトレーニング損失または検証損失の差が大きい場合、正則化率を増やす必要があることを示唆していることがあります。

テストセット

トレーニング済みのモデルをテストするために予約されたデータセットのサブセット。

従来、データセット内の例は次の 3 つのサブセットに分割します。

データセット内の各例は、上記のサブセットの 1 つにのみ属している必要があります。たとえば、1 つのサンプルがトレーニング セットとテストセットの両方に属している場合、

トレーニング セットと検証セットはどちらもモデルのトレーニングに密接に関連しています。テストセットはトレーニングに間接的にのみ関連付けられているため、テスト損失は、トレーニング損失検証損失よりもバイアスが少なく、質の高い指標です。

詳細については、ML 集中講座のデータセット: 元のデータセットを分割するをご覧ください。

テキスト範囲

#language

テキスト文字列の特定のサブセクションに関連付けられた配列インデックス範囲。たとえば、Python 文字列 s="Be good now" の単語 good は、テキスト範囲 3 ~ 6 を占有します。

tf.Example

#TensorFlow

機械学習モデルのトレーニングまたは推論の入力データを記述するための標準の プロトコル バッファ

tf.keras

#TensorFlow

TensorFlow に統合された Keras の実装。

しきい値(ディシジョン ツリーの場合)

#df

軸に沿った条件では、特徴が比較される値。たとえば、次の条件のしきい値は 75 です。

grade >= 75

詳細については、決定木コースの数値特徴量を使用したバイナリ分類の Exact スプリッタをご覧ください。

時系列分析

#clustering

時系列データを分析する機械学習と統計のサブフィールド。多くの種類の ML 問題では、分類、クラスタリング、予測、異常検出などの時系列分析が必要です。たとえば、時系列分析を使用して、過去の販売データに基づいて冬用コートの将来の販売を月単位で予測できます。

タイムステップ

#seq

再帰型ニューラル ネットワーク内の 1 つの「展開済み」セル。たとえば、次の図は 3 つのタイムステップ(下付き添え字 t-1、t、t+1 でラベル付け)を示しています。

回帰型ニューラル ネットワークの 3 つのタイムステップ。最初のタイムステップの出力が 2 番目のタイムステップの入力になります。2 番目のタイムステップの出力が 3 番目のタイムステップの入力になります。

token

#language

言語モデルでは、モデルがトレーニングと予測を行う場合の原子単位です。トークンは通常、次のいずれかです。

  • 単語 - たとえば、「犬は猫が好き」というフレーズは、「犬」、「は」、「猫」の 3 つの単語トークンで構成されています。
  • 文字 - たとえば、「自転車 魚」というフレーズは 9 個の文字トークンで構成されています。(空白はトークンの 1 つとしてカウントされます)。
  • サブワード - 単一の単語が単一のトークンまたは複数のトークンになる場合があります。サブワードは、ルートワード、接頭辞、接尾辞で構成されます。たとえば、サブワードをトークンとして使用する言語モデルでは、「dogs」という単語を 2 つのトークン(ルート単語「dog」と複数形接尾辞「s」)と見なします。同じ言語モデルは、単一の単語「taller」を 2 つのサブワード(ルート単語「tall」と接尾辞「er」)と見なす場合があります。

言語モデル以外のドメインでは、トークンは他の種類の原子単位を表すことができます。たとえば、コンピュータ ビジョンでは、トークンは画像のサブセットとなる場合があります。

詳細については、ML 集中講座の大規模言語モデルをご覧ください。

top-k 精度

#language
#Metric

生成されたリストの最初の k 個の位置に「ターゲット ラベル」が出現する割合。リストは、パーソナライズされたおすすめや、ソフトマックスで並べ替えられたアイテムのリストにできます。

Top-k 精度は、k での精度とも呼ばれます。

Softmax を使用して木の葉の写真に基づいて木の確率を特定する機械学習システムについて考えてみましょう。次の表に、5 つの入力ツリー画像から生成された出力リストを示します。各行には、ターゲット ラベルと最も可能性の高い 5 つのツリーが含まれます。たとえば、ターゲット ラベルが「maple」の場合、機械学習モデルは「elm」を最も可能性の高い木として識別し、「oak」を 2 番目に可能性の高い木として識別します。

ターゲット ラベル 1 2 3 4 5
カエデ elm オーク maple ブナ ポプラ
ハナミズキ オーク dogwood ポプラ Hickory カエデ
オーク oak バスウッド locust ハンノキ Linden
Linden カエデ paw-paw オーク バスウッド ポプラ
オーク locust Linden oak カエデ paw-paw

ターゲット ラベルは最初の位置に 1 回だけ表示されるため、トップ 1 の精度は次のようになります。

top-1 accuracy=15=0.2

ターゲット ラベルは上位 3 つの位置のいずれかに 4 回表示されるため、上位 3 つの精度は次のようになります。

top-1 accuracy=45=0.8

タワー

ディープ ニューラル ネットワークのコンポーネントであり、それ自体がディープ ニューラル ネットワークです。場合によっては、各タワーが独立したデータソースから読み取り、出力が最終レイヤで結合されるまで、それらのタワーは独立したままになります。他のケース(多くの Transformersエンコーダデコーダのタワーなど)では、タワーは相互にクロス接続されています。

有害

#language
#Metric

コンテンツが攻撃的、脅迫的、または不適切である程度。多くの ML モデルは、有害性を特定して測定できます。これらのモデルのほとんどは、冒とく的な表現のレベルや脅迫的な表現のレベルなど、複数のパラメータに基づいて有害性を特定します。

TPU

#TensorFlow
#GoogleCloud

Tensor Processing Unit の省略形。

TPU チップ

#TensorFlow
#GoogleCloud

機械学習ワークロード用に最適化されたオンチップの高帯域幅メモリを備えた、プログラム可能な線形代数アクセラレータ。複数の TPU チップが TPU デバイスにデプロイされます。

TPU デバイス

#TensorFlow
#GoogleCloud

複数の TPU チップ、高帯域幅ネットワーク インターフェース、システム冷却ハードウェアを備えたプリント回路基板(PCB)。

TPU ノード

#TensorFlow
#GoogleCloud

特定の TPU タイプを持つ Google Cloud 上の TPU リソース。TPU ノードは、ピア VPC ネットワークから VPC ネットワークに接続します。TPU ノードは、Cloud TPU API で定義されたリソースです。

TPU Pod

#TensorFlow
#GoogleCloud

Google データセンター内の TPU デバイスの特定の構成。TPU Pod 内のすべてのデバイスは、専用の高速ネットワークを介して相互に接続されています。TPU Pod は、特定の TPU バージョンで使用可能な TPU デバイスの最大構成です。

TPU リソース

#TensorFlow
#GoogleCloud

Google Cloud で作成、管理、使用される TPU エンティティ。たとえば、TPU ノードTPU タイプは TPU リソースです。

TPU スライス

#TensorFlow
#GoogleCloud

TPU スライスは、TPU Pod 内の TPU デバイスの部分的な部分です。TPU スライス内のすべてのデバイスは、専用の高速ネットワークを介して相互に接続されています。

TPU タイプ

#TensorFlow
#GoogleCloud

特定の TPU ハードウェア バージョンの 1 つ以上の TPU デバイスの構成。TPU タイプは、Google Cloud で TPU ノードを作成するときに選択します。たとえば、v2-8 TPU タイプは、8 コアを持つ単一の TPU v2 デバイスです。v3-2048 TPU タイプには、256 個のネットワーク化された TPU v3 デバイスと合計 2,048 個のコアがあります。TPU タイプは、Cloud TPU API で定義されたリソースです。

TPU ワーカー

#TensorFlow
#GoogleCloud

ホストマシンで実行され、TPU デバイスで ML プログラムを実行するプロセス。

トレーニング

#fundamentals

モデルを構成する理想的なパラメータ(重みとバイアス)を決定するプロセス。トレーニング中、システムはを読み取り、パラメータを徐々に調整します。トレーニングでは、各サンプルを数回から数十億回使用します。

詳細については、ML の概要コースの教師あり学習をご覧ください。

トレーニングの損失

#fundamentals
#Metric

特定のトレーニング イテレーション中のモデルの損失を表す指標。たとえば、損失関数が平均二乗誤差であるとします。たとえば、10 回目の反復処理のトレーニング損失(平均二乗誤差)が 2.2 で、100 回目の反復処理のトレーニング損失が 1.9 である場合。

損失曲線は、トレーニングの損失と反復回数をプロットします。損失曲線は、トレーニングに関する次のヒントを提供します。

  • 下り坂は、モデルが改善されていることを示します。
  • 上向きの傾斜は、モデルの性能が低下していることを意味します。
  • 傾斜が緩い場合、モデルは収束に達しています。

たとえば、次のやや理想化された損失曲線は、次のことを示しています。

  • 初期反復時の急な下り坂。これは、モデルの急速な改善を示します。
  • トレーニングの終了近くまで徐々に平坦化する(ただし下向き)傾斜。これは、最初の反復処理よりもやや遅いペースでモデルが継続的に改善されることを意味します。
  • トレーニングの終盤にかけて勾配が緩やかになり、収束が示唆されている。

トレーニングの損失と反復回数のグラフ。この損失曲線は、急な下り坂で始まります。傾斜はゼロになるまで徐々に平坦になります。

トレーニング損失は重要ですが、一般化もご覧ください。

トレーニング サービング スキュー

#fundamentals

トレーニング中のモデルのパフォーマンスと、同じモデルのサービング中のパフォーマンスの差。

トレーニング セット

#fundamentals

モデルのトレーニングに使用されるデータセットのサブセット。

従来、データセット内の例は次の 3 つの異なるサブセットに分割されています。

理想的には、データセット内の各例は、上記のサブセットの 1 つにのみ属している必要があります。たとえば、1 つのサンプルがトレーニング セットと検証セットの両方に属している場合、

詳細については、ML 集中講座のデータセット: 元のデータセットを分割するをご覧ください。

軌道

#rl

強化学習では、エージェント状態遷移のシーケンスを表すタプルのシーケンス。各タプルは、状態、アクション報酬、特定の状態遷移の次の状態に対応します。

転移学習

ある ML タスクから別の ML タスクに情報を転送する。たとえば、マルチタスク学習では、1 つのモデルが複数のタスクを解決します。たとえば、タスクごとに異なる出力ノードを持つディープ モデルなどです。転移学習では、単純なタスクのソリューションからより複雑なタスクに知識を転移したり、データ量の多いタスクからデータ量の少ないタスクに知識を転移したりする場合があります。

ほとんどの ML システムは単一のタスクを解決します。転移学習は、単一のプログラムで複数のタスクを解決できる人工知能への第一歩です。

Transformer

#language

Google で開発されたニューラル ネットワーク アーキテクチャ。セルフ アテンション メカニズムに依存して、畳み込み再帰型ニューラル ネットワークに依存せずに、入力エンベディングのシーケンスを出力エンベディングのシーケンスに変換します。Transformer は、自己注意レイヤのスタックと見なすことができます。

Transformer には次のいずれかを含めることができます。

エンコーダは、エンベディングのシーケンスを同じ長さの新しいシーケンスに変換します。エンコーダには N 個の同一レイヤが含まれ、それぞれに 2 つのサブレイヤが含まれています。これらの 2 つのサブレイヤは、入力エンベディング シーケンスの各位置に適用され、シーケンスの各要素を新しいエンベディングに変換します。最初のエンコーダ サブレイヤは、入力シーケンス全体の情報を集めます。2 番目のエンコーダ サブレイヤは、集約された情報を出力エンベディングに変換します。

デコーダは、入力エンベディングのシーケンスを出力エンベディングのシーケンスに変換します。長さが異なる場合があります。デコーダには、3 つのサブレイヤを持つ N 個の同一レイヤも含まれます。このうち 2 つはエンコーダのサブレイヤに似ています。3 つ目のデコーダ サブレイヤは、エンコーダの出力を受け取り、セルフアテンション メカニズムを適用してエンコーダから情報を収集します。

ブログ投稿「Transformer: A Novel Neural Network Architecture for Language Understanding」では、Transformer の概要を説明しています。

詳細については、ML 集中講座の LLM: 大規模言語モデルとはをご覧ください。

平行移動不変性

#image

画像分類問題では、画像内のオブジェクトの位置が変化しても画像を正常に分類できるアルゴリズムの能力。たとえば、犬がフレームの中央にいても、フレームの左端にいても、アルゴリズムは犬を識別できます。

サイズ不変性回転不変性もご覧ください。

3 文字語

#seq
#language

N=3 の N グラム

真陰性(TN)

#fundamentals
#Metric

モデルが陰性のクラス正しく予測している例。たとえば、モデルは特定のメール メッセージがスパムではないと推測し、そのメール メッセージが実際にスパムではないと推測します。

真陽性(TP)

#fundamentals
#Metric

モデルが陽性クラス正しく予測している例。たとえば、モデルは特定のメール メッセージがスパムであると推測し、そのメール メッセージが実際にスパムである場合です。

真陽性率(TPR)

#fundamentals
#Metric

想起と同義です。具体的には、次のことが求められます。

true positive rate=true positivestrue positives+false negatives

真陽性率は、ROC 曲線の Y 軸です。

U

認識していない(機密性の高い属性について)

#fairness

機密性の高い属性が存在するが、トレーニング データに含まれていない状況。機密属性はデータの他の属性と相関していることが多いため、機密属性を認識せずにトレーニングされたモデルでも、その属性に関して差別的な影響が生じたり、他の公平性制約に違反したりする可能性があります。

アンダーフィット

#fundamentals

モデルがトレーニング データの複雑さを完全に把握していないため、予測能力が低いモデルを生成します。次のような多くの問題が原因で、過小適合が発生する可能性があります。

  • 間違った特徴セットでトレーニングしている。
  • エポック数が少すぎたり、学習率が低すぎたりする。
  • 正則化率が高すぎるトレーニング。
  • ディープ ニューラル ネットワークで隠れ層が少なすぎる。

詳細については、機械学習集中講座の過剰適合をご覧ください。

アンダーサンプリング

クラスの不均衡なデータセット多数派クラスからサンプルを削除して、よりバランスの取れたトレーニング セットを作成します。

たとえば、多数クラスと少数クラスの比率が 20:1 のデータセットについて考えてみましょう。このクラスの不均衡を克服するには、少数クラスのサンプルをすべて、多数クラスのサンプルの 10 分の 1 で構成されるトレーニング セットを作成します。これにより、トレーニング セットのクラス比率が 2:1 になります。アンダーサンプリングにより、よりバランスの取れたトレーニング セットが生成され、より優れたモデルが生成される可能性があります。一方、このバランスの取れたトレーニング セットには、効果的なモデルをトレーニングするのに十分なサンプルが含まれていない場合があります。

oversamplingとは対照的です。

単一方向

#language

対象のテキスト セクションのにあるテキストのみを評価するシステム。一方、双方向システムは、対象のテキスト セクションののテキストの両方を評価します。詳しくは、双方向をご覧ください。

単一方向の言語モデル

#language

ターゲット トークンのではなくに出現するトークンのみに基づいて確率を計算する言語モデル双方向言語モデルとは対照的です。

ラベルのない例

#fundamentals

特徴は含まれるが、ラベルは含まれない例。たとえば、次の表は、住宅査定モデルの 3 つのラベルなしの例を示しています。それぞれに 3 つの特徴がありますが、住宅価格はありません。

寝室の数 浴室の数 家の築年数
3 2 15
2 1 72
4 2 34

教師あり機械学習では、モデルはラベル付きの例でトレーニングし、ラベルのない例で予測を行います。

セミスーパービジョン学習と教師なし学習では、トレーニング中にラベルなしの例が使用されます。

ラベルのないサンプルとラベル付きサンプルを比較します。

教師なし機械学習

#clustering
#fundamentals

データセット(通常はラベルなしのデータセット)内のパターンを検出するようにモデルをトレーニングします。

教師なし ML の最も一般的な用途は、データを類似した例のグループにクラスタリングすることです。たとえば、教師なし ML アルゴリズムでは、音楽のさまざまなプロパティに基づいて曲をクラスタリングできます。生成されたクラスタは、他の ML アルゴリズム(音楽レコメンデーション サービスなど)への入力として使用できます。クラスタリングは、有用なラベルが少ない、または存在しない場合に役立ちます。たとえば、不正行為や不正行為防止などのドメインでは、クラスタを使用して人間がデータをよりよく理解できます。

教師あり機械学習とは対照的です。

教師なし機械学習のもう 1 つの例は、主成分分析(PCA)です。たとえば、数百万のショッピング カートの内容を含むデータセットに PCA を適用すると、レモンを含むショッピング カートに胃薬も頻繁に含まれていることがわかります。


詳細については、ML 入門コースの機械学習とはをご覧ください。

増加率モデリング

マーケティングで一般的に使用されるモデリング手法。個人に対する「治療」の「因果効果」(「増分効果」とも呼ばれます)をモデル化します。次に 2 つの例を示します。

  • 医師は、アップライト モデリングを使用して、患者(個人)の年齢と病歴に応じて、医療処置(治療)による死亡率の低下(因果効果)を予測できます。
  • マーケティング担当者は、アップリフト モデリングを使用して、広告(治療)が個人(被験者)に与える購入確率の増加(因果効果)を予測できます。

アップリフト モデリングは、分類回帰とは異なり、一部のラベル(2 値の治療のラベルの半分など)が常に欠落しています。たとえば、患者は治療を受けるか受けないかのどちらかです。したがって、患者が治癒するかどうかを観察できるのは、この 2 つの状況のいずれか一方のみです(両方ではありません)。アップリフト モデルの主な利点は、観測されていない状況(反事実的条件)の予測を生成し、それを使用して因果効果を計算できることです。

優先度を上げる

ダウンサンプリングした係数に等しい重みをダウンサンプリングクラスに適用します。

ユーザー マトリックス

#recsystems

レコメンデーション システムでは、行列分解によって生成されたエンベディング ベクトルで、ユーザーの好みに関する潜在的なシグナルを保持します。ユーザー マトリックスの各行には、1 人のユーザーのさまざまな潜在シグナルの相対的な強度に関する情報が保持されます。たとえば、映画のレコメンデーション システムについて考えてみましょう。このシステムでは、ユーザー マトリックスの潜在シグナルは、特定のジャンルに対する各ユーザーの関心を表す場合もあれば、複数の要素にわたる複雑な相互作用を含む、解釈が難しいシグナルである場合もあります。

ユーザー マトリックスには、潜在的な特徴ごとに列があり、ユーザーごとに行があります。つまり、ユーザー マトリックスの行数は、分解されるターゲット マトリックスの行数と同じです。たとえば、1,000,000 人のユーザー向けの映画レコメンデーション システムの場合、ユーザー マトリックスには 1,000,000 行があります。

V

検証

#fundamentals

モデルの品質の初期評価。検証では、検証セットと比較してモデルの予測の品質を確認します。

検証セットはトレーニング セットとは異なるため、検証は過学習を防ぐのに役立ちます。

検証セットに対するモデルの評価を第 1 ラウンドのテストの評価、テストセットに対するモデルの評価を第 2 ラウンドのテストの評価と考えることができます。

検証損失

#fundamentals
#Metric

トレーニングの特定の反復中に、検証セットに対するモデルの損失を表す指標

一般化曲線もご覧ください。

検証セット

#fundamentals

トレーニング済みのモデルに対して初期評価を行うデータセットのサブセット。通常、トレーニング済みモデルを検証セットで複数回評価してから、テストセットでモデルを評価します。

従来、データセット内の例は次の 3 つのサブセットに分割します。

理想的には、データセット内の各例は、上記のサブセットの 1 つにのみ属している必要があります。たとえば、1 つのサンプルがトレーニング セットと検証セットの両方に属している場合、

詳細については、ML 集中講座のデータセット: 元のデータセットを分割するをご覧ください。

値の補完

欠落している値を許容可能な代替値に置き換えるプロセス。値が欠落している場合は、例全体を破棄するか、値の推定を使用して例を復元できます。

たとえば、1 時間ごとに記録される temperature 特徴を含むデータセットについて考えてみましょう。ただし、特定の時間帯の温度測定値は取得できませんでした。データセットの一部を次に示します。

タイムスタンプ 温度
1680561000 10
1680564600 12
1680568200 missing
1680571800 20
1680575400 21
1680579000 21

システムは、欠落している例を削除するか、欠落している温度を 12、16、18、20 のいずれかに補完します(補完アルゴリズムによって異なります)。

勾配消失問題

#seq

一部のディープ ニューラル ネットワークの初期の隠れ層の勾配が驚くほどフラット(低い)になる傾向。勾配が低くなると、ディープ ニューラル ネットワーク内のノードの重みの変化が小さくなり、学習がほとんどまたはまったく行われなくなります。勾配消失の問題が発生したモデルは、トレーニングが困難または不可能になります。この問題に対処するために、長短期記憶セルが使用されます。

急増する勾配の問題と比較してください。

変数の重要度

#df
#Metric

モデルに対する各特徴量の相対的な重要度を示すスコアセット。

たとえば、住宅価格を推定する意思決定ツリーについて考えてみましょう。このディシジョン ツリーでサイズ、年齢、スタイルの 3 つの特徴を使用するとします。3 つの特徴量の変数の重要性のセットが {size=5.8, age=2.5, style=4.7} と計算された場合、サイズは年齢やスタイルよりも決定木にとって重要です。

さまざまな変数の重要度指標があり、ML の専門家はモデルのさまざまな側面について情報を得ることができます。

変分オートエンコーダ(VAE)

#language

入力と出力の差異を利用して入力の変更バージョンを生成するオートエンコーダの一種。変分オートエンコーダは、生成 AI に役立ちます。

VAE は、確率モデルのパラメータを推定する手法である変分推論に基づいています。

ベクトル

非常にオーバーロードされた用語で、数学や科学の分野によって意味が異なります。機械学習では、ベクトルには次の 2 つのプロパティがあります。

  • データ型: 機械学習のベクトルは通常、浮動小数点数を保持します。
  • 要素数: ベクトルの長さまたは次元です。

たとえば、8 つの浮動小数点数を保持する特徴ベクトルについて考えてみましょう。この特徴ベクトルの長さまたはディメンションは 8 です。機械学習ベクトルは多くの場合、膨大な次元数を持ちます。

さまざまな種類の情報をベクトルとして表すことができます。次に例を示します。

  • 地球上の任意の位置は、2 次元ベクトルとして表すことができます。1 つのディメンションは緯度で、もう 1 つのディメンションは経度です。
  • 500 銘柄の現在の価格は、500 次元のベクトルとして表すことができます。
  • 有限数のクラスの確率分布はベクトルとして表すことができます。たとえば、3 つの出力色(赤、緑、黄色)のいずれかを予測するマルチクラス分類システムは、P[red]=0.3, P[green]=0.2, P[yellow]=0.5 を意味するベクトル (0.3, 0.2, 0.5) を出力できます。

ベクトルは連結できるため、さまざまなメディアを 1 つのベクトルとして表すことができます。一部のモデルは、多くのワンホット エンコーディングの連結に対して直接動作します。

TPU などの特殊なプロセッサは、ベクトルに対する数学演算を実行するように最適化されています。

ベクトルは、ランク 1 のテンソルです。

W

Wasserstein 損失

#Metric

生成されたデータと実際のデータの分布間のEarth Mover's Distance に基づく、生成敵対ネットワークで一般的に使用される損失関数の 1 つ。

weight

#fundamentals

モデルが別の値に掛ける値。トレーニングは、モデルの最適な重みを決定するプロセスです。推論は、学習した重みを使用して予測を行うプロセスです。

2 つの特徴を持つ線形モデルがあるとします。トレーニングで次の重み(およびバイアス)が決定されたとします。

  • バイアス b の値は 2.2 です。
  • 1 つの特徴に関連付けられた重み w1 は 1.5 です。
  • 他の特徴に関連付けられた重み w2 は 0.4 です。

次のような特徴値を持つについて考えてみましょう。

  • 1 つの特徴量 x1 の値は 6 です。
  • 他の特徴量 x2 の値は 10 です。

この線形モデルは、次の式を使用して予測値 y' を生成します。

y=b+w1x1+w2x2

したがって、予測は次のようになります。

y=2.2+(1.5)(6)+(0.4)(10)=15.2

重みが 0 の場合、対応する特徴はモデルに寄与しません。たとえば、w1 が 0 の場合、x1 の値は無関係です。


詳細については、機械学習集中講座の線形回帰をご覧ください。

加重交互最小二乗(WALS)

#recsystems

レコメンデーション システム行列分解中に目標関数を最小化するアルゴリズム。これにより、不足している例を軽視できます。WALS は、行分解と列分解を交互に固定することで、元の行列と再構成との間の重み付き二乗誤差を最小化します。これらの最適化は、最小二乗凸最適化によって解決できます。詳細については、Recommendation Systems コースをご覧ください。

加重合計

#fundamentals

関連するすべての入力値の合計に、対応する重みを掛けた値。たとえば、関連する入力が次のように構成されているとします。

入力値 入力重み
2 -1.3
-1 0.6
3 0.4

したがって、加重合計は次のようになります。

weighted sum = (2)(-1.3) + (-1)(0.6) + (3)(0.4) = -2.0

加重合計は、活性化関数への入力引数です。

ワイドモデル

通常、多くのスパース入力特徴量を持つ線形モデル。このようなモデルは、出力ノードに直接接続する多数の入力を持つ特別なタイプのニューラル ネットワークであるため、「ワイド」と呼ばれます。多くの場合、ワイドモデルはディープラーニング モデルよりもデバッグと検査が容易です。ワイドモデルは隠れ層を介して非線形性を表現することはできませんが、特徴の交差バケット化などの変換を使用して、さまざまな方法で非線形性をモデル化できます。

ディープラーニング モデルとは対照的です。

ニューラル ネットワークの特定のレイヤ内のニューロンの数。

群知の知恵

#df

大規模なグループ(「群衆」)の意見や推定値を平均すると、驚くほど良い結果が得られることが多いという考え方。たとえば、大きなジャーに詰められたジェリービーンズの数を推測するゲームについて考えてみましょう。個々の推測のほとんどは不正確ですが、すべての推測の平均は、実証的に、ジャーに入っている実際のゼリービーンズの数に驚くほど近いことがわかっています。

アンサンブルは、クラウドソースのソフトウェア アナログです。個々のモデルの予測が非常に不正確であっても、多くのモデルの予測を平均化すると、驚くほど優れた予測が得られることがあります。たとえば、個々のディシジョン ツリーでは予測が不十分な場合でも、ディシジョン フォレストでは非常に優れた予測が得られることがあります。

ワード エンベディング

#language

エンベディング ベクトル内の単語セット内の各単語を表す。つまり、各単語を 0.0 ~ 1.0 の浮動小数点値のベクトルとして表します。意味が類似する単語は、意味が異なる単語よりも類似した表現になります。たとえば、ニンジンセロリきゅうりはすべて比較的類似した表現になりますが、飛行機サングラス歯磨き粉の表現とは大きく異なります。

X

XLA(Accelerated Linear Algebra)

GPU、CPU、ML アクセラレータ用のオープンソースの ML コンパイラ。

XLA コンパイラは、PyTorchTensorFlowJAX などの一般的な ML フレームワークからモデルを取得し、GPU、CPU、ML アクセラレータなど、さまざまなハードウェア プラットフォームで高パフォーマンスの実行ができるように最適化します。

Z

ゼロショット学習

機械学習トレーニングの一種。モデルが、トレーニングされていないタスクの予測を推論します。つまり、モデルにはタスク固有のトレーニング は提供されず、そのタスクの推論を行うよう求められます。

ゼロショット プロンプト

#language
#generativeAI

大規模言語モデルにどのように回答してほしいかを示しているプロンプトではありません。次に例を示します。

1 つのプロンプトの一部 メモ
指定した国の公式通貨は何ですか? LLM に回答を求める質問。
インド: 実際のクエリ。

大規模言語モデルは、次のいずれかのレスポンスを返す場合があります。

  • ルピー
  • INR
  • ルピー(インド)
  • ルピー
  • インドルピー

上記の選択肢はすべて正しいが、特定の形式が好ましい場合もある。

ゼロショット プロンプトと次の用語を比較します。

Z スコアの正規化

#fundamentals

元の特徴量値を、その特徴量の平均からの標準偏差の数を表す浮動小数点値に置き換えるスケーリング手法。たとえば、平均が 800 で標準偏差が 100 の特徴について考えてみましょう。次の表に、Z スコア正規化で元の値が Z スコアにマッピングされる仕組みを示します。

Raw 値 Z スコア
800 0
950 +1.5
575 -2.25

機械学習モデルは、元の値ではなく、その特徴の Z スコアに基づいてトレーニングします。

詳細については、機械学習集中講座の数値データ: 正規化をご覧ください。