🧠 Как думают машины? В поисках нейролингвистических инвариантов. Эксперимент с омонимами.
Я уже не раз жаловался в этом чате, что машинное обучение и нейросети меня откровенно раздражают своей неточностью и непрозрачностью миллиардов нейронных связей. Но если уж неточностей много — надо искать в них закономерности! В математике и физике такие общие свойства называют инвариантами или симметриями.
Сегодня, работая над написанием крэш-курса по машинному обучению для чайников, я разбирал интересный пример:
Возьмём два предложения:
1️⃣ «Я посетил старый замок в Карпатах.»
2️⃣ «Амбар был закрыт на ржавый замок.»
Если пропустить их через нейросеть, сначала модель воспринимает «замок» как одно и то же слово. Но слой за слоем, анализируя контекст, она постепенно разводит значения: в одном случае это крепость, а в другом – механизм для запирания.
📊 На графиках 👇👇👇 по оси X отложены слои модели (от 1-го до 12-го), а по оси Y — евклидово расстояние между точками в 768-мерном пространстве, соответствующими этим словам. Видно, как по мере углубления в слои модели различие между значениями увеличивается.
Но ведь это не случайность. Известно, что в трансформерных моделях механизм самовнимания (self-attention) постепенно смещает представления слов:
🔹 На ранних слоях модель в основном опирается на исходные эмбеддинги слов, т.е. их базовые, прямые значения без глубокого контекстного анализа.
🔹 На средних слоях модель начинает активно учитывать контекст, анализируя связи слов в предложении и взаимодействие между ними.
🔹 На поздних слоях модель уже оперирует абстракциями и более сложными концептами, учитывая не только конкретные слова, но и их общее значение в контексте всей задачи.
Этот процесс работает одинаково для разных слов и даже для разных языковых моделей:
🔹 «Я купил свежий лук на рынке.» vs. «Рыцарь натянул лук и выпустил стрелу.»
🔹 «Я потерял ключ от квартиры.» vs. «Ключ к решению задачи был найден.»
🔹 «Осенний лист упал на землю.» vs. «Я взял чистый лист бумаги.»
Это значит, что различение значений слов в нейросетях подчиняется общему механизму. Независимо от модели, процесс обработки контекста проходит по одной и той же схеме – это и есть инвариант в машинном мышлении, скрытая симметрия работы трансформеров. 🚀
👉 Что, если способность нейросетей различать значения слов – это фундаментальный принцип, наподобие законов природы? Это ведь качественный переход от синтаксиса к семантике? И семантике модели BERT никто не учил! Это самовыведенный принцип из синтактического анализа большого количества текстов!
Код эксперимента тут:
🔗 Открыть в Google Colab
П.С. Я ещё только учусь, за правильность кода на 100% не ручаюсь 😅, но когда крэш-курс по языковым моделям/трансформерам будет готов – там всё будет безошибочно, кратко и точно.
#LLM #Transormers #NLP #AI
Я уже не раз жаловался в этом чате, что машинное обучение и нейросети меня откровенно раздражают своей неточностью и непрозрачностью миллиардов нейронных связей. Но если уж неточностей много — надо искать в них закономерности! В математике и физике такие общие свойства называют инвариантами или симметриями.
Сегодня, работая над написанием крэш-курса по машинному обучению для чайников, я разбирал интересный пример:
Возьмём два предложения:
1️⃣ «Я посетил старый замок в Карпатах.»
2️⃣ «Амбар был закрыт на ржавый замок.»
Если пропустить их через нейросеть, сначала модель воспринимает «замок» как одно и то же слово. Но слой за слоем, анализируя контекст, она постепенно разводит значения: в одном случае это крепость, а в другом – механизм для запирания.
📊 На графиках 👇👇👇 по оси X отложены слои модели (от 1-го до 12-го), а по оси Y — евклидово расстояние между точками в 768-мерном пространстве, соответствующими этим словам. Видно, как по мере углубления в слои модели различие между значениями увеличивается.
Но ведь это не случайность. Известно, что в трансформерных моделях механизм самовнимания (self-attention) постепенно смещает представления слов:
🔹 На ранних слоях модель в основном опирается на исходные эмбеддинги слов, т.е. их базовые, прямые значения без глубокого контекстного анализа.
🔹 На средних слоях модель начинает активно учитывать контекст, анализируя связи слов в предложении и взаимодействие между ними.
🔹 На поздних слоях модель уже оперирует абстракциями и более сложными концептами, учитывая не только конкретные слова, но и их общее значение в контексте всей задачи.
Этот процесс работает одинаково для разных слов и даже для разных языковых моделей:
🔹 «Я купил свежий лук на рынке.» vs. «Рыцарь натянул лук и выпустил стрелу.»
🔹 «Я потерял ключ от квартиры.» vs. «Ключ к решению задачи был найден.»
🔹 «Осенний лист упал на землю.» vs. «Я взял чистый лист бумаги.»
Это значит, что различение значений слов в нейросетях подчиняется общему механизму. Независимо от модели, процесс обработки контекста проходит по одной и той же схеме – это и есть инвариант в машинном мышлении, скрытая симметрия работы трансформеров. 🚀
👉 Что, если способность нейросетей различать значения слов – это фундаментальный принцип, наподобие законов природы? Это ведь качественный переход от синтаксиса к семантике? И семантике модели BERT никто не учил! Это самовыведенный принцип из синтактического анализа большого количества текстов!
Код эксперимента тут:
🔗 Открыть в Google Colab
П.С. Я ещё только учусь, за правильность кода на 100% не ручаюсь 😅, но когда крэш-курс по языковым моделям/трансформерам будет готов – там всё будет безошибочно, кратко и точно.
#LLM #Transormers #NLP #AI
Google
Experiment_Onyms.ipynb
Colab notebook
👍2
Перед тем как переходить на средние или большие вычислительные мощности, тренирую совсем небольшую языковую модель архитектуры BERT (всего 106M параметров) на англоязычной Википедии. Уже десятый запуск за сегодня, но завтра точно взлетит! Вообще, считаю, что маленькие нейросети — это секси! выжать из них можно очень много, мне так кажется, и не обязательно гнаться за количеством - важно качество 🍒
#LLM #Transormers #NLP #AI
#LLM #Transormers #NLP #AI
👍2
🔥 Что такое список Сводеша и как он связан с ИИ?
Представьте, что вы хотите узнать: два языка — родственники или просто похожи случайно?
Лингвисты используют для этого простой инструмент — список Сводеша.
Это список из примерно 100 самых базовых слов. Например:
🔸 «я»
🔸 «вода»
🔸 «рука»
🔸 «птица»
🔸 «огонь»
🔸 «мать»
🔸 «солнце»
Почему именно такие слова?
Потому что они есть почти в любом языке и почти не меняются столетиями. Если эти слова в двух языках похожи — скорее всего, языки имеют общее происхождение.
Учёные сравнивают эти слова, чтобы понять, насколько близки языки и как давно они разошлись.
📢 Важно! Частый вопрос:
Миф: Русский и английский — не родственники.
Факт: На самом деле русский и английский — дальние родственники!
Они относятся к разным группам (русский — славянский, английский — германский), но входят в одну большую индоевропейскую семью.
Примеры:
«мать» → Russian: мать, English: mother
«нос» → Russian: нос, English: nose
«два» → Russian: два, English: two
Эти слова — следы древнего общего предка. Но у близких языков (например, русского и украинского) совпадений в списке Сводеша будет куда больше.
Список Сводеша состоит из базовой лексики: так называют понятия, которые претендуют на культурную универсальность и наименее склонны к изменению в конкретном языке. Второе качество базовой лексики (несклонность к изменениям) Моррис Сводеш сравнивал с радиоактивным распадом, утверждая, что базовые слова в языках мира выпадают из употребления и заменяются новыми с примерно одинаковой низкой скоростью. Благодаря этому мы можем оценить, как давно два языка были одним (подобно оценке древности археологической находки с помощью радиоуглеродного анализа). Это означает, что, например, «мясо» может считаться универсальным понятием, а «шашлык» — уже нет.
🤖 А что может предложить ИИ?
Сегодня языковые модели вроде GPT видят сразу десятки языков и миллиарды слов.
И вот вопрос:
💡 Может ли нейросеть придумать новый список Сводеша, современный и гибкий?
🚀 Новые подходы:
✅ ИИ сам ищет ключевые слова.
Какие слова реально устойчивы и показательны для сравнения языков? Может, не «птица», а «друг» или выражение «у меня есть»?
✅ Анализ жестов, аудио и визуального контекста.
Для жестовых языков, например, классический список плохо подходит, а модель может учитывать и мимику, и движения.
✅ Живой список, который обновляется.
Языки меняются ежедневно. Почему бы не сделать список, который следит за трендами и новыми словами?
📌 Пример:
Классический список Сводеша:
«я», «рука», «вода», «птица», «мать».
ИИ-список 2025?:
«гуглить», «лайкать», «смартфон», «друг», «как бы».
Нужно ли отказаться от фиксированных списков и позволить нейросетям самим искать лучшие слова для анализа языков?
Или классика всё ещё лучше?
Смотртите так же мой эксперимент с омонимами тут.
#AI #Лингвистика #Нейросети #Сводеш #Языки #LLM #NLP #Transformer
Представьте, что вы хотите узнать: два языка — родственники или просто похожи случайно?
Лингвисты используют для этого простой инструмент — список Сводеша.
Это список из примерно 100 самых базовых слов. Например:
🔸 «я»
🔸 «вода»
🔸 «рука»
🔸 «птица»
🔸 «огонь»
🔸 «мать»
🔸 «солнце»
Почему именно такие слова?
Потому что они есть почти в любом языке и почти не меняются столетиями. Если эти слова в двух языках похожи — скорее всего, языки имеют общее происхождение.
Учёные сравнивают эти слова, чтобы понять, насколько близки языки и как давно они разошлись.
📢 Важно! Частый вопрос:
Миф: Русский и английский — не родственники.
Факт: На самом деле русский и английский — дальние родственники!
Они относятся к разным группам (русский — славянский, английский — германский), но входят в одну большую индоевропейскую семью.
Примеры:
«мать» → Russian: мать, English: mother
«нос» → Russian: нос, English: nose
«два» → Russian: два, English: two
Эти слова — следы древнего общего предка. Но у близких языков (например, русского и украинского) совпадений в списке Сводеша будет куда больше.
Список Сводеша состоит из базовой лексики: так называют понятия, которые претендуют на культурную универсальность и наименее склонны к изменению в конкретном языке. Второе качество базовой лексики (несклонность к изменениям) Моррис Сводеш сравнивал с радиоактивным распадом, утверждая, что базовые слова в языках мира выпадают из употребления и заменяются новыми с примерно одинаковой низкой скоростью. Благодаря этому мы можем оценить, как давно два языка были одним (подобно оценке древности археологической находки с помощью радиоуглеродного анализа). Это означает, что, например, «мясо» может считаться универсальным понятием, а «шашлык» — уже нет.
🤖 А что может предложить ИИ?
Сегодня языковые модели вроде GPT видят сразу десятки языков и миллиарды слов.
И вот вопрос:
💡 Может ли нейросеть придумать новый список Сводеша, современный и гибкий?
🚀 Новые подходы:
✅ ИИ сам ищет ключевые слова.
Какие слова реально устойчивы и показательны для сравнения языков? Может, не «птица», а «друг» или выражение «у меня есть»?
✅ Анализ жестов, аудио и визуального контекста.
Для жестовых языков, например, классический список плохо подходит, а модель может учитывать и мимику, и движения.
✅ Живой список, который обновляется.
Языки меняются ежедневно. Почему бы не сделать список, который следит за трендами и новыми словами?
📌 Пример:
Классический список Сводеша:
«я», «рука», «вода», «птица», «мать».
ИИ-список 2025?:
«гуглить», «лайкать», «смартфон», «друг», «как бы».
Нужно ли отказаться от фиксированных списков и позволить нейросетям самим искать лучшие слова для анализа языков?
Или классика всё ещё лучше?
Смотртите так же мой эксперимент с омонимами тут.
#AI #Лингвистика #Нейросети #Сводеш #Языки #LLM #NLP #Transformer