
Machine Learning / Predictive Analytics / Business Intelligence
Чому традиційної бізнес-аналітики вже недостатньо
Протягом багатьох років корпоративні інформаційні системи розвивалися насамперед як інструменти реєстрації, зберігання та аналізу господарських операцій.
ERP забезпечує облік ресурсів і фінансових транзакцій, CRM накопичує відомості про клієнтів, а корпоративне сховище даних — Data Warehouse — об’єднує інформацію для управлінської звітності.
Традиційні інструменти Business Intelligence дозволяють керівництву отримувати відповіді на важливі запитання: скільки продукції було продано, які підрозділи виконали план, як змінилися витрати та які клієнти забезпечують найбільший оборот. Однак більшість таких звітів описує події, що вже відбулися.
Наприклад, фінансовий директор може аналізувати динаміку дебіторської заборгованості, але сам звіт не визначає, які клієнти з найбільшою ймовірністю порушать строки оплати наступного місяця. Комерційний підрозділ може бачити зменшення продажів, але йому складно заздалегідь оцінити майбутній попит на окремі товарні категорії.
Саме ці завдання поступово переходять у сферу Predictive Analytics — прогнозної аналітики. Одним із її основних інструментів є Machine Learning — машинне навчання, яке дозволяє будувати математичні моделі на основі історичних даних і використовувати їх для оцінювання нових ситуацій.
Для корпоративного середовища це важливий етап розвитку аналітики: від опису минулих подій до кількісного оцінювання ймовірних майбутніх результатів.
Проте машинне навчання не усуває необхідності в якісних даних, корпоративних довідниках і правильно організованій інформаційній архітектурі. Навпаки, його практична ефективність безпосередньо залежить від цих компонентів.
Що машинне навчання може дати підприємству
Машинне навчання не є однією універсальною технологією. Воно охоплює різні математичні методи, кожен із яких призначений для певного класу завдань.
Класифікація
Класифікація використовується, коли необхідно віднести об’єкт до визначеної категорії. Наприклад, підприємство може оцінювати ризик прострочення платежу.
Модель отримує характеристики клієнта, історію оплат, обсяг заборгованості та інші дозволені показники, після чого визначає ймовірність належності до групи підвищеного ризику. Іншим прикладом є класифікація звернень до служби підтримки: інформаційний запит, технічна несправність, фінансове питання або скарга.
Для таких завдань можуть застосовуватися логістична регресія, дерева рішень, Random Forest та інші методи.
Регресія
Регресійні моделі використовуються для прогнозування числових величин. Наприклад, підприємство може оцінювати очікуваний обсяг продажів або тривалість виконання замовлення.
Водночас необхідно враховувати, що на результат впливають не лише історичні закономірності.
Зміна цін, сезонність, економічна ситуація й організаційні рішення можуть суттєво змінювати фактичну поведінку показника.
Кластеризація
- Кластеризація дозволяє виявляти групи схожих об’єктів без попередньо визначених категорій.
- Наприклад, клієнтів можна групувати за частотою замовлень, середнім чеком і структурою покупок.
- Такі результати можуть бути корисними для маркетингової сегментації.
- Однак математичний кластер не обов’язково має готове бізнесове значення.
- Аналітики повинні пояснити, чим відрізняються групи та які управлінські дії є доцільними.
Пошук аномалій
Окремим напрямом є виявлення незвичної поведінки. Наприклад, система може знаходити операції, які суттєво відрізняються від звичайних транзакцій певного постачальника.
Проте аномалія не є автоматичним доказом порушення або шахрайства.
Результати повинні перевірятися відповідальними фахівцями.
Machine Learning і традиційна Business Intelligence
Машинне навчання не слід протиставляти класичним BI-системам.
Вони виконують різні, але взаємопов’язані функції.
| Характеристика | Традиційна BI | Machine Learning |
|---|---|---|
| Основне завдання | Аналіз фактичних показників | Виявлення закономірностей і прогнозування |
| Типовий результат | Звіт, показник, діаграма | Прогноз, оцінка ймовірності, класифікація |
| Джерела | Переважно узгоджені корпоративні дані | Історичні дані та додаткові характеристики |
| Перевірка | Звіряння з обліковими показниками | Оцінювання якості прогнозів |
| Основний ризик | Некоректний показник | Помилковий прогноз або систематична похибка |
| Використання | Управлінська звітність | Підтримка прогнозних рішень |
- Наприклад, BI може показувати, що клієнт протягом року зменшував обсяг закупівель.
- Модель машинного навчання може оцінювати ймовірність подальшого скорочення співпраці.
- При цьому рішення щодо дій із клієнтом залишається за підприємством.
- Прогнозна модель повинна допомагати приймати рішення, а не підміняти відповідальність бізнесу.
Корпоративне DWH як джерело даних для моделей
Однією з найбільших переваг уже впровадженого корпоративного сховища є наявність історичної інформації. DWH може містити багаторічні дані про продажі, закупівлі, фінансові операції та взаємодію з клієнтами.
Для машинного навчання така історія має значну цінність. Наприклад, щоб оцінювати ризик прострочення платежів, необхідно мати інформацію про попередні рахунки та фактичні строки їх оплати.
Якщо підприємство зберігає лише поточний залишок дебіторської заборгованості, модель не зможе повноцінно дослідити історичну платіжну поведінку.
Роль ETL
ETL-процеси дозволяють отримувати інформацію з ERP, CRM та інших систем, приводити її до необхідних форматів і завантажувати до аналітичного середовища. Для машинного навчання важливо забезпечити не лише правильність значень, а й збереження інформації про час їхньої актуальності.
Наприклад, під час прогнозування необхідно використовувати ті характеристики клієнта, які були відомі на момент ухвалення відповідного історичного рішення. Не можна включати до навчального набору відомості про події, які фактично відбулися пізніше.
Інакше модель демонструватиме надмірно високі результати під час тестування, але погано працюватиме в продуктивному середовищі.
Роль MDM
Master Data Management забезпечує узгоджені ідентифікатори клієнтів, товарів та інших корпоративних об’єктів. Наприклад, якщо один клієнт має кілька незалежних карток у різних CRM, модель може помилково розглядати його як кілька різних осіб.
MDM дозволяє зіставляти відповідні записи та формувати коректні інформаційні характеристики.
Однак об’єднання повинно здійснюватися за перевіреними бізнесовими правилами.
Apache Spark MLlib: машинне навчання на великих наборах даних
Одним із важливих технологічних напрямів 2016 року є розвиток Apache Spark.
26 липня вийшла Spark 2.0.0, 3 жовтня — 2.0.1, а 7 листопада відбулося оновлення гілки 1.6 до версії 1.6.3.
Отже, станом на 10 листопада Spark 2.0.1 є доступним стабільним випуском гілки 2.0.
До платформи входить MLlib — бібліотека машинного навчання.
Вона підтримує алгоритми класифікації, регресії, кластеризації та інші методи роботи з інформацією.
Spark ML Pipelines
Особливу увагу привертає API spark.ml, заснований на DataFrames. Він дозволяє описувати послідовність підготовки даних та навчання моделі як Pipeline.
- До основних понять належать Transformer, Estimator і Pipeline.
- Transformer перетворює один набір даних на інший.
- Estimator навчається на визначеному наборі та створює відповідну модель.
- Pipeline об’єднує ці компоненти в послідовність операцій.
Наприклад, модель прогнозування ризику може містити перетворення категоріальних ознак, формування вектора характеристик і навчання логістичної регресії.
Для підприємств це важливо, оскільки дозволяє формалізувати частину роботи з моделями та зменшувати кількість ручних дій.
Однак Pipeline не гарантує правильності інформаційної підготовки.
Якщо вхідний набір містить помилки або неправильно сформовану цільову змінну, технічно коректне навчання дасть ненадійний результат.
Python та scikit-learn для корпоративної аналітики
Не всі завдання потребують розподілених обчислень. Для підприємств із відносно невеликими інформаційними наборами достатньо використовувати звичайні сервери або робочі станції аналітиків.
Одним із поширених інструментів є Python із бібліотекою scikit-learn.
28 вересня 2016 року вийшла scikit-learn 0.18.
У ній розвивалися інструменти вибору моделей, зокрема модуль sklearn.model_selection, а також додавалися нові можливості алгоритмів машинного навчання.
Для підготовки даних можуть використовуватися NumPy та pandas. Для побудови моделей — логістична регресія, дерева рішень, Random Forest, Support Vector Machines та інші методи.
Перевагою є відносно невисока вартість початку експериментів. Аналітик може отримати підготовлений набір із DWH, виконати дослідження й оцінити кілька моделей без розгортання великого Hadoop-кластера.
Водночас для продуктивного використання необхідно забезпечити контроль версій коду, бібліотек і вхідних даних.
TensorFlow і розвиток нейронних мереж
Окремим напрямом є глибоке навчання — Deep Learning.
У листопаді 2015 року Google відкрила TensorFlow як програмну платформу для числових обчислень і машинного навчання.
10 листопада 2016 року вийшла TensorFlow 0.11.0, що включає розвиток підтримки GPU, HDFS та інших компонентів.
Для підприємств TensorFlow може бути цікавим у завданнях аналізу зображень, текстової інформації та інших складних даних. Проте важливо не переоцінювати практичну необхідність нейронних мереж.
Для прогнозування ризику прострочення платежу або аналізу звичайних табличних даних логістична регресія чи дерева рішень можуть виявитися простішими та достатньо ефективними. Складніша модель не обов’язково забезпечує кращий бізнесовий результат.
Особливо якщо підприємство має обмежену кількість навчальних прикладів.
Microsoft Azure Machine Learning
Для компаній, які не мають власної розвиненої аналітичної інфраструктури, альтернативою може бути використання хмарних платформ.
Microsoft оголосила про загальну доступність Azure Machine Learning у лютому 2015 року.
Сервіс дозволяє створювати аналітичні експерименти, використовувати алгоритми машинного навчання та публікувати результати через вебсервіси. Для підприємств це може скорочувати час підготовки пілотних проєктів.
Проте хмарна модель потребує оцінювання витрат, інформаційної безпеки та умов передавання корпоративних даних зовнішньому постачальнику. Особливо важливо визначити, які саме записи необхідні для навчання моделі.
У багатьох випадках можна використовувати підготовлені або знеособлені набори замість повних копій продуктивних баз.
Практичний приклад: прогнозування ризику втрати клієнтів
Розглянемо умовну компанію, яка надає регулярні послуги корпоративним клієнтам.
Керівництво хоче визначати клієнтів, які можуть припинити співпрацю протягом наступних трьох місяців.
Формування завдання
Спочатку необхідно визначити, що означає «втрата клієнта». Наприклад, підприємство може вважати клієнта втраченим, якщо протягом трьох місяців після завершення визначеного періоду він не здійснив жодного замовлення.
Це бізнесове правило, а не характеристика алгоритму.
Підготовка інформації
Із CRM та ERP отримуються історія замовлень, частота покупок, середній оборот і тривалість співпраці.
Для кожного клієнта формується набір характеристик на визначену історичну дату.
Навчання
Модель використовує історичні приклади, для яких уже відомо, чи відбулася втрата клієнта.
На основі цієї інформації алгоритм навчається знаходити закономірності.
Перевірка
Результати перевіряються на окремих даних, не використаних для навчання. Важливо оцінювати не лише загальну точність.
Якщо клієнтів, які припиняють співпрацю, відносно мало, модель, яка завжди прогнозує збереження клієнта, може мати високий показник accuracy, але практично не приносити користі.
Тому доцільно аналізувати Precision, Recall та інші метрики.
Використання
CRM може відображати відповідальним менеджерам клієнтів із підвищеним прогнозним ризиком. Менеджер перевіряє ситуацію та визначає можливі дії.
При цьому модель не повинна автоматично змінювати договірні умови лише на основі статистичного прогнозу.
Прогнозування попиту та управління запасами
Іншим перспективним напрямом є прогнозування продажів. Для торговельного підприємства важливо оцінювати майбутній попит, щоб планувати закупівлі й обсяг складських запасів.
Модель може використовувати історичні продажі, сезонність, календарні характеристики та цінові зміни. Однак необхідно враховувати обмеження початкових даних.
Наприклад, якщо товар був відсутній на складі, низькі продажі не обов’язково свідчать про низький попит. Це важлива відмінність.
Якщо модель навчається лише на фактичних продажах без урахування дефіциту товару, вона може систематично занижувати прогноз. Тому необхідно поєднувати дані ERP, складського обліку та історії замовлень.
Прогноз повинен оцінюватися порівняно з простими базовими методами. Наприклад, середній попит за аналогічний період попереднього року може бути достатньо сильним орієнтиром.
Якщо складна модель не забезпечує практично значущого покращення, її використання потребує додаткового економічного обґрунтування.
Як інтегрувати прогнозну модель із корпоративними системами
Модель машинного навчання не повинна залишатися ізольованим експериментом аналітика. Для отримання практичного результату необхідно організувати її взаємодію з бізнес-процесами.
Наприклад, прогноз ризику клієнта може регулярно завантажуватися до CRM. Прогноз попиту — передаватися до системи планування закупівель.
Оцінка незвичної транзакції — створювати завдання для відповідального співробітника.
Пакетна інтеграція
Для багатьох завдань достатньо щоденного або щотижневого перерахунку прогнозів.
У цьому випадку можуть використовуватися ETL-процеси.
API
Якщо прогноз потрібний безпосередньо під час виконання бізнес-операції, його можна надавати через REST або SOAP.
Проте необхідно встановити допустимий час відповіді та поведінку системи в разі недоступності моделі.
BPM
Для процесів, які потребують людського рішення, прогноз може бути одним із вхідних параметрів BPM. Наприклад, висока оцінка ризику платежу може ініціювати додаткову фінансову перевірку.
Однак остаточне рішення повинно відповідати затвердженим корпоративним правилам.
Організаційні ризики машинного навчання
Однією з головних проблем є неправильне трактування прогнозу. Модель не встановлює майбутню подію з абсолютною достовірністю.
Вона оцінює закономірності, виявлені в історичних даних. Якщо змінюються умови ринку, поведінка клієнтів або внутрішні процеси підприємства, якість прогнозів може погіршуватися.
Тому необхідно регулярно перевіряти результати. Також важливо уникати некоректного використання моделей щодо фізичних осіб.
Рішення, які можуть суттєво впливати на людину, потребують відповідної правової та організаційної оцінки.
Технічна можливість автоматично класифікувати об’єкт не означає, що підприємство має право приймати будь-яке рішення без участі відповідальних фахівців.
Компетенції Intecracy Group у прогнозній аналітиці
Практичне використання машинного навчання потребує поєднання інформаційних, інтеграційних та інфраструктурних компетенцій. Data Management IG спеціалізується на ETL, MDM, Data Quality, DWH та корпоративній аналітиці. Ці напрями визначають якість навчальних даних, узгодженість характеристик і можливість використовувати результати моделей у корпоративному середовищі.
IQusion IT працює у сферах системної інтеграції, електронного документообігу та BPM. Такі компетенції важливі для включення прогнозів до операційних застосунків і процесів ухвалення рішень. Softline IT має компетенції у серверній, мережевій інфраструктурі та системах зберігання. Вони можуть використовуватися для організації обчислювального середовища й експлуатації аналітичних платформ.
Якщо аналітика використовує зовнішні ресурси, перевірте умови передавання даних і доступу до них. При цьому математична модель повинна створюватися відповідно до чітко визначеної бізнесової мети та перевірятися на фактичних результатах.
Практичні орієнтири для впровадження
Машинне навчання поступово стає практичним інструментом розвитку корпоративної аналітики. Воно дозволяє переходити від аналізу історичних показників до прогнозування попиту, класифікації клієнтів, виявлення аномалій та інших завдань.
Apache Spark MLlib, scikit-learn, TensorFlow та Microsoft Azure Machine Learning пропонують різні технологічні можливості для побудови таких рішень. Проте вибір конкретного алгоритму має другорядне значення порівняно з правильним визначенням бізнесового завдання та якістю початкової інформації.
Корпоративні DWH, ETL, MDM і Data Quality залишаються фундаментом прогнозної аналітики. Особливу увагу необхідно приділяти незалежній перевірці результатів і регулярному контролю моделей після впровадження.
Машинне навчання приносить підприємству користь не тоді, коли створено складний математичний алгоритм, а тоді, коли його прогнози допомагають приймати кращі управлінські рішення на основі достовірних корпоративних даних.

Автор матеріалу