
Construa e gerencie programaticamente dados de treinamento
A equipe de snorkel agora está concentrando seus esforços no fluxo de snorkel, uma plataforma de desenvolvimento de aplicativos de ponta a ponta com base nas idéias principais por trás do snorkel-você pode conferir aqui ou se juntar a nós na construção!
O projeto Snorkel começou em Stanford em 2015 com uma aposta técnica simples: que seriam cada vez mais os dados de treinamento , não os modelos, algoritmos ou infraestrutura, que decidiram se um projeto de aprendizado de máquina teve sucesso ou falhou. Dada essa premissa, decidimos explorar a idéia radical de que você poderia trazer estrutura matemática e de sistemas para o processo confuso e muitas vezes manual de criação e gerenciamento de dados de treinamento, começando pelo capacitando os usuários a rotular, criar e gerenciar e gerenciar e gerenciar programas dados.
Dizer que o projeto de snorkel foi bem -sucedido e se expandiu além do que esperávamos seria um eufemismo. Os objetivos básicos de um repositório de pesquisa como o Snorkel são fornecer uma estrutura mínima viável para testar e validar hipóteses. Quatro anos depois, tivemos a sorte de fazer não apenas isso, mas de desenvolver e implantar versões iniciais de snorkel em parceria com algumas das principais organizações do mundo como Google, Intel, Stanford Medicine e muito mais; Autor mais de sessenta publicações revisadas por pares sobre nossas descobertas em torno do Snorkel e inovações relacionadas em modelagem de supervisão fraca, aumento de dados, aprendizado de várias tarefas e muito mais; ser incluído em cursos nas universidades de primeira linha; Apoiar implantações de produção em sistemas que você provavelmente usou nas últimas horas; e trabalhar com uma incrível comunidade de pesquisadores e profissionais da indústria, medicina, governo, academia e além.
No entanto, percebemos cada vez mais conversas com os usuários em horários semanais, workshops, discussões on -line e parceiros do setor - que o projeto de snorkel foi apenas o primeiro passo. As idéias por trás do snorkel mudam não apenas como você rotula os dados de treinamento, mas muito de todo o ciclo de vida e o pipeline de construção, implantação e gerenciamento de ML: como os usuários injetam seus conhecimentos; Como os modelos são construídos, treinados, inspecionados, versionados e monitorados; Como os pipelines inteiros são desenvolvidos iterativamente; e como o conjunto completo de partes interessadas em qualquer implantação de ML, de especialistas no assunto a engenheiros de ML, são incorporados ao processo.
No último ano, estamos construindo a plataforma para apoiar essa visão mais ampla: o Snorkel Flow, uma plataforma de aprendizado de máquina de ponta a ponta para desenvolver e implantar aplicativos de IA. O fluxo de snorkel incorpora muitos dos conceitos do projeto de snorkel com uma variedade de técnicas mais recentes em torno de modelagem de supervisão fraca, aumento de dados, aprendizado de várias tarefas, fatiamento e estruturação de dados, monitoramento e análise e muito mais, que se integram de uma maneira que é maior que a soma de suas partes - e que acreditamos que o ML é verdadeiramente mais rápido, mais flexível e mais prático do que nunca.
Avançando, concentraremos nossos esforços no fluxo de snorkel. Somos extremamente gratos por todos vocês que contribuíram para o projeto Snorkel e estão empolgados por conferir nosso próximo capítulo aqui.
A maneira mais rápida de se familiarizar com a biblioteca Snorkel é passar pela página de início do site Snorkel, seguido pelos tutoriais completos no repositório de tutoriais de snorkel. Esses tutoriais demonstram uma variedade de tarefas, domínios, técnicas de rotulagem e integrações que podem servir como modelos ao aplicar snorkel em seus próprios aplicativos.
Snorkel requer Python 3.11 ou posterior. Para instalar o Snorkel, recomendamos usar pip :
pip install snorkel ou conda :
conda install snorkel -c conda-forgePara obter informações sobre a instalação da fonte e a contribuição para o Snorkel, consulte nossas diretrizes contribuintes.
Os comandos de exemplo a seguir fornecem mais cores na instalação com conda . Esses comandos assumem que sua instalação conda é Python 3.11 e que você deseja usar um ambiente virtual chamado snorkel-env .
# [OPTIONAL] Activate a virtual environment called "snorkel"
conda create --yes -n snorkel-env python=3.11
conda activate snorkel-env
# We specify PyTorch here to ensure compatibility, but it may not be necessary.
conda install pytorch==1.1.0 -c pytorch
conda install snorkel==0.9.0 -c conda-forgeSe você estiver usando o Windows, é altamente recomendável usar o Docker (você pode encontrar um exemplo em nosso repositório de tutoriais) ou no subsistema Linux. Fizemos testes limitados no Windows; portanto, se você deseja contribuir com instruções ou melhorias, fique à vontade para abrir um PR!
Utilizamos problemas do GitHub para postar bugs e solicitações de recursos-qualquer coisa relacionada ao código. Apenas certifique -se de pesquisar primeiro problemas relacionados e usar nossos modelos de problemas. Podemos pedir contribuições se uma correção imediata não se encaixa no roteiro imediato da equipe de desenvolvimento principal.
Congratulamo -nos com contribuições da comunidade de snorkel! Esta é provavelmente a maneira mais rápida de obter uma alteração que você gostaria de ver na biblioteca.
Pequenas contribuições podem ser feitas diretamente em uma solicitação de tração (PR). Se você deseja contribuir com um recurso maior, recomendamos primeiro criar um problema com um design proposto para discussão. Para idéias sobre o que trabalhar, rotulamos questões específicas como help wanted .
Para configurar um ambiente de desenvolvimento para contribuir de volta ao snorkel, consulte nossas diretrizes contribuintes. Todos os PRs devem passar nos testes de integração contínua e receber a aprovação de um membro da equipe de desenvolvimento de snorkel antes que eles sejam mesclados.
Para perguntas e respostas mais amplas, discussões sobre o uso de snorkel, solicitações de tutoriais etc., use o fórum da comunidade de snorkel hospedado no Spectrum. Esperamos que este seja um local para você interagir com outros usuários de snorkel - por favor, não tenha vergonha de postar!
Para manter-se atualizado nos anúncios relacionados a snorkel (por exemplo, versões de versão, próximas oficinas), assine a lista de discussão do Snorkel. Prometemos respeitar suas caixas de entrada - a comunicação será escassa!
Siga -nos no Twitter @snorkelai.