Data Science - це наука про методи аналізу даних і вилучення з них цінної інформації, знань. За останні десять років ми вита робили більше даних, ніж за весь час до цього. Тому нам потрібно аналізувати ці дані і знаходити закономірності за допомогою методів Machine Learning. На кафедрі Комп'ютерних наук ми намагаємося опанувати даною технологією.
Якими навичками повинен володіти початківець Data Scientist?
Data Scientist повинен поєднувати, як знання в області математики, розробки програмного забезпечення (програмування, алгоритми і багато іншого) так і розуміння особливостей сфери проекту, наприклад BioMedical, Finance, Cybersecurity.
Початківцю Data Scientist-у варто мати 4 основних навичок:
1. B Machine Learning і Deep Learning потрібно розібратися з основними моделями і алгоритмами, які завдання вони вирішують і також бібліотеки і фреймворки, які використовуються для цього:
2. * (Бажано) DevOps при прийомі на першу роботу в цій сфері ви можете знати основи docker, docker-compose і трохи про CI / CD, навіщо він потрібен і спробувати, наприклад Travis або Gitlab CI. Але краще заглибитися в цю тему, тому що вона є дуже корисною.
Як і де вивчити все вище перераховане?
Python
Для початку буде достатньо базового курсу з DataCamp або навіть CodeAcademy, курс по структурам даних можна подивитися тут, також рекомендую розібратися з основами REST і бібліотекою flask.
GIT
Розібратися з git допоможе практика і ось цей сайт.
SQL
Потрібно мати базовий рівень SQL, тому пройдіть курс від w3schools, також є варіант від DataCamp. Звичайно ж, попрактикуйтесь самі з СУБД, наприклад MySQL і PostgreSQL.
Також подивіться NoSQL БД, тому що в деяких випадках не потрібні зв'язки між полями і буде досить MongoDB.
Математика
Всі теми з математики охоплені в курсах на ресурсі mathprofi, також можете подивитися курси на stepik або ж знайти собі книги, за якими ви будете розбиратися з перерахованими темами вишмата.
DevOps
Основи docker можна вивчити в цьому відео або на цьому сайті, а про CI / CD з допомогою Gitlab CI ви можете почитати тут.
А що на рахунок вивчення ML і DL?
Приступати до вивчення ML варто після того, як ви вже знаєте Python, GIT, SQL і університетський курс вишмата. Як на мене, одним найкращих варіантів є mlcourse.ai від ODS Community, в яке ви можете вступити заповнивши цю заявку, щоб оточити себе однодумцями і бути в курсі останніх новин.
З курсів по Deep Learning можна пройти dlcourse.ai, який є більш загальним або ж подивитися записи курска який проводила компанія Rails Reactor влітку 2019. Або ж можна пройти більш цілеспрямовані курси від Стенфордського університету, наприклад cs231n по Computer Vision или cs224N по NLP.
Deep Learning фреймворки можна вивчати по курсам на Youtube, Udemy, Udacity, але як на мене більш ефективний спосіб це вивчати їх на практиці, за допомогою офіційний Jupyter Notebooks або туторіали. Особисто я віддаю перевагу PyTorch, але ви можете почати з TensorFlow або розібратися і з ним.
Також, варто читати книги по DS і ML, від себе можу порекомендувати:
Нетехнічні навички (не обов'язкові, але дуже допомагають):
Корисні ресурси
Михайло Шелег, студент групи КНД-21