始める無料で始める

新しいテキストの変換

この演習では、これまでに作成した辞書を使って、新しいテキストを数値インデックスのシーケンスに変換します。

すでに学習済みモデルがあり、新しいデータセットに適用したいときに役立ちます。学習データに対して実施した前処理は、新しいテキストにも同様に適用する必要があります。そうすることで、モデルが予測/分類を行えるようになります。

ここでは、語彙に含まれない単語を表す特別なトークン '<UKN/>' も使用します。通常、これらの特別なトークンは辞書の最初のインデックス、すなわち位置 0 に割り当てられます。

変数 word_to_indexindex_to_wordvocabulary はすでに環境に読み込まれています。また、新しいテキストは変数 new_text として読み込まれており、内容は確認できるように出力済みです。

この演習はコースの一部です

Kerasで学ぶ言語モデリングのためのRecurrent Neural Networks (RNNs)

コースを見る

演習の手順

  • 文を含むリスト new_text をループします。
  • 単語が辞書に見つからない場合、インデックスは 0 に設定します。
  • インデックス列に変換した文を変数 new_text_split に追加します。
  • 辞書 index_to_word を使って、インデックスをテキストに戻します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Loop through the sentences and get indexes
new_text_split = []
for sentence in ____:
    sent_split = []
    for wd in sentence.split(' '):
        index = word_to_index.get(wd, ____)
        sent_split.append(index)
    new_text_split.append(____)

# Print the first sentence's indexes
print(new_text_split[0])

# Print the sentence converted using the dictionary
print(' '.join([index_to_word[____] for index in new_text_split[0]]))
コードを編集して実行