Bonjour 👋 Aujourd'hui, penchons-nous sur 7 dépôts ML que (et ceux dont vous n'avez probablement jamais entendu parler) ! les 1 % des meilleurs développeurs utilisent Qu’est-ce qui définit les 1 % les plus riches ? Le classement des développeurs est un problème , et chaque méthodologie a ses problèmes. difficile Par exemple, si vous classez les développeurs en fonction du nombre de lignes de code qu'ils ont écrites en Python, vous obtiendrez probablement de très bons développeurs Python en tête. Cependant, vous pouvez rencontrer des gens qui viennent de copier-coller beaucoup de code Python dans leurs dépôts et ils ne sont pas très bons. 🙁 Chez Quine, nous , mais encore une fois pas parfaite à 100 % ! avons développé une méthodologie que nous pensons robuste dans la plupart des cas C'est ce qu'on appelle DevRank (vous pouvez en savoir plus sur la façon dont nous calculons cela ). ici La notion de Top 1% que j’utilise dans cet article est basée sur le DevRank. Et oui, nous continuons à travailler là-dessus pour l’améliorer chaque jour ! Comment savoir quelles pensions sont utilisées par les 1 % les plus riches ? Nous examinons les pensions auxquelles le 99e centile a participé. Nous comparons ensuite la propension des 1 % des développeurs les plus performants à celle des 50 % des développeurs les moins performants à lancer un dépôt et générons automatiquement la liste. En d’autres termes, ces . référentiels sont les joyaux cachés utilisés par les 1 % des meilleurs développeurs et n’ont pas encore été découverts par la communauté des développeurs au sens large IntelligentCSV Je m'occupe de vos CSV en désordre Un package développé par certains de nos amis . Un problème petit mais courant au démarrage de nombreux pipelines ML, bien résolu. 🔮 pour gérer les problèmes courants liés au chargement de fichiers CSV CleverCSV est capable de détecter et de charger différents dialectes CSV, sans avoir besoin de rien savoir dans ses arguments. Les fichiers CSV ne fournissent pas les informations nécessaires pour effectuer cette opération de manière native, la bibliothèque nécessite donc une inférence intelligente. CleverCSV peut même gérer des fichiers CSV désordonnés, qui comportent des erreurs dans leur formatage. En plus de la bibliothèque Python, CleverCSV comprend également une interface de ligne de commande pour la génération, l'exploration et la standardisation de code. https://github.com/alan-turing-institute/CleverCSV compétence Rationalisez les flux de travail ML avec scikit-learn via CLI pour obtenir des résultats validés de manière croisée avec plusieurs algorithmes ? Essayez plutôt l'interface de pour une expérience de codage beaucoup plus propre. ⚡️ Écrivez-vous un passe-partout sans fin dans sklearn skll Skll est conçu pour permettre d'exécuter plus efficacement des expériences d'apprentissage automatique avec scikit-learn, réduisant ainsi le besoin d'un codage approfondi. Le principal utilitaire fourni s'appelle et exécute une série d'apprenants sur des ensembles de données spécifiés dans un fichier de configuration. run_experiment Il propose également une API Python pour une intégration simple avec le code existant, y compris des outils de conversion de format et d'opérations sur les fichiers de fonctionnalités. https://github.com/EducationalTestingService/skll BanditPAM Regroupement de k-Medoids en temps presque linéaire Revenons aux algorithmes fondamentaux ici — qui peut s'exécuter en un temps presque linéaire. 🎉 BanditPAM est un nouvel algorithme k-médoïdes (pensez à un « k-means » robuste) S'exécute en temps O(nlogn) plutôt qu'en temps O(n^2), selon les algorithmes précédents. Les centres de cluster sont des points de données et correspondent donc à des observations significatives. Le centre d'un cluster de k-moyennes peut correspondre à des données invalides ; ce n'est pas possible avec les k-médoïdes. Des métriques de distance arbitraires peuvent être utilisées (pensez à la distance L1 ou à la distance de Hamming par exemple), les algorithmes k-means efficaces sont généralement limités à la distance L2. Mis en œuvre à partir de cet , BanditPAM est idéal pour les data scientists à la recherche d'une solution puissante et évolutive pour le travail de groupe, en particulier ceux traitant de données volumineuses ou complexes. article https://github.com/motiwari/BanditPAM couplage d'enregistrements Le comparateur d'enregistrements et le détecteur de doublons dont tout le monde a besoin Avez-vous déjà ou qui ont des attributs légèrement différents ? Utilisez cette superbe bibliothèque inspirée du , reconstruit pour les outils Python modernes. 🛠️ eu du mal à faire correspondre les utilisateurs de différents ensembles de données qui ont mal orthographié leur nom Freely Extensible Biomedical Record Linkage (FEBRL) Fournit une implémentation native Python de la puissante bibliothèque FEBRL, utilisant numpy et pandas. Comprend les approches supervisées et non supervisées. Comprend des outils pour générer des paires correspondantes pour permettre des approches de ML supervisées. RecordLinkage est idéal pour les data scientists à la recherche d'une solution flexible basée sur Python pour effectuer des tâches de liaison d'enregistrements et de déduplication de données. https://github.com/J535D165/recordlinkage drague Un seul focus sur l’extraction du contenu des pages Web . Dragnet se concentre sur le contenu et les commentaires des utilisateurs sur une page et ignore le reste. C'est pratique pour nos amis grattoirs. 🕷️ Extraction de contenu à partir de pages Web Dragnet vise à extraire des mots-clés et des expressions des pages Web en supprimant les contenus indésirables tels que la publicité ou les équipements de navigation. Fournit des fonctions Python simples ( et ) avec la possibilité d'inclure ou d'exclure des commentaires pour extraire le contenu des chaînes HTML. extract_content extract_content_and_comments Une classe d'extracteur est là pour une utilisation plus avancée, permettant la personnalisation et la formation des extracteurs. sklearn-style https://github.com/dragnet-org/dragnet strophe spacy Les derniers modèles de recherche StanfordNLP directement dans spaCy Intéressé par les tâches PNL standard telles que le marquage de parties du discours, l'analyse des dépendances et la reconnaissance des entités nommées ? 🤔 SpaCy-Stanza encapsule la bibliothèque Stanza (anciennement StanfordNLP) à utiliser dans les pipelines spaCy. Le package inclut des capacités de reconnaissance d'entités nommées pour des langues sélectionnées, étendant ainsi son utilité dans les tâches de traitement du langage naturel. Il prend en charge 68 langues, ce qui le rend polyvalent pour diverses applications linguistiques. Le package permet de personnaliser votre pipeline avec des composants spaCy supplémentaires. https://github.com/explosion/spacy-stanza Petite boule de fourrure "Couteau suisse pour les tâches d'échantillonnage de graphiques" Avez-vous déjà travaillé avec un ensemble de données si volumineux que vous deviez en prélever un échantillon ? Pour les données simples, l’échantillonnage aléatoire maintient la distribution dans un échantillon plus petit. Cependant, dans les réseaux complexes, l’échantillonnage boule de neige – – capture mieux la structure du réseau. dans lequel vous sélectionnez les utilisateurs initiaux et incluez leurs connexions Cela permet d’éviter les biais dans l’analyse. 🔦 Maintenant, disposez-vous de celles-ci (soit pour des raisons algorithmiques, soit pour des raisons informatiques) ? 👩💻 de données structurées sous forme de graphiques et devez-vous travailler sur des échantillons Littleballoffur propose une gamme de méthodes d'échantillonnage à partir de graphiques et de réseaux, notamment l'échantillonnage de nœuds, de bords et d'exploration. Conçu avec une interface publique d'application unifiée, permettant aux utilisateurs d'appliquer facilement des algorithmes d'échantillonnage complexes sans connaissances techniques approfondies. https://github.com/benedekrozemberczki/littleballoffur J'espère que ces découvertes vous seront précieuses et vous aideront à créer une boîte à outils ML plus robuste ! ⚒️ Si vous souhaitez tirer parti de ces outils pour créer des projets open source à impact, vous devez d'abord découvrir quel est votre DevRank actuel sur et voir comment il évolue dans les mois à venir ! Quine Enfin, pensez à soutenir ces projets en les mettant en vedette. ⭐️ PS : Nous ne sommes pas affiliés à eux. Nous pensons simplement que les grands projets méritent une grande reconnaissance. À la semaine prochaine, Votre pote Hackernoon 💚 Bap Si vous souhaitez rejoindre le serveur autoproclamé "le plus cool" de l'open source 😝, vous devriez rejoindre notre . Nous sommes là pour vous aider dans votre voyage vers l’open source. 🫶 serveur Discord Également publié . ici