Текущие результаты для keras/theano MLP модели в эксперименте с word representations

Aug 23, 2017 18:15

Репозиторий эксперимента: https://github.com/Koziev/WordRepresentations

Сделал условный grid search для основных гиперпараметров. Для 2-грамм и 3-грамм эксперимент закончен, для 4-грамм продолжается:


NB_SAMPLES=1,000,000 NGRAM_ORDER=2 w2v_tags acc=0.8340
NB_SAMPLES=2,000,000 NGRAM_ORDER=2 w2v_tags acc=0.8405
NB_SAMPLES=3,000,000 NGRAM_ORDER=2 w2v_tags acc=0.8474
NB_SAMPLES=5,000,000 NGRAM_ORDER=2 w2v_tags acc=0.8511
NB_SAMPLES=10,000,000 NGRAM_ORDER=2 w2v_tags acc=0.8561

NB_SAMPLES=1,000,000 NGRAM_ORDER=2 word_indeces acc=0.7452
NB_SAMPLES=2,000,000 NGRAM_ORDER=2 word_indeces acc=0.7619
NB_SAMPLES=3,000,000 NGRAM_ORDER=2 word_indeces acc=0.7735
NB_SAMPLES=5,000,000 NGRAM_ORDER=2 word_indeces acc=0.7835
NB_SAMPLES=6,000,000 NGRAM_ORDER=2 word_indeces acc=0.7849
NB_SAMPLES=10,000,000 NGRAM_ORDER=2 word_indeces acc=0.8103

NB_SAMPLES=1,000,000 NGRAM_ORDER=2 w2v acc=0.7954
NB_SAMPLES=2,000,000 NGRAM_ORDER=2 w2v acc=0.8010
NB_SAMPLES=3,000,000 NGRAM_ORDER=2 w2v acc=0.8050
NB_SAMPLES=5,000,000 NGRAM_ORDER=2 w2v acc=0.8065
NB_SAMPLES=6,000,000 NGRAM_ORDER=2 w2v acc=0.8086
NB_SAMPLES=10,000,000 NGRAM_ORDER=2 w2v acc=0.8132

NB_SAMPLES=1,000,000 NGRAM_ORDER=3 w2v_tags acc=0.8528
NB_SAMPLES=2,000,000 NGRAM_ORDER=3 w2v_tags acc=0.8585
NB_SAMPLES=3,000,000 NGRAM_ORDER=3 w2v_tags acc=0.8662
NB_SAMPLES=5,000,000 NGRAM_ORDER=3 w2v_tags acc=0.8738
NB_SAMPLES=6,000,000 NGRAM_ORDER=3 w2v_tags acc=0.8760
NB_SAMPLES=8,000,000 NGRAM_ORDER=3 w2v_tags acc=0.8774

NB_SAMPLES=1,000,000 NGRAM_ORDER=3 word_indeces acc=0.7719
NB_SAMPLES=2,000,000 NGRAM_ORDER=3 word_indeces acc=0.7807
NB_SAMPLES=3,000,000 NGRAM_ORDER=3 word_indeces acc=0.7875
NB_SAMPLES=5,000,000 NGRAM_ORDER=3 word_indeces acc=0.8250
NB_SAMPLES=6,000,000 NGRAM_ORDER=3 word_indeces acc=0.8266
NB_SAMPLES=8,000,000 NGRAM_ORDER=3 word_indeces acc=0.8328

NB_SAMPLES=1,000,000 NGRAM_ORDER=3 w2v acc=0.8116
NB_SAMPLES=2,000,000 NGRAM_ORDER=3 w2v acc=0.8140
NB_SAMPLES=3,000,000 NGRAM_ORDER=3 w2v acc=0.8191
NB_SAMPLES=5,000,000 NGRAM_ORDER=3 w2v acc=0.8280
NB_SAMPLES=6,000,000 NGRAM_ORDER=3 w2v acc=0.8275
NB_SAMPLES=8,000,000 NGRAM_ORDER=3 w2v acc=0.8289

NB_SAMPLES=1,000,000 NGRAM_ORDER=4 w2v_tags acc=0.8376
NB_SAMPLES=2,000,000 NGRAM_ORDER=4 w2v_tags acc=0.8575
NB_SAMPLES=3,000,000 NGRAM_ORDER=4 w2v_tags acc=0.8701
NB_SAMPLES=5,000,000 NGRAM_ORDER=4 w2v_tags acc=0.8789
NB_SAMPLES=6,000,000 NGRAM_ORDER=4 w2v_tags acc=0.8751
NB_SAMPLES=8,000,000 NGRAM_ORDER=4 w2v_tags acc=0.8805

Пояснение по смыслу параметров w2v, w2v_tags и word_indeces, которые встречаются в таблице результатов.

w2v - для слов в n-грамме берем word2vector представления, полученные обучением отдельной gensim-модели по очень большому корпусу.

w2v_tags - в добавок к w2v представлений слов мы добавляем бинарные флаги, соответствующие разным морфологическим признакам слов. Например, для именительного падежа есть свой битовый фраг, для множественного числа - свой.

word_indeces - используется слой Embedding, который в онлайне настраивает векторное представление слов.

Уже на этих результатах видны две интересные тенденции.

Во-первых, использование отдельно обученной w2v модели лучше, чем online настройка встраиваний через Embedding. По мере роста обучающей выборки качество онлайн-встраиваний растет и в какой-то момент бьет стороннюю w2v модель.

Во-вторых, 3-граммы дают лучшее качестве, чем 2-граммы, а 4-граммы - лучше, чем 3-граммы. Это немного неожиданный результат.

vector space model, vector model, word2vec, word embedding, N-граммы, language model

Previous post Next post
Up