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

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

Наборы данных и машинное обучение

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

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

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

Каковы некоторые из обычно используемых наборов данных с открытым исходным кодом?

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

Наборы данных Kaggle

Kaggle - это сообщество машинного обучения, которое предоставляет доступ к более чем 19 тыс. Общедоступных наборов данных и 200 тыс. Общедоступных блокнотов Jupyter. Когда вы подписываетесь на Kaggle, вы также получаете доступ к бесплатным ресурсам GPU и большой поддержке сообщества.

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

Репозиторий машинного обучения UCI

Репозиторий машинного обучения UCI - это общедоступный репозиторий наборов данных, которым владеет и управляет Калифорнийский университет в Ирвине. В настоящее время он содержит 497 наборов данных, доступных для загрузки.

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

Поиск по набору данных Google

Google Dataset Search - это поисковая машина для общедоступных наборов данных. Он работает аналогично Google Scholar и позволяет находить наборы данных по ключевым словам. Он включает наборы из издателей, электронных библиотек и личных страниц.

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

Наборы данных с открытым исходным кодом для машинного обучения: проблемы и решения

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

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

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

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

Отсутствие целостности данных

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

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

Отсутствие стандартов данных

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

Проблемы конфиденциальности

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

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

Лучшие практики управления данными для машинного обучения

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

  • Определите условия набора данных. Постарайтесь заранее определить, как часто нужно обновлять набор данных. При использовании данных с открытым исходным кодом может быть непрактично пытаться передавать данные из живых источников, что означает, что вам нужно выделить время, чтобы периодически получать обновления, обрабатывать данные в соответствии с вашим текущим использованием и интегрировать их в свой набор.
  • Учитывайте требования к тестированию моделей. При тестировании на соответствие модели вам часто приходится вносить многочисленные корректировки в наборы данных. Это намного проще, если у вас есть доступ к истории попыток других, поскольку вы можете сузить свои собственные усилия. Вам также необходимо отслеживать любые вносимые вами изменения, чтобы при необходимости можно было вернуться к предыдущим версиям.
  • Централизовать процессы обработки данных. Независимо от источника ваших данных, вам необходимо убедиться, что они остаются доступными для ваших обучающих и производственных конвейеров. Проще всего это сделать, когда вы храните, обрабатываете и отслеживаете данные централизованно (например, в озере данных). Эта централизация также упрощает для команд совместную работу по тестированию и обучению моделей, поскольку все участники имеют доступ к одним и тем же ресурсам, включая усилия друг друга.

Заключение

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

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

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

Независимая редакция, Heartbeat спонсируется и публикуется Comet, платформой MLOps, которая позволяет специалистам по обработке данных и группам машинного обучения отслеживать, сравнивать, объяснять и оптимизировать свои эксперименты. Мы платим участникам и не продаем рекламу.

Если вы хотите внести свой вклад, отправляйтесь на наш призыв к участникам. Вы также можете подписаться на наши еженедельные информационные бюллетени (Deep Learning Weekly и Comet Newsletter), присоединиться к нам в » «Slack и подписаться на Comet в Twitter и LinkedIn для получения ресурсов, событий и гораздо больше, что поможет вам быстрее и лучше строить модели машинного обучения.