AI та ML: простими словами про складні технології

date 24.05.2023 category Технічні професії в ІТ
AI та ML:  простими словами про складні технології

У чому різниця між штучним інтелектом (англ. artificial intelligence, AI) та машинним навчанням (англ. machine learning, ML)? Як тренувати алгоритми, і як вони можуть помилятися? Чи можна стати ML-розробником із нуля? І врешті-решт, machine learning — що це? Відповідями на ці та інші питання поділився лектор курсу з напряму ML у CHI IT Academy, доктор технічних наук, Ярослав Виклюк. Читай далі, щоб дізнатися всі нюанси.

 

Ярослав Виклюк AI/ML машинне навчання штучний інтелект

 

Що таке штучний інтелект та машинне навчання?

 

Штучний інтелект (ШІ) – це галузь інформаційних технологій,  що за допомогою обчислювальних машин та інших пристроїв відтворює розумні міркування та дії, притаманні людині. Для цього штучний інтелект має правильно інтерпретувати вхідні дані.

 

Щодо машинного навчання (МЛ), – це підгалузь штучного інтелекту, процес власне навчання та адаптації моделі до бажань людини чи до конкретної задачі. Для кращого розуміння суті поговоримо про… електронні ваги.

 

Як працює машинне навчання (простими словами)?

 

Уявіть, що ви хочете випустити електронні ваги. Поставили їх на стіл, і вони показують якісь цифри, поставили щось зверху – знову цифри, але вони не відповідають реальній вазі предмету на вагах.

 

Як це виправити? Організувати процес юстування, тобто налагодження приладу з метою виправлення похибок.

 

Для цього ви берете важки 1 кг, 2 кг, 3 кг і по черзі їх тестуєте, при цьому коригуючи шайбочки й гвинтики. Зрештою ваги починають працювати коректно. Це і є процес навчання та адаптації пристрою чи моделі. Ви налаштовуєте параметри моделі так, як вам потрібно. Подібно до цього відбувається й машинне навчання.

 

Чим машинне навчання відрізняється від штучного інтелекту?

 

Зупинімося трохи докладніше на спільному та відмінному в штучного інтелекту та машинного навчання.

 

Ми вже вказали, що машинне навчання – це частина штучного інтелекту. ШІ – це комплекс, що включає в себе саму модель і механізм її навчання, тобто всю процедуру функціонування – від отримання даних до навчання й прийняття рішення. Завдання машинного навчання – власне навчити модель та підібрати для неї параметри. 

 

Базовим інструментом машинного навчання є нейронні мережі – вони імітують роботу нейронів людського мозку і нечітку логіку. Остання являє собою імітацію логіки людини, тому що людина приймає рішення на основі якісних параметрів.

 

Коли ви купуєте парфуми, то чим керєутесь? Правильно – характером запаху, його нотами, шлейфом. А чим ви це вимірюєте? Задумайтеся, у вас, напевно, немає якоїсь шкали для визначення якості парфумів, але ви все ж приймаєте рішення про покупку. Так, на основі якісних параметрів ви ухвалюєте рішення.

 

Аналогічним прикладом є керування автомобілем. Ви не їздите з транспортиром у руках, вимірюючи кут, за яким повернете руль, правда ж? Вже повертаючи, ви приймаєте кількісне рішення.

 

У чому різниця між штучним інтелектом та класичними математичними методами (простими словами)?

 

У випадку машинного навчання процес навчання полягає у набутті досвіду на основі даних.

 

Що стосується власне штучного інтелекту, то зараз більшість людей називають ШІ чи не все, що може приймати рішення за них. Але це не зовсім так.

 

Наприклад, додаток, який аналізує дорожні розв’язки в місті, ідентифікує всі затори та підказує, як їх об’їхати, – це не рішення штучного інтелекту, це звичайна задача оптимізації та пошук оптимального шляху, який вирішується класичними математичними методами в екселі. Хоча дуже хочеться думати, що ого, це алгоритм мені підказує, що робити та приймає за мене рішення.

 

А ось додаток, що допомагає встановити діагноз (за допомогою рентген-знімку, переліку симптомів, візуальних порушень), – це вже методи штучного інтелекту, які дозволяють виявити так звані приховані залежності.

 

Тобто ідея навчання штучного мозку в тому, що при великому наборі даних він має здатність знаходити приховані залежності.

 

Але ж машина може помилитися?

 

Розкажу про приклад, яким ділюся зі своїми студентами. Я пропоную одному студенту піднятися й кидаю йому крейду, викрикуючи «лови!». І, припустимо, він ловить. Ось і весь отриманий досвід. Потім починаємо розбиратися.

 

Що потрібно, щоб спіймати крейду? Треба знати траєкторію, якою вона летить, розрахувати швидкість руху та підставити руки в приблизному місці приземлення. Щоб розрахувати траєкторію, треба знати кут, перепад висоти й швидкість. Але ж студент це не вимірював.

 

Друге: для того, щоб розрахувати траєкторію,  треба розв’язати диференційне рівняння другого порядку. Що тут цікаво – песик також може спіймати предмет, який кидають, наприклад, м’ячик. Причому песик не знає математики. Власне так і працює ШІ: він може розв’язувати складні залежності без знання математики.

 

Але є нюанс – студент не може пояснити, чому саме таким чином спіймав крейду. Особливість мозку в тому, що інстинкти неможливо пояснити словами. З іншого боку, студент міг і не спіймати крейду. Це не криві руки, а недостатність досвіду. Так само й машина може помилятися.

 

Штучний інтелект довго навчається, приймає рішення (інколи помилкові) й не може їх пояснити. Але чим більше в нього досвіду, тим краще йому вдається впоратися з подібними задачами.

 

Що включає в себе процес машинного навчання?

 

90% часу – це грамотна підготовка даних. Так, це дещо рутинне завдання. Але якщо людина не розбереться й не надасть коректні дані, штучний інтелект точно не зробить цього самостійно.

 

Підготовка даних включає аналіз, усунення пропусків, пошук аномалій, перетворення даних, структурування, налагодження автоматичного завантаження цих даних і так далі.

 

Тільки після цього можна переходить до другого етапу – добору адекватної моделі, яку можна навчити. Третій етап – керування процесом навчання.

 

Інтелектуальний аналіз даних на основі ШІ – це мистецтво. Ви маєте відчувати, як він вчиться, проаналізувати, чому не навчилося – це проблема даних чи моделі?

 

Цей процес навчання важливий. Я завжди кажу, що хороший вчитель може навчити поганого учня, але поганий вчитель може відбити охоту навчатися навіть у найрозумнішої людини.

 

У яких сферах нині реалізовують машинне навчання?

 

Чи не у всіх насправді. Наведу кілька прикладів.

 

Освіта. Мені подобається досвід американців: вони допомагають людям отримати роботу за допомогою оцифрування підручників.

Проаналізувавши ринки США й Канади, американські спеціалісти визначили багато релевантних вакансій і виокремили скіли та вимоги до кожної позиції. Далі спеціалісти співставили цю інформацію з досвідом кожного кандидата й виокремили знання, яких не вистачає для отримання певної роботи. 

Ось так, на основі інформації з оцифрованих підручників та зібраних даних щодо вакансії та претендента ШІ формує абсолютно новий посібник, в якому збирає тільки релевантну для кандидата інформацію.

 

Банківська система. Мова про прогнозування курсів валют, слідкування за біржами, аналіз кредитних ризиків і так далі.

 

Автомобілебудування. Круїз-контроль, автопілоти та адаптація авто під стиль водіння водія.

 

Смартфони. Все, що працює з обробкою зображень іфокусуванням кадру можливо завдяки штучному інтелекту.

 

Чи можна стати ML-розробником із нуля?

 

Ні, база має бути точно, включаючи:

 

  • базові знання мови Python,
  • впевнені знання з математики та статистики,
  • спеціалізація в Computer Science / Mathematics / Physics / Economics,
  • володіння англійською мовою на рівні не нижче Intermediate,
  • розуміння ML/DL-фреймворків та бібліотек (наприклад, NumPy, Pandas, TensorFlow, sklearn etc.),
  • навички користування GitHub.

 

Що найголовніше треба розуміти людині, яка хоче пов’язати свою діяльність з AI/ML?

 

Потрібно розуміти, що АІ постійно змінюється та вдосконалюється: корегуються математичні підходи, змінюються фреймворки. Крім того, у роботі зі складними нейронними мережами задіюють Deep Learning (глибинне навчання, метод машинного навчання) – він, у свою чергу, триває дуже довго, та з використанням розподілених розрахунків, великих серверів, надпотужних комп’ютерів. А це вже зовсім інший левел програмування.

 

Зрозумій, технологія штучного інтелекту постійно розвивається, а значить, тобі треба бути в постійному тонусі. Розслабився? Все, тебе вибило хвилею.

 

Та, незважаючи на це, ШІ – передова галузь, де тобі відкриваються нові світи та шалені перспективи. Консерваторам там навряд чи є місце.

Коментарi

Оксана

Корисна стаття, дякую!

Залишити коментар