Що таке Data Science та як це працює?

Перетворення інформації в продукт — тренд майбутніх технологій. Інтернет все більше наповнюється додатками, які здатні перероблювати великі об’єми інформації (data-driven apps). Рекламні додатки нав’язливо пропонують певні дії, наприклад, оплата кредитною карткою певної послуги тощо. Але процес використання таких даних важко назвати data science. Цінність таких додатків складається в тому,що вони збільшують об’єм інформації — створюють так звану data product. Це все відбувається завдяки data science.

CDDB (Compact disc data base) — це перший з подібних проектів data science. Засновники цього проекту зрозуміли, що компакт диск має певний ідентифікатор, який характеризує собою тривалість кожної музичної доріжки на CD. Компанія зібрала усю інформацію про тривалість треків та з’єднала при цьому з базою даних альбому (виконавець, назва треку, назва альбомів, жанр, тощо.)

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

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

Багато відкриттів серед data product зробив Google. Давайте розглянемо деякі приклади:

  • Оскільки пошукова машина здатна працювати не лише з текстом, в роботу залучили нові інструменти обробки даних поза сторінками. PageRank один з них, оскільки враховувалась кількість посилань на матеріал PageRank став основним інструментом досягнення успіху компанії Google, що надало їй немало бонусів серед конкурентів;
  • Google аналізує дії користувача, коли сам пропонує виправити орфографічні помилки. Завдяки цьому процес проходить набагато точніше. Автоматично створюється довідник тих помилок, які зазнає користувач, враховуючи правильні варіанти та контекст, в яких був вжитий той чи інший запит;
  • Розпізнати мову завжди було важко, але Google успішно бореться і з такими складнощами. Створення бази даних з голосів дозволило інтегрувати голосовий пошук в пошукову систему;
  • В 2009 році під час епідемії свинного грипу, Google зуміла відслідкувати поширення вірусу завдяки пошуковим запитам по темі цієї хвороби.

Facebook, Amazon, Twitter, LinkedIN

Google — не єдина компанія, що займається аналізом особистих даних. Facebook та Linkedln інколи пропонує вам в друзі тих людей, яких ви точно можете знати або тих, з ким спілкувалися кілька днів тому. Буває, що ці соціальні мережі навмисно «шукають вам пару». Amazon зберігає вашу історію пошуку та співвідносить з тими даними, що шукають інші люди. Таким чином, в стрічці новин показуються товари за вашими інтересами та вподобаннями.

Такі рекомендації і є dataproduct. Незалежно від типу даних: голосу, запитів, відгуків про товари тощо — все це зворотній зв’язок, який сприяє удосконаленню продукту.

Наразі ми буквально тонемо серед великої кількості інформації. Проблема не в тому, де її шукати, а в тому, що ж з нею робити? Компанії, які всього лише оперують своїми даними тут ні до чого. Все частіше таку інформацію поєднують з різних джерел. Таким чином можна наприклад провести аналіз іпотечних виплат Філадельфії на основі привселюдного звіту шерифа, використовувавши Yahoo! для перетворення адрес в довготу та ширину з подальшим розміщенням «штрафів» на карті округу. Поєднавши дані по районах, вартості, доходах на душу населення та інших соціальних факторах ми нарешті отримаємо бажаний результат по іпотечних внесках.

Сьогодні перед будь-якою компанією або стартапом, який бажає розвиватися постає нелегке питання — як ефективно використати не тільки свої дані, але й інформацію, яка доступна всім. Статистика від data science відрізняється тим, що у кожної обробки даних існує свій цілісний підхід та «своя історія».

Щоб зрозуміти які навики для реалізації потрібні, потрібно розглядати дані в цілому: історія їх виникнення, збір даних, де використовуються та куди відправляються?

Пошук даних

Інформація оточує нас: уряд, веб-сервер, приховані камери, співробітники на роботі, навіть своє тіло передає певну інформацію. Треба вміти лише «зчитувати» її. Наприклад щоб дізнатися стан справ у відомого американського видавця компанії O’Reilly, достатньо проаналізувати дані Amazon, Nielsen Book Scan та показник продажів компанії. А це все є у відкритому доступі. Такі сайти як Infochimosі Factual дають доступ до будь-якого роду інформації, включаючи погоду, активність в соцмережах та результат спортивних змагань. Factual залучає користувачів до обновлення бази своїх власних даних, від показників ендокринології до заторів на дорогах.

Більша частина даних, звідки ми беремо всю інформацію — це наслідок Web 2.0 та Закону Мура, який ми застосовуємо до інформації. Так чи інакше, кожна людина залишає свій «цифровий слід» в соц. мережах. Мобільні телефони можуть розповісти багато про господаря, оскільки включають в себе функцію відстеження по геолокації. POS-термінали зможуть багато чого розповісти про ваші покупки та вподобання, навіть якщо ви зайшли у простий продуктовий магазин.

Як же використати отримані дані? Перш за все потрібно проаналізувати їх та довести до відповідного нашим вимогам стану: data feeds, мікроформати та інші новітні технології дозволяють нам зробити це.

Для того, щоб привести отримані дані в порядок може знадобитися «чистка» html коду таким інструментом, як Beautiful Soup, виправлення орфографічних помилок теж може стати в нагоді. Прийдеться мати діло з великою кількістю джерел, які напевне будуть не одного формату. А чи не легше було б зіставити список потрібних інструментів для «чистки» даних?Це рішення було б ідеальним варіантом, проте для того, щоб привести в порядок всю інформацію може знадобитися все, що завгодно (від старих програмних утиліт до таких мов програмування, як Perl та Python).

Обробка великого об’єму даних

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

Найбільшою проблемою «великих» даних являється те, коли розмір стає перепоною. Джефф Хаммербахер (Jeff Hammerbacher) вважає, що ми намагаємось побудувати інформаційні платформи або інформаційний простір, який буде якомога ближчий до звичайного зберігання даних на носіях. Проте, це справедливо у випадку розуміння даних, ніж для традиційних завдань, які розуміють під собою аналіз або ж звіт. Тут будуть розглянуті всі формати, навіть найбільш безглузді, а зміна такого потоку інформації буде постійно моніторитись.

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

Такі інструменти як NoSQL або Non-Relational databases — чудові інструменти для зберіганнята сортування груп даних із абсолютно різних продуктів. Багато з цих баз – правонаступники Google’s Big Table та Amazon’s Dymano створені для більш структурованих зв’язків без будь-якої згоди на те. На ринку обробки даних біля двох десятків таких систем, але є й ті, які зарекомендували себе як лідери у цій галузі. Давайте розглянемо їх окремо.

  • Cassandra — система соціальної мережі Facebook, яка втім використовувалась на таких сайтах, як Twitter, Rackspace, Reddit і ін. Cassandra була призначена для вимогливих систем високої продуктивності, надійності та автоматичних відповідей. Підтримкою цієї системи займається Hadoop.
  • HBase — основана на платформі Google’s Big Table та являється частиною того ж проекту Apache Hadoop. Цю систему використовують для аналізу та обробки величезного об’єму даних, які можуть налічувати в собі мільярди рядків та мільйони стовбців. Комерційна підтримка цього проекту — це такі компанії, як Hadoop та Cloudera.

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

Ще одна система, яку активно підтримує Google називається Map Reduce. Цей проект здатний вичислити та відсилати велику кількість проблем в окремий обчислювальний кластер. Така задача на певному етапі ділиться на підзадачі, які розділені між процесорами, результати збираються всі для одної цілі. Найбільша проблема такої платформи від Google — це створення широкого пошуку. Його легко пропустити серед тисячі процесорів, а потім зібрати все в єдину мережу відповідей на пошукові запити. Map Reduce зарекомендував себе як популярний сервіс для вирішення проблем, які пов’язані з великими об’ємами інформації (від елементарного пошуку до складних алгоритмів).

Машине навчання — це важливий аспект для експертів, працюючих у сфері data science.

Входимо в діалог з інформацією

Кожне зображення складається з цифрового коду. Основна проблема більшості алгоритмів аналізу даних полягає як раз в тому, що вони генерують набір чисел. Для того щоб дослідити їх «мову», потрібно побудувати графік. Візуалізація відіграє велику роль в роботі з даними. Цей процес засновник Flowing Media Мартін Уоттенберг (Martin Wattenberg) називає ключовим в підготовці інформації.

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

Вчені та сфера дослідження даних

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

«В будь-який момент одному з учасників команди потрібно буде створити багаторівневу систему на Python, створити дизайн, запустити аналіз зразків, вміти працювати з Hadoop та знати основи того, над чим працювали інші співробітники організації»

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

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

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

CDDB — це лише один з прикладів, як це має працювати. Ідентифікувати музику по певному потоці аудіо доріжки — це складне завдання, але в цьому випадку команда розробників знайшла більш креативний вихід, при якому знадобилося мінімум ресурсних витрат. Підрахувати тривалість кожного аудіотреку та звірити отриману інформацію з базою даних. Так і створюється data product.

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

Великі соцмережі та пошуковики-гіганти змогли «осідлати» великий потік даних та змусили його працювати на себе. Саме тому вони досягли такого успіху. Наступні бізнес-проекти, які досягнуть успіху, без сумніву будуть займатися аналізом зібраної інформації. В майбутньому такі навики будуть дуже важливими.

БІЛЬШЕ ЦІКАВОГО:

Джерело