Я смотрю на машинное обучение через призму разработчика программного обеспечения.

Привет и добро пожаловать в мой уголок @ Medium! Желаю вам счастливого нового года!

Меня зовут Сатиш Чандра Гупта, я программист.

Я соучредитель компании Slang Labs, где мы создаем первый в мире Голосовой помощник как услуга (VAaaS).

До Slang Labs я работал в Amazon, Microsoft Research и IBM (Rational Software).

В Medium я пишу о машинном обучении с точки зрения практика и делюсь своим опытом и знаниями, полученными при создании приложений для данных. Я также публикую информационный бюллетень Машинное обучение для разработчиков (ML4Devs).

В прошлой жизни я создавал профилировщики, компиляторы, инструменты анализа программ и IDE.

Я вырос в промышленном городке Канпур (Индия) на берегу реки Ганг. Я изучал химическую инженерию (со специализацией в области вычислительной техники) на первом курсе и получил степень магистра. в области компьютерных наук.

Когда я не спорю с данными, мне нравится читать и писать стихи на хинди и ходить в походы по высокогорью Гималаев.

Мои 5 самых популярных статей на Medium

За последние два года (2020 и 2021) я написал всего 14 статей на Medium. Пять из них набрали 19–155 тысяч просмотров и 100–550 просмотров, что неплохо, учитывая очень скромное количество моих подписчиков, всего 956 на 1 января 2022 года. В этом году я планирую писать более регулярно.

Масштабируемая эффективная архитектура конвейера больших данных в облаке



12 способов применить функцию к каждой строке в Pandas DataFrame



База данных SQL против базы данных NoSQL: когда использовать, как выбрать



10 лучших языков программирования на 2022 год



Микросервисы Python: выбор, ключевые концепции и настройка проекта



Список моих статей на Medium

Создание успешных продуктов машинного обучения или функций продукта требует объединения 5 дисциплин (продукт-данные-ML-dev-ops):

  • Продукт. Дизайн продукта и управление им охватывают весь спектр вопросов: определение потребностей пользователей и бизнеса, проектирование взаимодействия с пользователем (включая неявный или явный сбор отзывов об использовании функций с поддержкой машинного обучения), определение бизнеса. показатели успеха и руководство на всем пути от концепции до реализации. Это одна из самых сложных частей и ключ к успеху функции/продукта с помощью машинного обучения. К сожалению, его часто игнорируют.
  • Данные. Data Engineering занимается сбором, отбором, хранением и управлением необходимыми данными в любом масштабе (т.н. большими данными). Как объяснила Моника Рогати в Иерархии потребностей науки о данных, проектирование данных охватывает первые 2 уровня (из 6) пирамиды. В отчете Anaconda State of Data Science 2021 говорится, что добрых 39% усилий уходит на очистку и подготовку данных (стр. 14). Без качественных данных нет машинного обучения. А без прочной основы Data Engineering нет продукта ML. Конвейеры данных — это железные дороги, по которым курсируют тяжелые и чудесные вагоны машинного обучения.
  • ML: спектр анализа данных, науки о данных и машинного обучения, который охватывает разработку статистических/вероятностных моделей по сравнению с традиционными детерминированными алгоритмами/программами. В ML данные — это логика, а некоторые функции продукта реализованы с помощью статистических моделей.
  • Разработка. Разработчики органично встраивают модель машинного обучения в остальную часть продукта и непрерывно разрабатывают, тестируют и развертывают код для достижения бизнес-целей. Они применяют строгие принципы разработки программного обеспечения для проектирования, разработки, тестирования, оценки и обслуживания программных систем. Они масштабируют модель для массового потребления.
  • Ops: Operations (DevOps или DevSecOps) — это дисциплина непрерывной интеграции и непрерывной доставки/развертывания (CI/CD). В случае ML это становится CT/CI/CD: непрерывное обучение модели, интеграция и доставка/развертывание. Цель состоит в том, чтобы автоматизировать процесс обучения моделей, интегрировать и упаковать их в программные сервисы (как правило, контейнеры докеров), развернуть их в облаке, отслеживать их производительность в производственной среде (например, выявлять дрейф концепции/данных), запускать оповещения в случае возникновения проблем. , запуская откаты или переобучение по мере необходимости.

Вот список моих опубликованных статей:

[Данные] Дата Инжиниринг

[ML] Машинное обучение

[Разработка] Программная инженерия

[ML4Devs] Машинное обучение для разработчиков — информационный бюллетень раз в две недели