Цікаво, чому ієрархічний софтмакс кращий для нечастого слова, тоді як негативний вибірки краще для частих слів у моделях CBOW та пропуску грам word2vec. Я прочитав претензію на https://code.google.com/p/word2vec/ .
Цікаво, чому ієрархічний софтмакс кращий для нечастого слова, тоді як негативний вибірки краще для частих слів у моделях CBOW та пропуску грам word2vec. Я прочитав претензію на https://code.google.com/p/word2vec/ .
Відповіді:
Я не знавець у word2vec, але, прочитавши Ронга, X. (2014). Word2vec Навчання параметрам word Пояснено і з власного досвіду NN я спростив міркування до цього:
Два теоретично теоретично не є винятковими, але все одно, мабуть, саме тому вони будуть кращими для частих і рідкісних слів.
Я розумію, це через кодування Хаффмана, яке використовується при побудові ієрархії категорій.
Ієрархічний софтмакс використовує дерево сигмоподібних вузлів замість однієї великої софтмакси, кодування Хаффмана забезпечує збалансованість розподілу точок даних, що належать кожній стороні будь-якого сигмоподібного вузла. Тому це допомагає виключити перевагу до частих категорій порівняно з використанням однієї великої софтмакси та негативної вибірки.
Ієрархічна софтмакс будує дерево над усім словником, а вузли листя, що представляють рідкісні слова, неминуче успадковують векторні уявлення предків на дереві, на що можуть вплинути інші часті слова в корпусі. Це піде на користь додаткової підготовки нового корпусу.
Негативні вибірки розроблені на основі оцінки контрастності шуму і випадковим чином відбирають слова не в контексті, щоб відрізнити спостережувані дані від штучно генерованого випадкового шуму.