Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Моделі CBOW та Skip-gram | Векторні Подання Слів
Вступ до NLP

bookМоделі CBOW та Skip-gram

Базове розуміння нейронних мереж рекомендується для цього розділу. Якщо ви не знайомі з цією темою, радимо ознайомитися з цим курсом:

Обидві архітектури, CBoW та Skip-gram, навчають векторні подання слів за допомогою нейронної мережі, яка складається з наступних шарів:

  • вхідний шар;
  • один прихований шар;
  • вихідний шар.

Матриця ваг між вхідним і прихованим шарами, позначена як W1W^1 або EE, виконує роль матриці векторних подань. Кожен рядок цієї матриці відповідає вектору подання для відповідного слова, де ii-ий рядок відповідає ii-ому слову у словнику.

Ця матриця містить VV (розмір словника) векторів подань, кожен з яких має розмір NN, який ми задаємо. Множення транспонованої цієї матриці (матриця N×VN \times V) на one-hot вектор (V×1V \times 1) дозволяє отримати подання конкретного слова, утворюючи вектор розміром N×1N \times 1.

Друга матриця ваг, між прихованим і вихідним шарами, має розмір N×VN \times V. Множення транспонованої цієї матриці (матриця V×NV \times N) на вектор прихованого шару розміром N×1N \times 1 дає вектор розміром V×1V \times 1.

CBoW

Розгляньте приклад використання моделі CBoW:

Спочатку транспонована матриця ембеддінгів множиться на one-hot вектори контекстних слів для отримання їх ембеддінгів. Ці ембеддінги потім сумуються або усереднюються залежно від реалізації, щоб утворити один вектор. Цей вектор множиться на матрицю W2W^2, у результаті чого отримується вектор розміром V×1V \times 1.

Нарешті, цей вектор проходить через активаційну функцію softmax, перетворюючись на розподіл ймовірностей, де кожен елемент відображає ймовірність того, що відповідне слово словника є цільовим словом.

Після цього обчислюється функція втрат, і обидві матриці ваг оновлюються для мінімізації цієї втрати. Ідеально, ймовірність цільового слова має бути близькою до 1, тоді як ймовірності для всіх інших слів мають наближатися до нуля. Цей процес повторюється для кожної комбінації цільового слова та його контекстних слів.

Після обробки всіх комбінацій завершується епоха. Зазвичай нейронна мережа навчається протягом кількох епох для забезпечення точного навчання. Нарешті, рядки отриманої матриці векторних представлень можна використовувати як векторні представлення слів. Кожен рядок відповідає векторному представленню певного слова у словнику, ефективно відображаючи його семантичні властивості в межах навченої моделі.

Skip-gram

Розглянемо тепер модель skip-gram:

Як видно, процес здебільшого подібний до CBoW. Він починається з отримання векторного представлення цільового слова, яке потім використовується у прихованому шарі. Далі формується вектор розміром V×1V \times 1 на вихідному шарі. Цей вектор, отриманий шляхом множення векторного представлення цільового слова на матрицю ваг вихідного шару, потім перетворюється за допомогою активаційної функції softmax у вектор ймовірностей.

Note
Примітка

Хоча цей отриманий вектор ймовірностей є однаковим для всіх контекстних слів, пов’язаних з одним цільовим словом під час одного кроку навчання, втрата для кожного контекстного слова обчислюється окремо.

Втрати для кожного контекстного слова підсумовуються, і матриці ваг оновлюються відповідно на кожній ітерації для мінімізації загальної втрати. Після завершення заданої кількості епох матриця ембеддінгів може бути використана для отримання векторних представлень слів.

Note
Дізнайтеся більше

На практиці, особливо при великих словниках, функція softmax може бути надто обчислювально затратною. Тому часто використовуються апроксимації, такі як негативне семплювання, щоб зробити обчислення більш ефективними.

1. Заповніть пропуски

2. Що представляє перша матриця ваг W1W^1 у нейронній мережі?

question-icon

Заповніть пропуски

The architecture tries to predict the target word from its context.
The
architecture tries to predict the context of the target word.

Натисніть або перетягніть елементи та заповніть пропуски

question mark

Що представляє перша матриця ваг W1W^1 у нейронній мережі?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 2

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Awesome!

Completion rate improved to 3.45

bookМоделі CBOW та Skip-gram

Свайпніть щоб показати меню

Базове розуміння нейронних мереж рекомендується для цього розділу. Якщо ви не знайомі з цією темою, радимо ознайомитися з цим курсом:

Обидві архітектури, CBoW та Skip-gram, навчають векторні подання слів за допомогою нейронної мережі, яка складається з наступних шарів:

  • вхідний шар;
  • один прихований шар;
  • вихідний шар.

Матриця ваг між вхідним і прихованим шарами, позначена як W1W^1 або EE, виконує роль матриці векторних подань. Кожен рядок цієї матриці відповідає вектору подання для відповідного слова, де ii-ий рядок відповідає ii-ому слову у словнику.

Ця матриця містить VV (розмір словника) векторів подань, кожен з яких має розмір NN, який ми задаємо. Множення транспонованої цієї матриці (матриця N×VN \times V) на one-hot вектор (V×1V \times 1) дозволяє отримати подання конкретного слова, утворюючи вектор розміром N×1N \times 1.

Друга матриця ваг, між прихованим і вихідним шарами, має розмір N×VN \times V. Множення транспонованої цієї матриці (матриця V×NV \times N) на вектор прихованого шару розміром N×1N \times 1 дає вектор розміром V×1V \times 1.

CBoW

Розгляньте приклад використання моделі CBoW:

Спочатку транспонована матриця ембеддінгів множиться на one-hot вектори контекстних слів для отримання їх ембеддінгів. Ці ембеддінги потім сумуються або усереднюються залежно від реалізації, щоб утворити один вектор. Цей вектор множиться на матрицю W2W^2, у результаті чого отримується вектор розміром V×1V \times 1.

Нарешті, цей вектор проходить через активаційну функцію softmax, перетворюючись на розподіл ймовірностей, де кожен елемент відображає ймовірність того, що відповідне слово словника є цільовим словом.

Після цього обчислюється функція втрат, і обидві матриці ваг оновлюються для мінімізації цієї втрати. Ідеально, ймовірність цільового слова має бути близькою до 1, тоді як ймовірності для всіх інших слів мають наближатися до нуля. Цей процес повторюється для кожної комбінації цільового слова та його контекстних слів.

Після обробки всіх комбінацій завершується епоха. Зазвичай нейронна мережа навчається протягом кількох епох для забезпечення точного навчання. Нарешті, рядки отриманої матриці векторних представлень можна використовувати як векторні представлення слів. Кожен рядок відповідає векторному представленню певного слова у словнику, ефективно відображаючи його семантичні властивості в межах навченої моделі.

Skip-gram

Розглянемо тепер модель skip-gram:

Як видно, процес здебільшого подібний до CBoW. Він починається з отримання векторного представлення цільового слова, яке потім використовується у прихованому шарі. Далі формується вектор розміром V×1V \times 1 на вихідному шарі. Цей вектор, отриманий шляхом множення векторного представлення цільового слова на матрицю ваг вихідного шару, потім перетворюється за допомогою активаційної функції softmax у вектор ймовірностей.

Note
Примітка

Хоча цей отриманий вектор ймовірностей є однаковим для всіх контекстних слів, пов’язаних з одним цільовим словом під час одного кроку навчання, втрата для кожного контекстного слова обчислюється окремо.

Втрати для кожного контекстного слова підсумовуються, і матриці ваг оновлюються відповідно на кожній ітерації для мінімізації загальної втрати. Після завершення заданої кількості епох матриця ембеддінгів може бути використана для отримання векторних представлень слів.

Note
Дізнайтеся більше

На практиці, особливо при великих словниках, функція softmax може бути надто обчислювально затратною. Тому часто використовуються апроксимації, такі як негативне семплювання, щоб зробити обчислення більш ефективними.

1. Заповніть пропуски

2. Що представляє перша матриця ваг W1W^1 у нейронній мережі?

question-icon

Заповніть пропуски

The architecture tries to predict the target word from its context.
The
architecture tries to predict the context of the target word.

Натисніть або перетягніть елементи та заповніть пропуски

question mark

Що представляє перша матриця ваг W1W^1 у нейронній мережі?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 2
some-alt