Які початкові кроки я повинен використовувати, щоб зрозуміти великі набори даних, і які інструменти я повинен використовувати?


10

Caveat: Я повний новачок, коли йдеться про машинне навчання, але прагну вчитися.

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

Я здогадуюсь, це буде звичною проблемою у світі аналізу даних, тому у мене є кілька питань:

  1. «Срібна куля» полягала б у тому, щоб передати ці всі ці дані в статистику / програму аналізу даних, а також на них розчавити дані, шукаючи відомі / невідомі зразки, намагаючись знайти відносини. Чи підходить SPSS чи є інші програми, які можуть бути краще підходять.

  2. Чи слід вивчати мову, як R, і придумати, як вручну обробити дані. Чи не це стосується пошуку компромісу, оскільки мені доведеться вручну вказати, що і як аналізувати дані?

  3. Як професійний майстер даних підійде до цієї проблеми та які кроки вчинить?

Відповіді:


11

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

1) По-перше, я думаю, що вам потрібно мати хоча б якусь концептуальну модель на увазі (або, краще, на папері). Ця модель повинна керуватись вами в аналітичному аналізі даних (EDA) . Наявність залежної змінної (DV) в моделі означає, що на фазі машинного навчання (ML) пізніше в аналізі ви будете мати справу з так званими контрольованими ML, на відміну від непідконтрольних ML за відсутності ідентифікованого DV.

2) По-друге, ЗНО - важлива частина. IMHO, EDA повинні включати кілька ітерацій створення описової статистики та візуалізації даних , коли ви уточнюєте своє розуміння даних. Ця фаза не тільки дасть вам корисну інформацію про ваші набори даних, але й підживить ваш наступний важливий етап - очищення та трансформація даних . Просто викидання ваших необроблених даних у статистичний пакет програмного забезпечення не дасть багато - для будь-якого достовірного статистичного аналізу дані повинні бути чистими, правильними та послідовними . Це часто є найбільш трудомісткою, але абсолютно необхідною частиною. Детальніше з цієї теми читайте ці приємні статті:http://vita.had.co.nz/papers/tidy-data.pdf (автор Hadley Wickham) та http://cran.r-project.org/doc/contrib/de_Jonge+van_der_Loo-Introduction_to_data_cleaning_with_R.pdf (автор Едвін де Йонге та Марк ван дер Ло).

3) Тепер, як ви сподіваєтесь, що зробите з EDA , а також з очищенням та трансформацією даних, ви готові розпочати ще кілька етапів, пов'язаних із статистикою. Однією з таких фаз є дослідницький факторний аналіз (EFA) , який дозволить вам отримати базову структуру ваших даних. Для наборів даних з великою кількістю змінних позитивним побічним ефектом EFA є зменшення розмірності . І, хоча в цьому сенсі EFA схожий на аналіз основних компонентів (PCA)та інші підходи до зменшення розмірності, я вважаю, що EFA важливіше, оскільки дозволяє уточнити вашу концептуальну модель явищ, які ваші дані "описують", таким чином, має сенс для ваших наборів даних. Звичайно, крім EFA, ви можете / повинні виконувати регресійний аналіз , а також застосовувати методи машинного навчання , виходячи з ваших висновків на попередніх етапах.

Нарешті, примітка про програмні засоби . На мою думку, сучасний стан програмних пакетів статистики перебуває у такій точці, що практично будь-які основні програмні пакети мають порівнянні пропозиції. Якщо ви навчаєтесь чи працюєте в організації, яка має певну політику та переваги щодо програмних засобів, то ви їх обмежуєте . Однак, якщо це не так, я б щиро рекомендував статистичне програмне забезпечення з відкритим кодом , засноване на вашому комфорті з його специфічною мовою програмування , кривою навчання та вашими перспективами кар’єри . Моя поточна платформа вибору - R Project, яка пропонує зріле, потужне, гнучко, розгорнене та відкрите статистичне програмне забезпечення, а також чудову екосистему пакунків, експертів та ентузіастів. Інші приємні варіанти включають Python , Julia та специфічне програмне забезпечення з відкритим кодом для обробки великих даних , таких як Hadoop , Spark , бази даних NoSQL , WEKA . Щоб отримати додаткові приклади програмного забезпечення з відкритим кодом для майнінгу даних , що включає загальне та специфічне статистичне та програмне забезпечення для ML, див. Цей розділ сторінки Вікіпедії: http://en.wikipedia.org/wiki/Data_mining#Free_open-source_data_mining_software_and_applications .

ОНОВЛЕННЯ: Забув згадати про Rattle ( http://rattle.togaware.com ), який також є дуже популярним програмним забезпеченням з відкритим кодом, орієнтованим на графічний інтерфейс GUI для пошуку даних.


1
Повернувшись до цього питання через рік, я, безумовно, можу повторити, що знання ваших даних є ключовим і вам потрібно мати на увазі, що таке "хороші" дані проти "погані" дані. Я намагався використовувати магічні рішення, такі як нейронні мережі тощо, але процес очищення даних був непростим. (Моделі прихованих марків, здавалося, найкраще реагують на брудне введення та змогли найкраще передбачити результати). Це було фактично просто переливанням даних протягом багатьох тижнів після виходу з ладу та після створення багатьох графіків (візуальні уявлення даних дуже важливо) що я зміг помітити рішення моїх проблем!
користувач3791372,

@ user3791372 Радий почути від вас! Очевидно здається, що рік був для вас результативним в отриманні набагато кращого розуміння різних аспектів науки про дані. Мені б хотілося, щоб у мене було більше можливостей дізнатися більше, але, з іншого боку, я не можу скаржитися, оскільки я теж багато чого навчився (не завжди це стосується науки про дані, але, можливо, це навіть краще). Так тримати!
Олександр Блех

3
  1. SPSS - це чудовий інструмент, але ви можете досягти великої кількості ресурсів, які вже є у вас на комп’ютері, наприклад, у Excel або які є безкоштовними, як R-проект. Хоча ці інструменти є потужними та можуть допомогти вам визначити шаблони, перед тим, як проводити аналізи, вам потрібно буде чітко зрозуміти свої дані (я б рекомендував запускати описову статистику щодо своїх даних та вивчати дані за допомогою графіків, щоб переконатися, що все виглядає нормально). Іншими словами, інструмент, який ви використовуєте, не запропонує «срібну кулю», оскільки вихід буде таким же цінним, як і вхідні дані (ви знаєте приказку «сміття, сміття поза»). Багато з того, що я говорю, вже було сказано у відповіді Олександра - місце на.

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

  3. Я б почав із ознайомлення з моїми даними (для початків виконайте кроки, викладені у відповіді Олександра). Ви можете подумати, як взяти книгу Джона Формена під назвою Data Smart. Це практична книга, оскільки Джон надає набори даних, і ви дотримуєтесь його прикладів (використовуючи Excel) для вивчення різних способів навігації та дослідження даних. Для початківців це чудовий ресурс.


2

Олександр дав дуже ретельне пояснення, але коротко, це наступні кроки:

Витяг даних

Чищення даних

Видобуток функції

Побудова моделей

Результати пошуку

Результати публікації

Повторіть кроки 3,4,5 в циклі, поки ви не отримаєте потрібну точність.


0

R має графічний інтерфейс діалогу, наприклад, SPSS. Вони друкують код R, щоб ви могли навчитися та об'єднати їх зусилля. Я б порекомендував BlueSky для його діалогів до всього і про брязкання. Хоча ці програми чудово підходять для EDA, статистики та візуалізації, машинного навчання вони не працюють добре.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.