翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Sequence to Sequence アルゴリズム
Amazon SageMaker AI Sequence to Sequence は教師あり学習アルゴリズムで、入力はトークンのシーケンス (テキスト、オーディオなど) で、生成される出力は別のトークンのシーケンスです。アプリケーションの例として、機械学習 (1 つの言語で入力した文が別の言語でどうなるかを予測する)、テキスト要約 (入力した長い文字列のより短い文字列での要約を予測する)、音声認識 (トークンの出力文に変換したオーディオクリップ) が含まれます。近年、このドメインの問題はディープニューラルネットワークによってモデル化に成功し、以前の方式を大幅に超えるパフォーマンスを示しています。Amazon SageMaker AI seq2seq は、エンコーダー/デコーダーアーキテクチャーとして注意を払った、反復ニューラルネットワーク (RNNs) モデルと畳み込みニューラルネットワーク (CNN) モデルを使用します。
トピック
Sequence to Sequence アルゴリズムの入出力インターフェイス
トレーニング
SageMaker AI seq2seq はRecordIO-Protobuf 形式のデータを想定しています。ただし、通常の場合と同様に、トークンは浮動小数点ではなく整数であることが想定されます。
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 サンプルノートブックを参照してください。
Sequence to Sequence アルゴリズムの EC2 インスタンスに関する推奨事項
Amazon SageMaker AI seq2seq アルゴリズムは GPU インスタンスタイプでのみサポートし、単一のマシンでのみトレーニングできます。ただし、複数の GPU を備えたインスタンスを使用することができます。seq2seq アルゴリズムは P2、P3、G4dn、G5 GPU インスタンスファミリーをサポートします。
Sequence to Sequence サンプルノートブック
SageMaker AI Sequence to Sequence アルゴリズムを使用して英語とドイツ語の翻訳モデルをトレーニングする方法を示すサンプルノートブックについては、「Machine Translation English-German Example Using SageMaker AI Seq2Seq