機械学習用語集: 画像モデル

このページには、画像モデルの用語集の用語が掲載されています。すべての用語集の用語については、こちらをクリックしてください。

A

拡張現実

#image

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

オートエンコーダ

#language
#image

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

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

オートエンコーダは、元の入力をエンコーダの中間形式から可能な限り復元するようにデコーダに再現させることで、エンドツーエンドでトレーニングされます。中間形式は元の形式よりも小さい(低次元)ため、オートエンコーダは入力のどの情報が不可欠かを学習せざるを得ず、出力は入力と完全に同一にはなりません。

例:

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

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

自己回帰モデル

#language
#image
#ジェネレーティブ AI

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

一方、GAN ベースの画像モデルは通常、単一のフォワードパスで画像を生成し、ステップで反復的に生成しないため、自己回帰的ではありません。ただし、特定の画像生成モデルは、画像を段階的に生成するため、自己回帰型です。

B

境界ボックス

#image

画像内の、注目エリア(下の画像の犬など)を囲む長方形の (x, y) 座標。

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

C

畳み込み

#image

数学では気軽に言えば、2 つの関数の混合です。機械学習では、重みをトレーニングするために、畳み込み関数によって畳み込みフィルタと入力行列が混合されます。

機械学習における「畳み込み」という用語は、畳み込み演算または畳み込み層の略称として使われることがよくあります。

畳み込みなしの場合、機械学習アルゴリズムは、大きなテンソルのセルごとに別々の重みを学習しなければなりません。たとえば、2K x 2K の画像でトレーニングされる機械学習アルゴリズムでは、400 万個の個別の重みを検出しなければなりません。畳み込みにより、機械学習アルゴリズムは畳み込みフィルタ内のすべてのセルの重みを見つけるだけでよく、モデルのトレーニングに必要なメモリを大幅に削減できます。畳み込みフィルタが適用されると、セル間で複製され、それぞれにフィルタが乗算されます。

畳み込みフィルタ

#image

畳み込み演算の 2 つのアクターのうちの 1 つ。(もう 1 人は入力行列のスライスです)。畳み込みフィルタは、入力行列と同じランクを持つが、形状がより小さい行列です。たとえば、28x28 の入力行列の場合、28x28 より小さい任意の 2D 行列をフィルタとして使用できます。

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

畳み込みレイヤ

#image

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

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

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

2 つの行列を示すアニメーション。最初の行列は 5×5 の行列です。[[128,97,53,201,198]、[35,22,25,200,195]、[37,24,28,197,182]、[33,28,92,195,179], [1,0,4], [31,04]2 つ目の行列は 3×3 の行列 [[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. 結果の積行列内のすべての値の合計。

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

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

次のような 2x2 の畳み込みフィルタがあるとします。

2×2 行列: [[1, 0], [0, 1]]

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

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

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

D

データ増強

#image

既存のを変換して追加の例を作成することにより、トレーニングの例の範囲と数を人為的に増やす。たとえば、画像がの 1 つであるものの、データセットに、モデルが有用な関連付けを学習するのに十分な画像例が含まれていないとします。理想的には、モデルが適切にトレーニングされるように、十分な数のラベル付き画像をデータセットに追加するのが理想的です。それが不可能な場合は、データ増強により、各画像を回転、ストレッチ、反射して、元の写真の多くのバリアントを生成できます。これにより、優れたトレーニングを可能にするのに十分なラベル付きデータが生成される可能性があります。

深度分離可能畳み込みニューラル ネットワーク(sepCNN)

#image

Inception に基づく畳み込みニューラル ネットワーク アーキテクチャでは、Inception モジュールが深さ方向の分離可能な畳み込みに置き換えられています。別名 Xception。

深さ方向の分離可能な畳み込み(分離可能畳み込みと略される)は、標準の 3 次元畳み込みを、より計算効率の高い 2 つの個別の畳み込み演算に分解します。これは、深さ 1(n ✕ n ✕ 1 の ✕ 1 と、長さ 1 の ✕ 1 と長さ × 1 の深さ、第 2 の横方向の畳み込み)です。

詳細については、Xception: Depthwise Separable 畳み込みによるディープ ラーニングをご覧ください。

ダウンサンプリング

#image

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

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

F

微調整

#language
#image
#ジェネレーティブ AI

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

  1. トレーニング前: 膨大な一般的なデータセット(英語のすべての Wikipedia ページなど)で大規模言語モデルをトレーニングします。
  2. 微調整: 事前トレーニング済みモデルをトレーニングして、医療関連のクエリへの応答など、特定のタスクを実行します。通常、微調整では特定のタスクに焦点を当てた数百または数千の例が必要になります。

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

  1. 事前トレーニング: Wikimedia Commons のすべての画像など、非常に一般的な画像データセットで大規模画像モデルをトレーニングします。
  2. 微調整: 事前トレーニング済みモデルをトレーニングして、シャチの画像の生成など、特定のタスクを実行します。

微調整では、以下の戦略を任意に組み合わせて実行できます。

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

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

微調整を以下の用語と比較しましょう。

G

生成 AI

#language
#image
#ジェネレーティブ AI

正式な定義のない新たな変革の分野。とはいえ、ほとんどの専門家は、ジェネレーティブ AI モデルは以下の内容をすべて作成(「生成」)できると考えています。

  • 複雑
  • 一貫性のある
  • オリジナル

たとえば、ジェネレーティブ AI モデルは洗練されたエッセイや画像を作成できます。

LSTMRNN などの以前の一部の技術でも、オリジナルで一貫性のあるコンテンツを生成できます。こうした初期のテクノロジーをジェネレーティブ AI とみなす専門家もいれば、真のジェネレーティブ AI には、以前のテクノロジーで生成できるよりも複雑な出力が必要だと考える専門家もいます。

予測 ML と比較する。

I

画像認識

#image

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

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

Intersection over union(IoU)

#image

2 つの集合をその和集合で割った集合。機械学習による画像検出タスクでは、IoU を使用して、モデルの予測された境界ボックスの正確度をグラウンド トゥルース境界ボックスに対して測定します。この場合、2 つのボックスの IoU は重複領域と合計領域の比率で、値の範囲は 0(予測境界ボックスと正解境界ボックスの重複なし)から 1(予測境界ボックスと正解境界ボックスの座標は完全に同じ)です。

たとえば、下の画像の場合は次のようになります。

  • 予測境界ボックス(ペイントのナイトテーブルが配置される場所をモデルが予測する場所を区切る座標)は、紫色の枠線で示されます。
  • グラウンド トゥルースの境界ボックス(ペイントのナイトテーブルが実際にどこにあるかを示す座標)は緑色の枠線で囲まれています。

ゴッホが描く「アルルのヴィンセントの寝室」。ベッドの横にある夜間テーブルを囲む 2 つの境界ボックスが描かれている。グラウンド トゥルースの境界ボックス(緑色)がナイトテーブルを完全に囲んでいます。予測境界ボックス(紫色)は、グラウンド トゥルース境界ボックスの右側に 50% オフセットされます。ナイトテーブルの右下 4 分の 1 を囲みますが、テーブルの残りの部分は欠落しています。

ここで、予測とグラウンド トゥルースの境界ボックスの交点(左下)は 1、予測と正解の境界ボックスの和集合(右下)は 7 であるため、IoU は \(\frac{1}{7}\)です。

上と同じ画像ですが、各境界ボックスは 4 つの象限に分割されています。合計 7 つの象限があり、正解境界ボックスの右下の象限と予測境界ボックスの左上の象限が互いに重なっているからです。この重なり合ったセクション(緑色でハイライト表示)は交差点を表し、面積が 1 です。 上と同じ画像ですが、各境界ボックスは 4 つの象限に分割されています。合計で 7 つの象限があり、正解境界ボックスの右下の象限と予測境界ボックスの左上の象限が互いに重なっているからです。両方の境界ボックスで囲まれた内部全体(緑色でハイライト表示)は結合を表し、面積は 7 です。

K

キーポイント

#image

画像内にある特定の特徴の座標。たとえば、花の種類を識別する画像認識モデルの場合、キーポイントは各花びらの中心、茎、おしめなどです。

L

landmarks

#image

キーポイントと同義。

M

MNIST

#image

LeCun、Cortes、Burges がコンパイルしたパブリック ドメインのデータセット。6 万枚の画像が含まれており、各画像は、人間が 0 ~ 9 の数字を手作業で書いたことを示しています。各画像は、28x28 の整数の配列として保存されます。各整数は 0 ~ 255 のグレースケール値です。

MNIST は機械学習の正規データセットであり、新しい機械学習アプローチのテストによく使用されます。詳しくは、 The MNIST Database of Handwritten Digits をご覧ください。

P

プーリング

#image

以前の畳み込みレイヤによって作成された行列を、より小さい行列に縮小する。通常、プーリングでは、プールされた領域の最大値または平均値を取得します。たとえば、次の 3x3 行列があるとします。

3×3 行列 [[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 を生成します。まとめると、プーリング演算は 2 行 × 2 行列 [[8,5], [9,5]] となります。

プーリングは、入力行列に翻訳不変を適用するのに役立ちます。

ビジョン アプリケーションのプーリングは、より正式には空間プーリングと呼ばれています。時系列アプリケーションでは通常、プーリングを「時間プーリング」と呼びます。より形式的には、プーリングは「サブサンプリング」または「ダウンサンプリング」と呼ばれることもあります。

事前トレーニング済みモデル

#language
#image
#ジェネレーティブ AI

すでにトレーニングされているモデルまたはモデル コンポーネント(エンベディング ベクトルなど)。事前トレーニング済みのエンベディング ベクトルをニューラル ネットワークにフィードする場合もあります。また、モデルは、事前トレーニング済みのエンベディングに依存せずに、エンベディング ベクトル自体をトレーニングします。

事前トレーニング済み言語モデルという用語は、事前トレーニングが行われた大規模言語モデルを指します。

トレーニング前

#language
#image
#ジェネレーティブ AI

大規模なデータセットでのモデルの初期トレーニング。事前トレーニング済みのモデルの中には、うまく機能しないものがあり、通常は追加のトレーニングで改良する必要があります。たとえば、ML の専門家は、Wikipedia のすべての英語ページなど、膨大なテキスト データセットで大規模言語モデルを事前トレーニングできます。事前トレーニングの後、次のいずれかの手法でモデルをさらに絞り込むことができます。

R

回転不変

#image

画像分類問題において、画像の向きが変わっても画像を正常に分類できるアルゴリズムの能力。たとえば、テニスラケットが上、横、下のいずれを指しているかをアルゴリズムで識別することは可能です。回転不変は必ずしも望ましいものではありません。たとえば、上下が逆になっている 9 は 9 に分類すべきではありません。

翻訳の不変サイズ不変もご覧ください。

S

サイズ不変

#image

画像分類問題において、画像のサイズが変わっても画像を正常に分類できるアルゴリズムの能力。たとえば、消費ピクセルが 200 万ピクセルでも 20 万ピクセルでも、アルゴリズムで猫を識別できます。優れた画像分類アルゴリズムであっても、サイズ不均一性には現実的な制限があるので注意してください。たとえば、アルゴリズム(または人間)が 20 ピクセルのみを使用する猫の画像を正しく分類する可能性は低くなります。

平行不変回転不変もご覧ください。

空間プーリング

#image

プーリングをご覧ください。

ストライド

#image

畳み込み演算またはプーリングにおいて、次の一連の入力スライスの各ディメンションのデルタ。たとえば、次のアニメーションは畳み込み演算中の (1,1) ストライドを示しています。したがって、次の入力スライスは、前の入力スライスの 1 つ右の位置から開始します。オペレーションが右端に達すると、次のスライスは左端まで移動しますが、1 つ下の位置まで移動します。

入力 5x5 行列と 3x3 畳み込みフィルタ。ストライドは (1,1) であるため、畳み込みフィルタが 9 回適用されます。最初の畳み込みスライスは、入力行列の左上の 3x3 サブ行列を評価します。2 番目のスライスは、上から中央の 3x3 サブマトリックスを評価します。3 番目の畳み込みスライスは、右上の 3x3 サブ行列を評価します。4 番目のスライスは、左中央の 3x3 サブ行列を評価します。
     5 番目のスライスは、中央の 3x3 サブ行列を評価します。6 番目のスライスでは、右中央の 3x3 サブマトリックスを評価します。7 番目のスライスでは、左下の 3x3 サブマトリックスを評価します。8 番目のスライスでは、中央の下部 3 x 3 のサブマトリックスを評価します。9 番目のスライスでは、右下の 3x3 サブ行列を評価します。

上の例は 2 次元のストライドを示しています。入力行列が 3 次元の場合、ストライドも 3 次元になります。

サブサンプリング

#image

プーリングをご覧ください。

T

温度

#language
#image
#ジェネレーティブ AI

モデルの出力のランダム性の度合いを制御するハイパーパラメータ。温度が高いほどランダムな出力は多くなり、温度が低いほど出力は少なくなります。

最適な温度を選択できるかどうかは、特定のアプリケーションと、モデルの出力の望ましい特性によって異なります。たとえば、クリエイティブ出力を生成するアプリを作成するときに、温度を上げることが考えられます。逆に、画像またはテキストを分類するモデルを構築する場合は、モデルの精度と整合性を高めるために温度を下げることをおすすめします。

温度は softmax でよく使用されます。

並進不変

#image

画像分類問題において、画像内のオブジェクトの位置が変わっても画像を正常に分類するアルゴリズムの能力。たとえば、アルゴリズムは犬がフレームの中心にあるか左端にあるかにかかわらず、犬を識別できます。

サイズ不変回転不変もご覧ください。