Колонки Фocтep Пpoвocт
  1400  0

Уривок з книги Data Science для бiзнecу

Як збиpaти, aнaлiзувaти i викopиcтoвувaти дaнi.

Уривок з книги "Data Science для бiзнecу. Як збиpaти, aнaлiзувaти i викopиcтoвувaти дaнi" Тoма Фoуceта, Фocтepа Пpoвocта.

Процес майнингу даних

Майнинг даних — це мистецтво. Як і в багатьох видах мистецтва, є чітко визначений процес, із яким ймовірність, що ви досягнете успіху, зростає.

Цей процес—критично важливий концептуальний інструмент для роботи над проектами з data science.

Через те що з data science пов’язані багато дисциплін, у ній виникли декілька канонічних типів завдань — наприклад, класифікація, регресія і кластеринг.

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

Щоб робити це професійно, потрібні певний досвід і вміння. Успішний проект майнингу даних—це компроміс між тим, що дані можуть (наприклад, що вони можуть спрогнозувати і наскільки добре), і цілями проекту.

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

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

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

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

Розуміння бізнесу

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

Часто один із етапів процесу вирішення проблеми – це нове її трактування і пошук правильного формулювання.

Початкове формулювання може бути неповним або не ідеально підходити, і так може пройти декілька ітерацій, поки не з’явиться прийнятне формулювання.

Розуміння бізнесу – та стадія, де велику роль відіграє креативність аналітика. Data science має що сказати, як ми побачимо далі, але часто ключ до великого успіху—креативне формулювання завдання, яке робить хтось із аналітиків, який перетворює бізнес-проблеми на завдання data science. Якщо аналітик добре знає фундаментальні основи, йому буде легше знайти такі нові формулювання.

Розуміння даних

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

Попередні дані часто збирають для потреб, що не пов’язані з бізнес-проблемою, яку вам потрібно вирішити зараз, — або взагалі не збирають для конкретної мети.

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

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

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

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

Почистити записи про користувачів і розсортувати їх так, щоб на одного користувача був тільки один запис — це сама по собі складна аналітична проблема.

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

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

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

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

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

Тепер розглянемо схоже завдання: визначити шахрайство зі страховкою Medicare. У Сполучених Штатах це величезна проблема, вона щорічно коштує країні мільярди доларів.

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

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

Ті, хто вчиняє шахрайство — підгрупа легальних користувачів; не існує окремої групи, якій було би цікаво засвідчити, яка сума була би "правильною".

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

Для таких завдань зазвичай застосовують неконтрольовані підходи —профілювання, кластеринг, визначення аномалій і групування за збігами.

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

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

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

Підготовка даних

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

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

Типові приклади підготовки даних—конвертувати в таблицю, прибрати або вивести відсутні значення, і конвертувати дані в різні типи.

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

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

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

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

До прикладу, коли потрібно прогнозувати, в який момент часу на веб-сайті відвідувач закінчить сесію або перейде на іншу сторінку— змінну "загальна кількість відвіданих за сеанс веб-сторінок" спрогнозувати можна.

Однак загальна кількість відвіданих за сеанс сторінок не буде відома, поки власне не закінчиться сеанс — у цей момент стане відоме значення цільової змінної!

Ще один приклад до ілюстрації. Припустимо, нам потрібно спрогнозувати, чи буде користувач витрачати багато грошей.

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

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

Комментировать
Сортировать:
в виде дерева
по дате
по имени пользователя
по рейтингу
 
 
 
 
 
 вверх