29 Python-проектов, оказавших огромное влияние на разработку
Пишете код на Python? Собрали для вас подборку полезных Python-проектов, которые спасали разработчиков на протяжении 2018 года.
Обожаете программирование на Python? Еще бы: это один из наиболее функциональных, простых и популярных языков программирования. К примеру, сегодня его применяют даже в веб-разработке, а для машинного обучения и анализа данных он стал языком по умолчанию.
Совокупность вышеперечисленных факторов, плюс гибкость и производительность помогают разработчикам по всему миру создавать первоклассные продукты. В этой статье мы собрали список Python-проектов, которые оказали огромное влияние на разработку.
1. Keras
Keras в первую очередь создан для создания прототипов: этому способствует его модульность, удобство использования и расширяемость.
Он поддерживает как рекуррентные, так и свёрточные нейросети, а также их комбинации RNN+CNN.
2. PyTorch
При желании можно использовать пакеты Python, например, SciPy, NumPy и Cython, чтобы расширить возможности PyTorch.
Пакет проектов PyTorch используется либо в качестве замены NumPy для использования функций графических процессоров, либо как платформа для глубокого анализа, обеспечивающая максимальную скорость и гибкость.
3. Scikit-learn
Это многофункциональный, но при этом простой инструмент для анализа данных (data mining). Он был представлен Дэвидом Курнапо на конференции Google Summer of Code в 2007 году и впоследствии доработан программистами-энтузиастами.
Бесплатный проект имеет открытый исходный код и разрешает использование в коммерческих целях.
Разработанный с применением matplotlib и NumPy, он содержит в себе множество эффективных инструментов для статистического моделирования, а также машинного обучения, включая классификацию, кластеризацию, регрессию и снижение размерности. Он также поможет вам в извлечении элементов из текста и изображений.
4. Som-tsp
Репозиторий содержит реализацию самоорганизующейся карты, которую можно использовать для поиска решений проблемы коммивояжера.
5. Theano
6. SimpleCoin
Этот проект может быть интересен тем, кто увлекается блокчейн-технологиями и криптовалютами. Одной из основных возможностей репозитория с тысячей звезд на GitHub является разработка клона Bitcoin.
Он позволяет хранить хэши и обменивать их на любые поддерживаемые валюты. SimpleCoin исключает проблему смены пулов для добычи различных монет или смены майнеров.
7. Gensim
Бесплатная Python-библиотека, основными функциями которой являются анализ простых текстовых файлов на предмет семантической структуры и восстановление семантически связанных файлов.
Эта программа основана на двух пакетах Python: Scipy и NumPy. Целевая аудитория ПО – специалисты по поиску информации (IR) и обработке естественного языка (NLP). Он включает динамическое многоядерное исполнение алгоритмов, таких как:
- Латентное размещение Дирихле (LDA)
- Латентный семантический анализ (LSA / LSI / SVD)
- Иерархический процесс Дирихле (HDP)
- Метод случайных проекций (RP)
- Глубокое обучение word2vec
8. Sentry
Sentry – инструмент для администрирования. Он содержит функции управления и устранения сбоев в режиме реального времени. Поддерживает язык программирования Python, Ruby, Java, JS, iOS, Django, .NET, etc.
Хотя построен он на Python, проект содержит полный API для передачи событий в любом приложении с любого языка. Он наблюдает за ошибками и показывает, когда и где они происходят, что может их вызывать.
9. Pylearn2
10. Cookiecutter
Это утилита командной строки, которая создает проекты из cookiecutters, например, проекты пакетов Python, проекты плагинов jQuery. Официально совместим с платформами Mac, Windows и Linux, поддерживает Python 3.4, 3.5, 3.6, 2.7 и PyPy.
11. Python-fire
Это библиотека от выходцев из команды Google Brain с более чем 13 тысячами звёзд на GitHub. Предназначена для автоматического создания интерфейсов командной строки из любого объекта Python.
Это ценный инструмент для генерации и отладки кода Python. Просто напишите функцию, модуль или класс, который нужно найти в строке, и вызовите Fire. Это расширение подготовит ваш CLI к работе.
12. Detectron
Фреймворк от команды Facebook AI Research лучше остальных выполняет задачу обнаружения объектов, включая маску R-CNN. Создан на языке Python с применением Caffe2.
13. Multidiff
Если у вас были проблемы с объектами и структурами данных, тот этот инструмент для вас. Его цель − сделать понятные для машины данные более понятными для людей, которые их анализируют.
В частности, Multidiff помогает просматривать различия в большом наборе объектов, разделяя и отображая в удобном для человека формате. Этот вид визуализации удобен при поиске шаблонов и структуры в проприетарных протоколах или в необычных форматах файлов.
К примеру, может использоваться для обратного инжиниринга и анализа двоичных данных.
14. Rebound
15. Chainer
Основанная на Python система с открытым исходным кодом для моделей глубокого обучения. Она представляет собой интуитивно понятные, адаптируемые и элитные методы для выполнения полного спектра процессов глубокого обучения, в том числе вариационные автоэнкодеры (VAE) и рекуррентные нейронные сети.
16. Statsmodels
Это модуль Python, который позволит оценивать статистические модели, исследовать данные и выполнять статистические тесты. Содержит широкий перечень описательных инструментов, функций построения графиков, статистических тестов и результатов для различных типов данных.
17. WhatWaf
Это один из известных Python-проектов, который помогает обходить ограничения защитных систем веб-приложений.
18. Flask
Flask − микрофреймворк для разработки веб-приложений. Доступный набор функций и возможности для масштабирования делают его привлекательным для Python-проектов.
19. Nilearn
Это модуль Python для быстрого обучения на базе данных нейровизуализации. Он использует набор инструментов Python scikit-learn для многовариантного анализа приложений, например, классификации, прогнозного моделирования, анализа связности или декодирования.
20. Pipenv
Инструмент предназначен для того, чтобы предлагать разработчикам и пользователям приложений простую стратегию настройки рабочей среды. Содержит такие важные вещи, как composer, bundler, npm, yarn, load и другие.
21. TensorFlow Models
22. Mask R-CNN
23. Snallygaster
Must-have для поиска скрытых файлов на веб-серверах, которые могут представлять угрозу безопасности. Обычно используется для обнаружения конфиденциальной информации или утечки данных. Целевая аудитория − специалисты по безопасности, разработчики и системные администраторы. Среди типов файлов, которые может обнаружить сервис, − резервные копии, состояние Apache, файлы конфигурации, Git, закрытые SSH-ключи, веб-оболочки, SVN.
24. spaCy (v2.0)
Инструмент для обработки естественного языка (NLP) с помощью Cython и Python. Основными преимуществами являются простота использования и загрузка собственных компонентов и моделей.
25. Pyray
Один из немногих инструментов для 3D-рендеринга на Python. Пригодится вам для визуализации сложных трехмерных объектов и сцен, анимации и многого другого в рамках Python-проектов. В теории, его можно использовать при создании видео, видеоигр, симуляторов.
26. Magenta
Исследовательский проект, посвященный изучению способов машинного обучения в процессе производства музыки и искусства. По сути, он включает в себя создание новых алгоритмов обучения для создания мелодий, иллюстраций, изображений и других творческих материалов.
27. MicroPython
MicroPython может создавать сценарии из предварительно скомпилированного байт-кода и текстовых данных, файлов, преобразованных в исполняемый формат MicroPython, либо в файловую систему. Важно, что проект находится на стадии бета-тестирования и подвержен изменениям кодовой базы.
28. Dash
29. Kivy
Кроссплатформенная система с открытым исходным кодом Python для продвижения приложений, в которых используются мультисенсорные пользовательские интерфейсы. Цель этого проекта на Python − быстрое и простое проектирование взаимодействия и создание прототипов без ущерба для кода, возможность для развертывания и повторного использования.
Понравилась подборка крутых Python-проектов? Возможно, вас заинтересует следующее:
Источник: Набор влиятельных Python-проектов на ProBytes