![]() |
![]() |
![]() |
|||||
![]() |
Что это такое? |
||||||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Нейронные сети начинающим Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2020-12-27 15:00
?
Мы слышим этот вопрос практически ежедневно. Особенно часто его задают дети, ведь они ещё мало знают о мире и пока неспособны ассоциировать слова со смыслом, заложенным в них. В детском возрасте у человека формируются представления о различных объектах и о жизни в целом, активно расширяется картина мира. Вопрос «Что это такое?» для подобной деятельности, разумеется, хорошо подходит. Представим себе следующую ситуацию. Вас попросили посидеть с ребёнком, и в процессе общения он у вас спросил: «Что такое стул?» Скорее всего, ваш ответ будет примерно таким: «Стул — это такой предмет, у которого есть четыре ножки, сиденье, спинка, и он предназначен для того, чтобы на нём сидели». Ребёнок принял ваше объяснение, но спустя пару минут показал на следующий объект и спросил: «А это что такое?» ![]() Конечно, вы можете попытаться дополнить ваше определение стула, сказав, что количество ножек может варьироваться. Но после этого ребёнок покажет на кресло, софу, табурет — и в итоге определение станет настолько громоздким, что ни ребёнок, ни взрослый, ни вы сами уже не будете в состоянии его нормально воспринять. Помимо этого, ваше определение стула ещё и будет плохо описывать изначальный стул, с которого всё, собственно, и началось. В лингвистике изучением значений единиц языка занимается семантика. Также семантика занимается и толкованием значений слов. В примере со стулом мы использовали описательный способ толкования. Именно он и является наиболее популярным. Загляните в ваш любимый толковый словарь, и вы увидите, что значения слов там представлены как раз с помощью описательного способа толкования. ![]() Однако у описательного метода есть несколько недостатков. Во-первых, для толкования слов он использует язык. А это значит, что для того, чтобы понять смысл одного слова, человек должен понимать другие слова, используемые в толковании. Это, например, может быть проблемой для тех, кто только начинает изучать соответствующий язык. Другая проблема описательного метода заключается в том, что часто толкования закольцовываются — и мы описываем слова со схожими значениями при помощи друг друга. Например, в словарях слово «гиппопотам» иногда определяется как «то же, что бегемот», а слово «бегемот», в свою очередь, толкуется как «то же, что гиппопотам». Вообще, если мы попробуем вспомнить своё детство, то наверняка поймём, что значения большинства слов нам никто и не объяснял. В какой-то момент мы просто сами понимали, какие слова соответствуют каким объектам и какой смысл они в себе содержат. Нам достаточно было несколько раз услышать или увидеть, что к чему относится, после чего о значениях слов мы уже догадывались сами. Похожей интуицией пользуется перечислительный метод толкования. Согласно этому методу, для объяснения смысла слова нужно показать человеку объекты, соответствующие этому слову, и постепенно у человека сформируется представление о его общем значении. Чем больше объектов мы покажем, тем лучше и точнее будет это представление. Отталкиваясь от этой идеи, в лингвистике создали теорию дистрибутивной семантики. Её основатель — Джон Фёрт — выдвинул гипотезу, согласно которой смысл слова не связан с физическим миром, а зависит исключительно от распределения (дистрибуции) этого слова по контекстам употребления в языке. То есть «кошка» — это не небольшое хищное млекопитающее семейства кошачьих, а слово, которое употребляется в контексте «Как только я достаю корм, на кухню сразу идёт моя большая рыжая ___, и громко мяукает» и ещё во множестве других контекстов. Совокупность всех контекстов, в которых употребляется слово, и является его толкованием. ![]() Дистрибутивная семантика — достаточно старая теория, первые работы по ней были опубликованы ещё в 1950-х годах. Однако долгое время она оставалась непопулярной и не имела множества последователей: во второй половине ХХ века в лингвистике доминировала генеративная теория Ноама Хомского, и подавляющее большинство исследований были написаны в соответствии с ней. Но в 2012 году дистрибутивная семантика наконец получила большое признание в лингвистическом сообществе и одновременно с этим произвела революцию в области компьютерной лингвистики. Произошло это благодаря статье «Efficient Estimation of Word Representations in Vector Space» группы учёных из компании Google. В своей работе они описали метод подсчёта семантических векторов word2vec, который берёт за основу идеи дистрибутивной семантики и описывает значения слов при помощи некоторой последовательности чисел — вектора. ![]() Как в word2vec получаются эти векторы? Дистрибутивная семантика утверждает, что значение слова определяется контекстом, в котором оно употребляется. Поэтому следить надо именно за ним — за контекстом. Для этого давайте возьмём какой-нибудь языковой корпус (совокупность текстов, используемых в качестве базы для исследования языка — определение из Википедии, прим. ред.) и выпишем по порядку вообще все слова, которые в нём встречаются (без повторов). Далее предположим, что контекст слова в тексте ограничивается десятью словами рядом с ним: пятью до него и пятью после. Сделав это предположение, составим матрицу совместных употреблений: ![]() Здесь каждый ряд и каждая колонка соответствуют слову, которое хотя бы раз встретилось в корпусе. В каждой ячейке этой матрицы указано количество раз, которое слово из ряда было употреблено в одном контексте со словом из колонки. В итоге каждый ряд описывает контекстное распределение соответствующего ему слова. По сути, это уже и есть семантический вектор, но так как он получается слишком большим (количество слов корпуса может достигать сотни тысяч), разработчики применяют специальные алгоритмы для представления вектора в более короткой форме (в конце концов для одного вектора обычно используется около 300 чисел). Очень быстро выяснилось, что такой способ представления семантики в цифровой форме значительно лучше всего, чем лингвистическое и технологическое сообщества владели до этого. Использовавшиеся раньше частотные методы справлялись, например, с выделением ключевых слов из текста, но контекстную информацию они теряли. Многие считали, что, несмотря на весь технологический прогресс, компьютер никогда не сможет понимать и взаимодействовать со смыслами. Появление семантических векторов, если не доказало обратное, то точно заставило сомневаться в невозможности этого. Семантические векторы оказали огромное влияние на развитие технологий в области компьютерной лингвистики. С их помощью стало возможно использовать информацию о семантике слов и текстов для обучения нейронных сетей. Благодаря семантическим векторам за последние 10 лет случился прорыв в области распознавания речи, текстовой классификации и синтеза речи. Голосовые помощники, машинный перевод и даже автоматические редакторы используют технологию семантических векторов. Сейчас это стало работать настолько хорошо, что мы уже не удивляемся тому, что робот может позвонить за нас в парикмахерскую или забронировать стол в ресторане. А началом для всего этого послужила теория дистрибутивной семантики. ![]() Существует много способов толковать слова, и ни один из них не является универсальным. Во многом способность человека познавать мир и использовать язык всё ещё покрыта тайной. Однако сейчас мы как никогда близки к созданию машин, которые будут способны взаимодействовать и интерпретировать смыслы. И вполне вероятно, что этого могло бы и не произойти, если бы в 50-х Джон Фёрт не выдвинул свою гипотезу (кстати сказать, очень интересно, что модель перцептрона, с которой начались нейронные сети, была предложена тогда же — прим. ред.). Теоретическая наука — удел терпеливых людей. Во многом это очень неблагодарное занятие, ведь результат твоей работы может ждать своего применения или признания десятки и сотни лет (или всю вечность — прим. ред.). Но на примере дистрибутивной семантики мы видим, что рано или поздно хотя бы некоторые теории находят своё практическое применение и оказывают влияние на наш мир. Когда у человечества в очередной раз возникнет вопрос «Что это такое?», у теоретической науки наверняка найдётся, что на это ответить. Статью подготовил Миша Булыгин (с небольшой помощью редакции нашего дорогого паблика). Источник: m.vk.com Комментарии: |
||||||