Привет 👋 Сегодня давайте углубимся в 7 репозиториев ML, которые (и о которых вы, вероятно, никогда не слышали)! используют 1% лучших разработчиков Что определяет верхний 1%? Ранжирование разработчиков — проблема, и у каждой методологии есть свои проблемы. сложная Например, если вы ранжируете разработчиков по количеству строк кода, которые они написали на Python, вы, вероятно, окажетесь на вершине довольно хороших разработчиков Python. Однако вы можете найти людей, которые только что скопировали много кода Python в свои репозитории, и они не так уж хороши. 🙁 В Quine мы , но опять же не на 100% идеальна! разработали методологию, которая, по нашему мнению, в большинстве случаев надежна Он называется DevRank (подробнее о том, как мы его рассчитываем, можно прочитать ). здесь Понятие «1% лучших», которое я использую в этой статье, основано на DevRank. И да, мы продолжаем работать над этим, чтобы сделать его лучше с каждым днем! Как мы узнаем, какие репозитории используют 1% лучших? Мы смотрим на репозитории, в которых отмечен 99-й процентиль. Затем мы сравниваем склонность 1% лучших разработчиков и 50% нижних разработчиков к звездочке репозитория и автоматически генерируем список. Другими словами, эти . репозитории представляют собой скрытые жемчужины, используемые 1% лучших разработчиков, и которые еще предстоит обнаружить более широкому сообществу разработчиков УмныйCSV Я разбираюсь с вашими грязными CSV-файлами Пакет, разработанный нашими друзьями . Небольшая, но распространенная проблема в начале многих конвейеров ML, хорошо решенная. 🔮 для устранения распространенных проблем при загрузке файлов CSV CleverCSV способен обнаруживать и загружать различные диалекты CSV без необходимости указывать что-либо в своих аргументах. Файлы CSV не предоставляют необходимой информации для выполнения этого в исходном виде, поэтому библиотеке требуются некоторые умные выводы. CleverCSV может обрабатывать даже беспорядочные файлы CSV, в форматировании которых есть ошибки. Помимо библиотеки Python, CleverCSV также включает интерфейс командной строки для генерации, исследования и стандартизации кода. https://github.com/alan-turing-institute/CleverCSV склл Оптимизируйте рабочие процессы машинного обучения с помощью scikit-learn через интерфейс командной строки для получения перекрестно проверенных результатов с помощью нескольких алгоритмов? Вместо этого попробуйте интерфейс , чтобы упростить кодирование. ⚡️ Вы пишете бесконечные шаблоны в sklearn skll Skll предназначен для более эффективного проведения экспериментов по машинному обучению с помощью scikit-learn, уменьшая необходимость в обширном программировании. Основная предоставляемая утилита называется и запускает серию обучающихся на наборах данных, указанных в файле конфигурации. run_experiment Он также предлагает API Python для простой интеграции с существующим кодом, включая инструменты для преобразования формата и операций с файлами объектов. https://github.com/EducationalTestingService/skll БандитПАМ Кластеризация k-медоидов почти за линейное время Возвращаясь к фундаментальным алгоритмам: , который может работать почти за линейное время. 🎉 BanditPAM — это новый алгоритм k-medoids (представьте себе надежный «k-средний») Выполняется за время O(nlogn), а не за время O(n^2), как в предыдущих алгоритмах. Центры кластеров являются точками данных и, следовательно, соответствуют значимым наблюдениям. Центр кластера k-средних может соответствовать недопустимым данным; это невозможно с k-медоидами. Могут использоваться произвольные метрики расстояния (например, L1 или расстояние Хэмминга), эффективные алгоритмы k-средних обычно ограничиваются расстоянием L2. BanditPAM, реализованный на основе этой , идеально подходит для специалистов по обработке данных, которым требуется мощное масштабируемое решение для групповой работы, особенно для тех, кто имеет дело с большими или сложными данными. статьи https://github.com/motiwari/BanditPAM записьсвязь Сопоставитель записей и детектор дубликатов, который нужен каждому Вам когда-нибудь или имели немного разные атрибуты? Используйте эту великолепную библиотеку, вдохновленную , переработанную для современных инструментов Python. 🛠️ приходилось сопоставлять пользователей из разных наборов данных, которые неправильно написали свое имя Freely Extensible Biomedical Record Linkage (FEBRL) Предоставляет собственную реализацию мощной библиотеки FEBRL на Python с использованием numpy и pandas. Включает как контролируемые, так и неконтролируемые подходы. Включает инструменты для создания совпадающих пар для реализации контролируемых подходов ML. RecordLinkage идеально подходит для специалистов по обработке данных, которым требуется гибкое решение на основе Python для выполнения задач связывания записей и дедупликации данных. https://github.com/J535D165/recordlinkage невод Особое внимание уделяется извлечению содержимого веб-страниц. . Dragnet фокусируется на контенте и комментариях пользователей на странице и игнорирует все остальное. Это удобно для наших друзей-скребков. 🕷️ Извлечение контента с веб-страниц Целью Dragnet является извлечение ключевых слов и фраз с веб-страниц путем удаления нежелательного контента, такого как реклама или навигационное оборудование. Предоставляет простые функции Python ( и ) с возможностью включать или исключать комментарии для извлечения содержимого из строк HTML. extract_content extract_content_and_comments Класс экстрактора предназначен для более расширенного использования, позволяя настраивать и обучать экстракторы. sklearn-style https://github.com/dragnet-org/dragnet просторная строфа Новейшие исследовательские модели Стэнфордского НЛП непосредственно в SpaCy Заинтересованы в стандартных задачах НЛП, таких как разметка частей речи, анализ зависимостей и распознавание именованных объектов? 🤔 SpaCy-Stanza оборачивает библиотеку Stanza (ранее StanfordNLP) для использования в конвейерах spaCy. Пакет включает в себя возможности распознавания именованных объектов для выбранных языков, что расширяет его возможности в задачах обработки естественного языка. Он поддерживает 68 языков, что делает его универсальным для различных лингвистических приложений. Пакет позволяет настроить ваш конвейер с помощью дополнительных компонентов SpaCy. https://github.com/explosion/spacy-stanza Маленький комок шерсти «Швейцарский армейский нож для задач выборки графов» Вы когда-нибудь работали с настолько большим набором данных, что вам нужно было взять его выборку? Для простых данных случайная выборка сохраняет распределение в выборке меньшего размера. Однако в сложных сетях выборка снежного кома, , лучше отражает структуру сети. при которой вы выбираете первоначальных пользователей и включаете их соединения Это помогает избежать предвзятости в анализе. 🔦 Итак, есть ли у вас (по алгоритмическим или вычислительным причинам)? 👩💻 данные, структурированные в виде графа, и вам нужно поработать с их выборками Littleballoffur предлагает ряд методов выборки из графов и сетей, включая выборку узлов, ребер и исследовательскую выборку. Разработан с унифицированным общедоступным интерфейсом приложения, позволяющим пользователям легко применять сложные алгоритмы выборки без глубоких технических знаний. https://github.com/benedekrozemberczki/littleballoffur Я надеюсь, что эти открытия будут для вас ценны и помогут создать более надежный набор инструментов ML! ⚒️ Если вы заинтересованы в использовании этих инструментов для создания эффективных проектов с открытым исходным кодом, вам следует сначала узнать, какой у вас текущий рейтинг DevRank на , и посмотреть, как он будет развиваться в ближайшие месяцы! Quine Наконец, пожалуйста, рассмотрите возможность поддержки этих проектов, сняв их в главных ролях. ⭐️ P.S. Мы с ними не связаны. Мы просто считаем, что великие проекты заслуживают большого признания. Увидимся на следующей неделе, Ваш приятель по Хакернуну 💚 Бап Если вы хотите присоединиться к самопровозглашенному «самому крутому» серверу с открытым исходным кодом 😝, вам следует присоединиться к нашему . Мы здесь, чтобы помочь вам на вашем пути к открытому исходному коду. 🫶 серверу Discord Также опубликовано . здесь