Partilhar via


Qual é SynapseML?

SynapseML (anteriormente conhecido como MMLSpark) é uma biblioteca de código aberto que simplifica a criação de pipelines de aprendizado de máquina (ML) massivamente escaláveis. O SynapseML fornece APIs simples, combináveis e distribuídas para tarefas de aprendizado de máquina, como análise de texto, visão computacional e deteção de anomalias. SynapseML é construído na estrutura de computação distribuída Apache Spark e usa a mesma API que a biblioteca Spark MLlib. Esse alinhamento permite incorporar modelos SynapseML em fluxos de trabalho existentes do Apache Spark.

Com o SynapseML, crie sistemas escaláveis e inteligentes para resolver desafios em domínios como deteção de anomalias, visão computacional, aprendizagem profunda e análise de texto. O SynapseML treina e avalia modelos em clusters de nó único, multinó e elasticamente redimensionáveis. Esta abordagem permite-lhe escalar o seu trabalho sem desperdiçar recursos. SynapseML funciona com Python, R, Scala, Java e .NET. Sua API funciona com muitos bancos de dados, sistemas de arquivos e armazenamentos de dados em nuvem para simplificar experimentos, independentemente de onde os dados estejam.

Installation

Escolha um método na página de instalação e siga as etapas.

Vá para o Guia de início rápido: seus primeiros modelos para criar seu primeiro pipeline.

Principais características do SynapseML

O SynapseML oferece integração fácil e recursos pré-treinados para ajudá-lo a entender e aplicar melhor os dados às suas necessidades de negócios. O SynapseML unifica várias estruturas de ML existentes e novos algoritmos da Microsoft em uma única API escalável que pode ser usada em Python, R, Scala e Java. O SynapseML também ajuda os desenvolvedores a entender as previsões de modelos, introduzindo novas ferramentas para revelar por que os modelos fazem determinadas previsões e como melhorar o conjunto de dados de treinamento para eliminar vieses.

Uma API unificada para criar, treinar e pontuar modelos

SynapseML oferece uma API unificada que simplifica o desenvolvimento de programas distribuídos tolerantes a falhas. Em particular, o SynapseML expõe muitas estruturas diferentes de aprendizado de máquina sob uma única API que é escalável, agnóstica a dados e linguagem e funciona para aplicativos em lote, streaming e serviço.

Uma API unificada padroniza muitas ferramentas, estruturas e algoritmos e simplifica a experiência de aprendizado de máquina distribuído. Ele permite que os desenvolvedores componham rapidamente estruturas de aprendizado de máquina diferentes, mantém o código limpo e suporta fluxos de trabalho que exigem mais de uma estrutura. Por exemplo, fluxos de trabalho como aprendizagem supervisionada pela Web ou criação de mecanismos de pesquisa exigem vários serviços e estruturas. SynapseML protege os usuários dessa complexidade extra.

Use modelos inteligentes pré-construídos

Muitas ferramentas no SynapseML não exigem um grande conjunto de dados de treinamento rotulado. Em vez disso, o SynapseML fornece APIs simples para serviços inteligentes pré-criados, como serviços de IA do Azure, para resolver rapidamente desafios de IA em grande escala relacionados a negócios e pesquisa. O SynapseML permite que os desenvolvedores incorporem mais de 50 diferentes serviços de ML de última geração diretamente em seus sistemas e bancos de dados. Esses algoritmos prontos para uso podem analisar uma grande variedade de documentos, transcrever conversas com vários falantes em tempo real e traduzir texto em mais de 100 idiomas. Para obter mais exemplos de como usar IA pré-construída para resolver tarefas rapidamente, consulte os exemplos "cognitivos" do SynapseML.

Para tornar a integração do SynapseML com os serviços de IA do Azure rápida e eficiente, o SynapseML introduz muitas otimizações para fluxos de trabalho orientados a serviços. Em particular, o SynapseML analisa automaticamente respostas comuns de limitação para garantir que os trabalhos não sobrecarreguem os serviços de back-end. Além disso, ele usa backoffs exponenciais para lidar com conexões de rede não confiáveis e respostas com falha. Finalmente, as máquinas de trabalho do Spark permanecem ocupadas com novas primitivas de paralelismo assíncrono. O paralelismo assíncrono permite que as máquinas de trabalho enviem solicitações enquanto aguardam uma resposta do servidor e pode gerar um aumento de dez vezes na taxa de transferência.

Ampla compatibilidade do ecossistema com ONNX

O SynapseML permite que os desenvolvedores usem modelos de muitos ecossistemas de ML diferentes por meio da estrutura Open Neural Network Exchange (ONNX). Com essa integração, você pode executar uma ampla variedade de modelos clássicos e de aprendizagem profunda em escala com apenas algumas linhas de código. O SynapseML lida automaticamente com a distribuição de modelos ONNX para nós de trabalho, envio em lote e buffer de dados de entrada para alta taxa de transferência e agendamento de trabalho em aceleradores de hardware.

Trazer o ONNX para o Spark não só ajuda os desenvolvedores a escalar modelos de aprendizado profundo, mas também permite inferência distribuída em uma ampla variedade de ecossistemas de ML. Em particular, ONNXMLTools converte modelos de TensorFlow, scikit-learn, Core ML, LightGBM, XGBoost, H2O e PyTorch para ONNX para inferência acelerada e distribuída usando SynapseML.

Crie sistemas de IA responsáveis

Depois de construir um modelo, é imperativo que os pesquisadores e engenheiros entendam suas limitações e comportamento antes da implantação. SynapseML ajuda desenvolvedores e pesquisadores a construir sistemas de IA responsáveis, introduzindo novas ferramentas que revelam por que os modelos fazem certas previsões e como melhorar o conjunto de dados de treinamento para eliminar vieses. O SynapseML acelera drasticamente o processo de compreensão do modelo treinado de um usuário, permitindo que os desenvolvedores distribuam computação em centenas de máquinas. Mais especificamente, SynapseML inclui implementações distribuídas de Shapley Additive Explanations (SHAP) e Locally Interpretable Model-Agnostic Explanations (LIME) para explicar as previsões de visão, texto e modelos tabulares. Também inclui ferramentas como Expectativa Condicional Individual (ICE) e análise de dependência parcial para reconhecer conjuntos de dados tendenciosos.

Suporte empresarial no Azure Synapse Analytics

O SynapseML está geralmente disponível no Azure Synapse Analytics com suporte empresarial. Crie pipelines de aprendizado de máquina em grande escala usando os serviços de IA do Azure, LightGBM, ONNX e outros recursos SynapseML selecionados. Use modelos para prototipar rapidamente sistemas de aprendizado de máquina distribuídos, como mecanismos de pesquisa visual, pipelines de manutenção preditiva e tradução de documentos.