翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Sequence-to-Sequence アルゴリズム
Amazon SageMaker Sequence to Sequence は、教師あり学習アルゴリズムで、入力はトークンのシーケンス (テキスト、オーディオなど) で、生成された出力はトークンの別のシーケンスです。アプリケーションの例としては、機械翻訳 (ある言語から文を入力し、その文が別の言語で何になるかを予測する)、テキストの要約 (長い単語の文字列を入力し、要約である短い単語の文字列を予測する)、 speech-to-text (オーディオクリップがトークンの出力文に変換される) などがあります。近年、このドメインの問題はディープニューラルネットワークによってモデル化に成功し、以前の方式を大幅に超えるパフォーマンスを示しています。Amazon SageMaker seq2seq は、エンコーダーとデコーダーのアーキテクチャとして注意しながら、反復ニューラルネットワーク (RNNs) と畳み込みニューラルネットワーク (CNN) モデルを使用します。
トピック
アルゴリズムの入力/出力インターフェイス Sequence-to-Sequence
トレーニング
SageMaker seq2seq はRecordIO形式のデータを期待します。ただし、通常の場合と同様に、トークンは浮動小数点ではなく整数であることが想定されます。
seq2seq サンプルノートブック
前処理の完了後、アルゴリズムをトレーニングのために呼び出すことができます。アルゴリズムは以下の 3 つのチャネルを想定します。
-
train
: トレーニングデータ (事前処理スクリプトによって生成されるtrain.rec
ファイルなど) が含まれている必要があります。 -
validation
: 検証データ (事前処理スクリプトによって生成されるval.rec
ファイルなど) が含まれている必要があります。 -
vocab
: 2 つの語彙ファイル (vocab.src.json
とvocab.trg.json
) が含まれている必要があります
アルゴリズムによってこれらの 3 つのチャネルでデータが見つからなかった場合、トレーニングの結果はエラーになります。
推論
ホストされるエンドポイントの場合、推論は 2 つのデータ形式をサポートします。スペース区切りのテキストトークンを使用して推論を実行するには、application/json
形式を使用します。それ以外の場合は、recordio-protobuf
形式を使用して整数にエンコードされたデータを処理します。どちらのモードも入力データのバッチ処理をサポートしています。application/json
形式では、アテンション行列を視覚化することもできます。
-
application/json
: 入力を JSON 形式で想定し、出力を JSON形式で返します。コンテンツタイプと受け取りタイプは両方ともapplication/json
である必要があります。各シーケンスは空白で区切られたトークンの文字列であることが要求されます。この形式は、バッチ内のソースシーケンスの数が少ないときに推奨されます。また、次の追加の設定オプションにも対応しています。configuration
: {attention_matrix
:true
}: 特定の入力シーケンスについてアテンション行列を返します。 -
application/x-recordio-protobuf
: 入力をrecordio-protobuf
形式で要求し、出力をrecordio-protobuf format
形式で返します。コンテンツタイプと受け取りタイプは両方ともapplications/x-recordio-protobuf
である必要があります。この形式では、後続のプロトコルバッファーへのエンコードのために、ソースシーケンスを整数のリストに変換する必要があります。この形式は、一括での推論に推奨されます。
バッチ変換の場合、推論は JSON Lines 形式をサポートします。バッチ変換は、入力を JSON Lines 形式で想定し、出力を JSON Lines 形式で返します。コンテンツタイプと受け取りタイプは両方とも application/jsonlines
である必要があります。入力の形式は次のとおりです。
content-type: application/jsonlines {"source": "source_sequence_0"} {"source": "source_sequence_1"}
レスポンスの形式は次のとおりです。
accept: application/jsonlines {"target": "predicted_sequence_0"} {"target": "predicted_sequence_1"}
推論のために入力と出力を特定の形式にシリアル化および逆シリアル化する方法の詳細については、Sequence-to-Sequence サンプルノートブックを参照してください。
EC2 アルゴリズムの Sequence-to-Sequenceインスタンスレコメンデーション
Amazon SageMaker seq2seq アルゴリズムはGPUインスタンスタイプでのみ をサポートし、1 つのマシンでのみトレーニングできます。ただし、複数の でインスタンスを使用できますGPUs。seq2seq アルゴリズムはP2, P3, G4dnGPUインスタンスファミリーをサポートします。 G5
Sequence-to-Sequence サンプルノートブック
Sequence SageMaker to Sequence アルゴリズムを使用して英語とドイツ語の翻訳モデルをトレーニングする方法を示すサンプルノートブックについては、「Machine Translation English-German Example Using SageMaker Seq2Seq