paint-brush
7 repositórios de aprendizado de máquina que 1% dos principais usam e não querem que você saibapor@bap
980 leituras
980 leituras

7 repositórios de aprendizado de máquina que 1% dos principais usam e não querem que você saiba

por Baptiste Fernandez5m2023/11/30
Read on Terminal Reader

Muito longo; Para ler

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.
featured image - 7 repositórios de aprendizado de máquina que 1% dos principais usam e não querem que você saiba
Baptiste Fernandez HackerNoon profile picture
0-item

Olá 👋


Hoje, vamos mergulhar em 7 repositórios de ML que 1% dos principais desenvolvedores usam (e daqueles dos quais você provavelmente nunca ouviu falar)!


Robótica de Boston


O que define o 1% superior?

Classificar desenvolvedores é um problema difícil e toda metodologia tem seus problemas.


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, desenvolvemos uma metodologia que consideramos robusta na maioria dos casos , mas, novamente, não 100% perfeita!


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

Inteligente CSV

Um pacote desenvolvido por alguns amigos nossos para lidar com problemas comuns de carregamento de arquivos CSV . Um problema pequeno, mas comum, no início de muitos pipelines de ML, bem resolvido. 🔮


  • 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

Skll

Você está escrevendo padrões infinitos no sklearn para obter resultados de validação cruzada com vários algoritmos? Experimente a interface do skll para uma experiência de codificação muito mais limpa. ⚡️


  • 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 run_experiment e executa uma série de alunos em conjuntos de dados especificados em um arquivo de configuração.

  • 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

BandidoPAM

Voltando aos algoritmos fundamentais aqui - BanditPAM é um novo algoritmo k-medoids (pense em um algoritmo robusto “k-means”) que pode ser executado em tempo quase linear. 🎉


  • 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 desteartigo , 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.


https://github.com/motiwari/BanditPAM


ligação de registro

O comparador de registros e detector de duplicatas que todos precisam

RegistroLinkage

Você já teve dificuldade para combinar usuários em conjuntos de dados diferentes que escreveram seus nomes incorretamente ou que tinham atributos ligeiramente diferentes? Use esta excelente biblioteca inspirada no Freely Extensible Biomedical Record Linkage (FEBRL) , reconstruída para ferramentas Python modernas. 🛠️


  • 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

Arrastão

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í. 🕷️


  • 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 ( extract_content e extract_content_and_comments ) com a opção de incluir ou excluir comentários para extrair conteúdo de strings HTML.

  • Uma classe de extrator sklearn-style existe para uso mais avançado, permitindo customização e treinamento de extratores.


https://github.com/dragnet-org/dragnet


estrofe espacial

Os mais recentes modelos de pesquisa StanfordNLP diretamente no spaCy

Spacy-Stanzaa

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"

Pequena bola de pêlo

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 - onde você seleciona os usuários iniciais e inclui suas conexões - captura melhor a estrutura da rede.


Isso ajuda a evitar preconceitos na análise. 🔦


Agora, você tem dados estruturados em gráficos e precisa trabalhar em amostras deles (seja por razões algorítmicas ou computacionais)? 👩‍💻


  • 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 Quine e ver como ele evolui nos próximos meses!


Por último, considere apoiar esses projetos estrelando-os. ⭐️


PS: Não somos afiliados a eles. Apenas pensamos que grandes projetos merecem grande reconhecimento.


estrondo

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 servidor discord . Estamos aqui para ajudá-lo em sua jornada no código aberto. 🫶


Também publicado aqui .