トピックのモデリング - Amazon Comprehend

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

トピックのモデリング

Amazon Comprehend を使用してドキュメントコレクションの内容を調べ、共通のテーマを判断できます。たとえば、Amazon Comprehend にニュース記事のコレクションを渡すと、スポーツ、政治、エンターテイメントなどのテーマを判断します。ドキュメント内のテキストには、注釈を付ける必要はありません。 

Amazon Comprehend は、 潜在的ディリクレ配分法ベースの学習モデルを使用して、一連のドキュメント内のトピックを判断します。各ドキュメントを調べて、単語の文脈と意味を判断します。  ドキュメントセット全体で同じ文脈に属することが多い単語の集合がトピックを構成します。

単語は、そのトピックがドキュメント内でどの程度一般的であるか、およびトピックが単語とどの程度親和性を持っているかに基づいて、ドキュメント内のトピックに関連付けられます。特定のドキュメント内のトピック分布に基づいて、同じ単語を異なるドキュメントの異なるトピックに関連付けることができます。

たとえば、主にスポーツに関する記事の「グルコース」という単語を「スポーツ」というトピックに割り当てて、「医学」に関する記事内の同じ単語を「医学」というトピックに割り当てることができます。

トピックに関連する各単語には、その単語がトピックの定義にどの程度役立つかを示す重みが付けられます。  重みは、ドキュメントセット全体で、その単語がトピック内の他の単語と比較して何回出現するかを示します。

最も正確な結果を得るには、Amazon Comprehend に可能な限り多くのコーパスを提供する必要があります。  最善の結果を得るには:

  • 各トピックモデリングのジョブでは、少なくとも 1,000 件のドキュメントを使用する必要があります。

  • 各ドキュメントは 3 センテンス以上必要です。

  • ドキュメントの大部分が数値データで構成されている場合は、コーパスから削除する必要があります。

トピックモデリングは非同期プロセスです。  ドキュメントのリストは、 StartTopicsDetectionJobオペレーションを使用して Amazon S3 バケットから Amazon Comprehend に送信します。 Amazon S3 レスポンスは Amazon S3 バケットに送信されます。入力バケットと出力バケットの両方を設定できます。ListTopicsDetectionJobs オペレーションを使用して送信したトピックモデリングジョブのリストを取得し、 DescribeTopicsDetectionJobオペレーションを使用してジョブに関する情報を表示します。Amazon S3 バケットに配信されるコンテンツには、カスタマーコンテンツが含まれている場合があります。機密データの削除の詳細については、「S3 バケットを空にする方法」または「S3 バケットを削除する方法」を参照してください。

ドキュメントは、UTF-8 形式のテキストファイルである必要があります。ドキュメントは 2 つの方法で送信できます。次の表にオプションを示します。

形式 説明
ファイルごとに 1 文書 各ファイルには 1 つの入力ドキュメントが含まれます。これはサイズの大きいドキュメントのコレクションに最適です。
1 行に 1 文書

入力は単一ファイルです。ファイル内の各行が文書とみなされます。これは、ソーシャルメディアへの投稿など、短いドキュメントに最適です。

各行は、改行 (LF、\ n)、キャリッジリターン (CR、\r)、またはその両方 (CRLF、\r\n) で終える必要があります。Unicode の行区切り文字 (u+2028) は行の終わりには使用できません。

詳細については、「InputDataConfig」データ型を参照してください。

Amazon Comprehend はドキュメントコレクションを処理すると、topic-terms.csvdoc-topics.csv の 2 つのファイルを含む圧縮アーカイブを返します。出力ファイルの詳細については、「」を参照してくださいOutputDataConfig

最初の出力ファイルtopic-terms.csv は、コレクション内のトピックのリストです。デフォルトでは、リストには、各トピックの上位の言葉が重みに応じてトピック別に含まれています。たとえば、Amazon Comprehend に新聞記事のコレクションを渡すと、コレクションの最初の 2 つのトピックを説明する次の内容が返されます。

トピック 言葉 重み
000 team 0.118533
000 ゲーム 0.106072
000 player 0.031625
000 season 0.023633
000 play 0.02118
000 yard 0.024454
000 coach 0.016012
000 games 0.016191
000 football 0.015049
000 quarterback 0.014239
001 cup 0.205236
001 food 0.040686
001 minutes 0.036062
001 add 0.029697
001 tablespoon 0.028789
001 oil 0.021254
001 pepper 0.022205
001 teaspoon 0.020040
001 wine 0.016588
001 sugar 0.015101

重みは、特定のトピックに含まれる単語の確率分布を表します。Amazon Comprehend は各トピックの上位 10 語のみを返すため、重みの合計は 1.0 にはなりません。まれに、1 つのトピックに含まれる単語が 10 語未満の場合、重みの合計が 1.0 になります。

単語は、すべてのトピックでの出現率を考慮して、その識別力によってソートされます。通常、これはキーワードの重みと同じですが、表の「play」や「yard」という単語など、場合によっては重みと異なる順序になることがあります。

返されるトピックの数を指定できます。たとえば、Amazon Comprehend に 25 個のトピックを返すようにリクエストすると、コレクション内で最も目立つ 25 個のトピックが返されます。Amazon Comprehend はコレクション内で最大 100 トピックを検出できます。トピックの数は、分野に関する自分の知識に基づいて選択してください。正しい数にたどり着くには、ある程度の実験が必要な場合があります。

2 つ目のファイル doc-topics.csv には、トピックに関連するドキュメントと、そのトピックに関係するドキュメントの割合が一覧表示されます。ONE_DOC_PER_FILE を指定した場合、ドキュメントはファイル名で識別されます。ONE_DOC_PER_LINE を指定した場合、ドキュメントはファイル名とファイル内の 0 で始まる行番号で識別されます。たとえば、Amazon Comprehend は、1 ファイルにつき 1 つのドキュメントで送信されたドキュメントのコレクションに対して以下を返す場合があります。

ドキュメント トピック 割合
sample-doc1 000 0.999330137
sample-doc2 000 0.998532187
sample-doc3 000 0.998384574
...    
sample-docN 000 3.57E-04

Amazon Comprehend は、「MBM の語彙化リストデータセット」を利用します。これは、オープンデータベースライセンス (ODBL) v1.0 の下、こちらで入手可能です。