시작하기무료로 시작하기

word2vec

여러분은 인터넷에서 많은 직함 정보를 웹 스크래핑해 왔고, 분석을 위해 추가로 더 수집해야 할지 확신이 서지 않습니다. 현재까지 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)
코드 편집 및 실행