Русский
Русский
English
Статистика
Реклама

Заметки Дата Сайентиста с чем начать и нужно ли оно?


TL;DR это пост для вопросов/ответов про Data Science и о том, как войти в профессию и развиваться в ней. В статьей я разберу основные принципы и FAQ и готов отвечать на ваши конкретные вопросы пишите в комментариях (или в личке), я постараюсь на все ответить в течение нескольких дней.
С появлением цикла заметок дата сатаниста пришло немало сообщений и комментариев с вопросами о том, как начать и куда копать и сегодня мы разберем основные скиллы и вопросы возникшие после публикаций.

Все указанное тут не претендует ни какую истину в последней инстанции и является субъективным мнением автора. Мы разберем основные вещи, которые кажутся самыми важными в процессе.

Зачем именно это нужно


Для того, чтобы цель была достижима лучше, чтобы она хоть как-то конкретно выглядела вы хотите стать DS или Research Scientist в Facebook/Apple/Amazon/Netflix/Google смотрите требования, языки и необходимые навыки прям конкретно под какую позицию. Какой процесс найма? Как проходить обычный день в такой роли? Как выглядит усредненный профиль человека, который там работает?

Часто общая картина в том, что человек не очень понимает, что именно хочет и не совсем понятно, как к этому неясному образу готовиться поэтому стоит иметь хотя бы примерный план того, что именно вы хотите.
Конкретизируйте текущее представление цели
Даже, если оно по ходу будет меняться, а это вообще нормально менять планы по ходу пьесы стоит иметь перед собой цель и на нее ориентироваться, периодически оценивая и переосмысливая.

Будет или это еще актуально


К тому моменту, как вы дорастете до позиции.

Представьте, что до вашей позиции вам нужно получить PhD, поработать 2-3 года в индустрии и вообще остричься, медитируя в монастыре не будет ли с Data Science такой же ситуации как когда-то с экономистами и юристами? Не изменится ли все до неузнаваемости в той области, которой вы хотите заниматься.

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

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

К примеру автор и не планировал идти в дата сатанисты, а во время PhD пилил сторонние проекты, которые сильно перекликались по скиллам с DS и по окончанию аспирантуры естественным образом перешел в среду, увидев хорошую позицию.

Если по ходу пьесы окажется, что нужно будет переходить куда-то еще ибо там сейчас самая движуха и все самое интересное действо происходит, ну значит туда и будем переходить естественным образом.

Разбивка навыков


Это условные категории навыков, который мне кажутся ключевыми для полноценной и эффективной работы в DS. Отдельно выделю английский учите, чем бы вы не занимались в CS. Далее будут ключевые категории.

Программирование/Скриптинг


С какими языками обязательно надо познакомиться? Python? Java? Shell scripting? Lua? Sql? C++?

Что именно нужно уметь и зачем в плане программирования тут спектр позиций очень разнится.

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

Поэтому мой набор навыков сильно отличается от тех, кто пишет библиотеку Tensorflow и думает об оптимизации кода под эффективное использование l1 кеша и подобным вещам, поэтому смотрите, что именно нужно вам и оценивайте правильный путь к изучению.

Например, для питона люди уже даже составляют карту изучения языка.

Наверняка под ваши нужды уже имеются советы бывалых и есть хорошие источники надо определиться со списком и начать им заниматься.

Понимание бизнес процессов


Без него никуда: вам нужно понимать зачем вы нужны в данном процессе, что вы делаете и зачем. Часто именно это может сэкономить вам кучу времени, максимизировать свою пользу и не тратить время и ресурсы на фигню.

Обычно, я задаюсь следующими вопросами:

  • Что именно я делаю в компании?
  • Зачем?
  • Кто и как это будет использовать?
  • Какие у меня есть опции?
  • В каких границах находятся параметры?

Тут чуть подробнее про параметры: часто можно сильно изменить сценарий работы, если знать, что чем-то можно пожертвовать: например интерпретируемостью или наоборот, пара процентов тут роли не сыграют и у нас есть оооочень быстрое решение, а клиенту оно и нужно, ибо он платит за время работы пайплайна в AWS.

Математика


Тут вы думаю и сами все понимаете без знания базовой математики вы не более чем бебезьян с гранатой (простите с Random Forest) поэтому нужно понимать хотя бы базовые вещи. Если бы я составлял прям самый минимальный список, то туда бы вошли:

  • Линейная алгебра огромное количество ресурсов легко гуглится, ищите, что вам больше всего подходит;
  • Математический анализ (хотя бы в объеме первых двух семестров);
  • Теория вероятностей она повсюду в машинном обучении;
  • Комбинаторика она фактически комплементарна к теорверу;
  • Теория графов хотя бы БАЗОВО;
  • Алгоритмы хотя бы объеме первых двух семестров (см. рекомендации Кормена в его книжке);
  • Матлогика хотя бы базово.

Практический анализ и визуализация данных


Одна из самых принципиальных вещей уметь не бояться испачкать руки в данных и провести всесторонний анализ датасета, проекта и накидать быструю визуализацию данных.

Exploratory data analysis должен стать просто чем-то естественным, как и все прочие трансформации данных и умение накидать простой пайплайн из unix тузлов (см. предыдущие статьи) или написать читаемый и понятный ноутбук.

Отдельно упомяну визуализацию: лучше один раз увидеть, чем сто раз услышать.

Показать менеджеру график в сто раз проще и понятнее, чем набор цифр, поэтому matplotlib, seaborn и ggplot2 ваши друзья.

Софт скиллы


Не менее важно уметь донести свои идеи, а также результаты и опасения (итд) до окружающих убедитесь, что вы умеете четко изложить задачу как в технических, так и бизнес терминах.

Можете объяснить коллегам, менеджерам, начальству, клиентам и всем, кому требуется, что происходит, какими данными вы оперируете и что за результаты вы получили.

Ваши графики и документация должны читаться без вас. То есть, не нужно идти к вам, чтобы понять, что там написано.

Вы можете сделать понятную презентацию, чтобы донести суть происходящего и/или задокументировать проект/свою работу.

Вы можете аргументированно и безэмоционально донести свою позицию, сказать да/нет или поставить под сомнение/поддержать решение.

Обучение


Есть много разных мест, где можно все этому научиться. Я приведу краткий список я пробовал из него все и, честно скажу, у каждого пункта есть свои плюсы и минусы. Пробуйте и решайте, что подходит вам, но крайне рекомендую попробовать несколько вариантов и не зацикливаться на одном.

  • Онлайн курсы: coursera, udacity, Edx, etc;
  • Новые школы: онлайн и офлайн SkillFactory, ШАД, MADE;
  • Классические школы: магистерские программы университетов и курсы повышения квалификации;
  • Проекты можно просто выбрать интересные вам задачи и пилить, выкладывая на github;
  • Стажировки тут сложно что-то подсказать, надо искать, что имеется и находить подходящий варианты.

А надо ли оно?


В заключение, пожалуй добавлю три персональных принципа, которым я стараюсь следовать сам.

  • Должно быть интересно;
  • Приносить внутреннее удовольствие (= хотя бы не причинять страданий);
  • Быть вашим.

Почему именно они? Сложно представить, что вы будете чем-то заниматься изо дня в день и вам не будет это нравится или будет неинтересно. Представьте, что вы врач и ненавидите общаться с людьми это конечно может как-то сработать, но вам будет постоянно некомфортно от потока пациентов, которые у вас что-то хотят спросить. Это не работает в долгосрочной перспективе.

Почему я специально упомянул еще внутреннее удовольствие? Мне кажется, это необходимо для дальнейшего развития и в принципе процесса обучения. Я действительно получаю удовольствие, когда мне удается довести до конца какую-то сложную фичу и построить модель или обсчитать важный параметр. Я получаю удовольствие, когда мой код эстетически красив и хорошо написан. Поэтому и изучать что-то новое всего интересно и не требует прямо какой-то существенной мотивации.

Быть вашим это то самое ощущение, что вы примерно этим и хотели заниматься. У меня есть небольшая история. Я с самого детства увлекался рок-музыкой (и металлом ЛОСОСЬ!) и как очень многие захотел научиться играть и вот это вот все. Выяснилось, что у меня нет слуха и голоса меня это совершенно не смущало (а надо сказать многих исполнителей это и прямо на сцене не смущает), и вот еще школьником у меня появилась гитара и стало понятно, что мне не очень нравится часами сидеть и играть на ней. Шло тяжко, мне все время казалось, что выходит какая-то фигня я совершенно не получал от этого удовольствия и только чувствовал себя паршиво, глупо и совершенно неспособным. Я буквально из под палки себя заставлял садиться за занятия и в целом это было не в коня корм.

В то же самое время, я совершенно спокойно мог сидеть часами за разработкой какой-нибудь игрушки, с помощью скрипта анимировать что-то на флеше (или чем-то еще) и меня дико мотивировало доделывать элементы в игре или разбираться с механикой движения и/или подключением сторонних библиотек, плагинов и всего остального.

И в какой-то момент я понял, что игра на гитаре это не мое и реально-то мне нравится слушать, а не играть. А глаза-то горели, когда я писал игры и код (слушая в этот момент всякие разновидности металла) и вот это-то мне тогда и нравилось, и этим мне стоило заниматься.

А еще есть вопросы?


Конечно же мы не смогли пройтись по всем темам и вопросам, так что пишите комменты и в личку я всегда рад вопросам.



Источник: habr.com
К списку статей
Опубликовано: 17.09.2020 14:13:09
0

Сейчас читают

Комментариев (0)
Имя
Электронная почта

Блог компании ruvds.com

Big data

Data engineering

Data mining

Карьера в it-индустрии

Ruvds_статьи

Data science

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru