1- Количество функций: с точки зрения модели нейронной сети она представляет количество нейронов в проекционном (скрытом) слое. Поскольку слой проекции построен на гипотезе распределения, числовой вектор для каждого слова означает его связь с контекстными словами.
Эти функции изучаются нейронной сетью, поскольку это неконтролируемый метод. Каждый вектор имеет несколько наборов семантических характеристик. Например, давайте возьмем классический пример, V(King) -V(man) + V(Women) ~ V(Queen)
и каждое слово представлено 300-м вектором. V(King)
будет иметь семантические характеристики королевства, королевства, мужественности, человека в векторе в определенном порядке. V(man)
будет иметь мужественность, человека, работать в определенном порядке. Таким образом, когда V(King)-V(Man)
это сделано, мужественность, человеческие характеристики будут аннулированы, а при добавлении, V(Women)
которые будут иметь женственность, человеческие характеристики будут добавлены, в результате чего вектор будет очень похож наV(Queen)
, Интересно то, что эти характеристики закодированы в векторе в определенном порядке, так что численные вычисления, такие как сложение, вычитание, работают отлично. Это связано с характером неконтролируемого метода обучения в нейронной сети.
2- Есть два алгоритма приближения. Hierarchical softmax
и negative sampling
. Когда задан параметр выборки, он принимает отрицательную выборку. В случае иерархического softmax для каждого вектора слов его контекстные слова получают положительные выходные данные, а все остальные слова в словаре - отрицательные выходные данные. Проблема временной сложности решается с помощью отрицательной выборки. Как и в случае отрицательной выборки, а не всего словаря, только отобранная часть словаря получает отрицательные результаты, и векторы обучаются, что намного быстрее, чем в предыдущем методе.