Алгоритмы для нахождения расстояния/сходства между пользовательскими тегами?

Я хочу найти семантику/сходство пользовательских тегов.

Каждый пользователь может использовать максимум четыре тега. Например, Пользователь-1 ["Машинное обучение", "Фотография", "Наука о данных", "нейронная сеть"], Пользователь-2 ["Машинное обучение", "Наука о данных", "Статистика", "Математика"], Пользователь-2 [«Геофизика», «Машинное обучение», «Искусство и полиграфия», «Математика»].

Теги относятся к широкому спектру навыков. Я хочу найти расстояние/сходство между тегами. Например: «Машинное обучение», «Наука о данных» и «нейронная сеть» будут близки друг к другу, точно так же «Фотография» и «Искусство и печать» будут близки друг к другу.

Я думал использовать word2vec. Но я не решаюсь использовать его в производстве, так как мне нужно обучить его тысячам категорий документов с набором навыков. Мало того, что в реальной жизни пользователи всегда меняют/обновляют свои теги. Итак, я хочу построить/разработать динамический алгоритм, который будет корректироваться в соответствии с пользовательским тегом.

Я новичок в мире машинного обучения.


person Sabber Ahamed    schedule 05.07.2017    source источник


Ответы (1)


Каждый тег может быть представлен как BitMap (BitSet), один бит представляет, есть ли у конкретного пользователя этот тег или нет. Затем вы можете использовать некоторые функции подобия, такие как Jaccard или Ochiai.

person Spirit_Dongdong    schedule 05.07.2017