Блог - Просто про складне

Інтелект понарошку: від чат-ботів до нейронних мереж

Інтелект понарошку: від чат-ботів до нейронних мереж
Людина постійно шукає спосіб спростити собі життя і делегувати якусь роботу простим і складним пристроям. Прагнення до економного витрачання своїх сил закладено в нас природою. На початку еволюції це призвело до появи найпростіших інструментів, таких як колесо, важіль, молоток, лопата та ін. З часом інструменти ставали більш функціональними і зручними. Але поступово вимальовувався і найголовніший їх недолік - застосування будь-якого інструменту вимагало присутність людини.
Рішення даної проблеми стало можливим тільки з появою комп'ютерних обчислювальних систем, коли штучний інтелект перестав бути фантастикою. Ще в шістдесятих роках минулого століття Міністерство оборони США працювало над методами імітації розумової діяльності у військових цілях. Сьогодні це вже реальність, а технології, що імітують роботу людського мозку, доступні кожному.

Що ж таке штучний інтелект і як він працює, що з його допомогою можна робити і чому без нього неможливий прибутковий бізнес? Про все це по порядку.
Без ІІ важко уявити собі життя. Не було б смартфонів, автомобілів Tesla, продажу Amazon були б у багато разів меншими, а Netflix не міг би запропонувати цікавий фільм. Антивірусне ПЗ було б слабким захистом без евристичного аналізу, а антиспамові фільтри пропускали би рекламу, а поштові скриньки ломилися від спаму.



Багато з нас щодня спілкуються з Siri, помічником Google або Алісою. Подібні проекти - складні програми, які розпізнають людську мову і розуміють її смислове навантаження. Вартість розробки цього програмного забезпечення досить висока. Воно й зрозуміло, адже програміст повинен вирішити багато проблем: розробити модуль розпізнавання голосу, навчити аналізувати зображення і розрізняти на ньому предмети, мінімізувати кількість помилок. А, найголовніше, що повинен зробити розробник ІІ - закласти в код віртуального асистента адаптивний алгоритм поведінки, який змінюється в залежності від умов. Якщо користувач уточнює час, то має надійти відповідь з поточним часом, якщо отримана команда встановити будильник, то повинні бути виконані відповідні налаштування нового таймера і т.д. Зазвичай, розробник "розумного" ПЗ описує поведінку ІІ декількома способами.

Машинний інтелект на основі сценаріїв

Перший варіант полягає в складанні всіх можливих сценаріїв розвитку подій і надання відповідних реакцій штучного інтелекту в кожному конкретному випадку. Такий метод цілком підходить для вирішення відносно невеликих і простих завдань: для створення автоматичного чат-бота в месенджері (Viber, Telegram) або для автоматизації платіжних систем. Коли необхідно на веб-сторінці медичної компанії організувати запис на прийом до лікаря, видати якусь довідкову інформацію або показати список товарів в наявності, такий чат буде дуже ефективний.



Адаптивний ШІ

Але, на жаль, метод настройки ІІ на одних сценаріях далеко не завжди застосовується.
Уявіть собі, що штучний інтелект буде грати в шахи. Описати розвиток всіх можливих шахових партій неможливо навіть теоретично. Американський математик, батько інформатики Клод Шеннон (вчений, який придумав слово "біт" для позначення одиниці інформації), ще в 1950 році підрахував мінімальну кількість неповторюваних шахових партій - 〖10〗 ^ 120.



Це "число Шеннона" неймовірно величезне, воно у багато-багато разів перевищує число атомів в частини Всесвіту, що спостережується. При такому великому обсязі даних для гри в шахи необхідний алгоритм, що буде побудований не на сценаріях, а на адаптації під поточні умови. Гравець робить хід, аналізує розстановку сил, прогнозує подальший розвиток подій і вибирає оптимальне пересування фігури на дошці.

 Нейронні мережі і глибоке навчання

Можливий також ще більш складний третій варіант опису поведінки ІІ - алгоритм самонавчання, при якому штучний інтелект подібний до дитини, що прагне пізнавати світ. Найбільш ефективним напрямком машинного навчання є використання так званих нейронних мереж (глибоке навчання). Вони є математичню моделлю, яка описує внутрішні зв'язки між компонентами масиву простих процесорів. Кожен процесор працює на прийом і віддачу сигналу з іншими осередками "комп'ютерного мозку". Кажучи простою мовою, машинний алгоритм прагне повторювати роботу нервових клітин біологічного організму. Чим складніше топологія нейронних зв'язків, тим вище рівень її здатності до навчання і тим складніше завдання вона здатна вирішувати.
5
Можливості учня комп'ютерного інтелекту практично безмежні. Чим досвідченіша така система, тим більше вона схожа на розумову діяльність живої істоти.
Нейронна мережа може вирішувати практично будь-яку аналітичну задачу. Вона здатна шукати формулу ліків для хвороби, виконувати прогнозування котирувань на фінансовому ринку або робити інші аналітичні припущення на основі статистичних величин. Такий "супермозг" навчається розпізнавати без апаратних засобів, по одному тільки відео, руху людини (подібно технології motioncapture) і повторювати ці рухи на анімованої моделі. Глибокий аналіз дозволяє зробити діпфейк відео, замінивши одного актора іншим. Нейронна мережа може, навіть, вчитися копіювати стиль художника або генерувати людський голос з правильним наголосом і відтінками емоцій.
На сьогоднішній день ми знаходимося тільки на самому початку розвитку технології глибокого навчання. Її просування покищо відбувається не так швидко,як хотілося б. Це пояснюється високим рівнем інвестицій і чималими вимогами до обчислювальних потужностей. Однак, прогрес можна побачити - поточний рівень складності машинного інтелекту цілком достатній для того, щоб делегувати їм такі інтелектуальні завдання як пошук інформації в інтернеті або, навіть, написання короткого есе.

Чат-боти для бізнесу

Вам напевно знайоме спливаюче віконце в кутку екрану: "Ради вас вітати у нашому інтернет-магазині! Чим можу вам допомогти?". Подібні віртуальні помічники значно підвищують якість і швидкість обслуговування клієнтів. До того ж, це хороший інструмент для вибудовування воронок продажів. Програма може визначити інтереси клієнта не гірше справжнього продавця-консультанта і запропонувати йому актуальні товари або послуги. Такі інструменти легко інтегруються з соцмережами і популярними мессенджерами, такими як Telegram, WhatsApp, Viber. Цей спосіб автоматизації бізнесу давно став нормою, але ж компанії, все ще недооцінюють можливості технології та ризикують в найближчі роки понести збитки, навіть  втратити бізнес.



Простий автоматичний чат, встановлений на сайті, істотно скорочує поточні витрати. Він безкоштовно працює 24 години на добу, не вимагаючи грошової винагороди і відпустки. Беручи на себе "мавпячу роботу", цей модуль знижує навантаження на інших співробітників фірми. Машинний чат відповідає оперативніше реального оператора. Позбавлений "людського фактора" чат-бот ніколи не помиляється, приймаючи заявку, він не зробить помилку в номері телефону або адресу замовника і так далі.
Окрім відомих областей застосування автоматизованих чатів, існує і маса інших варіантів їх використання, про які керівник бізнес-проекту може і не підозрювати. Тим, хто далекий від веб-технологій, варто отримати компетентну консультацію щодо того, яким чином краще використовувати чат-бот. Наприклад, віртуальний помічник може просувати бренд у соціальних мережах: пропонувати взяти участь в конкурсах, інформувати про акції, а також формувати лояльну аудиторію за допомогою розсилки цікавих історій, вірусних відео, смішних гифок і так далі. Бот може шукати клієнтів в соціальних мережах, використовуючи таргетинг, як в контекстній рекламі, з урахуванням географії, часу та інтересів людей.