始める無料で始める

パート1: to_categorical() 関数を理解する

実世界の課題では、語彙サイズが非常に大きくなることがあるのをご存じですか(たとえば十数万語以上)?

この演習は2部構成で、to_categorical() 関数の num_classes 引数を設定する重要性を学びます。パート1では、与えられた単語リストに対してワンホットベクトルを生成し、そのベクトルの長さを計算する関数 compute_onehot_length() を実装します。

to_categorical() 関数はすでにインポートされています。

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

Kerasで学ぶMachine Translation

コースを見る

演習の手順

  • compute_onehot_length() の中で、wordsword2index を使って単語IDを作成します。
  • 得られた単語IDを使って、to_categorical() 関数でワンホットベクトルを作成します。
  • <array>.shape 構文を使って、単一のワンホットベクトルの長さを返します。
  • 単語リスト He, drank, milk に対して compute_onehot_length() を用い、ワンホットベクトルの長さを計算して出力します。

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

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

def compute_onehot_length(words, word2index):
  # Create word IDs for words
  word_ids = [____[w] for w in ____]
  # Convert word IDs to onehot vectors
  onehot = ____(____)
  # Return the length of a single one-hot vector
  return onehot.____[1]

word2index = {"He":0, "drank": 1, "milk": 2}
# Compute and print onehot length of a list of words
print(____([____,____,____], ____))
コードを編集して実行