Навички важко знайти у машинних учнів?


71

Схоже, видобуток даних та машинне навчання стали настільки популярними, що зараз майже кожен студент CS знає про класифікатори, кластеризацію, статистичну НЛП ... і т. Д. Тож здається, що пошук шахтарів даних не є важкою справою в наш час.

Моє запитання: Які навички, завдяки яким мінодер даних міг засвоїти, зробили б його відмінним від інших? Щоб зробити його не таким-то легким для пошуку когось, як-то йому подібним.


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

Відповіді:


62

Я неодноразово бачив, як розробники використовують методи МЛ. Це звичайна схема:

  1. завантажити бібліотеку з фантазійною назвою;
  2. витратити 10 хвилин, читаючи, як ним користуватися (пропускаючи будь-яку статистику, математику тощо);
  3. годувати його даними (без попередньої обробки);
  4. виміряйте продуктивність (наприклад, точність, навіть якщо класи повністю незбалансовані) і розкажіть всім, наскільки це приголомшливо зі своєю 99% точністю;
  5. розгортання у виробництві з епічними результатами провалу;
  6. знайти когось, хто розуміє, що відбувається, щоб допомогти їм, тому що інструкція з експлуатації зовсім не має сенсу.

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


14
LOL на "скажи всім, як це приголомшливо зі своєю 99% точністю"
Джек Твен

2
+1 Я з усім згоден. "[...] Data Scientist. Це хтось, хто може написати код, щоб отримати доступ і грати з величезною кількістю даних і знаходити значення в них." Що мені здається, це повинно залишатися природним рідко, оскільки більшості смертних видається нездійсненним вирішити складні статистичні та основоположні питання, а також перетворити щось на виробничий код. Це також пояснює, чому у нас є серцево-судинні хірурги, анестезіологи, неврологи, медсестри, адміністратори лікарень тощо. Або цивільні, аеронавтичні, гірничі, хімічні, механічні інженери тощо
Thomas Speidel

2
Для мене це насправді не опис того, що хтось повинен бути видатним кандидатом в ML - більше, ніж молодший ML. Схоже, ви описуєте когось, хто занадто зосереджений на отриманні "відповіді", перш ніж вони навіть будуть впевнені в тому, що питання. В основному, ваша "типова особа" - це людина, яка має погані навички планування, і хтось, хто не обговорює, що вони мають намір робити з "клієнтом", перш ніж орати вперед, і повертатися з "відповіддю". Це не те, що допомагає мати хорошу математику / статистику - це те, що вимагає хороших навичок спілкування.
ймовірністьлогічний

61

Про що йдеться

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

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

Акцент повинен бути зроблений на науці , застосовуючи системний, науковий підхід до проблем бізнесу, промисловості та комерції. Але для цього потрібні навички ширші, ніж обробка даних та машинне навчання, про що переконливо стверджує Робін Блор у "A Data Science Rant" .

То що ж робити?

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

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

Основи : Існує чотири: (1) суцільне обґрунтування статистики, (2) досить хороші навички програмування, (3) розуміння способів структурування складних запитів даних, (4) побудова моделей даних. Якщо якісь слабкі, то це важливе місце для початку.


Кілька цитат з цього приводу:

`` Я дуже рано дізнався різницю між тим, що знати назву чогось і щось знати. Ви можете знати ім'я птаха на всіх мовах світу, але коли ви закінчите, ви нічого абсолютно нічого не будете знати про птаха ... Тож давайте подивимось на птаха і подивимось, що вона робить - ось що рахується. '' - Річард Фейнман, "Створення вченого", стор.14 в "Що тебе хвилює, що думають інші люди", 1988

Мати на увазі:

`` Поєднання навичок, необхідних для виконання цих проектів ділової науки [даних про науку], рідко проживає в одній людині. Хтось дійсно міг отримати широкі знання в потрійних областях (i) того, чим займається бізнес, (ii) як використовувати статистику та (iii) як керувати потоками даних та даних. Якщо так, то він чи вона справді може претендувати на посаду бізнес-вченого (він же «науковець даних») у певному секторі. Але такі особи майже такі ж рідкісні, як і курячі зуби '' - Робін Блор, A Science Science Rant , серпня 2013, Inside Analysis

І, нарешті:

`` Карта - не територія '' - Альфред Корзибський, 1933 р., Science & Sanity.

Більшість реальних, прикладних проблем доступні не лише з `` карти ''. Щоб робити практичні речі з математичним моделюванням, потрібно бути готовим до того, щоб розібратися з деталями, тонкощами та винятками. Ніщо не може замінити знання території з перших рук.



6
+1. Нестандартні рішення рідко працюють для вирішення конкретної бізнес-проблеми вашої організації. Вам потрібно підганяти та вдосконалювати, а для цього потрібно розуміти, що знаходиться під кришкою.
Жубарб

4
@Zhubarb - Я думаю, що це лише частково правда. Рішення "out of the box" можуть бути використані з великим ефектом, але не завжди, а також зазвичай не для виконання завдання від початку до кінця. Хитрість полягає в тому, щоб дізнатися, коли ви можете піти з використанням "нестандартних рішень" і коли потрібен більш підхідний підхід.
ймовірністьлогічний

41

Я згоден з усім, що було сказано. Що для мене виділяється:

  1. Як мало «експертів» з машинного навчання насправді цікавить тема, до якої вони хочуть застосувати ML
  2. Як мало хто по-справжньому розуміє точність прогнозування та правильні правила зарахування
  3. Як мало хто розуміє принципи перевірки
  4. Як мало хто знає, коли використовувати чорну скриньку проти традиційної регресійної моделі
  5. Як, здається, ніхто з "експертів" ніколи не вивчав оптимальні функції рішення або втрати / корисності / вартості Байєса [це нерозуміння відображається практично в будь-який час, коли хтось використовує класифікацію замість прогнозованого ризику]

3
Ви б не хотіли детальніше зупинитися на 4? Я не зовсім розумію, що ви маєте на увазі

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

7
Так, дійсно, до мілкості предмета. Навіть у світі ML, я часто бачу цю тенденцію хотіти занести сирі дані у чарівну скриньку та мати чудове розуміння. Те, що ці люди шукають, - це штучний мозок.
DarenW

3
+1, особливо для пункту 1. Доказом відсутності інтересу до домену є те, що для застосування знань про домен знадобиться знати, як "відкрити" чорну скриньку та змінити. Під чорною скринькою я маю на увазі для більшої частини ML початкового рівня, навіть основні методи статистичного моделювання є у цій чорній скриньці. Якщо інтересу / здатності немає, то застосувати знання про домен набагато складніше.
Meadowlark Bradsher

7
@DarenW: Тенденція відображається також у назві: "Машинне навчання" з конотацією, що машина вчиться ... сама по собі ... просто перекидайте необроблені дані. Порівняйте менш гламурне ім’я (але більш точне ІМО), вибране Хасті, Тібшірані та ін .: "Статистичне навчання". Різна конотація, різні пояснення, все це стосується статистичних принципів.
Асад Ебрагім

11

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

  • Розуміння домену програми чи доменів. Тобто ділове середовище чи інший контекст.
  • Зрозумійте велику картину. Це дуже важливо! Люди, які вивчають машинне навчання, часто губляться в деталях. Подумайте про загальну картину, в яку впишуться ваші моделі ML. Часто частина ML - це лише невеликий сегмент значно більшої системи. Розумійте всю систему.
  • Вивчіть теорію корисності та прийняття рішень та байєсівські умовиводи, не тільки те, що зараз вважається "звичайними" моделями ML. Байєсівський висновок - це лише спосіб формалізувати поняття приведення всієї контекстуальної інформації до певної проблеми. Теорія корисності та прийняття рішень полягає у введенні цінностей у картину.

Загальне повідомлення, яке стосується всіх трьох моментів: Подивіться на велику картину, не губляйтесь у деталях.


4

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


8
+1 Домовились, хоча те, що ви описуєте, називається статистикою.
Thomas Speidel

4

Я би виклав там поняття "м'які навички".

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

  • можливість перекладати або представляти "реальний світ" з математикою, що використовується в МЗ.

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

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

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


4

Вміти добре узагальнити

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

Розуміння того, що мета - оптимізувати продуктивність за небаченими даними, а не мінімізувати втрати тренувань. Знаючи, як уникнути як надмірної, так і недостатньої придатності. Створення моделей, які не надто складні, але не надто прості в описі проблеми. Витягування суті тренувального набору, а не максимально можливого.

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

  • Наскільки більший простір усіх можливих прикладів порівняно з навчальними даними, навіть якщо дані про навчання дуже великі.
  • Наскільки більшим є повний "простір гіпотез" : кількість можливих моделей проблеми, порівняно з практичним "простором рішення": все, що ви можете придумати, і все, що ваше програмне забезпечення / інструменти здатні представляти.

Другий особливо незрозумілий, оскільки навіть для найпростішої проблеми з входами та бінарним результатом є можливих прикладів введення та експоненціально більша кількість 2 ^ можливих моделей.2 N 2 NN2N2N

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


2

Я бачу, що на практиці в машинному навчанні є дві частини

  1. Інжиніринг (який охоплює всі алгоритми, вивчення різних пакетів, програмування).

  2. Цікавість / аргументація (здатність задавати кращі запитання до даних).

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

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