Нейросетевые агенты в интернете
Архив- Самое худшее случилось, - сказал сэр Дональд Акер, - когда в Массачусетском технологическом институте соединили входы с выходами.
С. Лем. "Не буду прислуживать"
Английской грамматикой в объеме Basic English первым овладел Proteus orator mirabilis, тогда как E.coli eloquentissima даже в 21 000 поколении делал, увы, грамматические ошибки.
С. Лем. "Эрунтика"
С. Лем. "Не буду прислуживать"
Английской грамматикой в объеме Basic English первым овладел Proteus orator mirabilis, тогда как E.coli eloquentissima даже в 21 000 поколении делал, увы, грамматические ошибки.
С. Лем. "Эрунтика"
Нейрокомпьютинг вокруг нас
Представьте, уважаемый читатель, что однажды, листая свой любимый компьютерный журнал, вы встречаете на одной полосе сообщение, что распознавание речи с помощью нейронных сетей достигло небывалых высот, а несколькими страницами позже наталкиваетесь на пророчества Билла Гейтса, что скоро вообще 90% операционной системы будет занято распознаванием образов. [1] Неужели правда, спрашиваете вы себя, что с компьютерами вскоре можно будет общаться неформально - что-то вроде: "Покажи мне график развития рынка сетевых услуг в России за прошедший год". Искусственный интеллект? Слыхали неоднократно, и всякий раз обещания оказывались блефом. Проблема-то не простая, посложнее термояда будет.
Проходя мимо магазина, вы вдруг замечаете новый пылесос фирмы Samsung, в рекламе которого мелькнули все те же нейронные сети. М-да... что ж, и пылесосу, видно, не мешает быть чуточку интеллектуальнее. Так, скоро, глядишь, и все бытовые устройства поумнеют, обзаведясь какими-никакими, но все-таки мозгами. Может, это и есть естественный путь искусственного интеллекта? - размышляете вы по этому поводу. Не обязательно ведь сразу говорить, сначала неплохо было бы научиться что-то ощущать, различать элементарные ситуации и, постепенно обучаясь, адекватно на них реагировать. Все согласно эволюции: от простого - к сложному, от примитивной нервной системы из нескольких нейронов - до мозга. Видимо, искусственные нейросети развиваются именно как обучающиеся сенсоры? Недаром же их называют персептронами...
Вы правы, читатель, но не совсем. Конечно, потенциальный рынок нейрочипов огромен. В чем-то ситуация с ними аналогична появлению микропроцессоров в начале 70-х, когда те начинали свое победное шествие с простеньких микроконтроллеров. Однако нейросети способны изменить не только hardware, но и весь облик современного software. Более того, в силу гораздо меньшей инерционности, именно в программной среде мы и столкнемся в первую очередь с революционными изменениями, так или иначе связанными с нейронными сетями. C обучающимися нейросетевыми программами вы незаметно для себя сталкиваетесь чуть ли не ежедневно. Например, расплачиваясь по пластиковой карточке, когда ваши действия незаметно, на лету проверяются нейросетевой программой, обученной на десятках тысяч случаев несанкционированных транзакций. Или в Интернете, где вы подвергаетесь воздействию направленной рекламы, когда умные серверы подсовывают вам банеры в соответствии с тематикой просматриваемых страниц. Нажимая кнопочку "More like this" на портале InfoSeek или "Найти похожие документы" на российском Infoart.ru, вы получаете похожие по смыслу документы благодаря нейросетевым программам, обученным распознавать семантику текстов.
Кроме того, нейросетевые программы помогают считывать рукописные чеки и налоговые декларации, предсказывают рыночные курсы и улавливают изменения конъюнктуры, ставят диагнозы больным и вовсю используются военными. Но больше всего нас будет интересовать Интернет. Именно здесь ожидается очередная революция в информационных технологиях, сравнимая по масштабам с внедрением в массы персональных компьютеров, а может, и превосходящая это событие- и не в последнюю очередь благодаря искусственным нейронным сетям. Опять революция? Не верится? А зря. Попробуем разобраться по порядку. Что такое нейронные сети? Почему о них так много пишут в последнее время? Как они изменят и без того быстро меняющийся компьютерный мир? Как это повлияет на нашу с вами жизнь?
|
Две парадигмы вычислений
Еще на заре компьютерной эры - до появления первых ЭВМ - были намечены два принципиально разных подхода к обработке информации: последовательная обработка символов и параллельное распознавание образов. В контексте данной статьи как символы, так и образы - это "слова", которыми оперируют вычислительные машины, их отличие - лишь в размерности. Информационная емкость образа может на многие порядки превосходить число бит, которыми описываются символы. Но это чисто количественное различие имеет далеко идущие качественные последствия в силу экспоненциально быстрого возрастания сложности обработки данных с ростом их разрядности.
Так, можно строго описать все возможные операции над относительно короткими символами. Значит, можно сделать устройство - процессор -, предсказуемым образом обрабатывающее любой поступивший на вход символ - команду или данные. Если теперь удастся свеТак, можно строго описать все возможные операции над относительно короткими символами. Значит, можно сделать устройство - процессор -, предсказуемым образом обрабатывающее любой поступивший на вход символ - команду или данные. Если теперь удастся свести сложную задачу к перечисленным базовым операциям такого процессора - написать алгоритм ее решения, - то можно поручить ее выполнение компьютеру, избавляясь тем самым от утомительной рутинной работы. Оказывается, что любой сколь угодно сложный алгоритм можно запрограммировать на элементарно простых процессорах. [2]
Описать же все операции над многобитными образами принципиально невозможно, ибо длина описания растет экспоненциально. Следовательно, любой "процессор образов" всегда специализирован - задание на его разработку представлено заведомо неполной таблицей преобразований образов, как правило, содержащей ничтожную часть возможных сочетаний входов-выходов. Во всех остальных ситуациях его поведение не специфицировано. Процессор должен "додумать" свое поведение, обобщить имеющиеся обучающие примеры таким образом, чтобы и на тех примерах, которые не встречались в процессе обучения, его поведение было бы "в приемлемой степени аналогичным".
Таким образом, различие между последовательными и параллельными вычислениями гораздо глубже, чем просто большая или меньшая продолжительность вычислений. За этим различием стоят совершенно разные методологии, способы постановки и решения информационных задач. Осталось добавить, что первым путем идут знакомые нам фон-неймановские компьютеры, а второй путь, вслед за естественными нейронными ансамблями мозга, выбран нейрокомпьютингом.
Чтобы вписать нейрокомпьютинг в общую картину эволюции вычислительных машин, рассмотрим эти две парадигмы в историческом контексте. Давно известен факт "встречной направленности" биологической и компьютерной эволюций. Человек сначала научается распознавать зрительные образы и двигаться, затем говорить, считать, и наконец, самое сложное, - приобретает способность логически мыслить абстрактными категориями. Компьютеры же, наоборот, сначала освоили логику и счет, потом научились играть в игры и лишь с большим трудом подходят к проблемам распознавания речи, обработки сенсорных образов и ориентации в пространстве. Чем объясняется такое различие?
Последовательная обработка символов
Первые ЭВМ обязаны своим появлением не только гению ученых, но и в не меньшей степени давлению обстоятельств. Вторая мировая война потребовала решения сложных вычислительных задач. Нужны были суперкалькуляторы, какими и стали первые ЭВМ.
При тогдашней дороговизне hardware выбор последовательной архитектуры, принципы которой были сформулированы в знаменитом отчете фон Неймана 1945 года, был, пожалуй, единственно возможным. И этот выбор на несколько десятилетий определил основное занятие ЭВМ: решение формализованных задач. Разделение труда между компьютером и человеком закрепилось по формуле: "человек программирует алгоритмы - компьютер их исполняет".
Тем временем прогресс полупроводниковых интегральных технологий обеспечил несколько десятилетий экспоненциального роста производительности фон-неймановских компьютеров, в основном за счет увеличения тактовой частоты, и в меньшей степени - за счет использования параллелизма. Если тактовая частота растет обратно пропорционально размеру вентилей на чипе, то есть пропорционально корню квадратному числа элементов, то число входов-выходов - всего лишь как корень пятой степени. Этот факт отражен в эмпирическом законе Рента: число вентилей в процессоре пропорционально примерно 5-й степени от числа его входов-выходов (Д. Ферри, Л. Эйкерс, Э. Гринич, "Электроника ультрабольших интегральных схем", М.: "Мир", 1991). Поэтому кардинальное увеличение разрядности процессоров при сохранении существующих ныне схемотехнических принципов невозможно. Обработка действительно сложной - образной -информации должна базироваться на принципиально иных подходах. Поэтому-то мы и не имеем пока систем искусственного зрения, хоть как-то сопоставимых по своим возможностям с их природными прототипами.
Параллельная обработка образов
Распознавание сенсорной информации и выработка адекватной реакции на внешние воздействия - вот главная эволюционная задача биологических компьютеров, от простейших нервных систем моллюсков до мозга человека. Не выполнение внешних алгоритмов, а выработка собственных в процессе обучения. Обучение представляет собой процесс самоорганизации распределенной вычислительной среды - нейронных ансамблей. В распределенных нейронных сетях происходит параллельная обработка информации, сопровождающаяся постоянным обучением, направляемым результатами этой обработки.
Лишь постепенно в ходе эволюции биологические нейронные сети научились осуществлять достаточно длинные логические цепочки - эмулировать логическое мышление. Распознавание же образов вовсе не предполагает логического обоснования. Как правило, каждый мужчина легко различит мелькнувшую в толпе симпатичную девушку. Но кто из них рискнет предложить алгоритм оценки женской красоты? Да и существует ли вообще такой алгоритм? Кто формализует эту задачу, и кому это вообще нужно? Эволюция не решает формализованных задач, не рассуждает, она лишь отбраковывает неверные решения. Элиминация ошибок - основа любого обучения, и в эволюции, и в мозге, и в нейрокомпьютерах.
Но зададимся, наконец, вопросом: как именно работают нейрокомпьютеры? Устройство мозга слишком сложно. Искусственные нейросети проще - они "пародируют" работу мозга, как и положено любым научным моделям сложных систем. Главное, что объединяет мозг и нейрокомпьютеры, - нацеленность на обработку образов. Оставим в стороне биологические прототипы и сосредоточимся на базовых принципах распределенной обработки данных.
Коннекционизм
Отличительной чертой нейросетей является глобальность связей. Базовые элементы искусственных нейросетей - формальные нейроны - изначально нацелены на работу с векторной информацией. Каждый нейрон нейросети, как правило, связан со всеми нейронами предыдущего слоя обработки данных (см. рис.).
Специализация же связей возникает лишь на этапе их настройки - обучения на конкретных данных. Архитектура процессора или, что то же самое, алгоритм решения конкретной задачи проявляется, подобно фотоснимку, по мере обучения.
Каждый формальный нейрон производит простейшую операцию - взвешивает значения своих входов со своими же локально хранимыми синаптическими весами и производит над их суммой нелинейное преобразование:
Нелинейность выходной функции активации принципиальна. Если бы нейроны были линейными элементами, то любая последовательность нейронов также производила бы линейное преобразование, и вся нейросеть была бы эквивалентна одному слою нейронов. Нелинейность разрушает линейную суперпозицию и приводит к тому, что возможности нейросети существенно выше возможностей отдельных нейронов. [3]
|
Локальность вычислений
Массовый параллелизм нейровычислений, необходимый для эффективной обработки образов, обеспечивается локальностью обработки информации в нейросетях. Каждый нейрон реагирует лишь на информацию, поступающую к нему от связанных с ним нейронов, без апелляции к общему плану вычислений, обычной для универсальных ЭВМ. Таким образом, нейросетевые алгоритмы локальны, и нейроны способны функционировать параллельно.
Локальность обучения
Отсутствие глобального плана вычислений в нейросетях предполагает и особый характер их программирования. Каждый нейрон изменяет свои "подгоночные параметры" - синаптические веса - в соответствии с поступающей к нему локальной информацией. Эта информация определяется по выходам сети и отражает эффективность ее работы как целого. Она распространяется от выходов ко входам, навстречу потоку входных сигналов. Поэтому базовый алгоритм обучения сетей получил название обратного распространения ошибок. Поскольку ошибка проходит по тем же самым синаптическим связям между нейронами, наибольший сигнал об ошибке получают нейроны, давшие наибольший вклад в ошибочный ответ. В итоге такие наименее обученные нейроны сильнее всего и обучаются. Это очень простой и эффективный принцип обучения - "каждому воздастся по делам его". Вероятно, именно таким образом в процессе самообучения биологические нейросети выработали столь эффективные алгоритмы обработки сенсорной информации.
Интересно, что математически обучение методом обратного распространения ошибки соответствует так называемой градиентной оптимизации. Не вдаваясь в математические тонкости, этот процесс можно образно представить как поиск минимума функции ошибки, зависящей от набора всех синаптических весов сети, руководствуясь градиентом этой функции (см. врезку). Обратное распространение ошибки эффективно вычисляет локальный градиент в пространстве конфигураций, направляя тем самым процесс минимизации ошибки. Функция ошибки, однако, может иметь множество локальных минимумов, представляющих субоптимальные решения. Поэтому градиентные методы обычно дополняются элементами стохастической оптимизации, чтобы предотвратить "застревание" конфигурации сети в таких локальных минимумах. Идеальный метод обучения должен найти глобальный оптимум конфигурации сети [4].
Преимущества нейросетевого подхода
Подытожим привлекательные черты распределенной обработки информации в искусственных нейросетях:
- Параллелизм обработки информации - глобальность связей между нейронами. До обучения эти связи произвольны и обычно малы. Обучение на примерах "проявляет" конкретную структуру сети под конкретную задачу.
- Единый и эффективный принцип обучения нейросетей - минимизация эмпирической ошибки методом ее обратного распространения по сети. Извне задается лишь цель обучения - то есть способ определения ошибки по выходам сети. Далее сеть постепенно модифицирует свою конфигурацию, минимизируя эту ошибку, то есть все лучше справляясь с возложенной на нее задачей.
- Надежность функционирования. Избыточность связей приводит к тому, что значения каждого веса по отдельности не играют решающей роли. Вывод из строя ограниченного числа нейронов или обрыв некоторых связей не сказываются критическим образом на качестве работы всей сети.
- Способность решать неформализованные задачи - следует из способности нейросетей самостоятельно вырабатывать весьма сложные алгоритмы обработки данных, формализовать которые самостоятельно зачастую не могут даже лучшие эксперты в данной предметной области. Отсюда - относительная дешевизна нейросетевых разработок.
Актуальность нейрокомпьютинга
Почему же нейрокомпьютинг, при столь внушительном наборе положительных качеств, стал популярен только в 80-х, а на практике стал применяться лишь в 90-е? Все очень просто: появление любой новой технологии должно быть востребовано экономикой. Именно экономическая потребность в суперкалькуляторах вызвала к жизни последовательные ЭВМ. Их умение решать любые формализованные задачи обработки как численной, так и символьной информации способствовала распространению компьютеров в офисах. А это, в свою очередь, подняло на должную высоту проблему человеко-машинного интерфейса. Отсюда и возросший интерес к проблемам искусственного интеллекта.
Сегодня именно интерфейс пользователя в наибольшей степени влияет на объем потенциального рынка. Отказ от командной строки и переход к графической объектной модели интерфейса вывел Microsoft в лидеры компьютерного мира.
Метафора рабочего стола, где с информацией можно обращаться как с обычными объектами - раскладывать по папкам-директориям, выкидывать в корзину и т. д., - как нельзя лучше подходит для организации персональной конторской работы.
Но времена меняются, и чем дальше - тем быстрее. За победным шествием Windows стратеги Microsoft чуть не просмотрели новый поворот в развитии компьютерной индустрии - появление и быстрое развитие Интернета. Привычная компьютерная среда обитания изменяется буквально на наших глазах. Вместо разрозненных персональных компьютеров появляется Сеть с ее неисчерпаемыми информационными ресурсами. Соответственно, меняется и роль компьютеров в нашей жизни. Из игровых автоматов и конторских рабочих мест они превращаются в источник знаний, средство коммуникации и электронной торговли.
С изменением социальной роли компьютеров не может не претерпеть изменений и их программная "начинка". Действительно, в своих персональных данных человек разбирается лучше кого бы то ни было, и все, что ему для этого нужно, - удобные средства манипулирования ими, создания документов и их хранения в иерархии директорий. Для работы и жизни в океане Интернета нужно нечто совсем иное. Нужны персональные помощники, помогающие просматривать большие массивы информации в поисках полезной, организующие персональную фильтрацию новостей, помогающие находить нужных людей, товары и услуги. На смену пассивному объектному интерфейсу должен прийти активный агентский интерфейс.
|
Главное требование к агентам, призванным обеспечить информационный комфорт в Сети, это обучаемость (см. врезку). Нельзя рассчитывать, что массовый пользователь будет формулировать свои запросы в ясной и непротиворечивой форме. Человек, как правило, вообще не в силах объяснить логически структуру своих предпочтений. Зато он всегда может отличить то, что ему надо, от того, что "не его". Агентам предстоит учиться методом проб и ошибок, постепенно выявлять профили предпочтений своих хозяев и действовать в Сети от их имени и в их интересах. Чем качественнее обучится агент, тем комфортнее будет жить его хозяину.
Таким образом, развитие Интернета призывает на сцену обучающихся интеллектуальных агентов. Это - веление времени, давление рынка. Здесь-то способности нейросетей к обучению оказываются как нельзя более кстати. Через Интернет, через агентов нейросетипостепенно, шаг за шагом, будут отвоевывать свою экологическую нишу в мире компьютерных программ, пока их массовое распространение не сделает экономически выгодным отказ, где это возможно, от последовательных фон-неймановских машин и переход к настоящим параллельным нейрокомпьютерам (известный в последние десятилетия принцип: "software sells hardware"). Программные агенты, эмулирующие работу нейросетей на обычных компьютерах, будут тем троянским конем, который откроет дорогу параллельному hardware в мир, где пока безраздельно властвует последовательное. Программные роботы проложат дорогу роботам "железным" (кремниевым? медным? органическим?).
Интернет как среда развития ИСКУССТВЕННОГО ИНТЕЛЛЕКТА
Однако одним лишь изменением интерфейса дело, конечно же, не ограничится. Агенты изменят и весь облик современного Интернета. Вместо глобальной гиперкниги Интернет, превратившись в "муравейник" взаимодействующих агентов, начнет постепенно самообучаться. Подобно тому, как обучается мозг, как обучаются нейронные сети. Вспомним, что лежит в основе способности нейросетей к обучению. Во-первых, каждый нейрон должен сам иметь способность к обучению - подстройке своих синаптических весов в зависимости от корректирующего сигнала. Во-вторых, он должен получать этот корректирующий сигнал, распространяющийся по сети от тех нейронов, которые выдают конечный результат остальным, промежуточным нейронам, принимавшим участие в вычислениях. И все! Такая сеть уже обладает способностью обучаться коллективным действиям по решению задач любой сложности.
Чего же не хватает сети взаимодействующих обучающихся агентов, чтобы превратиться в некий глобальный обучающийся гипермозг? Способности передавать агентам корректирующий сигнал об адекватности их коллективной деятельности? Но эта технология уже на подходе. Речь идет, конечно же, об электронных деньгах. Возможность проводить микроплатежи за микроуслуги преобразит всю Интернет-экономику, да и всю экономику вообще, по мере того как граница между этими понятиями будет постепенно размываться. Появятся сотни новых реальных возможностей включиться в экономическую деятельность, то есть зарабатывать, оказывая небольшие услуги большому числу людей. Например, создавая программные компоненты, которыми смогут пользоваться агенты, на лету собирающие нужные приложения по заказу своих хозяев. Или воспитывая поисковых агентов, специализированных по отдельным тематикам. Достаточно разветвленная сеть таких специализированных агентов-экспертов, развивающаяся вместе с Сетью, - реальная альтернатива поисковым серверам, переставшим справляться с индексированием всей сети "без разбора". Сеть может быть проиндексирована и проаннотирована только самой Сетью.
Электронные деньги станут тем нейромедиатором, который обеспечит обратную связь между действиями агентов в Сети и результатами этой коллективной деятельности. Плата за реальные услуги - вот тот ограниченный ресурс, борьба за который приведет к появлению все более интеллектуальных агентов, объединенных в наиболее целесообразные "трофические цепочки" взаимных услуг. И свидетелями зарождения этого развивающегося коллективного разума Сети будем уже мы с вами, наше поколение. Потому что все компоненты этого гипермозга уже существуют: инфраструктура Сети, выходящая на массового пользователя, нейросетевые агенты, электронные деньги. Им осталось лишь собраться воедино, чтобы включились обратные связи и начался отсчет новой эры - зарождения коллективного искусственного интеллекта.
Предсказывать, что ждет нас в этой новой Сети, - дело неблагодарное. В зависимости от пристрастий здесь возможен весь спектр футурологических прозрений - от утопических идиллий до антиутопий типа "Матрицы". Гораздо более захватывающая перспектива - принять личное участие в создании этого гипермозга. Этим сейчас занимаются многие, как в ведущих университетских лабораториях, так и в коммерческих фирмах. Занимаемся этим и мы - коллектив ученых и программистов в созданной специально для этой цели российской инновационной компании "НейрОК" (www.neurok.ru).
Понимая, что с наскока эту задачу не решить, мы начали с малого - создания достаточно интеллектуального семантического сервера, способного учиться распознавать смысл слов, просматривая большие массивы текстов. На основе такого сервера созданы средства ассоциативного поиска документов, визуализации больших текстовых коллекций (Semantic Explorer) и персональная обучающаяся газета (Proxima Daily). Эти технологии уже используются, в частности, службами ассоциативного поиска и персональной рассылки документов российского портала "ИнфоАрт". Следующим шагом станет создание семантического агента, способного составлять по заказу "тематические обзоры" по любым предметам. Объединившись, такие самообучающиеся агенты смогут, по нашему мнению, радикально изменить способы поиска и организации информации в Сети. Потому что они способны не просто индексировать информацию в базах данных, а умеют понимать смысл данных и связывать данные между собой в ассоциативные распределенные базы знаний. Автоформализация знаний - ключевой элемент превращения Сети из гиперкниги в гипермозг, самостоятельно осознающий свое собственное содержание.
Новая ветвь эволюции
Итак, пора подводить итоги. К каким выводам подводит нас логика нашего рассмотрения? К закономерности появления и развития компьютеров сначала именно как вычислительных машин, а затем - в качестве средства автоматизации труда белых воротничков. Повсеместное распространение персональных компьютеров создало предпосылки для их объединения в Сеть. Возникновение и бурное развитие глобальной Сети подвело эволюцию компьютеров к следующему неизбежному этапу - появлению сетевого разума. Вслед за компьютерами-калькуляторами и послушными исполнителями готовых алгоритмов в ближайшем будущем появятся обучающиеся программные агенты. Их объединение в сетевое сообщество взаимодействующих друг с другом (и, конечно, со своими хозяевами) агентов создаст самообучающуюся среду, вполне аналогичную по своей способности к самоорганизации человеческому мозгу. Человеко-машинный симбиоз, каким уже давно и является современное общество, перейдет на новый качественный уровень.
Нейросетевые программы постепенно проложат дорогу аналоговому нейросетевому hardware. Компьютеры наконец обретут способность видеть, слышать и ощущать иными, неведомыми человеку, органами чувств. Робототехника, быть может, наконец-то освободит людей от утомительной роли "подай-принеси" на современном производстве. Умные домашние приборы обеспечат новый уровень бытового комфорта...
Но все это будет тогда, когда ... Слишком уж далеко такого рода "линейное" прогнозирование от учета превратностей нашего реального мира, где схлестываются волны всех технологических революций - аграрной, индустриальной и информационной, - и в котором умудряются соседствовать технологии XXI века и родоплеменные отношения средневековья. Так что не будем загадывать, тем более, что ждать, в общем-то, осталось не так уж и долго - по меркам Эволюции.
1 (обратно к тексту) - Ситуация гипотетическая, но факты подлинные.
2 (обратно к тексту) - Этот удивительный факт, открытый Аланом Тьюрингом, стал весьма существенным аргументом в пользу последовательной архитектуры в эпоху первых ЭВМ, когда каждый регистр памяти был "на счету". Шеннон, в частности, показал, что в пределе простейший процессор может иметь лишь два состояния. Вообще же, научный метод, основанный на разбиении любых задач на все более и более простые подзадачи, пока решение последних не станет очевидным, был разработан Декартом еще в XVII веке.
3 (обратно к тексту) - Обычно используется пороговая нелинейность с насыщением, по аналогии с функцией активации биологических нейронов, способных испускать порядка 102 нервных импульсов в секунду.
4 (обратно к тексту) - Напомним определение идеала как принципиально недостижимой цели, к которой, тем не менее, следует стремиться.
Сергей Шумский - известный в России и за рубежом специалист по искусственным нейросетям, автор ряда научных статей и книг на эту тему. Cтарший научный сотрудник ФИАН, с 1998 г. - зам. генерального директора компании "НейрОК", разрабатывающей нейросетевые продукты для семантического анализа и поиска информации.