Як я можу використовувати вбудовуване слово для зіставлення документа на функціональний вектор, придатний для використання під контролем навчання?
Слово вкладення відображає кожне слово до вектору , де деякі не дуже велика кількість (наприклад, 500). Популярні вбудовані слова включають word2vec та Glove .
Я хочу застосувати контрольоване навчання для класифікації документів. Наразі я картографую кожен документ на векторному зображенні за допомогою представлення сумки слів, а потім застосовую нестандартний класифікатор. Я хотів би замінити векторний функцію "мішок слів" чимось на основі наявного заздалегідь навченого вбудовування слова, щоб скористатися семантичними знаннями, які містяться у вкладанні слова. Чи є стандартний спосіб це зробити?
Я можу уявити собі деякі можливості, але не знаю, чи є щось, що має найбільш сенс. Кандидатські підходи, які я розглянув:
Я міг обчислити вектор для кожного слова в документі і порівняти їх усіх. Однак, схоже, це може втратити багато інформації. Наприклад, за допомогою представлення пакетів слів, якщо є кілька слів, які є дуже важливими для завдання класифікації, і більшість слів не мають значення, класифікатор може легко дізнатися це; якщо я середній показник для всіх слів у документі, класифікатор не має шансів.
З’єднання векторів для всіх слів не працює, оскільки це не призводить до векторного ознаки фіксованого розміру. Крім того, це здається поганою ідеєю, оскільки вона буде надмірно чутливою до конкретного розміщення слова.
Я міг би використовувати слово вбудовування для кластеризації лексики всіх слів у фіксованому наборі кластерів, скажімо, 1000 кластерів, де я використовую косинусну схожість на вектори як міру подібності слів. Тоді, замість мішка слів, я міг би мати мішок кластерів: особливість вектора, яку я постачаю класифікатору, може бути 1000-вектором, де й компонент рахує кількість слів у документі, є частиною кластера .i
Враховуючи слово , ці вкладення слів дозволяють обчислити набір із 20 найбільш схожих слів та їх бал подібності . Я міг би адаптувати функцію вектора мішків слів, використовуючи це. Коли я бачу слово , на додаток до збільшення елемента, що відповідає слову на , я також міг би збільшити елемент, відповідний слову на , збільшити елемент, відповідний слову на , і так далі.w 1 , … , w 20 s 1 , … , s 20 w w 1 w 1 s 1 w 2 s 2
Чи є якийсь специфічний підхід, який, ймовірно, добре працює для класифікації документів?
Я не шукаю параграф2vec чи doc2vec; їм потрібна підготовка до великого корпусу даних, а у мене немає великого корпусу даних. Натомість я хочу використовувати вже вбудоване слово.