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

открытый источник GitHub
10 начальных проектов машинного обучения с открытым исходным кодом для программистов

Сегодня мы собираемся представить 10 проектов машинного обучения с открытым исходным кодом, подходящих для начинающих программистов ИИ. Чтобы начать участвовать в проекте с открытым исходным кодом, необходимо выполнить некоторые предварительные условия:

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

2. Знакомство с системами контроля версий: эти программные инструменты помогают хранить все изменения в одном месте, чтобы их можно было отозвать на более позднем этапе, когда это необходимо. По сути, они отслеживают каждую модификацию исходного кода с течением времени. Некоторые из популярных систем контроля версий — Git, Mercurial, CVS и т. д. Среди них Git является наиболее популярным и широко используемым в отрасли.

1. Caliban

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

程序员10 个入门级的机器学习开源项目

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

2. Kornia

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

程序员10 个入门级的机器学习开源项目

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

3. Analytics Zoo

Analytics Zoo — это унифицированная платформа для анализа данных и искусственного интеллекта, которая объединяет программы TensorFlow, Keras, PyTorch, Spark, Flink и Ray в один интегрированный конвейер. Это может эффективно масштабироваться от ноутбуков до больших кластеров для обработки больших данных. Этот проект поддерживается Intel-аналитикой.

Analytics Zoo помогает решениям ИИ:

  • Помогает легко прототипировать модели ИИ.
  • Масштабирование эффективно управляется.
  • Помогает добавлять в конвейер машинного обучения автоматизированные процессы, такие как разработка функций, выбор модели и т. д.

4. MLJAR Автоматизированное машинное обучение человека

Mljar — это платформа для создания прототипов моделей и развертывания сервисов. Чтобы найти лучшую модель, Mljar ищет различные алгоритмы и выполняет настройку гиперпараметров. Он обеспечивает интересные быстрые результаты, выполняя все вычисления в облаке и в конечном итоге создавая ансамблевую модель. Затем он создает отчет по обучению AutoML. Разве это не круто?

程序员10 个入门级的机器学习开源项目

Mljar эффективно обучает модели для бинарной классификации, многоклассовой классификации, регрессии.

Он предоставляет два интерфейса:

  • Он может запускать модели ML в вашем веб-браузере.
  • Предоставляет оболочку Python для Mljar API.

程序员10 个入门级的机器学习开源项目

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

5.DeepDetect

DeepDetect — это API машинного обучения и сервер, написанный на C++. Если вы хотите использовать самые современные алгоритмы машинного обучения и хотите интегрировать их в существующие приложения, тогда DeepDetect для вас.

程序员10 个入门级的机器学习开源项目

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

  • Библиотеки глубокого обучения: Tensorflow, Caffe2, Torch.
  • Библиотека повышения градиента: XGBoost.
  • Кластеризация с использованием T-SNE.

6. Dopamine

Dopamine — это проект с открытым исходным кодом от технологического гиганта Google. Он написан на Питоне. Это исследовательская структура для быстрого прототипирования алгоритмов обучения с подкреплением.

Принципы дизайна допамина:

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

7. TensorFlow

Tensorflow — один из самых известных, популярных и наиболее часто используемых проектов с открытым исходным кодом в области машинного обучения на GitHub. Это программная библиотека с открытым исходным кодом для численных вычислений с использованием графов потоков данных. У него очень простой в использовании интерфейс Python, и нет интерфейсов, которые не нужны в других языках для построения и выполнения вычислительных графов.

程序员10 个入门级的机器学习开源项目

TensorFlow предоставляет стабильные API-интерфейсы Python и C++. У Tensorflow есть несколько удивительных вариантов использования, таких как:

  • в распознавании речи/звука
  • Приложение текстовой библиотеки
  • Идентификация изображения
  • Обнаружение видео
  • …Есть намного больше!

Когда речь заходит о технологии распознавания изображений и обнаружения видео, мы должны упомянуть технологию ИИ+видео, которая в настоящее время очень популярна в различных областях.Технология обнаружения ИИ и интеллектуальное распознавание интегрированы в различные сценарии видеоприложений, такие как: мониторинг безопасности, обнаружение лиц в видео, Статистика потоков людей, опасное поведение (лазание, падение, толкание и т. д.), обнаружение и идентификация и т. д. Типичным примером является облачный сервис видеообъединения EasyCVR, который имеет ИИ-распознавание лиц, распознавание номерных знаков, голосовую внутреннюю связь, управление PTZ, звуковую и световую сигнализацию, анализ видео наблюдения и возможности агрегации данных.

程序员10 个入门级的机器学习开源项目

8.PredictionIO

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

  • Это помогает быстро создать и развернуть движок как веб-службу на настраиваемых рабочих шаблонах.
  • После развертывания в качестве веб-службы он может отвечать на динамические запросы в режиме реального времени.
  • Он поддерживает библиотеки машинного обучения и обработки данных, такие как OpenNLP, Spark MLLib.
  • Это также упрощает управление инфраструктурой данных.

程序员10 个入门级的机器学习开源项目

9.Scikit-learn

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

程序员10 个入门级的机器学习开源项目

Это построено поверх SciPy, который должен быть предварительно установлен, чтобы можно было использовать sci-kit learning. Так же предлагает следующие модели:

  • Комплексный подход
  • Извлечение признаков
  • Настройка параметров
  • Многообразное обучение
  • Выбор функций
  • Снижение размерности

Примечание. Чтобы изучить scikit-learn, следуйте документации:
scikit-learn.org/stable/

10. Pylearn2

Pylearn2 — самая популярная библиотека машинного обучения среди всех разработчиков Python. Он основан на Теано. Вы можете писать его плагины, используя математические выражения, в то время как Theano нужно оптимизировать и стабилизировать.

程序员10 个入门级的机器学习开源项目

Он имеет некоторые замечательные функции, такие как:

  • «Алгоритм обучения по умолчанию», используемый для обучения самой модели.
  • Критерии оценки модели
  • Счет матча
  • перекрестная энтропия
  • логарифмическая вероятность
  • Предварительная обработка набора данных
  • Нормализация контраста
  • ZCA отбеливание
  • Извлечение патча (для реализации алгоритмов, подобных свертке)