Integral Solutions - IT рішення для компаній
Integral Solutions - IT рішення для компаній

Подивіться, що нового в Integral Solutions

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

28.01.2018 січня XNUMX | Пьотр Кшешевський – дослідник даних

Важливість якості даних у світі машинного навчання

Машинне навчання неможливе без даних, які містять потрібну нам інформацію, дозволяють нам ставити запитання та дають змогу знаходити цінні відповіді, які перетворяться на важливу для бізнесу інформацію. Які характеристики повинні мати дані, щоб мати можливість ефективно використовувати їх у процесі машинного навчання? Нижче я проаналізую деякі характеристики, які характеризують хороші дані. У кожному конкретному випадку я спробую обґрунтувати та проілюструвати важливість цієї функції на прикладах. Як виявилося, навіть незначні на перший погляд недогляди можуть суттєво вплинути на результат усього проекту. Проблеми з даними особливо сильно впливають на роботу команди Data Science. Нарешті, я покажу методи, які дозволять вам автоматизувати обробку даних і мінімізувати витрати, спричинені неправильними даними.

Характеристики хороших даних

 

Повнота

Дані, які ми використовуємо, мають бути повними принаймні на трьох основних рівнях:

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

 

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

 

  • Rekord
    Чи кожна справа містить усі наявні дані? Тепер нашою метою буде персоналізація маркетингової кампанії для клієнтів великої мережі магазинів одягу. Якщо в підготовленому наборі бракує гендерної інформації для значної частини клієнтів, ми очікуємо, що підготовлена ​​модель буде помітно гіршою, ніж модель, підготовлена ​​на повному наборі даних.

 

Унікальність

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

  • Подвійні риси
    Для багатьох алгоритмів, які використовуються в процесах Data Science, дублікати є проблемою. По-перше, вони збільшують час роботи алгоритму, оскільки одні й ті самі дані потрібно обробляти більше одного разу. У деяких випадках це також є проблемою, оскільки алгоритм може мати проблеми з «вирішенням», яка функція є важливішою. Це призводить до гірших і нестабільних (менш відтворюваних) результатів. Ми б розглядали представлення тієї самої функції в кількох одиницях як дублікати (наприклад, зріст клієнта в метрах і сантиметрах або вартість чистого та валового рахунку).

 

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

 

Актуальність

Інший клас проблем може бути спричинений використанням застарілих даних. У яких ситуаціях це може негативно вплинути на ефективність нашої моделі?

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

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

З наведених вище прикладів можна зробити два висновки:

  • може виникнути необхідність регулярно оновлювати підготовлену модель для включення поточних даних. Частоту цієї операції слід вибирати в залежності від задачі, що моделюється. Виробництво на заводі може змінюватися щотижня, а для сільськогосподарських підприємств може бути достатнім піврічний або квартальний цикл,
  • Data Scientist не може використовувати дані, про які він не знає або до яких не має доступу. Тому організація повинна підготувати механізми, які забезпечать належне поширення знань про існуючі набори даних. Ви можете спробувати реалізувати це, призначивши особу, відповідальну за такі завдання (наприклад, спеціального адміністратора даних), але для великих організацій необхідно буде знайти автоматизовані рішення.

точність

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

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

Проблема з точністю даних може виникнути на будь-якому етапі обробки та обробки даних. Деякі з помилок буде важко виявити і виправити їх буде практично неможливо (особливо, коли дані завантажуються від користувача системи). Обробка даних чутлива до людських помилок, тому варто автоматизувати всі процеси, пов’язані з їх доставкою та обробкою.

Окрім цього, існують інші аспекти збереження точних даних. Чи добре описані колонки? Чи зможе Data Scientist визначити значення кожної змінної? Візьмемо, наприклад, іменований стовпець квартал_1_сума_продажів. Хоча це здається хорошим описом даних, які він містить, все ще є законні запитання:

  • До якого року відносяться ці дані?
  • Це чистий чи валовий обсяг продажів?
  • Чи враховуються при цьому договори, укладені протягом цього періоду, чи заброньовані платежі?
  • Як у цій змінній обробляються повернення товарів?
  • Чи ця змінна має однакове значення для окремих клієнтів і для компаній (особливо з точки зору сплати ПДВ)?

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

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

Згуртованість

Властивість даних, про яку часто не помічають (і зазвичай вважають за правдиву), — узгодженість. Як і в попередніх проблемах, порушення цієї функції може призвести до проблем у різних ситуаціях. Готуючись до аналізу Data Science, ми повинні знайти відповіді на такі запитання:

  • Чи можемо ми зв’язати дані з різних систем з одним об’єктом (наприклад, конкретним клієнтом, унікальним продуктом)?
  • Чи використовують системи, які ми використовуємо, однакові формати даних (наприклад, номер телефону, формат адреси)?
  • Чи всі використані набори даних мають однаковий рівень точності (наприклад, в одній системі місцезнаходження стосується країни, а в іншій – міста)?
  • Чи дані використовують однакові одиниці? Відрізнити кілограми від тонн відносно легко, але невідповідність між кілометрами та милями може залишитися непоміченою та призвести до помилок, які важко виправити в майбутньому.
  • Чи дані про час виражаються однаково? Чи використовують вони той самий часовий пояс?

Проблеми з неузгодженими даними відомі давно. Є приклад проекту НАСА, який закінчився втратою зонда, оскільки імперські одиниці були змішані з системою СІ.

Важливість

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

По-перше, я хотів би зосередитися на аспекті, який безпосередньо не пов’язаний з даними, але важливий для прибутковості всього процесу. Перш ніж почати аналіз даних, важливо розглянути, чи питання, яке ми задаємо команді Data Science, справді важливе в бізнес-сенсі. Чи немає проблем, які можуть створити більші заощадження чи прибутки? Слід пам’ятати, що команда Data Science часто має великий досвід, пов’язаний як з технічною, так і з бізнес-частиною, отриманий під час роботи в різних проектах. Безумовно, варто дізнатися думку команди Data Science, яка може вказати проблеми, щодо яких подальші дії можуть виявитися найвигіднішими.

Достовірність також слід розглядати в контексті підготовки та використання даних. Чи отримав Data Scientist усі дані, які він може використовувати в аналізі? Слід пам’ятати, що саме Data Scientists найкраще знають, які дані варто використовувати, тому вони повинні приймати рішення в цьому питанні. Це можна проілюструвати на прикладі банку, який хоче вибрати групу клієнтів, яким варто зателефонувати з новою пропозицією. У цьому випадку потрібно враховувати багато різних типів даних – особисті дані, кредитну історію, відповідь на попередні спроби зв’язатися. Однак, що цікаво, в одному схожому проекті виявилося, що поведінка користувачів на сайті дуже важлива. Пропуск важливого набору даних може приректи проект на провал із самого початку.

Вплив якості даних на команду Data Science

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

Однак все це вимагає часу. Часто кажуть, що обробка даних становить близько 80% усього процесу Data Science. Якщо Data Scientist доводиться витрачати додаткові години на виявлення дублікатів, перевірку правильності використовуваних одиниць або дні на точне визначення значення окремих змінних, вартість усього процесу значно зростає. Найгірше те, що перші ефекти, які допоможуть спрямувати подальшу роботу, з’являться набагато пізніше.

Надання поганих даних для аналізу також має негативні наслідки за межами проекту. Data Scientist швидко втратить довіру до даних, якщо виявиться, що він повинен сам відповідати за якість. Воно якимось чином буде змушене перевіряти якість усіх даних, навіть якщо деякі з них кращої якості. По-друге, це може вплинути на моральний стан команди Data Science. Якщо на обробку певного набору даних під час проекту витрачається значна кількість часу і необхідно повторити це під час наступного аналізу, завдання стає виснажливим і демотивуючим.

Вирішення проблем якості даних

Отже, що ми повинні робити, щоб наші дані були якісними?

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

Будь-яка організація, яка піклується про дані, має розглянути кілька рішень:

  • каталог даних. Інструмент, який містить інформацію про набори даних, якими володіє організація. Завдяки цьому адміністратор або Data Scientist зможе перевірити, які набори даних доступні та що в них міститься. Каталог даних також допомагає захистити дані та забезпечити чітке визначення відповідальності за окремі колекції.
  • засоби обробки Основні дані (ключові дані). Кожна організація має деякі дані, які є найважливішими для даної організації (наприклад, список клієнтів, продуктів або об’єктів). Як правило, ці дані використовуються в кількох системах. Ви не можете дозволити собі мати неузгодженості між даними – щоб у даних було «кілька версій істини».
  • інструменти для Якість даних (якість даних). Вони дозволяють вам контролювати якість даних, виявляти проблеми та встановлювати власні правила, щоб гарантувати, що всі дані належної якості.
    механізм обробки даних, який підтримуватиме автоматичні операції та гарантуватиме актуальність даних.

 

 

ЧИТАЙТЕ БІЛЬШЕ НАШ БЛОГ