Як почати шлях у Data Science та Machine Learning вже сьогодні. 10 навичок для успіху
Мене звати Ганна Пилєва, я — Machine Learning Engineer з досвідом 8 років в різноманітних Data Science проєктах. Працювала в EVO (prom.ua), Parimatch Tech, N-iХ, GroupBy Inc. Зараз консультую компанії з побудови data-рішень та навчаю аналізу даних і машинному навчанню у своїй академії Data Loves.
Крім всього іншого я вже 3 роки веду блог (навіть блоги) про роботу з даними і постійно аналізую запити моїх читачів. І одне зі спостережень — багатьох людей цікавить напрям Data Science для розвитку (для себе, або для розвитку карʼєри в ІТ) і при цьому максимально складно зрозуміти, з чого почати. Це спричинено тим, що ML/DS напрям активно розвивається, зʼявляються розгалуження на спеціальності, і при цьому для входження в кожну з них треба багато навичок. Тож, початківці в ML/DS, навіть досвідчені ІТ-фахівці, часто не знають, з чого почати, як скласти план розвитку, скільки це потребуватиме часу до рівня «я вмію використовувати ML для реальних задач».
Я постійно аналізую вакансії, проводжу інтервʼю в різні конманії, слідкую за ринком. І у цій статті хочу поділитись, з чого ж почати в ML/DS сьогодні, які навички потрібні, щоб стати фахівцем з актуальними знаннями. Також в процесі буду ділитись власним досвідом, як освоювала кожну секцію навичок я.
Ця стаття має стати першою в циклі про кар’єру в ML. Якщо побачу позитивний відгук — з радістю розкажу, як розвиватися у сфері, що допомогло мені та що працює в принципі, і які уроки я засвоїла за 8 років у Data Science.
Еволюція галузі
Коли я починала у Data Science у 2015 році, сфера мала геть інший вигляд. Багато хто приходив з позицій аналітиків, і я була серед них. Кумедно згадувати, але тоді я будувала лінійні та поліноміальні регресії в Excel і інтегрувала метод кластеризації kMeans (реалізований на R) з Tableau для візуалізації сегментів користувачів в реальному часі.
Колись без глибокого знання математики в ML було не вижити. Лінійна алгебра, статистика, теорія ймовірностей — без цього розібратися, що відбувається «під капотом» алгоритмів, було майже нереально. Часто доводилося писати все з нуля, вручну реалізовуючи методи, тож розуміння внутрішньої логіки алгоритмів було критично важливим.
На той момент ML активно розвивався і були зроблені великі прориви в Deep Learning, але бракувало готових інструментів. Хоча вже існували scikit-learn, tensorflow, keras для Python,
Відтоді Data Science суттєво змінився, як і підхід до освоєння цієї сфери. Поріг входження значно знизився. Сьогодні більшість алгоритмів уже запаковані в бібліотеки, тож головне — не знати всі формули, а вміти вибрати правильну модель, адаптувати її під задачу й успішно запустити в продакшн.
ML все ще залишається одним із найцікавіших і найприбутковіших напрямів. Чому? Бо це завжди нові виклики, круті задачі та можливість впливати на реальні бізнес-процеси.
Фундаментальні навички для початку кар’єри в ML
Щоб почати кар’єру в Machine Learning, потрібно багато знати. Але все можна освоїти, якщо зрозуміти, в якому порядку і що саме вивчати, і на чому фокусуватися.
Серед навичок, які потрібні для старту на позиції Junior, я б виокремила такі:
- Програмування на Python.
- Аналіз і підготовка даних.
- Математичний фундамент.
- Класичні методи машинного навчання.
- Методи глибокого навчання.
- Інженерні навички.
- Робота з базами даних і SQL.
- Робота з мовними моделями.
- Комунікація та взаємодія з бізнесом.
- Англійська мова.
Наявність цих навичок покриють від 70 до 100% вимог до Junior та навіть Middle-вакансій. Звісно, в вакансіях зустрічаються і інші навички. Я виділила ці 10 як найбільш частотні, і без яких точно нікуди. З тих, які не увійшли, і на які я б рекомендувала звернути увагу — це Clouds, MLOps Stack, Data Engineering Stack (побудова і автоматизація data-пайплайнів). Часто ці навички будуть зустрічатись у вимогах до досвідчених фахівців і ми можемо їх розглянути в наступних серіях про розвиток в Data Science.
А поки розглянемо кожен із зазначених необхідних пунктів для старту детальніше.
1. Програмування на Python
Python став стандартом для
Варто вивчити:
- Базовий та просунутий синтаксис Python.
- Основи об’єктноорієнтованого програмування (ООП).
- Роботу з даними в Python (Pandas, NumPy).
- Паралельну та асинхронну обробку даних (multiprocessing, asyncio).
Де вивчати:
- Курси на Coursera, Udemy, DataCamp («Python for Data Science»).
- Книга «Python for Data Analysis» від Wes McKinney (третє видання доступне безплатно онлайн).
Важливо! Практика є ключовою. Вибирайте ресурси з практичними завданнями або організовуйте собі проєкти з перших днів навчання.
Я освоювала Python самотужки та це зайняло в мене надзвичайно багато часу — аж 2 роки. З університету я знала основи програмування (поняття змінної, цикли, функції) на інших мовах: Pascal, Delphi, C++, C#. Це, на жаль, не надто спростило освоєння Python для Data Science, оскільки тут треба практика саме на задачах аналітики й побудови моделей і необхідно набити руку.
Руку я набивала довго, оскільки одразу вчилась на доволі просунутих задачах в магістратурі — написання програм для паралельної обробки даних, побудова повних пайплайнів обробки табличних та текстових даних. Мені було складно десь на 10 з 10.
Тому зараз початківцям я дуже раджу взяти структуроване навчання з синтаксису Python і бібліотек аналізу, навчитись використанню цієї мови програмування на практиці на задачах, наближених до робочих, від простих до складніших. І тоді при освоєнні вже машинного навчання, в подальшій роботі та з тестовими завданнями на Python будете почувати себе комфортно і суттєво скоротите собі час освоєння цього інструменту.
2. Аналіз даних
Здатність розуміти та працювати з даними — одна з основних навичок для
Часто саме тут і відбувається «магія», адже моделі, в тому числі й ті, що використовують глибоке навчання та LLM, зараз неймовірно потужні. Але, як і у випадку з машинним навчанням, існує золоте правило: «garbage in — garbage out».
Ви точно помічали, як по-різному відповідає ChatGPT із добре сформульованим запитом, прикладами та контекстом, та без цього. Тому без якісної роботи з даними моделі не розкриють свій потенціал. Готуйтеся, що
Отже, варто освоїти:
- Pandas — для обробки та трансформацій даних;
- NumPy — для числових операцій;
- Matplotlib, Seaborn, Plotly — для візуалізації;
- EDA (Exploratory Data Analysis) — основні методи перед моделюванням;
- Feature Engineering — створення нових корисних ознак.
Практичні навички, які корисно розвинути:
- Очищення даних від шуму, пропусків та аномалій — повірте, в реальних даних це буде всюди.
- Виявлення патернів — знаходити цікаві залежності та нестандартні спостереження.
- Формування гіпотез на основі даних.
- Підготовка даних до моделювання — масштабування, трансформації, encoding (кодування категоріальних ознак, наприклад, як представити категорії «синє», «червоне», «жовте» у числовій формі для моделі).
Ця частина роботи часто залишається непомітною для зовнішнього спостерігача, і, чесно кажучи, вона не така «сексі», як побудова моделей, але саме вона закладає основу для ефективного
Цю частину я теж освоювала самотужки на практиці. Тому це зайняло більше часу, ніж якби я взяла цільове структуроване навчання. Але тоді, у
Ви будете вчитись різним фішкам аналізу і очищення та збагачення даних протягом усієї своєї карʼєри. Але при цьому перед пошуком першої роботи ви маєте освоїти критичний набір навичок аби вже могти давати цінність бізнесу.
3. Математичний фундамент
ML — це математика на практиці. Готові бібліотеки полегшують життя, але без базового розуміння ви не зможете пояснити, чому модель поводиться саме так, як її покращити чи оптимізувати.
Ключові розділи:
- Лінійна алгебра — матриці, вектори, власні значення. Це основа всього: від лінійної регресії до нейромереж.
- Математичний аналіз — похідні, градієнти, оптимізація. Без цього не розібратися в градієнтному спуску.
- Теорія ймовірностей — потрібна для всіх моделей, що працюють із невизначеністю (класифікація, рекомендації тощо).
- Прикладна статистика — допомагає аналізувати дані, тестувати гіпотези, правильно трактувати результати.
- Оптимізація — якщо хочете розуміти, як навчати моделі швидше й ефективніше.
Не потрібно знати все на рівні академічних підручників, але й «натискати кнопки» наосліп не варіант. Отже, важливо:
- Інтуїтивно розуміти, як працюють алгоритми.
- Вміти інтерпретувати результати моделей.
- Розпізнавати, коли навчання моделі дає некоректні результати або щось пішло не так.
В мене був сильний бекграунд в теоретичній математиці з бакалаврату в системному аналізі в КПІ. На жаль, бекграунд був надто теоретичний і зі справді прикладного для сучасного ML була лише статистика. Також в мене неоптимально щодо руху до реальних навичок, з якими беруть на роботу, був той факт, що 4 роки мого навчання в бакалавраті були зосереджені на вивченні здебільшого широких теоретичних математичних знань.
Це формує особливе математичне мислення, але конкретні теореми і підходи — забуваються. Тож, коли я підійшла до освоєння методів машинного навчання, доводилось все повторювати. На щастя, в магістратурі в УКУ (Український Католицький Університет), на яку я пішла для фундаментального освоєння Data Science, було передбачене освоєння необхідної математики, при чому більш цільово. І курси з лінійної алгебри та статистики в УКУ були чудові.
Зараз мені найбільше подобається і виглядає time-effective підхід, коли математику дають одразу у звʼязці із реальними задачами з індустрії. В такому підході викладаю математику і я на моєму авторському курсі «Machine Learning для людей».
Що можу порекомендувати для освоєння математики для Data Science:
- Книга Essential Math for Data Science by Thomas Nield — непогана книга, підійде для початківців. Є приклади коду на Python для розуміння, як використовувати математичні концепції на практиці.
- Спеціалізація Mathematics for Machine Learning and Data Science by Deeplearning.AI — спеціалізація з трьох курсів. Дуже крута, якщо можете добре сприймати математичний контент англійською. Є практичні приклади, пояснення простою мовою, наочно.
- Книга Mathematics for Machine Learning by Deisenroth, A. Aldo Faisal, and Cheng Soon Ong — доступна відкрито онлайн. Вона містить перелік основних математичних понять для розуміння, як працюють алгоритми ML під капотом. Підійде для тих, хто мав мат.аналіз і лінійну алгебру в університеті аби повторити. Також може бути корисною як довідник для повторення основної математики перед інтервʼю.
4. Класичні методи машинного навчання
Попри популярність нейромереж класичні алгоритми залишаються основою багатьох ефективних рішень у бізнесі.
Ключові алгоритми:
- Лінійні моделі (лінійна регресія, логістична регресія).
- Дерева рішень, Random Forest, Gradient Boosting.
- Методи кластеризації (k-means, DBSCAN).
- PCA, t-SNE, UMAP — зниження розмірності.
Що важливо:
- розуміти, коли який алгоритм застосовувати;
- бачити сильні та слабкі сторони кожного методу;
- вміти налаштовувати гіперпараметри й відстежувати їхній вплив на модель;
- використовувати правильні метрики для оцінки якості моделей.
Виникає питання: де вчитися? Адже світ ML — це джунглі курсів, статей та документацій. Щоб не загубитися, ось перевірені джерела:
- Класика жанру — курс Machine Learning від Andrew Ng на Coursera. Навіть якщо ви його ще не проходили, точно про нього чули.
- Книга для тих, хто любить практику — Hands-On Machine Learning with Scikit-Learn, Keras & TensorFlow. Читається легко, пояснює складне простою мовою.
- Документація scikit-learn — якщо хочеться швидко зрозуміти, як працює конкретний алгоритм, і одразу протестувати його на коді.
Я починала освоєння ML з того самого курсу Andrew Ng, де тоді ще лабораторні були на Octav. Після курсу тривалістю 11 тижнів в голові була каша, пройти співбесіди не вдавалось, я плутала kNN і kMeans, не могла запамʼятати, який метод для чого. Тому після цього я пішла в магістратуру для більш ґрунтовного освоєння мл. В магістратурі курс з ML — самі лекції були, чесно кажучи, на трієчку.
Але у нас було багато практики й не було ChatGPT та звідки списати, і це дозволило мені і з Python краще навчитись працювати, і з методами ML розібратись. Але було в цьому розділі багато самонавчання і деякі методи на мій поточний погляд можна було б опустити, оскільки в індустрії вони не використовуються. Ще профіт від того курсу: я виклала всі свої лабораторні на GitHub і це був такий добрячий пласт роботи, який для роботодавців підтверджував, що я справді шарю.
5. Deep Learning: той самий wow-ефект
Напевно, вже й не знайти
Тому раджу сфокусуватися на наступному:
- FCN (Fully Connected Networks) — база для роботи з табличними та числовими даними.
- CNN (Convolutional Neural Networks) — королі комп’ютерного зору.
- RNN, LSTM, GRU — якщо треба працювати з послідовностями (часові ряди, тексти).
- Трансформери — обов’язковий must-have для NLP.
Автоенкодери — щоб виявляти аномалії та створювати стиснені представлення даних. - Генеративні моделі (GAN, Diffusion models) — для тих, хто планує навчати нейромережу створенню нового контенту.
Для цього вам знадобляться наступні навички:
- Писати нейромережі на PyTorch або TensorFlow/Keras.
- Використовувати transfer learning — не завжди треба вчити модель з нуля.
- Розбиратися в embeddings — векторизація даних важлива для пошуку схожостей.
- Оптимізувати моделі для inference, щоб вони працювали швидко та ефективно.
Якщо ви хочете не просто «подивитися вебінар», а маєте на меті реально засвоїти матеріал, вам стануть у пригоді:
- Курс Deep Learning від Andrew Ng на Coursera — щоб структурувати основи.
- Документація PyTorch та TensorFlow — офіційні найактуальніші гайди.
- Книга «Deep Learning» (Goodfellow, Bengio, Courville) — для тих, хто хоче глибше закопатися в теорію.
Перший дотик з глибоким навчанням в мене був в магістратурі. На той момент я вже добре розуміла принципи ML. На курсі з DL ми почали з основ, писали базові архітектури нейромереж на numpy і це було чудовою практикою. Я б навіть хотіла, аби її було більше. Потім у нас були спеціалізовані курси з Computer Vision та NLP. А після цього я за 3 тижні пройшла ту саму спеціалізацію Deep Learning на Coursera і це дозволило мені чудово структурувати знання. Мені також в той час дуже подобались курси Stanford University в записі на ютуб. Наповнення там глибше, ніж на Coursera і дивилась я ті лекції з величезним дитячим захопленням. Раджу глянути в записі CS231n аби відчути, що таке подача матеріалу в топовому університеті світу.
6. Інженерні навички для ML
Ваша
Для цього вам знадобляться інженерні навички:
- API (FastAPI, Flask) — щоб вашу модель могли викликати як сервіс, а не запускати вручну.
- Docker — аби все працювало стабільно незалежно від середовища. Без контейнеризації деплой може перетворитися на пекло.
- MLflow, Weights & Biases — допоможуть трекати експерименти, бо без цього ви швидко загубитеся серед версій, гіперпараметрів і датасетів.
- Моніторинг моделей — навіть якщо модель була чудовою на старті, в продакшені вона може деградувати. Моніторинг рятує від таких сюрпризів.
- CI/CD для ML — щоб усе оновлювалося автоматично, без зайвих ручних запусків.
- Основи Kubernetes — масштабування моделей і керування ресурсами. На старті не критично, але на рівні Middle точно знадобиться.
Навіщо це все, легко розібрати на конкретному прикладі.
Уявіть: ваш алгоритм покращує рекомендації товарів в Amazon. Без належної інженерної обгортки він залишиться просто кодом на локальному ноутбуці. А з правильним підходом — реально впливатиме на бізнес.
Тут я все освоювала на практиці. Інженерії ставало все більше впродовж мого розвитку в Data Science. Я працювала в різних проєктах, де був і highoad, і необхідність обробляти сотні тисяч товарів, і потреба віддавати результати в real-time. Вигадували з командою кастомні рішення, помилялись, вчились. Ще я часто відвідувала доповіді на
7. Робота з базами даних і SQL
Дані в реальних проєктах зберігаються в базах, а не в CSV-файлах. Тому SQL — це must-have. Так, ChatGPT вміє писати SQL-запити. Але робить це не завжди оптимально, правильно і точно не врятує вас на live-інтерв’ю чи під тиском дедлайнів. Тому краще навчитися працювати з базами самостійно.
Що варто знати:
- SQL на рівні складних запитів: підзапити, агрегації, віконні функції, CTE;
- оптимізація запитів — щоб не чекати їх виконання годинами;
- основи проєктування баз даних — як вони зберігаються та як це впливає на їх обробку;
- робота з великими даними — базове знайомство зі Spark та BigQuery, бо з величезною ймовірністю дані просто не влізуть у ваш ноутбук.
Навіть найкраща модель не запрацює, якщо ви не зможете дістати й підготувати для неї потрібну дату.
Основи роботи з базами даних були у нас в КПІ на бакалавраті. Там я дізналась про нормальні форми і як будувати реляційні бази даних. SQL освоювала на практиці, працюючи з аналітиком. Впевнено почала почуватись десь за пів року.
Якби концентровано тренувалась — було б в рази швидше, але не було часу, бо я поєднувала роботу аналітиком з навчанням в університеті. В магістратурі у нас були розділи по роботі з розподіленими БД, з noSQL базами, та це теж було корисно, хоча і врешті ці знання частіше ставали в пригоді на співбесідах. Безпосередньо в роботі я використовувала вже готові бази, аби був налагоджений алгоритм наповнення баз і достатньо знань SQL та Python, щоб виконувати успішно задачі.
8. Робота з мовними моделями (LLM)
Навіть якщо ви не працюєте напряму з NLP, великі мовні моделі (LLM) вже стали невіддільною частиною
Що варто знати:
- Базові архітектури — Transformer, self-attention, embeddings.
- Prompt Engineering — як правильно ставити запитання моделі, щоб отримувати адекватні відповіді.
- Робота з OpenAI API, Hugging Face, open-source LLM (Llama, Mistral та інші).
- Fine-tuning та instruction tuning — коли та навіщо їх застосовувати.
- Адаптація LLM під бізнес-задачі — генерація текстів, класифікація, пошук, аналіз даних.
- Інтеграція в продукти — AI-сервіси, чат-боти, автоматизовані системи.
LLM — це вже не «хайп», а стандартний інструмент для аналітики, автоматизації та створення
На мій погляд, мовні моделі — це так неймовірно цікаво, що їх прям хочеться освоювати самостійно просто читаючи новини і пейпери, на які в них посилаються. Я так і занурювалась в тему. Переглядала також різні курси в deeplearning.ai. Зараз ще є чудові курси по LangGraph та LangChain — популярні нині інструменти по роботі з мовними моделями.
9. Комунікаційні навички та взаємодія з бізнесом
Технічні знання — це лише половина успіху
Щоб стати саме таким профі, вам знадобиться:
- Говорити з бізнесом зрозумілою мовою — формули мало кого цікавлять, усім важливо, як алгоритм збільшить прибуток, зменшить витрати чи покращить продукт.
- Переводити бізнес-вимоги в
ML-задачі — зрозуміти, що саме потрібно вирішити, і як це можна зробити за допомогою ML. - Грамотно доводити результати — графіки, метрики, звіти мають бути чіткими та відповідати на конкретні питання.
- Працювати в команді —
ML-фахівці майже ніколи не працюють у вакуумі, завжди є взаємодія з аналітиками, інженерами, продактами, дизайнерами.
Скільки б ви не знали про ML, якщо не вмієте пояснити свою модель і показати її цінність, кар’єрне зростання буде складнішим.
Тут найбільше допомагає психотерапія і робота з коучем :) На мій погляд, всі конфлікти і непорозуміння в команді — через те, що хтось з учасників процесу недолікував свої дитячі травми. Можливо жорстко — але хіба можна це заперечити? Зараз я вважаю, що обовʼязок кожної людини, яка хоче бути успішною — навчитись керувати своїми емоціями, відвідувати психотерапевта раз на тиждень, працювати над емоційним інтелектом і нейропластичністю. Це взагалі інвестиції ресурсів на все життя. Навіть якщо потім підете з ІТ і будь-яку іншу сферу — викладати танці чи робити власний ІТ-бізнес — ваше мислення, вміння вести перемовини, делегувати і досягати результатів вас суттєво пришвидшить у порівнянні з іншими початківцями в тих сферах.
10. Англійська мова
Найкращі курси, статті, документація та дослідження в ML — англійською. Без неї буде складно розібратися в нових підходах та працювати з міжнародними командами. Фахівці з хорошою англійською зазвичай заробляють більше, бо працюють з іноземними клієнтами.
Перекладачі — це добре, але доносити власні ідеї, розуміти коментарі менеджера або швидко розбиратися з новими інструментами доведеться самостійно.
Що допоможе:
- Google Translate Chrome Extension для швидкого перекладу документації.
- Автогенеровані субтитри на YouTube для навчальних відео.
- Мета — B1/B2 — цього рівня знання мови достатньо для комфортної роботи та розвитку кар’єри.
І бонус: крута англійська — це не лише про роботу. Це ще й можливість комфортно подорожувати, працювати на міжнародні компанії та брати клієнтів з усього світу.
Я вчила англійську з першого ласу. Між п’ятим та одинадцятим класами у мене в гуманітарній гімназії було п’ять уроків англійської на тиждень. Тому випустилась зі школи я із В2, але не зовсім впевненим. Чому невпевненим? Я не вміла читати книжки англійською, профільні технічні статті, слухати й розуміти музику, дивитись фільми. Але могла добре розмовляти. В КПІ англійська була слабенька і мій рівень дещо просів.
Тоді я пішла в школу SpeakUP і загалом задалась ціллю нарешті досягнути впевненого В2. Досягла. І фільми тепер дивлюсь лише в оригіналі. Зараз мій рівень тримається сам по собі, бо я постійно взаємодію з англійською: статті, відео, написання дописів, комунікація з іноземними колегами та замовниками, проведення виступів англійською. Практика — наше все.
Що далі
Шлях у машинне навчання непростий, але кожен крок — це інвестиція у вашу кар’єру. Навички, які ви освоюєте в процесі, — це ваш квиток до роботи у великих технологічних компаніях, де створюють інновації.
Як ви вже помітили, одне лише навчання моделей не зробить вас сильним фахівцем. Потрібні й інші компетенції: програмування, аналіз даних, математика, деплоймент, комунікація. Саме вони допоможуть вам впевнено почуватися у складних реальних проєктах.
Планую продовжити серію й розповісти про кар’єрний розвиток у ML:
- як виглядає кар’єра в цій сфері на практиці;
- чим відрізняються Junior, Middle та Senior-спеціалісти;
- які варіанти розвитку після Senior: технічні та менеджерські.
Буду рада вашим відгукам і коментарям!
42 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів