Ф'ючерси
Сотні безстрокових контрактів
TradFi
Золото
Одна платформа для світових активів
Опціони
Hot
Торгівля ванільними опціонами європейського зразка
Єдиний рахунок
Максимізуйте ефективність вашого капіталу
Демо торгівля
Вступ до ф'ючерсної торгівлі
Підготуйтеся до ф’ючерсної торгівлі
Ф'ючерсні події
Заробляйте, беручи участь в подіях
Демо торгівля
Використовуйте віртуальні кошти для безризикової торгівлі
Запуск
CandyDrop
Збирайте цукерки, щоб заробити аірдропи
Launchpool
Швидкий стейкінг, заробляйте нові токени
HODLer Airdrop
Утримуйте GT і отримуйте масові аірдропи безкоштовно
Launchpad
Будьте першими в наступному великому проекту токенів
Alpha Поінти
Ончейн-торгівля та аірдропи
Ф'ючерсні бали
Заробляйте фʼючерсні бали та отримуйте аірдроп-винагороди
Інвестиції
Simple Earn
Заробляйте відсотки за допомогою неактивних токенів
Автоінвестування
Автоматичне інвестування на регулярній основі
Подвійні інвестиції
Прибуток від волатильності ринку
Soft Staking
Earn rewards with flexible staking
Криптопозика
0 Fees
Заставте одну криптовалюту, щоб позичити іншу
Центр кредитування
Єдиний центр кредитування
Центр багатства VIP
Преміальні плани зростання капіталу
Управління приватним капіталом
Розподіл преміальних активів
Квантовий фонд
Квантові стратегії найвищого рівня
Стейкінг
Стейкайте криптовалюту, щоб заробляти на продуктах PoS
Розумне кредитне плече
Кредитне плече без ліквідації
Випуск GUSD
Мінтинг GUSD для прибутку RWA
Все починається з простого питання: як машина може розуміти текст? Коли ви навчаєте модель розрізняти спам від нормальних повідомлень або визначати тональність відгуків, під капотом відбувається щось цікаве. Модель повинна якось перетворити літери і слова у числа, бо нейромережі працюють лише з цифрами.
Перший наївний підхід — просто нумеруємо кожне унікальне слово. Good = 6, bad = 26, awesome = 27. Здається логічним, але ось біда: числа 26 і 27 близькі одне до одного, тому модель подумає, що bad і awesome схожі. Насправді ж awesome і good семантично ближчі. Ось такий підступ.
Спробували One Hot Encoding — кожному слову даємо вектор розміром із весь словник, де лише одна одиниця вказує на потрібне слово, решта — нулі. Проблема ранжування зникла, але з’явилася нова: якщо словник із 20 тисяч слів, кожен вектор буде 20-тисячним. Пам’ять дуже багато їсть, та й семантику слів модель не ловить.
Потім з’явилися Bag of Words і N-грамми — рахуємо, скільки разів слово зустрічається у тексті. Це додає контекст, але знову — великі розріджені вектори і модель не розуміє глибоких зв’язків між словами. Якщо у реченні "The librarian loves books" слова librarian і book не сусідні, N-грамми не зрозуміють, що вони пов’язані.
Саме тут на допомогу приходить правильне кодування через embedding. Ідея в тому, що схожі слова мають лежати близько один до одного у векторному просторі. Уявіть двовимірну площину: на одній осі — розмір тварини, на іншій — небезпека. Тигр і лев будуть поруч (великі і небезпечні), а хом’як — окремо (дрібний і безпечний). Ось що таке embedding — щільний вектор, який зберігає сенс слова у n-вимірному просторі.
Найкрутіше: з такими векторами можна робити математику. Візьмете вектор "сина", віднімете "чоловіка" і додасте "жінку" — отримаєте вектор, близький до "дочки". Або: Мадрид + Німеччина - Іспанія = Берлін. Працює, бо модель уловлює відносини між поняттями.
Як навчають такі embedding? Google запропонувала Word2Vec з двома підходами. У CBOW ви берете контекстні слова і передбачаєте центральне слово. Skip-Gram робить навпаки — від центрального слова передбачає сусідів. Обі техніки добре працюють для навчання word embedding.
У сучасних моделях типу GPT або BERT все трохи інакше. Шар embedding там не беруть готовим, а навчають разом із самою моделлю. Спочатку текст розбивається на токени, потім проста нейромережа створює embedding для кожного токена. Ваги цього шару — навчені параметри, що навчаються представляти слова у потрібному просторі. Потім ці embedding проходять через блоки декодера і потрапляють у вихідний шар, який видає ймовірності для наступного токена.
Одна маленька деталь — позиційне кодування. Трансформер обробляє усі токени паралельно, на відміну від RNN. Тому потрібно якось сказати моделі, в якому порядку йдуть слова. Беруть позиційний вектор і додають його до вектору embedding. Виходить комбо: зміст слова + інформація про його позицію у тексті.
Після позиційного кодування embedding потрапляє у механізм уваги — це вже серце всіх великих мовних моделей. Embedding ловить семантику окремих слів, але контекст розуміє саме attention. Тому слово "ключ" у різних контекстах отримає різні контекстуальні представлення.
Ось так, поєднуючи прості ідеї — токенізацію, підрахунок слів, правильне кодування через embedding — поступово приходиш до трансформерів і ChatGPT. Ембеддинги зараз у всьому: у рекомендаційних системах, у пошуку схожих картинок, у основі всіх сучасних LLM. Якщо хочете розбиратися в NLP по-справжньому, потрібно розуміти, як працюють CBOW, Skip-Gram і вся ця архітектура. Це база, з якої все починається.