機械学習用語集: 言語評価

このページでは、言語評価の用語集について説明します。用語集のすべての用語については、こちらをクリックしてください。

A

注目

#language

データ依存型の方法で一連の入力の情報を集約する、ニューラル ネットワークアーキテクチャー・メカニズムのいずれか。一般的なアテンション メカニズムは、一連の入力に対する加重和で構成されます。この場合、各入力の weight はニューラル ネットワークの別の部分によって計算されます。

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

B

バッグ

#language

順序にかかわらず、句または文内の単語の表現。たとえば、単語の袋は、次の 3 つのフレーズを同じように表します。

  • 犬がジャンプする
  • 犬をジャンプさせる
  • 犬が

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

  • 1。単語の存在を示します。
  • 単語がバッグに出現する回数。たとえば、句語が「えらいらの犬」は「くちばしの犬」です。
  • その他の値(単語がバッグに出現する回数の対数など)。

BERT(Bidirectional Encoder)からの情報

#language

テキスト表現のモデル アーキテクチャ。トレーニングされた BERT モデルは、テキスト分類やその他の ML タスクで、より大きなモデルの一部として機能できます。

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

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

  • ALBERT は、A Light BERT の頭文字です。
  • LaBSE

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

ビグラム

#seq
#language

N=2 の N-gram

双方向

#language

テキストの対象セクションのと後の両方にあるテキストを評価するシステムを表す用語。一方、単方向システムでは、テキストのターゲット セクションよりも前のテキストのみが評価されます。

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

お客様との _____ についてお聞かせください。

単方向言語モデルは、「What」、「quot」、「is」、「quot」というコンテキストで提供される確率のみに基づいている必要があります。一方、双方向言語モデルでは、「with」と「you」のコンテキストも取得できるため、より正確な予測の生成が可能になります。

双方向言語モデル

#language

特定のトークンが特定の場所に存在する確率を、先行するテキストと後続のテキストに基づいて抜粋する言語モデル

BLEU(Bilingual Evaluation Understudy)

#language

0.0 から 1.0 までのスコア。2 つの人間の言語間の翻訳の品質を示します(例: 英語とロシア語)。BLEU スコア 1.0 は完全な変換を示し、BLEU スコア 0.0 は翻訳の品質が悪いことを示します。

C

因果言語モデル

#language

単方向言語モデルの類義語。

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

クラッシュ フラワー

#language

曖昧な意味を持つ文またはフレーズ。クラッシュ フラワーは、自然言語理解において重大な問題をもたらします。たとえば、「Red Tape Holds Up Skyscraper」という見出しはクラッシュ フラワーです。NLU モデルはその見出しを文字通り、または言葉どおりに解釈する可能性があるためです。

D

デコーダ

#language

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

デコーダは通常、エンコーダとペアになる大規模なモデルのコンポーネントです。

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

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

ノイズ除去

#language

一般に、教師あり学習では次のようなアプローチをとります。

  1. ノイズはデータセットに人為的に追加されます。
  2. モデルはノイズの除去を試みます。

ノイズ除去により、ラベルのない例から学習できます。元のデータセットはターゲットまたはラベルとして機能し、ノイズの多いデータを入力として使用します。

一部のマスキング言語モデルでは、次のようにノイズ除去を使用しています。

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

E

埋め込みレイヤ

#language
#fundamentals

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

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

73,000 要素の配列。最初の 6,232 要素は値 0 を保持しています。次の要素は値 1 を保持します。最後の 66,767 要素は値 0 を保持します。

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

状況によっては、埋め込みレイヤの代わりに、ハッシュを行うのが合理的です。

埋め込みスペース

#language

高次元ベクトル空間から特徴付けられる D 次元ベクトル空間がマッピングされる。理想的には、エンベディング空間には意味のある数学的結果が得られる構造が含まれます。たとえば、理想的なエンベディング空間では、理想的なエンベディングの加算および減算によって、単語のアナロジータスクを解くことができます。

2 つのエンベディングのドット積は、それらの類似性の尺度です。

埋め込みベクトル

#language

大まかに言うと、隠されたレイヤへの入力を説明する任意の隠れ層から取得した浮動小数点数の配列。多くの場合、エンベディング ベクトルは、エンベディング レイヤでトレーニングされた浮動小数点数の配列です。たとえば、エンベディング レイヤが地球上の 73,000 個のツリー種のエンベディング ベクトルを学習する必要があるとします。次の配列は、バオバブの木の埋め込みベクトルです。

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

エンベディング ベクトルは大量の乱数ではありません。埋め込み層は、トレーニング中にニューラル ネットワークが他の重みを学習しるのと同様に、トレーニングによってこれらの値を決定します。配列の各要素は、木の種類の特性に沿った評価です。どちらの樹木が特徴かを表しています。人間が判断するのはとても難しいことです。

エンベディング ベクトルの数学的に注目すべき部分は、類似アイテムには浮動小数点数値の集合が似ているということです。たとえば、類似のツリー型は、異なるツリー型よりも浮動小数点数のセットが多くなります。セコイアとセコイアは関連する木種であるため、セコイアやココナッツのヤシの木よりも浮動小数点数のセットが多くなります。同じベクトルでモデルを再トレーニングしても、エンベディング ベクトルの数値は、モデルを再トレーニングするたびに変わります。

エンコーダ

#language

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

エンコーダは、多くの場合、デコーダとペアになっている大規模なモデルのコンポーネントです。一部の Transformers はエンコーダとデコーダをペア設定しますが、他の Transformer ではエンコーダのみを使用するか、デコーダのみを使用します。

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

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

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

G

GPT(Generative Pre-training Transformer)

#language

OpenAI によって開発された Transformer ベースの大言語モデルのファミリー。

GPT のバリエーションは、次のような複数の手法に適用できます。

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

L

LaMDA(対話型アプリケーションのための言語モデル)

#language

Google が開発した Transformer ベースの大言語モデル。大規模な会話データセットでトレーニングされ、現実的な会話レスポンスを生成できます。

LaMDA: Google の画期的な会話テクノロジーの概要をご覧ください。

言語モデル

#language

トークン、またはより長いトークン シーケンスで発生するトークンのシーケンスの可能性を推定するモデル

大規模言語モデル

#language

厳密な定義がないカジュアルな用語で、通常はパラメータの数が多い言語モデルを意味します。一部の大規模な言語モデルには 1,000 億を超えるパラメータが含まれています。

M

マスクされた言語モデル

#language

一連のトークンが空白で埋められる確率を予測する言語モデル。たとえば、マスキングされた言語モデルでは、候補単語の確率を計算して、次の文のアンダースコアを置き換えます。

帽子に入った ____ が戻ってきました。

文学では通常、下線の代わりに「MASK」という文字列を使用しています。 例:

帽子に入った「MASK」が戻ってきました。

現在のマスク言語モデルのほとんどは双方向です。

メタラーニング

#language

機械学習アルゴリズムを検出または改善する機械学習のサブセット。メタ学習システムでは、少量のデータまたは以前のタスクで得た経験から、新しいタスクをすばやく学習するようにモデルをトレーニングすることもできます。メタ学習のアルゴリズムは通常、次のことを目指します。

  • 手動で設計された機能(イニシャライザやオプティマイザなど)を改善して学習する。
  • データ効率とコンピューティング効率を高める
  • 一般化を改善します。

メタ学習はいくつかのショットの学習に関連しています。

モダリティ

#language

データカテゴリの概要。たとえば、数字、テキスト、画像、動画、音声は 5 つの異なるモダリティです。

モデルの並列処理

#language

トレーニングや推論をスケーリングする方法で、1 つのモデルのさまざまな部分を異なるデバイスに配置します。モデルの並列処理により、サイズが大きすぎて 1 つのデバイスに収まらないモデルが可能になります。

データ並列処理もご覧ください。

マルチヘッド セルフアテンション

#language

入力シーケンスの各位置に自己注意メカニズムを複数回適用する、セルフアテンションの拡張。

Transformers では、マルチヘッドのセルフアテンションが導入されました。

マルチモーダル モデル

#language

入力および/または出力が複数のモダリティを含むモデル。たとえば、画像とテキスト キャプション(2 つのモダリティ)の両方を特徴として受け取り、テキスト キャプションが画像にどれくらい適切かを示すスコアを出力するモデルを考えてみましょう。したがって、このモデルの入力はマルチモーダルであり、出力はユニモーダルです。

N

自然言語理解

#language

ユーザーの入力や発言に基づいてユーザーの意図を判断する。たとえば、検索エンジンでは自然言語理解を使用して、ユーザーが入力した内容や話の内容に基づいて、ユーザーが検索している内容を判断します。

N グラム

#seq
#language

N 個の単語の順序付きシーケンス。たとえば、「本当に本当に」は 2 グラムです。順序が関係するので、実際に「本当に」2 グラムは、「本当に異常」とは異なります。

N このタイプの N-gram の名前
2 ビグラムまたは 2 グラム テイクアウト、移動、ランチ、ディナー
3 トリグラムまたは 3 グラム 多すぎる視覚障害のマウス、3 つのマウス、ベルを鳴らす
4 4 グラム 公園を歩いていて、風が吹いていて、少年がレンズ豆を食べていた

自然言語理解モデルの多くは、N グラムによってユーザーが次に入力または発話する単語を予測します。たとえば、ユーザーが「ブラインド」と入力した場合、トライグラムに基づく NLU モデルは、ユーザーが次に「マウス」と入力すると予測します。

N グラムと「バッグ」という単語は、順序付けされていない単語のセットです。

NLU

#language

自然言語理解の略。

P

パイプライン処理

#language

モデル並列処理の 1 つの形式で、モデルの処理は連続するステージに分割され、各ステージは異なるデバイスで実行されます。ステージが 1 つのバッチを処理している間、前のステージは次のバッチで処理できます。

段階的なトレーニングもご覧ください。

S

自己注意(自己注意レイヤともいいます)

#language

一連のエンベディング(トークン エンベディングなど)を別のエンベディングに変換するニューラル ネットワーク レイヤ出力シーケンスの各エンベディングは、アテンション メカニズムを介して入力シーケンスの要素からの情報を統合することによって構築されます。

自己注意の自己の部分は、他のコンテキストではなく、それ自体が関与するシーケンスを指します。自己注意はTransformer の主要な構成要素の 1 つであり、「クエリ」、「キー」、「値」などの辞書検索用語を使用します。

自己注意レイヤは、単語ごとに 1 つずつ、一連の入力表現から始まります。単語の入力表現は単純な埋め込みにできます。ネットワークは、入力シーケンス内の各単語について、単語シーケンス全体のすべての要素に対する単語の関連性をスコア化します。関連性スコアは、単語の最終表現に他の単語の表現がどの程度組み込まれているかを決定します。

たとえば、次の文について考えてみます。

動物は疲れていたので、通りを渡ることができませんでした。

次の図は、Transformer: 新しい言語理解のための新しいニューラル ネットワーク アーキテクチャから、代名詞の注意力パターンと、各行の暗さが表現にどの程度影響しているかを示しています。

次の文は 2 回登場します。動物は疲れていたため、通りを渡りませんでした。'「'it'」という単語が、1 つの文の中で他方の文の 5 つのトークン('The'、'animal'、'street'、'it' とピリオド)を結びつけます。'it'と'animal'の間の線が最も強いです。

自己注意レイヤは、「それ」に関連する単語を強調表示します。この場合、アテンション レイヤはそれが参照する可能性のある単語をハイライト表示するよう学習し、最も高い重みを動物に割り当てます。

nトークンのシーケンスの場合、自己注意は、エンベディングのシーケンスを n 回ずつ、シーケンス内の各位置に 1 回変換します。

アテンションマルチヘッド セルフアテンションもご覧ください。

感情分析

#language

統計アルゴリズムまたは機械学習アルゴリズムを使用して、サービス、プロダクト、組織、トピックに対するグループ全体の態度(ポジティブかネガティブか)を特定します。たとえば、自然言語理解を使用して、アルゴリズムにより大学のコースのテキスト フィードバックに対する感情分析を行い、学生がそのコースを全般的に好評または低評価している程度を決定できます。

シーケンス間タスク

#language

トークンの入力シーケンスをトークンの出力シーケンスに変換するタスク。たとえば、次の 2 つの一般的なシーケンス シーケンス タスクは次のとおりです。

  • 翻訳者:
    • 入力シーケンスの例: "ILove you."
    • 出力シーケンスの例: "Je t'aime."
  • 質問への回答:
    • 入力シーケンスの例: "ニューヨーク市に車が必要ですか?quoquo;
    • 出力シーケンスの例: "No.車を家に置いてください。"

スパースな特徴

#language
#fundamentals

値が主にゼロまたは空である特徴。たとえば、1 個の 1 値と 100 万個の 0 値を含む特徴はスパースです。これに対して、高密度の特徴の値は、主にゼロや空ではありません。

機械学習では、驚くほど多くの特徴がスパースな特徴となります。カテゴリ特徴は通常、スパースな特徴です。たとえば、森林に生息する 300 種類のツリーの中で、1 個のサンプルでカエデだけを識別できます。また、動画ライブラリにアップロード可能な膨大な数の動画の中から、「Casablanca.&quot」を 1 つの例だけで識別することもできます。

モデルでは、通常、スパースな特徴をワンホット エンコーディングで表します。ワンホット エンコーディングが大きい場合は、ワンホット エンコーディングの上に埋め込みレイヤを配置すると、効率が向上します。

スパース表現

#language
#fundamentals

ゼロ以外の要素の位置のみをスパースな特徴に格納する。

たとえば、species という名前のカテゴリ特徴が、特定のフォレスト内の 36 種類のツリーを識別するとします。さらに、各が 1 つの種のみを識別すると仮定します。

各例のツリー種を表すには、ワンホット ベクトルを使用できます。ワンホット ベクトルには、1 つの 1(この例の特定のツリー種を表す)と 35 個の 0(この例にない 35 種類のツリーを表す)が含まれます。maple のワンホット表現は次のようになります。

位置 0 ~ 23 の値は値 0、位置 24 は値 1、位置 25 ~ 35 の位置は値 0 になります。

一方、スパース表現では、単純に特定の生物の位置を特定します。maple が 24 番目にある場合、maple のスパース表現は次のようになります。

24

スパース表現は、ワンホット表現よりもはるかにコンパクトです。

段階的なトレーニング

#language

一連の離散ステージでモデルをトレーニングする戦術。目標は、トレーニング プロセスを高速化するか、モデルの品質を向上させることです。

下の図は、プログレッシブ スタッキングのアプローチを示しています。

  • ステージ 1 には 3 つの隠れ層、ステージ 2 には 6 つの隠れ層、ステージ 3 には 12 の隠れ層が含まれます。
  • ステージ 2 では、ステージ 1 の 3 つの隠しレイヤで学習した重みを使用してトレーニングを開始します。ステージ 3 では、ステージ 2 の 6 つの隠しレイヤで学習した重みを使用してトレーニングを開始します。

3 つのステージ(ステージ 1、ステージ 3、ステージ 2、ステージ 3 でラベル付け)各ステージにはさまざまな数のレイヤが含まれます。ステージ 1 には 3 つのレイヤ、ステージ 2 には 6 つのレイヤ、ステージ 3 には 12 のレイヤが含まれます。ステージ 1 の 3 つのレイヤは、ステージ 2 の最初の 3 つのレイヤになります。同様に、ステージ 2 の 6 個のレイヤは、ステージ 3 の最初の 6 個のレイヤになります。

パイプラインもご覧ください。

T

token

#language

言語モデルでは、モデルがトレーニングして予測を行うアトミックな単位。トークンは通常、次のいずれかです。

  • 単語(例: 「猫のような犬」)は、3 つの単語トークン「犬」、「いいね」、「猫」で構成されます。
  • 文字(たとえば、バイクの魚というフレーズ)が 9 文字のトークンから構成されます。(空白はトークンの 1 つとしてカウントされます)。
  • サブワード - 単一の単語を 1 つのトークンにすることも、複数のトークンにすることもできます。サブ単語は、ルート単語、プレフィックス、またはサフィックスで構成されます。たとえば、サブ単語をトークンとして使用する言語モデルでは、単語「dogs」を 2 つのトークン(ルート単語「dog」と複数サフィックス「s」)で表示できます。その同じ言語モデルで、1 つの単語「taller」が 2 つのサブ単語(ルート単語の「tall」と接尾辞の「er」)として認識される場合があります。

言語モデル以外のドメインでは、トークンは他の種類のアトミック単位を表すことができます。たとえば、コンピュータ ビジョンでは、トークンをイメージのサブセットにできます。

変圧器

#language

Google で開発されたニューラル ネットワーク アーキテクチャは、自己注意メカニズムを使用して、一連の入力エンベディングを畳み込み再帰型ニューラル ネットワークに依存せずに一連の出力エンベディングに変換します。Transformer は、自己注意レイヤのスタックと見なすことができます。

Transformer には、次のいずれかを含めることができます。

エンコーダは、一連のエンベディングを同じ長さの新しいシーケンスに変換します。エンコーダには N 個の同一レイヤが含まれており、各レイヤには 2 つのサブレイヤが含まれています。この 2 つのサブレイヤは、入力エンベディング シーケンスの各位置に適用され、シーケンスの各要素を新しいエンベディングに変換します。最初のエンコーダ サブレイヤは、入力シーケンス全体から情報を集約します。2 番目のエンコーダ サブレイヤは、集計された情報を出力の埋め込みに変換します。

デコーダは、一連の入力エンベディングを一連の出力エンベディングに変換します。このエンベディングは、異なる長さになる可能性もあります。デコーダには 3 つのサブレイヤを持つ N 個の同じレイヤも含まれますが、そのうちの 2 つはエンコーダ サブレイヤに似ています。3 つ目のデコーダ サブレイヤは、エンコーダの出力を受け取り、セルフアテンション メカニズムを使用してエンコーダから情報を収集します。

ブログ記事の Transformer: 新しい言語理解のための新しいニューラル ネットワーク アーキテクチャでは、Transformer の概要を紹介しています。

トリグラム

#seq
#language

N=3 の N-gram

U

単方向

#language

テキストの対象セクションより前にあるテキストのみを評価するシステム。 一方、双方向システムでは、テキストのターゲット セクションより前にあるテキストと、その後に続くテキストの両方を評価します。詳しくは、双方向をご覧ください。

単方向言語モデル

#language

可能性に基づく言語モデルは、ターゲット トークンのではなく、にあるトークンのみを使用します。対照的に、双方向言語モデルです。

W

単語の埋め込み

#language

埋め込みベクトル内の単語セット内の各単語を表現する。つまり、各単語を 0.0 ~ 1.0 の浮動小数点値のベクトルで表します。意味が同じの単語は、意味の異なる単語よりも類似した表現になります。たとえば、にんじん、セロリ、キュウリはすべて同じものを表しますが、飛行機、サングラス、歯磨き粉の表現とはまったく異なります。