Yuriy Vovanych (buriy) wrote,
Yuriy Vovanych
buriy

Десять значений на слово -- это слишком много...

Поэкспериментировал с AdaGram.
Авторы рекомендуют alpha=0.1 .. 0.2 , но больше пяти значений на слово в среднем -- это слишком много.
Например, для слова "четверг" система выделила 10 якобы разных значений.
Вот, например, значение №2 ("финансовый четверг"):

julia> nearest_neighbors(vm, dict, "четверг", 2, 35)


35-element Array{(Any,Any,Any),1}:
("пятница",8,0.9657051f0)
("среда",2,0.96209955f0)
("вторник",3,0.9578479f0)
("понедельник",5,0.95633185f0)
("вечером",4,0.8979388f0)
("расти",1,0.89171934f0)
("рынок",8,0.8911156f0)
("фон",5,0.8885817f0)
("утром",6,0.88719696f0)
("вечер",7,0.88438827f0)
("торг",4,0.8824517f0)
("снижение",3,0.8807292f0)
("динамика",1,0.87762856f0)
("динамик",1,0.8757935f0)
("ход",3,0.87571996f0)
("снижаться",7,0.8736857f0)
("падать",4,0.872245f0)
("накануне",4,0.8722254f0)
("отыгрывать",1,0.87168634f0)
("утро",4,0.8711721f0)
("Утром",4,0.8708534f0)
("немного",2,0.86563385f0)
("рекордный",2,0.864886f0)
("коррекция",1,0.8640615f0)
("разнонаправленный",1,0.86361736f0)
("слабо",4,0.86252797f0)
("рост",8,0.8620949f0)
("утренний",3,0.85984546f0)
("укрепляться",2,0.8598352f0)
("Накануне",2,0.8592482f0)
("открытие",3,0.85679096f0)
("Распечатать",5,0.8554056f0)
("фондовый",1,0.85501546f0)
("минус",9,0.8538124f0)
("обвал",6,0.8533504f0)



Поскольку в выходные биржа закрыта, слова "суббота" и "воскресенье" не попали в список соседей.
Аналогичные особенности присутствуют для других значений.
Таким образом, обобщающая возможность получается крайне слабая.
Возможно, кстати, и корпус для обучения нужен в 5 раз больше, чем для word2vec.

В общем, нужно пересчитывать с другим значением константы.
Попробую для разнообразия alpha в районе 0.05 (не больше двух значений на слово в среднем).
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments