Основи Векторних Подань Слів
Свайпніть щоб показати меню
Розуміння векторних подань слів
Традиційні методи представлення тексту, такі як bag of words та TF-IDF, мають суттєві обмеження. Вони розглядають слова ізольовано, ігноруючи семантичні зв'язки, і створюють високорозмірні, розріджені вектори, що стають обчислювально неефективними при роботі з великими корпусами.
Векторні подання слів вирішують ці проблеми, враховуючи контекст, у якому з'являються слова, і забезпечують більш глибоке розуміння мови.
Векторні подання слів — це щільні векторні представлення слів у неперервному векторному просторі, де семантично подібні слова розташовані поруч.
Було розроблено кілька моделей і технік для створення змістовних векторних подань слів:
-
Word2Vec: розроблена Google, Word2Vec представляє слова у вигляді щільних векторів, використовуючи дві архітектури: continuous bag of words (CBoW), яка передбачає слово за його контекстом, і Skip-gram, яка передбачає контекст за заданим словом;
-
GloVe: створена у Стенфорді, GloVe (global vectors) генерує векторні подання слів шляхом аналізу глобальної статистики спільної зустрічальності слів у всьому корпусі, фіксуючи семантичні зв'язки на основі частоти спільної появи пар слів;
-
FastText: представлена Facebook AI Research, FastText базується на Word2Vec, представляючи слова як набір n-грам символів. Це дозволяє моделювати підсловникову інформацію, покращуючи роботу з рідкісними та невідомими словами, а також з мовами зі складною морфологією.
Word2Vec і FastText є найбільш поширеними моделями для створення векторних подань слів. Оскільки FastText є лише вдосконаленою версією Word2Vec, ми пропустимо його і зосередимося лише на Word2Vec.
Як працює Word2Vec?
Word2Vec перетворює слова у вектори за допомогою процесу, що починається з one-hot кодування, де кожне слово у словнику представляється унікальним вектором з однією 1 серед нулів. Розглянемо приклад:
Цей вектор слугує вхідними даними для нейронної мережі, яка призначена для «навчання» векторних подань слів. Архітектура мережі може відповідати одній з двох моделей:
- CBoW (безперервний мішок слів): прогнозує цільове слово на основі контексту, який задається оточуючими словами;
- Skip-gram: прогнозує слова контексту на основі цільового слова.
В обох архітектурах Word2Vec під час кожної ітерації навчання моделі подається цільове слово та слова, що його оточують, як контекст, представлений у вигляді one-hot векторів. Навчальна вибірка таким чином фактично складається з цих пар або груп, де кожне цільове слово асоціюється з відповідними словами контексту.
Кожне слово у словнику по черзі стає цільовим, коли модель проходить текст за допомогою техніки ковзного вікна контексту. Ця техніка систематично переміщується по кожному слову, забезпечуючи всебічне навчання на основі всіх можливих контекстів у корпусі.
Вікно контексту — це фіксована кількість слів навколо цільового слова, які модель використовує для вивчення його контексту. Воно визначає, скільки слів до і після цільового слова враховується під час навчання.
Розглянемо приклад із розміром вікна, що дорівнює 2, для кращого розуміння:
Розмір вікна контексту 2 означає, що модель враховує до 2 слів зліва та справа від цільового слова, якщо ці слова доступні в межах тексту. Як видно, якщо з будь-якого боку є менше ніж 2 слова, модель враховує стільки слів, скільки доступно.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат