始める無料で始める

word2vec

インターネットから多数の職種名をWebスクレイピングしてきましたが、分析のためにさらに職種名を収集すべきか迷っています。現在までに、job_titles というデータセットに13,000件以上の職種名を集めています。word2vecは、十分な学習データがあると最も良く機能し、データ内で十分に登場しない語はモデルの有用性を下げる可能性があると読んだことがあるはずです。

この演習では、データ量を増やすことがどれだけ有効かを確かめるために、モデルを3回実行します。各実行では使用するデータ量を増やしていきます。

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

Rで学ぶ自然言語処理入門

コースを見る

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

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

library(h2o)
h2o.init()

set.seed(1111)
# Use 33% of the available data
sample_size <- floor(___ * nrow(job_titles))
sample_data <- sample(nrow(job_titles), size = sample_size)

h2o_object = as.h2o(job_titles[sample_data, ])
words <- h2o.tokenize(h2o_object$jobtitle, "\\\\W+")
words <- h2o.tolower(words)
words = words[is.na(words) || (!words %in% stop_words$word),]

word2vec_model <- h2o.word2vec(words, min_word_freq=5, epochs = 10)
# Find synonyms for the word "teacher"
___.___(word2vec_model, "teacher", count=10)
コードを編集して実行