word2vec
Bạn đã web-scraping rất nhiều chức danh công việc từ Internet và chưa chắc có cần thu thập thêm chức danh cho phân tích hay không. Đến hiện tại, bạn đã gom được hơn 13.000 chức danh trong bộ dữ liệu tên là job_titles. Bạn đọc được rằng word2vec thường cho kết quả tốt nhất khi mô hình có đủ dữ liệu để huấn luyện đúng cách, và nếu các từ không xuất hiện đủ nhiều trong dữ liệu, mô hình có thể không hữu ích.
Trong bài tập này, bạn sẽ kiểm tra mức độ hữu ích của dữ liệu bổ sung bằng cách chạy mô hình 3 lần; mỗi lần chạy sẽ dùng thêm dữ liệu.
Bài tập này là một phần của khóa học
Nhập môn Xử lý Ngôn ngữ Tự nhiên với R
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
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)