音声インタラクションの知識ポイントのまとめ

1 NLU

1. コンピュータが自然言語(人間の言語)などを理解できるようにする、理解に重点を置いた自然言語理解(NLU)。

2. 困難:

(1)言語の多様性:言語の構成は不規則であり、その組み合わせは多様かつ柔軟である

(2) 言語の曖昧さ:多義性

(3)言語のノイズ: 単語が多い、少ない、タイプミス、ノイズなどの問題があります。

(4)言語の知識依存性:生得的な経験と知識に依存する

(5) 言語コンテキスト: 異なるコンテキストは異なるセマンティクスを持ちます。

3. 階層:

(1) 音声分析: 音素規則に従って、個々の音素を音声ストリームから区別し、音素形態学的規則に従って音節とそれに対応する形態素または単語を見つけ出す必要があります。

(2)語彙解析:語彙の各形態素を調べ、そこから言語情報を取得します。

(3) 構文解析:文や語句の構造を解析し、文中の単語や語句などの関係とそれぞれの機能を明らかにすることを目的としています。

(4)意味分析: 言葉の意味、構造的意味、およびそれらの組み合わせた意味を調べて、その言語によって表現される真の意味または概念を決定します。

(5)語用論的分析:言語が存在する外部環境が言語使用者に及ぼす影響を研究する。

4. 技術開発の歴史:

(1) ルールベースの手法:ルールを要約して自然言語の意図を判断する手法 一般的な手法としては、CFG、JSGFなどが挙げられます。

  • 文脈自由文法 (CFG): 文字列が通常の文法に準拠していることを検証します。

(2) 統計ベースの手法: 言語情報の統計と分析を実行し、そこから意味的特徴を抽出する一般的な手法には、SVM、HMM などが含まれます。

  • 隠れマルコフ モデル HMM
  • 最大エントロピー マルコフ モデル MEMM
  • 条件付きランダムフィールド (CRF)

(3) 深層学習に基づく手法:CNN、RNN、LSTM

2 NLG

1.自然言語生成 (NLG、自然言語生成)。構造化データ、テキスト、グラフィックス、オーディオ、ビデオなどを提供して、人間が理解できる自然言語形式のテキストを生成します。

2.モード:

(1) テキストからテキストへ: テキストから言語への生成

(2) データからテキストへ: データから言語への生成

(3) 画像からテキストへ: 画像から言語への生成

3.方法:

(1) 単純なデータの結合: (Excel のような関数を介して) データをテキストに変換する、自然言語処理の単純化された形式。

(2) テンプレート化された NLG: この形式の NLG は、テンプレート駆動モデルを使用して出力を表示します。データは動的に変化し続け、事前定義された一連のビジネス ルールによって生成されます。

(3) 高度な NLG: この形式の自然言語生成は人間とまったく同じです。通常、深層学習ベースのエンコーダ/デコーダ構造で実現されるように、意図を理解し、インテリジェンスを追加し、コンテキストを考慮して、結果をわかりやすい方法で表示します。

4. 手順:

ステップ 1: コンテンツの決定 - コンテンツの決定

まず、NLG システムは、構築中のテキストにどのような情報を含めるべきであり、何を含めるべきではないかを決定する必要があります。多くの場合、データには最終的に伝達される情報よりも多くの情報が含まれます。

ステップ 2: テキストの構造化 - テキストの構造化

どのような情報を伝える必要があるかを決定した後、NLG システムはテキストの順序を合理的に整理する必要があります。例えば、バスケットボールの試合を報道する場合、「いつ」「どこで」「どの2チーム」を表現することが優先され、次に「試合の概要」を表現し、最後に「試合の終了」を表現することになる。

ステップ 3: 文の集約 - 文の集約

すべての情報を独立した文で表現する必要はなく、複数の情報を 1 つの文に結合すると、より流暢で読みやすくなります。

ステップ 4: 文法化 – 語彙化

各文の内容が決まれば、情報を自然言語に整理することができます。このステップでは、さまざまな情報の間にいくつかのリンク単語を追加し、より完全な文のように見えます。

ステップ 5: 参照式の生成 - 参照式の生成|REG

このステップは文法化に非常に似ており、単語やフレーズを選択して完全な文を形成します。ただし、彼と文法化の本質的な違いは、「REG はコンテンツのドメインを識別し、(他のドメインではなく) このドメインの語彙を使用する必要がある」ということです。

ステップ 6: 言語の実現 - 言語の実現

最後に、関連するすべての単語やフレーズが特定されたら、それらを組み合わせて、適切に構造化された完全な文を形成する必要があります。

5. 典型的なアプリケーション:

(1) アプリケーションの目標: パーソナライズされたコンテンツを大規模に生成できるようにすること、人間がデータについて洞察を得るのを支援し、データを理解しやすくすること、コンテンツ制作を加速すること。

(2) 自動ニュース作成(自動終結)、チャットロボット(機械接客)、BI(ビジネスインテリジェンス)解釈・レポート生成

(3) エッセイ執筆、要約生成、自動詩執筆、ニュース執筆、レポート作成、

3 音声インタラクション

       音声対話のプロセスと使用されるテクノロジを次の図に示します。

  • 自動音声認識: 略して ASR は、音声をテキストに変換するプロセスであり、耳に相当します。
  • 自然言語処理 (Natural Language Processing): NLP と呼ばれる、テキストを理解して処理するプロセスであり、脳に相当します。
  • Text-To-Speech: 略して TTS は、テキストを音声に変換するプロセスであり、口に相当します。

3.1 音声認識 (ASR)

音声認識のプロセスは、「入力-エンコード-デコード-出力」です。

 

音声入力は一般に時間領域の音声信号であり、数学的には一連のベクトル (長さ T、次元 d) で表され、出力は一連のトークン (長さ N、V が異なる) で表されるテキストです。一般に、ASR 問題では、入力信号の長さ T はトークンの長さ N より大きくなります。

 1.コーディング

サウンドを機械が認識できるパターンに変換し、デジタル ベクトルで表します。入力された音声信号はコンピュータで直接認識することができないため、まず音声信号を小さなセグメントに分割し、各セグメントを一定の規則に従ってベクトルで表現する必要があります。

2. デコード: デジタルベクトルをテキストにつなぎ合わせる形式

まず、コンパイルされたベクトルを音響モデルに入力すると、各セグメント内の文字が何に対応しているかを取得できます。

次に、翻訳された文字は、言語モデルを通じて単語に組み立てられます。

3. トークンの選択

トークンは音声とテキストの橋渡しとして理解できます 私たちが聞いた音声は AD を介してデジタル信号ストレージに変換され、マトリックスの形でコンピュータに保存されます 日常生活のテキストにも変換が必要ですASR 問題において、現在主流のトークンは次のとおりです。

(1)、音素: 音の基本要素がトークンとして使用されます。異なる単語は異なる音素で構成されます。入力音声にどの音素が存在するかを識別し、認識されたテキストに結合することで、非常に重要なマッピング関係テーブルが作成されます。したがって、このトークンの欠点も明らかです。つまり、辞書を取得するには言語学の知識が必要であり、文書が異なれば異なる辞書が与えられることになります。

(2). 書記素:単語で書かれた最小単位をトークンとして使用

利点: (1) 言語知識は必要なく、レキシコンフリー (2) トレーニング中に出現しなかったトークンに遭遇した場合でも、どのような結果が得られるか予想できる (手動で面白い)

欠点: (1) 使用するのが非常に難しいです。多くの発音は同じですが、対応するトークンは実際に異なります。より強力なコンテキスト情報が必要であり、モデル学習の要件が高くなります。現時点では、より複雑な問題に直面しています。質問;(2) 英語を例にとると、スペルミスのリスクは比較的大きい

(3).Word: トークンとして単語を使用することは、トークン V の総数が非常に大きくなるため、多くの言語には適さないことがよくありますが、英語では単語を区別する方法として明確なスペースがあるため、V の数はしかし、中国語は単語をトークンとして使用するのが難しく、同時にトルコ語を例に取ると、接尾辞を継続的に追加して新しい単語になる可能性があり、すべてを網羅することはできないため、このような言語は使用できません。単語をトークンとして使用するのに適しています。

(4).形態素:特定の意味をもつ最小単位を単語と書記素の間のトークンとして使用 英語を例にとると、unbreakable→「un」「break」「able」、rekillable→「re」 「殺す」「できる」

        では、言語の形態素を取得するにはどうすればよいでしょうか? 一般に次の 2 つの方法があります。

        言語学者に助けを求める

        統計でいくつかのパターンの統計が見つかりました

(5).Bytes: より本格的なトークンは、コンピュータ内のバイトを直接選択します。明らかに、この方法のトークンは言語に依存しません。

        上記のトークンメソッドの使用率は次のとおりです。

                書記素 41%

                音素 32%

                形態素 17%

                ワード 10%

3.2 音声合成 (TTS)

一般に Text To Speech (TTS) として知られる音声合成は、任意の入力テキストを対応する音声に変換できるテクノロジーです。音声には、情報、音色、リズムという 3 つの重要な要素があります

音声合成は一般に、適用されるアルゴリズムの考え方に応じて、統計パラメータに基づく音声合成 (従来型) と深層学習に基づく音声合成 (エンドツーエンド) の 2 つのカテゴリに分類できます

3.2.1 従来の音声合成システム

1. 一般的な枠組み

通常、フロントエンドとバックエンドの2 つのモジュールが含まれています。フロントエンド モジュールは主に入力テキストを分析し、バックエンド モジュールが必要とする言語情報を抽出します中国語合成システムの場合、フロントエンド モジュールには通常、テキストの正則化、単語の分割、品詞予測、多音の曖昧さ回避、韻律予測などのサブモジュールが含まれています。バックエンドモジュールは、フロントエンドの解析結果に応じて、所定の方法で音声波形を生成します

フロントエンド モジュールは通常、NLP (自然言語処理) を使用してテキストの言語的特徴を抽出します。

バックエンドモジュールは一般に、統計パラメータモデリングに基づく統計パラメータ音声合成 (SPSS、以下パラメータ合成と呼ぶ) と、単位選択と波形結合に基づく音声合成 (以下、スプライシングと呼ぶ) の 2 つの主要な技術ラインに分けられます合成)。

  • パラメータ合成: トレーニング段階では、音声音響特徴と継続時間情報に対してコンテキスト依存モデリングが実行され、合成段階では、継続時間モデルと音響モデルによって音響特徴パラメータが予測され、音響特徴パラメータは事後処理されます。最後に、ボコーダーを通じて音声波形が復元されます。(長所: サウンドバンクが小さい場合、比較的安定した合成効果が得られます。短所: 統計モデリングによってもたらされる音響特性パラメータが滑らかすぎるため、ボコーダーによって音質が損なわれます。)
  • スプライシングと合成: 通常、統計モデルはユニット選択のガイドとして使用され、トレーニング フェーズは基本的にパラメーター合成と同じです。合成段階では、モデル計算コストを使用してユニットの選択をガイドし、動的プログラミング アルゴリズムを使用して最適なユニット シーケンスを選択し、選択したユニットに対してエネルギー正則化と波形スプライシングが実行されます。(利点:実際の音声クリップを直接使用して、音声品質を最大限に維持できます。欠点:大規模なサウンドライブラリが必要であり、ドメイン外のテキストの合成効果は保証されません。)

2. 統計パラメータに基づく音声合成

  • 特徴抽出機能の主な仕事は、音響モデルがより正確な音響特徴を生成できるように言語特徴を生成することです。
  • 音声は複雑でモデル化が難しいため、音響モデルは音声波形を直接生成できません。したがって、音響モデルは通常、メルスペクトルなどの中間形式表現を出力し、ボコーダはその中間形式に従って音声を表現する。
  • ボコーダーはメルスペクトルなどの音響特徴を通じてオーディオを生成します. 低次元の音響特徴を高次元の音声波形にマッピングする必要があり, 計算の複雑さが高くなります. したがって, 波形復元プロセスは重要なステップの1つです.音声合成システムの効率向上に。さらに、ボコーダーは大量の情報を学習して予測する必要があるため、最終的な音声品質も制限されます。

3.2.2 エンドツーエンドの合成音声システム

1. 一般的な枠組み

2. 深層学習による音声合成

  • テキストの前処理: 中国語テキストにリズム情報を追加し、中国語の文字を音声シーケンスに変換します。
  • 音響特徴生成ネットワーク:テキスト フロントエンドによって出力される情報に基づいて音響特徴を生成します。たとえば、音声シーケンスをメル スペクトルまたは線形スペクトルにマッピングします。
  • ボコーダー: スペクトルなどの音響特徴を使用して音声サンプル ポイントを生成し、時間領域波形を再構築します。たとえば、対応する音声にメル スペクトルを復元します。

1.2.1 特徴ネットワークモデルのアルゴリズム

1,タコトロン

Tacotron は、初の真のエンドツーエンドの音声合成システムです。テキストまたは表音文字を入力し、Linear-Spectrum を出力し、ボコーダー Griffin-Lim を通じて波形に変換します。Tacotron は現在 2 世代が発売されており、Tacotron2 の主な改良点は、モデルの簡素化、複雑な CBHG 構造の削除、およびアテンション機構の更新により、アライメントの安定性が向上したことです。

(1) 構造

ネットワークは 4 つの部分に分かれており、左側がエンコーダー、中央がアテンション、右下がデコーダー、右上がポストプロセッシングです

入力: さまざまな言語の多声文字や未録音の単語の発音などの問題を回避するために、Tacotron は通常、入力として表音文字を使用します。たとえば、中国語は「ピンイン」を入力として使用でき、Python ライブラリを使用して変換できます。漢字をピンインに変換します。

出力: さまざまな目的に応じて、Tacotron はLinear-SpectrumまたはMel-Spectrumの 2 種類のスペクトルを出力できます。選択はボコーダーごとに行われます。

ボコーダ

スペクトラム

グリフィン・リム

線形スペクトル

ウェーブネット

Linear-Spectrum または Mel-Spectrum (それほどコストがかからず、推奨)

後処理: Tacotron+WaveNet の枠組みの下で、Tacotron は表音文字を入力してスペクトルを出力し、WaveNet はスペクトルを入力して波形を出力します。後処理モジュールは Tacotron と WaveNet の間に追加されます。主な目的は、複数のフレームを連結し、生成の品質を向上させることです。seq2seq フレームワークは、デコーダが最初の数フレームのみを認識でき、後者については何も認識しないと判断します。ただし、後処理では、より多くの参照情報を使用して前後の数フレームを観察できるため、生成品質はより高くなります。

(2)CBHG

エンコーダーとポストプロセッシングの両方に、CBHGと呼ばれる構造体が含まれています。いわゆる CBHG は、次の図に示すように、1 次元畳み込みバンク + ハイウェイ ネットワーク + 双方向 GRUです。

CBHG のネットワーク構造は青いボックスで示されており、1 次元畳み込みフィルター バンク、ハイウェイ ネットワーク、双方向 GRU で構成されており、シーケンス特徴を抽出するためによく使用される強力なネットワークです

(3) Tacotron + WaveNet (ボコーダー)

Tacotron は表音文字をスペクトルに解凍できますが、スペクトルを波形に復元するにはボコーダー(SampleRNN、WaveNet、WaveRNN など) が必要です。WaveNet は、サンプル ポイント自己回帰モデルの仕組みです。モデルは、いくつかの履歴サンプリング ポイントを入力し、次のサンプリング ポイントの予測値を出力します。つまり、履歴に基づいて将来を予測します。

完全な TTS システムの全体的なプロセスは次のとおりです: Tacotron に表音文字を入力し、Mel-Spectrum を出力し、WaveNet に Mel-Spectrum を入力し、音声波形を出力します。

  1. 声が低い

DeepVoice は、従来のパラメータ合成の TTS システムを複数のサブモジュールに分割し、各サブモジュールはニューラル ネットワーク モデルに置き換えられます。DeepVoice は、音声合成を 5 つの部分に分割します。つまり、テキストから音素への変換 (形態素から音素への変換、G2P とも呼ばれます)、オーディオ セグメンテーション、音素継続時間予測、基本周波数予測、および音響モデルです

(1) メリットとデメリット

利点: 完全な TTS ソリューションを提供します。機能を提供するために他のモジュールに依存する必要がある WaveNet とは異なり、使用される人為的な機能も削減され、合成速度が速く、リアルタイム パフォーマンスが優れています。

欠点: エラーが累積し、5 つのサブモジュールのエラーが累積し、1 つのモジュールが失敗し、合成全体が失敗し、開発とデバッグが困難になります。人工的な特徴の使用は削減されていますが、この完全なソリューションでは、音素記号、アクセントがマークなどの機能はまだ必要ですが、テキスト入力を直接使用しても多声文字の問題を十分に解決できません。

(2) DeepVoice2:さまざまな音色の音声を合成できる「スピーカー」ベクトルを導入します

1.2.2 ボコーダーモデルのアルゴリズム

1,グリフィン・リム

Griffin-Lim は、振幅スペクトルのみが存在し、位相スペクトルが存在しない場合に、時間領域波形を再構築するためのアルゴリズムです。位相情報を捨てた音声波形を復元する必要があるため、反復により元の情報をできるだけ「推測」する必要があります。

2,ウェーブネット

WaveNet は典型的な自己回帰生成モデルであり、いわゆる自己回帰生成モデルは、過去のある時点の変数の線形結合を使用して、将来のある時点の変数を記述する線形回帰モデルです音声について事前の仮定を一切立てずに、ニューラル ネットワークを使用してデータから分布を学習し、音声サンプル値を直接予測するのではなく、サンプリング プロセスを通じて音声を生成します。

利点: 音響特徴に基づいて高品質の音声を生成できます。

欠点: 1) 毎回 1 つのサンプリング ポイントを予測するのが遅い、2) WaveNet は完全な TTS ソリューションではなく、高レベルの機能を提供するために他のモジュールに依存している、フロントエンド分析が間違っており、合成効果に直接影響を与える; 3) TTS で使用する場合、最初のサンプリング ポイントの選択が重要です

3,ウェーブRNN

WaveRNN は、特にシンプルな構造のまったく新しいボコーダー アーキテクチャを採用しており、本体は単層リカレント ニューラル ネットワーク (RNN) のみで構成されており、RNN はスパース行列を使用することで計算量をさらに削減しています。 、合成速度は約 10 倍速くなります。

4 グラフニューラルネットワーク

グラフ ニューラル ネットワーク (GNN) は、グラフ データとニューラル ネットワークを組み合わせたもので、グラフ データに対してエンドツーエンドの計算を実行します。

  1. GNN 構造

ニューラル ネットワークの最も基本的なネットワーク構造である全結合層 (MLP) と比較すると、特徴行列に重み行列が乗算され、グラフ ニューラル ネットワークには追加の隣接行列があります計算形式は非常に単純で、3 つの行列を乗算し、非線形変換を追加します。

グラフ ニューラル ネットワークの比較的一般的なアプリケーション モードは、下図に示すとおりです。入力はグラフであり、多層グラフの畳み込みや活性化関数などのさまざまな演算の後、最終的に各ノードの表現が得られ、ノード分類、リンク予測、グラフとサブグラフの生成、その他のタスク。

     2. GNN 分類

グラフ畳み込みネットワーク (GCN)、グラフ アテンション ネットワーク、グラフ オートエンコーダー、グラフ生成ネットワーク、およびグラフ時空間ネットワーク)。

    3. いくつかの古典的なモデルとグラフ ニューラル ネットワークの開発

GNN の最も古典的なモデルは、以下に紹介する GCN、GraphSAGE、および GAT です。

(1)GCN

グラフ畳み込みネットワークによる半教師あり分類(ICLR2017) https://arxiv.org/pdf/1609.02907

グラフ畳み込みネットワークは、隣接するノードの特徴を集約し、線形変換を実行します以下に示すように:

同時に、GCN が K ホップの隣接ノードの情報を取得できるようにするために、作成者は、K レイヤーをスタックするなど、複数の GCN レイヤーもスタックします。

    上の式を行列で表すと次のようになります。

このうち、D - 1 2 × D - 1 2は正規化後の隣接行列、H (l) W (l)は層 l の全ノードの埋め込みに線形変換を行い、その左にを表す隣接行列。ノードごとに、そのノードの特徴は、隣接するノードの特徴を加算した結果として表現されます。( D - 1 2 × D - 1 2を行列 A に置き換えることは、GNN 構造図で説明されている 3 つの行列の乗算であることに注意してください)

GCN の欠点も明らかです。第一に、GCN は画像全体をメモリとビデオ メモリに配置する必要があるため、大量のメモリとビデオ メモリを消費し、大きな画像を処理できません。第二に、GCN は画像の構造を知る必要があります。トレーニング中の画像全体の情報 (予測対象のノードを含む) ですが、一部のタスクでは実際には実現できません。

(2)グラフサンプルと集計(GraphSAGE)

GCN の 2 つの欠点を解決するために、GraphSAGE が提案されました。GraphSAGE は帰納的学習フレームワークです。特定の実装では、トレーニング中にトレーニング サンプルからトレーニング サンプルへのエッジのみを保持し、次に 2 つのステップが含まれます: サンプルと集計。サンプルとは、近傍の数をサンプリングする方法を指します。集約とは、隣接ノードのエンベディング後にこれらのエンベディングを集約して自身のエンベディング情報を更新する方法を取得することを指します次の図は、GraphSAGE の学習プロセスを示しています。

最初のステップは、近隣のものをサンプリングすることです

2 番目のステップでは、サンプリングされた近隣エンベディングがノードに渡され、集約関数を使用してこれらの近隣情報が集約され、ノード エンベディングが更新されます。

3 番目のステップは、更新されたエンベディングに従ってノードのラベルを予測することです。

    以下の図は、トレーニングされた GrpahSAGE が新しいノードの埋め込みを生成する方法 (つまり、順伝播プロセス) を示しています。

まず、(line1) アルゴリズムは入力グラフ内のすべてのノードの固有ベクトルを初期化し、(line3) 各ノード v について、サンプリングされた隣接ノード N(v) を取得した後、(line4) 集約関数を使用して隣接ノードを集約します。情報 (line5) を取得し、独自の埋め込みと組み合わせた非線形変換を通じて独自の埋め込み表現を更新します。

アルゴリズムの K は、アグリゲータの数、重み行列の数、またはネットワークの層の数を指します。これは、ネットワークの各層のアグリゲータと重み行列が共有されるためです。

  • 集計

ネットワークの層数は、最も多くのアクセスを必要とする隣接ノードのホップ数 (ホップ) として理解できます。たとえば、図 1 の図 2 の赤いノードのホップ数は 2 ホップで、ネットワーク層数は2です。赤色のノードを更新するには、最初の層 (k=1) で、青色のノードの情報を赤色のソリューション ノードに集約し、緑色のノードの情報を青色のノードに集約します。2 番目の層 (k=2) では、赤色のノードのエンベディングが再び更新されますが、今回は青色のノードの更新されたエンベディングが使用されます。これにより、赤色のノードの更新されたエンベディングには青色のノードの情報が確実に含まれます。緑色のノード、つまり 2 ホップの情報。次の図は、ノード A と B の更新プロセスを示しています。

    一般的なアグリゲータは次のとおりです。

  • サンプル

GraphSAGE は固定長サンプリング方式を使用します。具体的には、必要な近傍数 S を定義し、置換を伴うリサンプリング/ネガティブ サンプリング方式を使用して S を実現します。各ノード (サンプリング後) に同じ数の近傍ノードがあることを確認します。これは、複数のノードとその近傍ノードを Tensor に結合し、バッチ トレーニングのために GPU に送信するためです。

  • アグリゲータのパラメータと重み行列 W を学習する

教師あり状況の場合、各ノードの予測ラベルと実際のラベルのクロスエントロピーを損失関数として使用できます。

教師なしの状況にある場合は、隣接するノードの埋め込み表現が可能な限り類似していると想定できるため、次の損失関数を設計できます。

  • GraphSAGEのメリットとデメリット

1) メリット

(1) サンプリングメカニズムを使用して、GCN がすべてのグラフの情報を知っていなければならないという問題を解決し、GCN トレーニング中のメモリとビデオメモリの制限を克服し、未知の新しいノードでもその表現を取得できます

(2) アグリゲータと重み行列のパラメータはすべてのノードで共有されます

(3) モデルのパラメータの数はグラフ内のノードの数とは関係がないため、GraphSAGE はより大きなグラフを処理できます。

(4) 教師ありタスクと教師なしタスクの両方を処理できます。

2) デメリット

ノードあたりの隣接ノードが非常に多いため、GraphSAGE のサンプリングでは、異なる隣接ノードの異なる重要性が    考慮されません。また、集約計算中の隣接ノードの重要性も現在のノードとは異なります。

(3)グラフ・アテンション・ネットワーク(GAT)

GNN が隣接ノードを集約するときに異なる隣接ノードの重要性を考慮しないという問題を解決するために、GAT は Transformer のアイデアを利用し、マスクされたセルフアテンション メカニズムを導入し、グラフ内の各ノードの表現を計算します。 、隣接ノードの特性が異なることに基づいて、異なる重みを割り当てます。入力グラフのグラフ アテンション レイヤーを次の図に示します。

このうち、a は単層フィードフォワード ニューラル ネットワークによって実現され、計算プロセスは次のようになります (重み行列 W はすべてのノードで共有されることに注意してください)。

アテンションが計算された後、隣接ノード情報を集約したノードの新しい表現を取得できます。計算プロセスは次のとおりです。

モデルの適合能力を向上させるために、マルチヘッド自己注意メカニズムも導入されています。つまり、複数のW kを使用して自己注意を同時に計算し、計算結果が結合されます (接続されています)。または合計):

さらに、GAT の構造の特性により、GAT は事前に構築されたグラフを使用する必要がないため、変換学習と帰納学習の両方に適しています

  • GAT の利点:

(1) トレーニング GCN はグラフ構造全体を理解する必要はなく、各ノードの隣接ノードを知るだけで済みます。

(2) 計算速度が速く、異なるノードでの並列計算が可能

(3) 変換学習と帰納学習の両方に使用でき、目に見えないグラフ構造も処理可能

4. 教師なしノード表現学習(Unsupervised Node Representation)

データのラベル付けのコストは非常に高いため、教師なしメソッドを使用してノードの表現を適切に学習できれば、非常に価値があり重要になります。より古典的なモデルには、GraphSAGE、グラフ オート エンコーダー (GAE) などが含まれます。

グラフオートエンコーダ(GAE)

モデルの一般的なプロセスは次のとおりです。グラフの隣接行列 A とノードの特徴行列 X を入力し、エンコーダ (グラフ畳み込みネットワーク) を通じてノードの低次元ベクトル表現の平均値 μ と分散 σ を学習します。 )、次に示すように、デコーダ (リンク予測) を使用して Figure を生成します。

上図から、エンコーダ (Encoder) は単純な2 層 GCN ネットワークを使用し、デコーダ (Encoder) は2 点間のエッジの確率を計算してグラフを再構築します。損失関数には、生成されたグラフ間の距離測定が含まれます。と元のグラフであり、ノードはベクトル分布の 2 つの部分と正規分布の KL 発散を表します。具体的な式を次の図に示します。

グラフ埋め込みは、単純な機械学習アルゴリズム (サポート ベクター マシン分類など) で処理するためにグラフのネットワーク トポロジとノード コンテンツ情報を保存することにより、グラフ内の頂点を低次元ベクトルとして表すことを目的としています。

 

ノート:

1、帰納的学習とトランスダクティブな学習

帰納的学習(帰納学習)は私たちの一般的な学習方法です。テスト データの特性はトレーニング中には確認されておらず、モデルはトレーニング データを通じてトレーニングされて予測が行われ、トレーニングされたモデルは新しいデータの予測に直接使用できます。

トランスダクティブ学習は、半教師あり学習のサブ問題である珍しい学習方法です。テストデータの特徴はトレーニング中に把握されており、すべてのデータの分布を観察することで予測が行われますが、新しいデータが追加された場合は、アルゴリズム全体を再トレーニングする必要があります。つまり、トランスダクティブ学習とは、トレーニング セット データとテスト セット データを使用してモデルを共同でトレーニングし、テスト セット データをテストに使用することです。

2、オートエンコーダ (AutoEncoder、AE) および変分オートエンコーダ (変分オートエンコーダ、VAE)

(1) オートエンコーダ

これは教師なし学習問題に属し、データの次元削減や特徴抽出のためのデータセットの前処理によく使用されます。 

特記事項:この記事は多数のブログを読んで作成しているため、他のブログから内容を抜粋している場合がございますが、もし不快な点がございましたら、誠に申し訳ございませんが、ご連絡いただければ解決させていただきます。

おすすめ

転載: blog.csdn.net/qq_43704127/article/details/128399638