Сьогодні, коли ми впевнені, що термінатори не з’являться, настав ідеальний час, щоб налагодити співпрацю зі штучним інтелектом та скористатися його можливостями!
Довгий час штучний інтелект, зокрема його ключова дисципліна – машинне навчання, були оточені ореолом загадковості. Медіа активно публікували статті, що пророкували прихід надрозумних, незалежних і агресивних машин, тим самим викликаючи занепокоєння у багатьох людей, включаючи мене.
Що ж ми маємо на сьогодні, незважаючи на всю цю інформаційну хвилю? Технології ШІ, далекі від досконалості, допускають помилки, а також існують обмежені та не завжди надійні роботи, яких, майже примусово, зробили громадянами. До того ж, ми досі не маємо якісного алгоритму для перекладу мов.
Якщо хтось і досі переконаний, що кінець світу не за горами, то ось моя відповідь:
То що ж таке ШІ, МН і всі ці модні слова, якщо не ознака кінця людства?
Насправді, це інноваційні методи програмування комп’ютерів для розв’язання задач класифікації та прогнозування. І ось, нарешті, ми маємо широкий спектр сервісів штучного інтелекту, які можна миттєво застосовувати у бізнес-проектах і отримувати значну вигоду.
Які ж можливості штучного інтелекту для сучасного бізнесу?
Чудове запитання!
Штучний інтелект настільки універсальний у своїх застосуваннях, принаймні теоретично, що важко визначити конкретну ціль, для якої його було розроблено. Це подібно до запитання, для чого призначені електронні таблиці. Звичайно, спочатку вони були створені для бухгалтерського обліку, але зараз їх можливості значно ширші. І бухгалтерський облік — це лише одна з багатьох функцій. Люди використовують таблиці як інструмент для керування проектами, створення списків завдань, баз даних тощо.
Те саме відбувається і з ШІ.
Якщо говорити узагальнено, штучний інтелект ефективний для завдань, які потребують навчання на основі досвіду. Так, це те, що ми, люди, також робимо, але ШІ має перевагу, оскільки здатний обробляти величезні обсяги даних і робити висновки набагато швидше. Отже, основні сфери застосування ШІ:
- Розпізнавання облич на фотографіях, відео тощо.
- Класифікація та маркування зображень, наприклад, для батьківського контролю.
- Перетворення мовлення в текст.
- Виявлення об’єктів у медіа (наприклад, автомобіль, людина тощо).
- Прогнозування динаміки цін на акції.
- Виявлення фінансування тероризму (серед мільйонів щоденних транзакцій).
- Системи рекомендацій (покупки, музика, друзі тощо).
- Розгадування капчі.
- Фільтрація спаму.
- Виявлення мережевих вторгнень.
Я міг би продовжувати цей список, і, ймовірно, нам би не вистачило місця, але гадаю, ви вже зрозуміли суть. Усі ці приклади – це задачі, які люди намагалися вирішити за допомогою традиційних методів обчислень. Але вони є важливими, оскільки мають велике значення для бізнесу та реального світу.
Отже, без зайвих вступів, давайте перейдемо до списку найкращих платформ ШІ та розглянемо їхні можливості.
Сервіси Amazon AI
Так само, як Amazon швидко змінює бізнес-ландшафт, AWS домінує як платформа. Подібна ситуація і з сервісами Amazon AI, що пропонують великий набір корисних інструментів штучного інтелекту.
Ось кілька вражаючих сервісів, які пропонує AWS.
Amazon Comprehend: допомагає аналізувати великі масиви текстових, неструктурованих даних. Наприклад, можна використовувати для аналізу чатів служби підтримки клієнтів, визначаючи рівень задоволення протягом часу, основні проблеми клієнтів, ключові слова, що найчастіше використовуються, тощо.
Amazon Forecast: сервіс, який дозволяє використовувати наявні дані часових рядів і перетворювати їх на точні прогнози на майбутнє. Якщо вам цікаво, що таке дані часових рядів, рекомендую мою статтю (зверніть увагу на базу даних Timescale наприкінці статті).
Amazon Lex: дозволяє створювати інтерактивні інтерфейси (текстові та/або голосові) у ваших додатках. У основі лежать моделі машинного навчання Amazon, які розпізнають наміри та перетворюють мовлення на текст в реальному часі.
Amazon Personalize: простий у використанні сервіс, який не потребує інфраструктури, для створення рекомендацій для ваших клієнтів або персонального використання! Ви можете використовувати дані електронної комерції або будь-яку іншу інформацію, і отримувати точні та релевантні пропозиції. Звичайно, чим більший набір даних, тим точнішими будуть рекомендації.
Amazon пропонує багато інших сервісів ШІ, і їх вивчення може зайняти цілий день. Проте, це заняття, яке я щиро рекомендую! 🙂
Примітка: у документації AWS складно знайти короткий перелік усіх цих сервісів, але на сторінці https://aws.amazon.com/machine-learning їх можна знайти у випадаючому списку в розділі “Служби ШІ”.
TensorFlow
TensorFlow – це бібліотека (і платформа) розроблена командою Google Brain. Це реалізація підмножини машинного навчання, відомої як “глибоке навчання нейронних мереж”. Іншими словами, TensorFlow – це погляд Google на те, як використовувати нейронні мережі для досягнення машинного навчання за допомогою техніки глибокого навчання.
Варто відзначити, що TensorFlow – це не єдиний спосіб застосування нейронних мереж, існує багато бібліотек, кожна з яких має свої переваги та недоліки.
В цілому, TensorFlow надає стандартні можливості машинного навчання для різних середовищ програмування. Платформа має візуальний характер і в основному використовує графіки та візуалізацію даних. Тому, навіть якщо ви не програміст, можна досягти хороших результатів з TensorFlow, доклавши певних зусиль.
Історично, TensorFlow був створений для “демократизації” машинного навчання. Наскільки мені відомо, це була перша платформа, яка зробила ML простим, наочним і доступним на такому рівні. В результаті, використання ML зросло, і люди отримали можливість легко навчати моделі.
Найважливішою перевагою TensorFlow є Keras, бібліотека для ефективної роботи з нейронними мережами. Ось приклад простого створення повнозв’язної мережі (перцептрона):
model = tf.keras.Sequential() # Додає шар із 64 нейронами до моделі: model.add(layers.Dense(64, activation='relu')) # Додає ще один шар: model.add(layers.Dense(64, activation='relu')) # Додає softmax-шар із 10 вихідними нейронами: model.add(layers.Dense(10, activation='softmax'))
Звичайно, також потрібні налаштування, навчання тощо, але вони також досить прості.
Важко знайти недоліки TensorFlow, враховуючи його інтеграцію з JavaScript, мобільними пристроями та IoT-рішеннями. Однак, для деяких спеціалістів, це залишається платформою “нижчого рівня”, яку може використовувати кожен. Тому, будьте готові до критики, якщо ви продовжуватимете навчання і зустрінете “більш досвідчених” користувачів. 🙂
Якщо ви новачок, рекомендую Вступний онлайн-курс TensorFlow.
Також зауважте: деякі критики TensorFlow стверджують, що він не може використовувати графічні процесори, але це вже не так. Сьогодні TensorFlow не тільки працює з графічними процесорами, але й Google розробив спеціалізоване обладнання під назвою TPU (TensorFlow Processing Unit), яке доступне як хмарний сервіс.
Сервіси Google AI
Як і у випадку з Amazon, Google також має набір хмарних сервісів на основі ШІ. Я не буду перераховувати всі сервіси, оскільки вони подібні до пропозицій Amazon. Ось знімок екрана, щоб показати, що розробники можуть створити:
В цілому, можна використовувати сервіси штучного інтелекту Google двома способами. Перший — використовувати модель, навчену Google, та застосовувати її у своїх продуктах. Другий — скористатися AutoML, сервісом, який автоматизує деякі етапи машинного навчання, спрощуючи створення та навчання моделей для розробників з меншим досвідом ML.
H2O
«2» у H2O має бути нижнім індексом (нагадуючи хімічну формулу води), але це складно зробити. Сподіваюсь, що команда H2O не образиться!
H2O — це платформа з відкритим кодом для машинного навчання, яку використовують великі компанії, що входять до списку Fortune 500.
Основна мета — зробити передові дослідження ШІ доступними для широкого кола користувачів, а не лише для великих компаній. Платформа H2O пропонує кілька продуктів:
- H2O: базова платформа для вивчення та використання машинного навчання.
- Sparkling Water: інтеграція з Apache Spark для роботи з великими наборами даних.
- H2O4GPU: версія платформи H2O з прискоренням GPU.
H2O також пропонує рішення для бізнесу:
- Driverless AI: Ні, це не пов’язано з безпілотними автомобілями! 🙂 Це аналог AutoML від Google – більшість етапів ШІ/ML автоматизовані, що дозволяє створювати інструменти швидше і простіше.
- Платна підтримка: для компаній, які не можуть чекати на відповідь у GitHub, H2O пропонує платну підтримку та консультації.
Petuum
Petuum розробляє платформу Symphony, яка створена для того, щоб штучний інтелект був простим у використанні. Іншими словами, якщо ви втомилися від програмування і не хочете вивчати нові бібліотеки та формати, Symphony буде як відпочинок в Альпах!
Хоча Symphony не є “відкритою”, її можливості варті уваги:
- Інтерфейс користувача з можливістю перетягування.
- Легке створення інтерактивних конвеєрів даних.
- Набір стандартизованих і модульних компонентів для створення складних додатків ШІ.
- Інтерфейси API для розробників, яким недостатньо візуальних інструментів.
- Автоматична оптимізація з використанням GPU.
- Розподілена високомасштабована платформа.
- Агрегація даних з різних джерел.
Є багато інших функцій, що значно спрощують початок роботи. Наполегливо рекомендую!
Polyaxon
Найбільшою проблемою в машинному навчанні та штучному інтелекті сьогодні є не пошук якісних бібліотек та алгоритмів (або навчальних матеріалів), а кваліфікована розробка для роботи з великими системами і обробки великих обсягів даних.
Навіть досвідченим розробникам програмного забезпечення це може здатися надто складним завданням. Якщо ви відчуваєте щось подібне, варто звернути увагу на Polyaxon.
Polyaxon — це не бібліотека чи фреймворк, а комплексне рішення для керування всіма аспектами машинного навчання:
- Підключення до даних і потокова передача.
- Апаратне прискорення.
- Контейнеризація та оркестрація.
- Планування, зберігання та безпека.
- Розробка, оптимізація, відстеження.
- Панелі інструментів, API, візуалізація.
Платформа є незалежною від бібліотек та постачальників і підтримує багато популярних рішень (з відкритим і закритим кодом).
Звичайно, вам все одно потрібно буде займатися розгортанням і масштабуванням на певному рівні. Якщо ви хочете уникнути і цього, Polyaxon пропонує рішення PaaS, яке дозволяє використовувати їх інфраструктуру.
DataRobot
Коротко кажучи, DataRobot – це рішення для машинного навчання, розроблене спеціально для підприємств. Воно є повністю візуальним і дозволяє швидко зрозуміти ваші дані та використовувати їх для конкретного бізнесу.
Інтерфейс інтуїтивно зрозумілий і елегантний, що дозволяє неспеціалістам отримувати значущу інформацію.
DataRobot не має великої кількості функцій, але зосереджується на аналізі даних та пропонує надійні можливості:
- Автоматизоване машинне навчання.
- Регресія та класифікація.
- Аналіз часових рядів.
Часто цього цілком достатньо для більшості підприємств. DataRobot, у багатьох випадках, це все, що вам потрібно. 🙂
NeuralDesigner
Якщо говорити про прості у використанні та потужні платформи ШІ, NeuralDesigner заслуговує на окрему увагу.
Про NeuralDesigner не так багато можна сказати, але є чим зайнятися! Враховуючи, що нейронні мережі домінують у сучасних методах машинного навчання, має сенс працювати з платформою, яка зосереджена виключно на них. Немає великого вибору, немає відволікань – якість важливіша за кількість.
NeuralDesigner має ряд переваг:
- Не потрібне програмування. Зовсім.
- Не потрібно створювати складний інтерфейс. Усе викладено чіткими, зрозумілими і впорядкованими кроками.
- Колекція найсучасніших алгоритмів, розроблених спеціально для нейронних мереж.
- Розпаралелювання ЦП і прискорення GPU для високої продуктивності.
Варто спробувати? Безумовно!
Prevision.io
Prevision.io — це платформа для керування усіма аспектами машинного навчання, від обробки даних до масштабного розгортання.
PredictionIO
Якщо ви розробник, то PredictionIO – це корисна платформа, на яку варто звернути увагу. По суті, PredictionIO — це платформа машинного навчання, яка може отримувати дані з вашого додатка (веб-, мобільний тощо) та швидко створювати прогнози.
Нехай назва вас не вводить в оману – PredictionIO призначений не лише для передбачень, а й підтримує весь спектр машинного навчання. Ось декілька причин полюбити його:
- Підтримка класифікації, регресії, рекомендацій, НЛП тощо.
- Створено для роботи з великими обсягами даних.
- Кілька готових шаблонів для швидкого старту.
- Поставляється з Apache Spark, MLlib, HBase, Akka HTTP і Elasticsearch.
- Комбінування даних з різних джерел у пакетному режимі або в реальному часі.
- Розгортання як веб-сервіс.
Для більшості веб-проектів PredictionIO є чудовим рішенням. Спробуйте самі!
Висновок
Сьогодні існує великий вибір фреймворків і платформ для штучного інтелекту та машинного навчання; коли я почав шукати інформацію для цієї статті, я був вражений їх кількістю. Тому я намагався зосередитися на унікальних і цікавих рішеннях. Якщо ви вважаєте, що я щось важливе пропустив, повідомте мене.
Coursera пропонує кілька чудових курсів машинного навчання, тому рекомендую перевірити, якщо ви зацікавлені.
Яка платформа найкраща? На жаль, чіткої відповіді немає. Однією з причин є те, що більшість цих послуг прив’язані до певного технологічного стеку або екосистеми. Інша причина – технології штучного інтелекту та машинного навчання стали стандартизованими, і існує гонка за надання максимальної кількості функцій за найнижчою ціною. Жоден постачальник не може дозволити собі не пропонувати те, що пропонують інші, і будь-яка нова пропозиція швидко копіюється конкурентами.
Тому, все залежить від ваших потреб, цілей, зручності використання сервісу та сприйняття компаній, які за ним стоять.
У будь-якому випадку, очевидно, що ШІ нарешті доступний як послуга, і було б нерозумно не скористатися його можливостями. 🙂