Извлечение знаний с помощью нейронных сетей
Ковбойский язык очень легко понять, - заметил один ковбой. - Нужно просто заранее знать, что хочет сказать твой собеседник, и не обращать внимание на его слова. Д.Бурстин, "Американцы: демократический опыт"
До сих пор нейросети рассматривались нами лишь как инструмент предсказания, но не понимания. Действительно, классический нейросетевой подход - метод черного ящика - предполагает создание имитационной модели, без явной формулировки правил принятия решений нейросетью. Вернее, эти правила содержатся в весах обученной нейросети, но понять их, переформулировав на язык "если - то " не представлялось возможным. В этой лекции мы продемонстрируем методику, позволяющую строить подобные правила, объясняющие нейросетевые решения. Нейросети, таким образом, можно использовать не только для предсказаний, но и для извлечения знаний из баз данных.
Традиционно построение правил вывода и баз знаний считается прерогативой экспертных систем - направления искусственного интеллекта, которое претендовало в начале семидесятых годов заменить собою искусственные нейронные сети в задачах обработки информации. Экспертные системы были ориентированы именно на обработку данных с помощью некоторых правил вывода, которые предполагалось извлекать у экспертов в той или иной области знаний. Экспертные системы были призваны реализовывать цепочки рассуждений, имитирующих анализ ситуации экспертом-человеком. По сути в 70-е годы сам термин "искусственный интеллект" был синонимом разработки экспертных систем, или инженерии знаний.
Это направление, однако, столкнулось с рядом принципиальных трудностей. В частности, инженеры знаний должны были извлекать их у очень квалифицированных экспертов, которые, вообще говоря, не стремились поделиться информацией. Знания - большая ценность, и передавать их, чтобы помочь создать себе легко тиражируемую замену и, в конечном счете, обесценить себя как специалиста, стремился далеко не каждый. Но даже и при наличии соответствующего желания, эксперт не всегда мог внятно сформулировать те правила, которыми он пользуется при подготовке экспертного заключения. Очень многое в его работе связано с интуитивными качественными оценками, распознаванием ситуации в целом, то есть с не формализуемыми процедурами (мы знаем, что это как раз та ситуация, в которой особенно отчетливо проявляются преимущества нейросетевого подхода). Но даже если все трудности оказывались преодоленными, достоинства построенной экспертной системы оказывались не абсолютными, поскольку именно явная формализация правил вывода, а не компьютерная система сама по себе представляла основную ценность. В этом смысле весьма показателен опыт создания в 70-е годы в Стэнфордском университете экспертной системы MYCIN, с помощью которой врачи должны были повысить надежность диагностики септического шока. Септический шок, дававший в случае развития 50% летальных исходов у прооперированных больных вовремя диагностировался врачами лишь в половине случаев. Экспертная система MYCIN позволила повысить качество диагностики почти до 100%. Однако, после того, как врачи познакомились с ее работой, они очень быстро сами научились правильно ставить соответствующий диагноз. Необходимость в MYCIN отпала и она превратилась в учебную систему. Таким образом, основная польза проекта состояла именно в извлечении знаний в понятном для человека виде.
По мнению Стаббса, известного американского специалиста в области нейросетевых приложений, экспертные системы "пошли" только в кардиологии. Они эффективно заменили объемистые руководства по анализу электрокардиограмм, содержащие множество достаточно ясно сформулированных правил оценки их многообразных особенностей.
Нейронные сети выглядят предпочтительнее экспертных систем, позволяя одновременно анализировать множество в общем случае неточных и неполных параметров и не требуя при этом явной формализации правил вывода. Однако, объяснение тех или иных рекомендаций, полученных с помощью нейросетевого анализа, является требованием, которое обычно предъявляют специалисты, желающие использовать нейросетевые технологии. На первый взгляд здесь-то и находится их слабое место. Действительно, в такой области обработки информации, как извлечение знаний, нейронные сети стали применяться только относительно недавно. Это еще одна сфера, в которой доселе господствовал только традиционный искусственный интеллект. Рассмотрим ее более подробно.
Извлечение знаний
В последние годы созданы огромные базы данных, в которых хранится информация научного, экономического, делового и политического характера. В качестве примера можно привести GenBank, содержащий террабайты данных о последовательностях ДНК живых организмов. Для работы с подобными базами разработаны компьютерные технологии, позволяющие хранить, сортировать и визуализировать данные, осуществлять быстрый доступ к ним, осуществлять их статистическую обработку. Значительно меньшими являются, однако, достижения в разработке методов и программ, способных обнаружить в данных важную, но скрытую информацию. Можно сказать, что информация находится к данным в таком же отношении, как чистое золото к бедной золотоносной руде. Извлечение этой информации может дать критический толчок в бизнесе, в научных исследованиях и других областях. Подобное нетривиальное извлечение неявной, прежде неизвестной и потенциально полезной информации из больших баз данных и называется Разработкой Данных ( Data Mining ) или же Открытием Знаний ( Knowledge Discovery ). Мы будем использовать далее для описания этой области информатики более явный синтетический термин - извлечение знаний. Извлечение знаний использует концепции, разработанные в таких областях как машинное обучение (Machine Learning), технология баз данных (Database Technology), статистика и других.
Главными требованиями, предъявляемыми к методам извлечения знаний, являются эффективность и масштабируемость. Работа с очень большими базами данных требует эффективности алгоритмов, а неточность и, зачастую, неполнота данных порождают дополнительные проблемы для извлечения знаний. Нейронные сети имеют здесь неоспоримое преимущество, поскольку именно они являются наиболее эффективным средством работы с зашумленными данными. Действительно, заполнение пропусков в базах данных - одна из прототипических задач, решаемых нейросетями. Однако, главной претензией к нейронным сетям всегда было отсутствие объяснения. Демонстрация того, что нейронные сети действительно можно использовать для получения наглядно сформулированных правил было важным событием конца 80-х годов. В 1989 году один из авторов настоящего курса поинтересовался у Роберта Хехт-Нильсена, главы одной из наиболее известных американских нейрокомпьютерных фирм Hecht-Nielsen Neurocomputers, где можно узнать подробности о нейроэкспертных системах, информация о которых тогда носила только рекламный характер. Хехт-Нильсен ответил в том смысле, что она недоступна. Но уже через 2-3 месяца после этого в журнале Artificial Intelligence Expert была опубликована информация о том, что после долгих и трудных переговоров Хехт-Нильсен и крупнейший авторитет в области экспертных систем Гэллант запатентовали метод извлечения правил из обученных нейронных сетей и метод автоматической нейросетевой генерации экспертных систем.
Извлечение правил из нейронных сетей подразумевает их предварительное обучение. Поскольку эта процедура требует много времени для больших баз данных, то естественна та критика, которой подвергается использование нейротехнологии для извлечения знаний. Другим поводом для такой критики является трудность инкорпорации в нейронные сети некоторых имеющихся априорных знаний. Тем не менее, главным является артикуляция правил на основе анализа структуры нейронной сети. Если эта задача решается, то низкая ошибка классификации и робастность нейронных сетей дают им преимущества перед другими методами извлечения знаний.