Вчений даних проти інженера машинного навчання


66

Які існують відмінності між "науковцем даних" та "інженером машинного навчання"?

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

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

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


2
Data scientistзвучить як позначення з невеликою чіткістю щодо того, якою буде фактична робота, в той час machine learning engineerяк більш конкретна. У першому випадку ваша компанія дасть вам мету, і вам потрібно розібратися, який підхід (машинне навчання, обробка зображень, нейронна мережа, нечітка логіка тощо) ви б використовували. У другому випадку ви вже звузили компанію до того, який підхід потрібно використовувати.
gurvinder372

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

1
Як хтось інший зазначив, інженер з ML - це просто той, хто виробляє моделі ML. Від нього не очікується, що він глибоко зрозуміє фактичні моделі прогнозування та їх основні математики, однак від них потрібно освоїти програмні засоби, які роблять ці моделі корисними. Очікується, що науковець з даних буде глибоко розуміти статистику / математику та ML / AI, і часто це людина, яка створює інструменти, які використовуються інженерами ML. Таким чином, інженер МЛ в основному ближче до спеціалізованого програмного інженера, а DS - ближче до обчислювального статистику.
Дігіо

Відповіді:


55

Гарне питання. Насправді в цьому питанні багато плутанини, головним чином тому, що обидва є досить новими робочими місцями. Але якщо ми зосередимось на семантиці, справжнє значення робочих місць стане зрозумілим.

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

Тож для мого пояснення я розширю роль машинного навчання інженера на роль „Інженера даних”.

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

Подумайте про проксі: яка різниця між ядерним вченим та ядерним інженером?

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

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

Повернувшись до світу даних, ось ще один приклад: хлопці, які розробили конволюційну нейронну мережу (Yann LeCun), є науковцем даних, хлопець, який розгортає модель для розпізнавання облич на фотографіях, є машинним інженером. Хлопець, відповідальний за весь процес, починаючи від отримання даних до реєстрації зображення .JPG, є Інженером даних.

Таким чином, 90% даних Data Scientist сьогодні фактично є інженерами даних або інженерами машинного навчання, а 90% посад, відкритих як Data Scientist, насправді потребують інженерів. Проста перевірка: в інтерв'ю вам запитають про те, скільки моделей ML ви розгорнули у виробництві, а не про те, скільки публікацій про нові методи ви опублікували.

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


Я ніколи не думав про атомників та інженерів. Я думаю, що це ґрунтовна відповідь. Це підходить моєму досвіду, коли я роблю аналіз, то це біле лабораторне пальто (юпітер та гарні графіки). Коли я "забруднюю руки" за допомогою інженерних виробничих робіт (etl & webapp контейнери), я постійно знаходжу дивні кейси, помилки та неприємний запах коду.
Тоні

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

YLC, дійсно, є вченим-комп’ютером, але він спеціалізується на даних. CS став надто широким полем, з якого вийшли всі ті нові визначення (як DS). І тому використання CS стає не дуже дискримінантним. Як і апелятивний "Фізик" пару сотень років тому: сьогодні це слово насправді не визначає чиюсь роботу, якщо ви не вкажете його краще (наприклад, Частина П., Твердий П. та ін.). Але так чи інакше, вчений (CS, DS, будь-який -S) - це не той, хто обмежує себе у використанні чужих відкриттів. Натомість його робота полягає в тому, щоб зрозуміти, і цим засобом зробити відкриття.
Вінченцо Лаворіні

Не могли б ви відповісти на це питання щодо Data Engineerпрофорієнтації.
стор

Як складається наука про "феноменологічне розуміння"?
ubadub

10

Умови туманні, оскільки вони нові

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

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

Є три загальні підрозділи поля

На мій досвід, існує три загальні підрозділи «місця роботи» науки про дані.

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

Другий підрозділ використовує основні інструменти для створення специфічних пакетів програм для виконання будь-якого аналізу даних, який потрібно зробити. Люди наймаються на використання Python або R або будь-що інше для створення можливостей аналізу на певному наборі даних. Багато моєї роботи, на моєму досвіді, передбачає "прання даних", перетворення необроблених даних у будь-якій формі в щось корисне. Ще один великий фрагмент цієї роботи - обмін даними; з'ясування способів зберігання даних таким чином, щоб отримати доступ до них у будь-яку часову шкалу, яка вам потрібна. Ця робота полягає не стільки в тому, щоб скористатися інструментами, а використовувати існуючі бібліотеки баз даних, статистику та графічний аналіз для отримання певних результатів.

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

Загалом, усі троє могли б описати себе як "науковця даних", але лише перші два могли обґрунтовано описати себе як "інженера машинного навчання".

Висновок

Наразі вам доведеться самі з’ясувати, що передбачає кожна робота. Моя поточна робота найняла мене на посаду "аналітика", щоб займатися машинним навчанням. Але коли ми приступили до роботи, стало очевидним, що база даних компанії є неадекватною, і, напевно, 90% мого часу витрачається на роботу над базами даних. Моя експозиція на машинному навчанні зараз просто швидко працює за допомогою будь-якого пакету scikit-learn, який видається найбільш підходящим, і зйомка файлів csv аналітикам третього підрозділу, щоб робити презентації Powerpoint для замовника.

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


9

[Повністю особиста думка]

Коли термін «Науковець даних» обігнав «Статиста», це швидше звучить круто, ніж будь-яка основна різниця. Аналогічно і термін «глибоке навчання». Це просто нейронні мережі (що є ще одним алгоритмом машинного навчання) з парою більше шарів. Ніхто не може пояснити, коли певну нейронну мережу можна назвати DL, а не ML, тому що саме визначення нечітке. Отже, це термін "Data Scientist".

Однак, оскільки компанії переймають уявлення DevOps до науки про дані, термін ML Engineer розвивався.

Що таке розум DevOps для науки про дані?

Тут ви будуєте модель, розгортаєте її, а також розраховуєте підтримувати її у виробництві. Це допомагає уникнути багато тертя в програмних командах.

[PS: DevOps - це спосіб роботи з програмним забезпеченням, більше схожий на філософію. Отже, використовуючи це як позначення, мене знову бентежить].

Отже, інженери МЛ повинні знати нюанси системної інженерії, ML та статистику (очевидно).

Неясним узагальненням буде Data Engineer + Data Scientist = ML Engineer.

Сказавши це, позначення в цьому просторі з кожним днем ​​стають невиразними, а термін "статистик" стає все більш актуальним (іронія!).


2
Машинне навчання - це набагато більше, ніж просто нейронні мережі (лише як приклад, розгляньте всі види класифікаторів на основі дерев), тому не розумійте, як "Глибоке навчання - це лише машинне навчання з парою більше шарів".
S. Kolassa - Відновіть Моніку

@StephanKolassa Так. Погодьтеся. Не слід було занадто узагальнити його :) Дякую, що вказали на це.
Dawny33

1
(+1), але я не думаю, що статистика стає більш актуальною - це іронія, просто ... очікуваний перехід? Де в наші дні "оперативні дослідники"? ;)
usεr11852 повідомляє Відновити Моніку

7

Він може відрізнятися від компанії до компанії, але Data Scientist як позначення існує вже деякий час і зазвичай призначений для отримання знань та розумінь з даних .

Я бачив, як це роблять вчені

  • Написання алгоритмів обробки зображень та розпізнавання зображень,
  • Розробити та впровадити дерева рішень для ділового використання,
  • Або просто спроектувати та впровадити деякі звіти або написати ETL для перетворення даних.

Наука даних , однак, є супер-доменом машинного навчання

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

Машинобудування машинного навчання, здається, є позначенням, де ваш роботодавець вже звузився до рівня

  • Підхід,
  • Інструменти,
  • і орієнтовна модель (що доставити)

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


5

Інженери машинного навчання та інженерно-орієнтовані дані Scientist однакові, але не всі Data Scientist орієнтовані на інженерну діяльність. Близько 5 років тому майже всі Data Scientist були орієнтовані на інженерію, наприклад, їм довелося писати виробничий код. Однак зараз існує багато ролей Data Scientist, які здебільшого: грати в ноутбук Юпітера, розуміти дані, робити гарні графіки, пояснювати клієнтам, менеджерам, аналітикам ... Вони не займаються інженерією. І я вважаю, що термін "Інженери машинного навчання" придумав, що це інженерна позиція.


2

TL; DR: Це залежить від того, хто запитує.

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

Яка різниця між розробником програмного забезпечення, інженером програмного забезпечення та комп'ютерним науковцем?

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

Я люблю цю цитату Вінсента Гранвіля , акцент мій:

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


1

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

  • Особливості відносно міток
  • Дані тестів порівняно з навчальними даними
  • Нормалізація особливостей
  • Загальні структури даних (масиви масивів)
  • Вибір функції

0

Я не погоджуюся з жодною з наданих відповідей. Однак я вважаю, що існує роль Data Scientist, яка переслідується практично у всіх відповідях. Більшість із цих відповідей щось говорить про те, що "Ну, інженер просто пише та розгортає модель ...". Тримайтеся сек - є БАГАТО роботи в цих двох кроках!

Моє основне визначення Data Scientist - це той, хто застосовує науковий метод для роботи з даними. Тому я постійно думаю про гіпотези, розробляю тести, збираю свої дані та виконую ці тести, перевіряю результати перехресної валідації, пробую нові підходи, трансформую мої дані тощо, і т. Д. Це, по суті, в що входить "просто пише і розгортає модель "у професійній обстановці.

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

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

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