- Традиционная компьютерная программа пишется по закодированным инструкциям для конкретных задач в соответствии с фиксированными правилами.
- Модели ИИ принимают решения и предлагают решения на основе изученных закономерностей, а также генерируют новые данные, не повторяя выученное.
Технология искусственного интеллекта развивается и применяется во многих сферах жизни. Чем она отличается от традиционного программирования? В этом блоге я расскажу, что представляет собой каждый из этих типов программирования, на чём они основаны и для каких задач подходит каждый. Сначала посмотрите это видео Мартина Кина из IBM о системах ИИ и традиционном коде.
Кратко о программировании ИИ
Кратко перескажу содержание видео. Мартин объяснил, что ИИ обучается на данных в три этапа: обучение (загрузка данных), валидация (усвоение) и тестирование (оценка результатов). В традиционном программировании действуют по правилам и вручную пишут строки кода. Он выделил три различия между этими подходами. Первое — масштабируемость: ИИ позволяет работать с большими объёмами кода и данных, тогда как традиционное программирование требует больше кода на входе.
Второе — традиционное программирование даёт полный контроль над системой, потому что результат полностью соответствует тому, что было написано, тогда как ИИ может быть непредсказуемым, поскольку учится на закономерностях и создаёт нечто новое, выходящее за рамки ожиданий. Третье — аспекты, связанные с обучением и обработкой данных.
Читайте также:IBM сообщает о росте заказов в сфере ИИ, опередив прогнозы по прибыли
| Традиционное программирование (классическое обусловливание) | Программирование ИИ (оперантное обусловливание) |
| 1. Проблема? Может быть как проблемой, так и предлагаемым решением | 1. Сбор данных |
| 2. Проектирование алгоритма | 2. Выбор модели |
| 3. Написание кода | 3. Обучение (называется обучением, потому что непредсказуемо) |
| 4. Тестирование и отладка | 4. Оценка (она же тестирование) |
Разницу между ИИ и традиционным программированием хорошо видно по этапам разработки. Первый язык программирования высокого уровня, появившийся в 1942 году и ставший коммерческим, называется FORTRAN (FORmula TRANslating system), его создала команда IBM. Ранние компьютеры имели ограниченные возможности и память, поэтому программистам приходилось писать программы на языке ассемблера, оптимизируя их вручную.
За десятилетия появились новые языки программирования с более совершенными подходами к обработке. Традиционное программирование применяется во многих областях, требующих безопасной и точной среды, например в бухгалтерских системах и веб-разработке. В этих сферах — обработка платежей и аутентификация пользователей — всё регулируется правилами. ИИ, напротив, представляет собой полную противоположность. Оформившись как академическая дисциплина в 1956 году, он сталкивался с препятствиями в последующие десятилетия из-за недоверия и нехватки финансирования, пока в 2012 году не наступила «весна ИИ».
Развитие глубокого обучения превзошло прежние технологии ИИ и привело к буму ИИ в 2020-х годах.
Читайте также:Человек или ИИ как инвестиционный советник: кто лучше?
Программирование ИИ и машинное обучение
Машинное обучение сыграло решающую роль в развитии ранних систем ИИ. Машинное обучение — это наука о программах, которые способны улучшать свои результаты по мере выполнения задач. Это довольно близко к идее современного генеративного ИИ: он изучает закономерности в данных и создаёт нечто новое. Разработчики назвали третий этап «обучением» из-за элементов обучения с подкреплением, которые проявляются на этапе «тестирования» (в традиционном программировании).
Экспериментаторы поощряют систему (подают положительный сигнал) за правильный ответ и наказывают (подают отрицательный сигнал) за неправильный, тем самым обучая машину давать «правильные» ответы. Когда объяснение переходит от определения к происхождению и истории, мы понимаем, чем эти подходы отличаются друг от друга. Это во многом похоже на термины из психологии — классическое и оперантное обусловливание: в первом случае поведение считается вызванным, во втором — проявленным самим субъектом.

Исходя из этого различия, нетрудно понять, почему многие задают вопросы об этике ИИ и о будущих рисках для человечества. Ведь ИИ может буквально учиться, как и мы. Традиционное программирование создаёт прочную основу для развития ИИ, но сможет ли ИИ когда-нибудь превзойти людей и в физическом плане? Этот вопрос остаётся открытым.

