Olá 👋 Hoje, vamos mergulhar em 7 repositórios de ML que (e daqueles dos quais você provavelmente nunca ouviu falar)! 1% dos principais desenvolvedores usam O que define o 1% superior? Classificar desenvolvedores é um problema e toda metodologia tem seus problemas. difícil Por exemplo, se você classificar os desenvolvedores pelo número de linhas de código que eles escreveram em Python, provavelmente obterá alguns desenvolvedores Python muito bons no topo. No entanto, você pode encontrar pessoas que acabaram de copiar e colar muitos códigos Python em seus repositórios e elas não são tão boas. 🙁 Na Quine, , mas, novamente, não 100% perfeita! desenvolvemos uma metodologia que consideramos robusta na maioria dos casos Chama-se DevRank (você pode ler mais sobre como calculamos isso ). aqui A noção de Top 1% que utilizo neste artigo é baseada no DevRank. E sim, continuamos trabalhando nisso para que seja melhor a cada dia! Como sabemos quais repositórios o 1% principal usa? Observamos os repositórios estrelados pelo percentil 99. Em seguida, comparamos a propensão de 1% dos principais desenvolvedores com a dos 50% inferiores dos desenvolvedores de marcar um repositório com estrela e gerar a lista automaticamente. Em outras palavras, esses . repositórios são joias escondidas usadas por 1% dos principais desenvolvedores e ainda não foram descobertos pela comunidade de desenvolvedores em geral Inteligente CSV Eu cuido dos seus CSVs bagunçados Um pacote desenvolvido por alguns amigos nossos . Um problema pequeno, mas comum, no início de muitos pipelines de ML, bem resolvido. 🔮 para lidar com problemas comuns de carregamento de arquivos CSV CleverCSV é capaz de detectar e carregar vários dialetos CSV diferentes, sem a necessidade de ser informado em seus argumentos. Os arquivos CSV não fornecem as informações necessárias para realizar isso nativamente, portanto, alguma inferência inteligente é exigida pela biblioteca. O CleverCSV pode até lidar com arquivos CSV confusos, que apresentam erros na formatação. Além da biblioteca Python, o CleverCSV também inclui uma interface de linha de comando para geração, exploração e padronização de código. https://github.com/alan-turing-institute/CleverCSV habilidade Simplifique os fluxos de trabalho de ML com o scikit-learn por meio da CLI para obter resultados de validação cruzada com vários algoritmos? Experimente a interface do para uma experiência de codificação muito mais limpa. ⚡️ Você está escrevendo padrões infinitos no sklearn skll Skll foi projetado para permitir a execução de experimentos de aprendizado de máquina com scikit-learn de forma mais eficiente, reduzindo a necessidade de codificação extensa. O principal utilitário fornecido é chamado e executa uma série de alunos em conjuntos de dados especificados em um arquivo de configuração. run_experiment Ele também oferece uma API Python para integração direta com código existente, incluindo ferramentas para conversão de formato e operações de arquivos de recursos. https://github.com/EducationalTestingService/skll BandidoPAM Clustering de k-Medoids em tempo quase linear Voltando aos algoritmos fundamentais aqui - que pode ser executado em tempo quase linear. 🎉 BanditPAM é um novo algoritmo k-medoids (pense em um algoritmo robusto “k-means”) Executa em tempo O(nlogn) em vez de tempo O(n^2), conforme algoritmos anteriores. Os centros de cluster são pontos de dados e, portanto, correspondem a observações significativas. O centro de um cluster k-means pode corresponder a dados inválidos; isso não é possível com k-medóides. Métricas de distância arbitrárias podem ser usadas (pense em L1 ou distância de Hamming, por exemplo). Algos eficientes de k-means são normalmente limitados à distância L2. Implementado a partir deste , o BanditPAM é ideal para cientistas de dados que procuram uma solução poderosa e escalonável para trabalho em grupo, especialmente aqueles que lidam com dados grandes ou complexos. artigo https://github.com/motiwari/BanditPAM ligação de registro O comparador de registros e detector de duplicatas que todos precisam Você já ou que tinham atributos ligeiramente diferentes? Use esta excelente biblioteca inspirada no , reconstruída para ferramentas Python modernas. 🛠️ teve dificuldade para combinar usuários em conjuntos de dados diferentes que escreveram seus nomes incorretamente Freely Extensible Biomedical Record Linkage (FEBRL) Fornece uma implementação nativa em Python da poderosa biblioteca FEBRL, fazendo uso de numpy e pandas. Inclui abordagens supervisionadas e não supervisionadas. Inclui ferramentas para gerar pares correspondentes para permitir abordagens de ML supervisionadas. RecordLinkage é ideal para cientistas de dados que procuram uma solução flexível baseada em Python para executar tarefas de vinculação de registros e desduplicação de dados. https://github.com/J535D165/recordlinkage rede de arrasto Foco exclusivo na extração de conteúdo de páginas da web . Dragnet concentra-se no conteúdo e nos comentários dos usuários em uma página e ignora o resto. É útil para nossos amigos raspadores por aí. 🕷️ Extração de conteúdo de páginas da web Dragnet tem como objetivo extrair palavras-chave e frases de páginas da web, removendo conteúdo indesejado, como publicidade ou equipamentos de navegação. Fornece funções Python simples ( e ) com a opção de incluir ou excluir comentários para extrair conteúdo de strings HTML. extract_content extract_content_and_comments Uma classe de extrator existe para uso mais avançado, permitindo customização e treinamento de extratores. sklearn-style https://github.com/dragnet-org/dragnet estrofe espacial Os mais recentes modelos de pesquisa StanfordNLP diretamente no spaCy Interessado em tarefas padrão de PNL, como marcação de classes gramaticais, análise de dependências e reconhecimento de entidade nomeada? 🤔 SpaCy-Stanza envolve a biblioteca Stanza (anteriormente StanfordNLP) para ser usada em pipelines spaCy. O pacote inclui recursos de reconhecimento de entidades nomeadas para idiomas selecionados, ampliando sua utilidade em tarefas de processamento de linguagem natural. Suporta 68 idiomas, tornando-o versátil para diversas aplicações linguísticas. O pacote permite que seu pipeline seja personalizado com componentes spaCy adicionais. https://github.com/explosion/spacy-stanza Pequena bola de pêlo "Canivete suíço para tarefas de amostragem gráfica" Você já trabalhou com um conjunto de dados tão grande que precisou coletar uma amostra dele? Para dados simples, a amostragem aleatória mantém a distribuição em uma amostra menor. No entanto, em redes complexas, a amostragem em bola de neve - - captura melhor a estrutura da rede. onde você seleciona os usuários iniciais e inclui suas conexões Isso ajuda a evitar preconceitos na análise. 🔦 Agora, você tem deles (seja por razões algorítmicas ou computacionais)? 👩💻 dados estruturados em gráficos e precisa trabalhar em amostras Littleballoffur oferece uma variedade de métodos para amostragem de gráficos e redes, incluindo amostragem de nós, bordas e exploração. Projetado com uma interface pública de aplicativo unificada, facilitando aos usuários a aplicação de algoritmos de amostragem complexos sem profundo conhecimento técnico. https://github.com/benedekrozemberczki/littleballoffur Espero que essas descobertas sejam valiosas para você e ajudem a construir um kit de ferramentas de ML mais robusto! ⚒️ Se você estiver interessado em aproveitar essas ferramentas para criar projetos impactantes em código aberto, primeiro você deve descobrir qual é o seu DevRank atual no e ver como ele evolui nos próximos meses! Quine Por último, considere apoiar esses projetos estrelando-os. ⭐️ PS: Não somos afiliados a eles. Apenas pensamos que grandes projetos merecem grande reconhecimento. Vejo voce na proxima semana, Seu amigo Hackernoon 💚 Bap Se você deseja ingressar no servidor autoproclamado "mais legal" em código aberto 😝, você deve ingressar em nosso . Estamos aqui para ajudá-lo em sua jornada no código aberto. 🫶 servidor discord Também publicado . aqui