Конечно, я не берусь утверждать, что охватила все аспекты человеческого понимания. Многие отмечают, что термины “понимание” и “смысл” (не говоря уже о “сознании”) не имеют адекватного определения и выполняют функцию условных заменителей, поскольку у нас пока не появилось корректного языка или теории, чтобы говорить о происходящем в мозге. “Хотя такие донаучные зачатки идей, как «полагать», «знать» и «иметь в виду», полезны в повседневной жизни, с технической точки зрения они слишком грубы для применения в авторитетных теориях… – отметил пионер ИИ Марвин Минский. – Какими бы реальными нам ни казались сегодня понятия «самость» и «понимать»… это лишь первые шаги к появлению более удачных понятий”. Далее Минский отметил, что путаница с этими понятиями “возникает из-за обремененности традиционных идей коннотациями, не соответствующими этой невероятно сложной задаче… Наши представления о разуме еще не сформировались окончательно”
[333].
До недавних пор вопрос о том, какие ментальные механизмы позволяют людям понимать мир – и могут ли машины обрести такое же понимание, – занимал в основном философов, психологов, нейробиологов и теоретиков ИИ, которые на протяжении десятилетий (а иногда и столетий) вели научные дебаты на этот счет, не уделяя внимания тому, какие последствия все это имеет для реального мира. Однако, как я показала в предыдущих главах, системы ИИ, не имеющие человеческого понимания, сегодня находят широкое применение при выполнении реальных задач, а потому все эти теоретические вопросы перестают быть прерогативой академического сообщества. В какой степени системам ИИ необходимо человеческое понимание мира или некоторое его подобие, чтобы надежно и эффективно выполнять свою задачу? Ответа не знает никто. Но почти все исследователи ИИ уверены, что изначальные знания “на основе здравого смысла” и способность к построению сложных абстракций и аналогий – это звенья, отсутствие которых сдерживает дальнейшее развитие ИИ. В следующей главе я опишу ряд методов, которые используются, чтобы наделить машины этими способностями.
Глава 15
Знание, абстракция и аналогия в искусственном интеллекте
С 1950-х годов многие представители ИИ-сообщества изучали способы сделать ключевые аспекты человеческого мышления – такие, как изначальное интуитивное знание и построение абстракций и аналогий, – частью машинного интеллекта и тем самым позволить системам ИИ действительно понимать ситуации, с которыми они сталкиваются. В настоящей главе я опишу несколько исследований на эту тему, включая некоторые направления моей прошлой и текущей работы.
Изначальное знание для компьютеров
На заре ИИ, пока машинное обучение и нейронные сети не заняли господствующее положение в отрасли, исследователи вручную кодировали правила и знания, необходимые программе для выполнения задач. Многим пионерам ИИ казалось, что таким методом “встраивания” можно сообщить машинам достаточно основанных на здравом смысле человеческих знаний, чтобы машины получили интеллект человеческого уровня.
Самой знаменитой и длительной попыткой вручную закодировать повседневные знания для машин стал проект Дугласа Лената Cyc (“Сайк”). Ленат – сначала аспирант, а затем профессор Лаборатории искусственного интеллекта Стэнфордского университета – прославился в 1970-х годах, когда написал программы, которые моделировали процесс создания человеком новых понятий, особенно в математике
[334]. Однако, посвятив исследованию этой сферы более десяти лет, Ленат пришел к выводу, что для истинного прогресса в ИИ машины должны обладать здравым смыслом. В связи с этим он решил собрать огромный набор фактов о мире и прописать логические правила, в соответствии с которыми программы смогут использовать этот набор, устанавливая необходимые им факты. В 1984 году Ленат ушел с академического поста и основал компанию (ныне – Cycorp), чтобы достичь этой цели.
Название Cyc отсылает к слову encyclopedia, но, в отличие от знакомых нам энциклопедий, в Cyc, по мысли Лената, должны были войти все неписаные человеческие знания – или, по крайней мере, достаточный объем таких знаний, чтобы системы ИИ смогли работать на человеческом уровне в области зрения, языка, планирования, логических рассуждений и т. д.
Cyc – это система символического ИИ такого типа, как я описала в главе 1: она содержит набор написанных логическим компьютерным языком утверждений о конкретных объектах или общих понятиях. Вот несколько примеров утверждений из Cyc (переведенных с логического языка на естественный)
[335]:
• Объект не может находиться более чем в одном месте в одно время.
• Объекты год за годом стареют.
• У каждого человека есть мать, и эта мать – женщина.
Проект Cyc также включает в себя сложные алгоритмы для построения логических выводов из утверждений. Так, Cyc может определить, что если я нахожусь в Портленде, то я также не нахожусь в Нью-Йорке, поскольку я объект, Портленд и Нью-Йорк – места, а объект не может находиться более чем в одном месте в одно время. Помимо этого, Cyc имеет богатый набор методов для работы с противоречивыми и неопределенными утверждениями.
Утверждения Cyc вручную закодированы людьми (а именно сотрудниками Cycorp) или выведены системой на основе существующих утверждений
[336]. Сколько утверждений необходимо, чтобы закодировать человеческое знание, основанное на здравом смысле? На лекции в 2015 году Ленат сказал, что в настоящий момент в Cyc содержится 15 миллионов утверждений, и предположил: “Вероятно, это около пяти процентов от необходимого”
[337].
Лежащая в основе Cyc философия роднит проект с экспертными системами, которые создавались в первые годы исследования ИИ. Как вы помните, в главе 2 упоминалась экспертная система для медицинской диагностики MYCIN. Для создания правил, на основе которых система сможет ставить диагнозы, разработчики взяли интервью у ряда “экспертов” – квалифицированных врачей. Затем разработчики перевели эти правила на логический компьютерный язык, чтобы позволить системе делать логические выводы. В Cyc “экспертами” выступают люди, которые вручную переводят свои знания о мире в логические утверждения. “База знаний” Cyc больше базы знаний MYCIN, а применяемые алгоритмы логического вывода более продвинуты, но у проектов одна идея: интеллект можно вручную закодировать в правила, применяемые к достаточно богатому набору явно заданных знаний. Сегодня в сфере ИИ господствует глубокое обучение, и Cyc остается одним из последних крупных проектов символического ИИ
[338].