Автор оригинала: Frederico Guerra.
Обо мне
Я специалист по данным, который любит создавать продукты данных для решения проблем. В настоящее время я работаю вместе с профессионалами из разных слоев общества, чтобы обеспечить новые аналитические идеи в отрасли. Я хотел бы объединить свою страсть к открытым данным, чтобы продолжать вносить свой вклад в изменение жизни людей в лучшем и аналитическом мире.
Проблема, которую я хотел решить
Один клиент обратился ко мне, чтобы помочь ему построить прибыльную модель машинного обучения для прогнозирования результатов матчей за теннисным столом на основе исторических данных. После начала проекта я заметил, что проблема была больше, чем ожидалось, потому что предоставленные данные, которые были собраны до использования веб-скребка, не были достаточно надежными, чтобы обучить хорошую модель.
Что такое модель машинного обучения для прогнозирования спортивных результатов?
Учитывая это я предложил разделить проект на 3 основных спринта:
- Соберите данные снова, но на этот раз с помощью надежного API.
- Сделайте еще раз все преобразования данных и очистку.
- Разверните надежную предписывающую модель и автоматизируйте ее.
Технический стек
Прежде всего, я выбрал Python в качестве языка для проекта, так как python предоставляет множество библиотек и документации для поддержки любых проблем во время этого этапа. Я разработал проект с помощью Google Colab из-за возможности делиться и объяснять каждый шаг своим клиентам с учетом прозрачности для него. Основными используемыми библиотеками были:
- запросы
- панды
- numpy
- склеарн
Для визуализации данных:
- Таблица
Процесс построения модели машинного обучения для прогнозирования спортивных результатов
Для процесса сбора данных я использовал библиотеку запросов, называемую необходимыми данными на основе идентификатора лиг, с которыми мой клиент хотел работать. Эти вызовы API возвращали, как и ожидалось, данные формата json, которые я легко преобразовал в табличный формат с помощью Pandas. В конце сбора данных я гарантирую более 200 тысяч качественных данных для разработки нашей прогностической модели результатов матчей за теннисным столом. Задача была решена на основе бинарной классификационной модели машинного обучения, поскольку каждая игра должна иметь только две возможности для каждого игрока: Выигрыш или проигрыш.
Проблемы, с которыми я столкнулся
Основными проблемами, с которыми я столкнулся в этой проблеме, был тот факт, что в самом начале у меня не было хороших качественных данных, и мне потребовалось несколько дней, чтобы понять это. Еще одна хорошая проблема, с которой я столкнулся, заключалась в том, что я не мог оценить модель нормально как проблему классификации, используя основные показатели, такие как точность, кривая ROI, точность и отзыв. Основным показателем, который указывал на успех модели, был RoI (Return of Investment) в долгосрочной перспективе.
Ключевые уроки
Однако это помогло мне понять, что некоторые проекты не могут быть решены с использованием известных и наиболее часто используемых метрик во многих задачах машинного обучения.
Советы и рекомендации
Этот проект также помог мне узнать все этапы проекта data science, начиная со сбора данных и заканчивая развертыванием моделей и оказанием помощи нашим клиентам. Это очень важно для любого специалиста по данным, который хочет иметь хорошую перспективу в отношении проекта по науке о данных. Вы должны рассмотреть возможность решения соответствующей проблемы, просто не заботясь о построении модели, но и работая над сбором данных, полностью погружаясь в проблему и потребности клиента в обработке и преобразовании данных, чтобы иметь хорошие результаты для представления.
Заключительные мысли и следующие шаги
Сейчас я изучаю мир классификации изображений, изучая специализацию Глубокого обучения Эндрю Нга из Coursera, которая очень рекомендую его и ожидаю использовать эти новые навыки для предоставления решений проблем глубокого обучения моим клиентам.