Эффективное машинное обучение можно проводить в меньших масштабах
Недавно читатель + зритель моего контента связался со мной по поводу машинного обучения и некоторых конкретных проблем / проблем, которые у него возникли в его путешествии по машинному обучению. Он задал мне список вопросов, на все из которых я был рад ответить (он задавал хорошие, хорошо структурированные вопросы). Среди вопросов был конкретный запрос на видео:

Я понял, что это определенно будет интересной темой для меня. Я рассказал о технических деталях машинного обучения, но не слишком много говорю о бизнес-реализации. Особенно для небольших организаций, у которых предел погрешности/экспериментов намного ниже, чем у более крупных фирм. В этой статье я расскажу, как вы можете внедрить машинное обучение в своей небольшой организации. Мы расскажем о процессе, в конце концов, рассмотрим некоторые соображения и проблемы, с которыми вы столкнетесь на пути.
«Привет, Деванш, я только что наткнулся на вашу статью и канал на YouTube, я также изучаю машинное обучение, я хочу связаться с вами, так как считаю, что вы тот человек, который поможет мне в моем путешествии по машинному обучению».
— Точное сообщение, которое он мне прислал
Как человек, который был связан с небольшими организациями, крупными транснациональными корпорациями и всем, что между ними (включая участие в растущем стартапе), я дам вам точку зрения с разных сторон. Если у вас есть опыт в этой области, обязательно поделитесь им в комментариях ниже. В этой статье я сосредоточусь больше на процессе, чем на технических деталях, потому что технические шаги зависят от контекста и могут быть изучены через Интернет. Это включает в себя определенный блог по машинному обучению, канал YouTube и ежедневный информационный бюллетень по программированию. Не так много хороших ресурсов, рассказывающих о процессе.
Для целей этой статьи я буду использовать пример службы edutech/онлайн-коучинга. Это сделано просто из удобства, а обсуждаемые принципы универсальны.
Шаг 1. Определите область своей проблемы/решения
Это кажется тривиальным, но на самом деле это не так. При определении ваших проблем важно уточнить несколько деталей. Где бы вы могли получить возможные источники данных? Есть ли у клиента набор данных, который он хочет проанализировать, или вам придется выяснить особенности? Первый более прост (скоро создам для него видео о моем любимом пайплайне). Для последнего варианта вам нужно будет провести много исследований предметной области. Допустим, вы хотели определить, какие клиенты могут уйти, основываясь на их поведении. Посмотрите, какие функции используются в разных отраслях. Поговорите с несколькими экспертами в своей области, чтобы узнать, какие функции могут быть актуальны и как вы можете связать эти функции с доменом edutech.

Еще один важный вопрос касается финансов. Каков ваш план прибыльности? Например, вы могли бы создать фирму, которая занимается всеми процессами, от сбора данных до рекомендаций. Это требует более значительных инвестиций, но даст вам массу опыта в этой области. Это также позволит вам обратиться к организациям и показать им, как именно вы можете помочь. Для такой установки вам нужно будет организовать первоначальную часть наличных денег в качестве взлетно-посадочной полосы, пока вы не достигнете прибыльности. Эти деньги могут поступать от кредитов, инвесторов или личных сбережений. Каждый из этих методов имеет свои плюсы и минусы, поэтому обязательно изучите каждый и решите, что лучше всего подходит для вашей ситуации.
Когда я обычно работал с небольшими организациями, я поручал организации заниматься сбором данных. Я проводил исследование предметной области, говорил им, что им нужно собрать, а затем работал с этими данными. Такой подход избавит вас от многих головных болей. Этот подход сработал для меня, потому что я использовал эти небольшие проекты для развития своего опыта и реализации более крупных проектов. Любой подход будет работать очень хорошо для вас.
Одним из наиболее важных аспектов, который вы хотите охватить при внедрении для небольших организаций, является установка минимальных базовых показателей. Существует большая вероятность того, что у вашего проекта закончатся средства/ресурсы, прежде чем вы сможете опробовать все свои идеи. Вы хотите спланировать это событие. Каковы минимально приемлемые результаты? Как будет выглядеть компенсация? Другие аранжировки. Эти разговоры могут быть неловкими, но их необходимо провести до того, как в проект будет вложено значительное количество времени, энергии и ресурсов.
Шаг 2: Создание пайплайна
Следующий шаг — создание конвейера машинного обучения. Создание надежного конвейера очень важно, потому что это поможет вам интегрировать различные политики вменения, протоколы обучения моделей и другие источники дисперсии.

При разработке конвейера убедитесь, что вы используете очень усеченную версию набора данных. Это сэкономит вам много времени при тестировании вашего пайплайна. Целью на данном этапе НЕ является проведение анализа. Это просто для того, чтобы убедиться, что ваш конвейер работает. Посмотрите это видео для проекта, который даст вам навыки, необходимые для построения этих трубопроводов. Скоро я сниму видео, в котором расскажу о деталях такого пайплайна, так что не забудьте подписаться
Шаг 3: Метод проб и ошибок
Далее идет несексуальная часть этого процесса. Вам нужно будет сделать много проб и ошибок. После того как вы запустите воронку на своих полных наборах данных, вам придется просмотреть массу отчетов. Понимание различных политик вменения данных и других движущихся частей и оценка их влияния на наборы данных. Вы обнаружите самые странные вещи.
Одна из вещей, которую вы заметите, это то, что вам придется сбросить множество функций. Вам придется протестировать и отбросить многие из них. Каждый раз, когда ваш набор данных изменяется, вам придется перезапускать конвейер. Это одна из причин, по которой я рекомендую людям использовать модели меньшего размера. В этом постоянном процессе перестроения и итераций вы, скорее всего, не сможете позволить себе использовать дорогостоящие модели.
Метод проб и ошибок также даст вам представление о коде и процессах, что позволит вам создавать и расширять свои решения для точной настройки специфики.
Шаг 4: Развертывание
Как только ваше теоретическое решение заработает, пришло время применить его на практике. Часто вы сталкиваетесь с некоторыми проблемами при интеграции источников данных в конвейеры, чтобы полностью автоматизировать весь процесс. В зависимости от домена и характера используемых функций вам может потребоваться настроить протоколы переобучения и мониторинга функций.
Последние мысли
Очевидно, что настройка решений для машинного обучения для небольших организаций может быть деликатной операцией. Им часто не хватает большого количества ресурсов, которые позволяют выполнять более крупные операции с данными, воспоминания и анализ. К счастью, вы можете смягчить это, потратив много времени на Шаг 1, действительно разбивая компоненты.
Что приятно, так это то, что хороший личный проект очень похож на эту статью по масштабу и работе. Вот почему я рекомендую абсолютным новичкам использовать реальные данные для создания своих проектов машинного обучения. Опыт проведения тщательного анализа предметной области, определения функций и процедур и создания всех элементов конвейера машинного обучения будет иметь решающее значение.
Чтобы по-настоящему преуспеть в машинном обучении, решающее значение будет иметь база в области разработки программного обеспечения. Они помогут вам концептуализировать, построить и оптимизировать машинное обучение. Мой ежедневный информационный бюллетень Простые интервью по кодированию охватывает темы разработки алгоритмов, математики, последних событий в области технологий, разработки программного обеспечения и многого другого. Расписание можно посмотреть здесь

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

Вы можете посмотреть мои статьи и обзоры других успешных студентов, чтобы узнать больше историй успеха и подробных советов по достижению успеха.
Чтобы помочь мне лучше писать статьи и понять вас, заполните этот опрос (анонимно). Это займет максимум 3 минуты и позволит мне улучшить качество моей работы.
Не стесняйтесь обращаться, если у вас есть какие-либо интересные работы/проекты/идеи для меня. Всегда рад вас выслушать.
Для денежной поддержки моей работы следуют мои Venmo и Paypal. Любая сумма приветствуется и очень помогает. Пожертвования открывают эксклюзивный контент, такой как анализ бумаги, специальный код, консультации и специальные тренировки:
Венмо: https://account.venmo.com/u/FNU-Devansh
Paypal: paypal.me/ISeeThings
Свяжитесь со мной
Воспользуйтесь ссылками ниже, чтобы ознакомиться с другим моим контентом, узнать больше о репетиторстве или просто поздороваться. Кроме того, ознакомьтесь с бесплатной реферальной ссылкой Robinhood. Мы оба получаем свободный сток (денег вкладывать не надо), и никакого риска для вас нет. Таким образом, если вы не используете его, вы просто потеряете бесплатные деньги.
Ознакомьтесь с другими моими статьями на Medium. : https://rb.gy/zn1aiu
Мой Ютуб: https://rb.gy/88iwdd
Свяжитесь со мной в LinkedIn. Подключаемся: https://rb.gy/m5ok2y
Мой Инстаграм: https://rb.gy/gmvuy9
Мой Твиттер: https://twitter.com/Machine01776819
Если вы готовитесь к программированию/техническим интервью: https://codinginterviewsmadesimple.substack.com/
Получите бесплатный сток на Robinhood: https://join.robinhood.com/fnud75
Запланируйте сеанс DDIChat в Data Science / AI / ML / DL:
Подайте заявку на участие в программе DDIChat Expert здесь.
Работайте с DDI: https://datadriveninvestor.com/collaborate
Подпишитесь на DDIntel здесь.