翻訳、チャットボット、音声認識のようなAIタスクにパワーを与える、シーケンス・トゥ・シークエンス・モデルがどのように入力を出力シーケンスに変換するかをご覧ください。
Sequence-to-Sequence(Seq2Seq)モデルは、入力と出力の長さが異なる入力シーケンスを出力シーケンスに変換するように設計されたディープラーニングモデルのクラスです。この柔軟性により、自然言語処理(NLP)をはじめとする幅広いタスクで非常に強力な性能を発揮する。このコアとなるアイデアは、Googleと Yoshua Bengioの研究室の研究者による論文で紹介され、機械翻訳などの分野に革命をもたらした。
Seq2Seqモデルはエンコーダー・デコーダーアーキテクチャーの上に構築されている。この構造により、モデルは可変長のシーケンスを効果的に扱うことができる。
エンコーダー:このコンポーネントは、英語の文章などの入力シーケンス全体を処理する。一度に1つの要素ずつ(例えば単語ずつ)シーケンスを読み取り、情報をコンテキスト・ベクトルまたは "思考ベクトル "と呼ばれる固定長の数値表現に圧縮する。伝統的に、エンコーダーはリカレント・ニューラル・ネットワーク(RNN)か、シーケンシャルな情報を捉えることに長けているロング・ショート・ターム・メモリー(LSTM)のような高度な変種である。
デコーダー:このコンポーネントは、エンコーダーからのコンテキスト・ベクトルを初期入力として受け取る。このコンポーネントの仕事は、一度に1つの要素ずつ出力シーケンスを生成することである。例えば、翻訳タスクでは、単語ごとに翻訳文を生成する。各ステップからの出力は、次のステップでデコーダーにフィードバックされ、首尾一貫したシーケンスを生成することができる。このプロセスは、特別なシーケンス終了トークンが生成されるまで続けられる。Seq2Seqの性能を大幅に向上させた重要な技術革新は、アテンション・メカニズムである。アテンション・メカニズムにより、デコーダは出力を生成しながら、元の入力シーケンスのさまざまな部分を振り返ることができる。
可変長の入力を可変長の出力にマッピングできるため、Seq2Seqモデルは非常に汎用性が高い。
RNNに基づくSeq2Seqモデルは画期的であったが、この分野は進化している:
Seq2SeqはRNNベースのエンコーダ・デコーダ構造を指すことが多いが、中間表現を使って入力配列を出力配列にマッピングするという一般的な原理は、多くの最新アーキテクチャの中心であり続けている。PyTorchや TensorFlowのようなツールは、従来のシーケンスモデルと最新のシーケンスモデルの両方を実装するためのビルディングブロックを提供します。Ultralytics HUBのようなプラットフォームを使用することで、学習プロセスの管理を合理化することができ、モデル展開パイプライン全体を簡素化することができます。