Crie

Criar conjuntos de dados de treinamento altamente precisos

O Amazon SageMaker Ground Truth ajuda os clientes a criar rapidamente conjuntos de dados de treinamento altamente precisos usando machine learning e reduzir os custos de rotulagem de dados em até 70%. Os modelos de machine learning bem-sucedidos são treinados usando dados que foram rotulados para instruir o modelo sobre como tomar decisões corretas. Esse processo pode levar meses e precisar de grandes equipes de pessoas para ser concluído. O SageMaker Ground Truth fornece uma solução inovadora para reduzir o custo e a complexidade, além de aumentar a precisão da rotulagem de dados, reunindo machine learning com um processo de rotulagem humana denominada aprendizado ativo. 

Saiba mais

Blocos de anotações gerenciados para modelos de criação

O Amazon SageMaker oferece blocos de anotações Jupyter Esses blocos de anotações são disponibilizados com drivers CUDA e cuDNN pré-carregados para plataformas de aprendizado profundo populares, pacotes Anaconda e bibliotecas para o TensorFlow, o Apache MXNet, o PyTorch e o Chainer. 

Com apenas um clique, você pode acessar um ambiente de bloco de anotações de Machine Learning totalmente gerenciado usando o popular formato de bloco de anotações de código aberto Jupyter.

Esses espaços de trabalho de bloco de anotações permitem explorar e visualizar dados e documentar suas descobertas em fluxos de trabalho reutilizáveis usando praticamente todas as bibliotecas, estruturas e interfaces mais populares. No bloco de anotações, você pode importar seus dados já armazenados no Amazon S3. Você também pode usar o AWS Glue para mover dados facilmente do Amazon RDS, do Amazon DynamoDB e do Amazon Redshift para o S3 para fins de análise. Você pode escrever ou importar seu bloco de anotações ou usar um dos vários blocos de anotações já criados e pré-carregados no Amazon SageMaker. Os blocos de anotações já criados estão disponíveis para todos os algoritmos internos de Machine Learning. Além disso, existem modelos de blocos de anotações disponíveis para ajudá-lo a começar a usar os aplicativos de Machine Learning comuns e a funcionalidade mais avançada do Amazon SageMaker. 

Algoritmos internos de alto desempenho

O Amazon SageMaker oferece algoritmos de Machine Learning dimensionáveis e de alto desempenho, otimizados para velocidade, escala e precisão. Esses algoritmos podem realizar treinamento em conjuntos de dados de petabytes e oferecer até 10x o desempenho de outras implementações. Você pode escolher entre algoritmos supervisionados, em que as respostas corretas são conhecidas durante o treinamento e é possível instruir o modelo quando ele comete erros. O Amazon SageMaker inclui algoritmos supervisionados, como XGBoost e regressão ou classificação linear/lógica, para resolver problemas de recomendação e previsão de série temporal. O Amazon SageMaker também inclui suporte a aprendizado não supervisionado (ou seja, os algoritmos precisam descobrir as respostas certas por conta própria), por exemplo, com o clustering de k-means e a análise de componente principal (PCA), para resolver problemas como a identificação de agrupamentos de clientes com base no comportamento de compra.

O Amazon SageMaker disponibiliza automaticamente os algoritmos de Machine Learning mais comuns para você. Especifique sua fonte de dados e comece a executar clustering k-means para segmentação de dados, máquinas de fatoração para recomendações, previsão de série temporal, regressão linear ou análise de componente principal na hora. 

Word2Vec na BlazingText A implementação do algoritmo Word2Vec pela BlazingText para escalabilidade e aceleração da geração de incorporação de palavras de um grande número de documentos.
DeepAR Um algoritmo que gera previsões precisas aprendendo padrões de várias séries temporais relacionadas usando redes neurais recorrentes (RNN).
Máquinas de fatoração Um modelo com a capacidade de estimar todas as interações entre recursos mesmo com pouquíssimos dados.
Gradient Boosted Trees (XGBoost) Abreviação de "Extreme Gradient Boosting", XGBoost é uma biblioteca de gradient boosting distribuída.
Classificação de imagens (ResNet) Uma rede neural popular para desenvolver sistemas de classificação de imagens.
Informações sobre IP Um algoritmo para detectar usuários mal-intencionados ou aprender a usar padrões de endereços IP.
Clustering de k-means Um dos algoritmos de Machine Learning mais simples. Também é possível usá-lo para encontrar grupos em dados sem rótulos.
K-Nearest Neighbor (k-NN) Um algoritmo baseado em índice para resolver problemas baseados em classificação e regressão.

Latent Dirichlet Allocation (LDA)

Um modelo adequado para descobrir automaticamente os principais tópicos presentes em um conjunto de arquivos de texto.
Aprendiz linear (classificação) A classificação linear usa características de um objeto para identificar o grupo correto a que ele pertence.
Aprendiz linear (regressão) A regressão linear é usada para prever o relacionamento linear entre duas variáveis.
Modelagem tópica neural (NTM) Uma abordagem baseada em rede neural para aprender tópicos a partir de conjuntos de dados de imagens e textos.
Object2Vec Um algoritmo de incorporação neural para computar vizinhos mais próximos e visualizar clusters naturais.
Detecção de objetos Detecta, classifica e coloca caixas delimitadores em volta de vários objetos em uma imagem.
Análise de componente principal (PCA) Normalmente usado no pré-processamento dos dados, esse algoritmo usa uma tabela ou matriz de vários recursos e a reduz ao menor número de recursos representativos.
Random Cut Forest Um algoritmo de Machine Learning não supervisionado para detecção de anomalias.
Segmentação de semântica
Particiona uma imagem para identificar locais de interesse atribuindo um rótulo aos pixels individuais da imagem.
Seqence2Sequence Um codificador-decodificador de propósito geral para texto que costuma ser usado em tradução automática, resumo de textos, etc.

Esses algoritmos foram otimizados para que o desempenho seja até 10x mais rápido do que o que seria possível em implantações tradicionais. Já fizemos isso implementando esses algoritmos para que eles não precisem voltar e olhar dados já examinados. Tradicionalmente, os algoritmos costumam passar várias vezes pelo seu conjunto de dados para referenciar dados anteriores. Isso é bom para conjuntos de dados pequenos, mas o impacto no desempenho com grandes conjuntos de dados pode atrasar bastante o treinamento. Ao criar para aprovação única, você conseguirá treinar com conjuntos de dados de petabytes de maneira eficiente e com bom custo-benefício. 

Amplo suporte a estruturas

O Amazon SageMaker configura e otimiza automaticamente o TensorFlow, o Apache MXNet, o Chainer, o PyTorch, o Scikit-learn e o SparkML para facilitar o uso dessas estruturas. Adicionaremos outras estruturas principais nos próximos meses. Mas você pode importar a qualquer momento a estrutura que quiser para o Amazon SageMaker. Basta incorporá-la a um contêiner do Docker armazenado no Amazon EC2 Container Registry.

Suporte ao aprendizado por reforço com o Amazon SageMaker RL

O Amazon SageMaker oferece suporte ao aprendizado por reforço, além do aprendizado tradicional supervisionado e não supervisionado. Agora, o SageMaker possui algoritmos de aprendizado por reforço integrados e totalmente gerenciados, incluindo alguns dos mais recentes e de melhor desempenho na literatura acadêmica. O SageMaker oferece suporte ao RL em várias estruturas, incluindo o TensorFlow e o MXNet, bem como novas estruturas desenvolvidas a partir do zero para reforço de conhecimento, como Intel Coach e Ray RL. Diversos ambientes de simulação física 2D e 3D são compatíveis, inclusive ambientes baseados na interface OpenGym de código aberto. Além disso, o SageMaker RL permite treinar usando ambientes 3D virtuais criados no Amazon Sumerian e no Amazon RoboMaker. Para ajudar você a começar, o SageMaker também fornece uma variedade de exemplos de bloco de anotações e tutoriais. 

A maioria dos modelos de machine learning se enquadra em uma categoria denominada aprendizado supervisionado. Esse método exige muitos dados de treinamento rotulados, mas os modelos que você cria são capazes de tomar decisões sofisticadas. É a abordagem comum com modelos de visão computacional, fala e linguagem. Outra categoria comum de machine learning, mas menos usada, é denominada aprendizado não supervisionado. Aqui, os algoritmos tentam identificar uma estrutura oculta em dados não rotulados. O impedimento para treinar um modelo não supervisionado é muito menor, mas a desvantagem é que o modelo toma decisões menos sofisticadas. Frequentemente, modelos não supervisionados são usados ​​para identificar anomalias nos dados, como flutuações anormais na temperatura ou sinais de invasão de rede.

O aprendizado por reforço (RL) surgiu como uma terceira abordagem complementar ao machine learning. O RL tem uma abordagem muito diferente para os modelos de treinamento. Virtualmente, ele precisa de dados de treinamento não rotulados, mas ainda pode atender (e em alguns casos exceder) níveis humanos de sofisticação. A melhor coisa sobre o RL é que ele pode aprender a modelar uma variedade complexa de comportamentos para chegar a um resultado desejado, em invés de simplesmente tomar uma decisão única. Atualmente, um dos aplicativos mais comuns do RL é a formação de veículos autônomos para navegar até um destino.

Uma maneira fácil de entender como o RL funciona é pensar em um videogame simples em que um personagem precisa passar por um labirinto coletando bandeiras e evitando inimigos. Em vez de um jogo humano, o algoritmo controla o personagem e joga milhões de jogos. Tudo o que ele precisa saber para começar é que o personagem pode se mover para cima, para baixo, para a esquerda e para a direita e que será recompensado com a pontuação. Em seguida, o algoritmo aprenderá a jogar para obter a maior pontuação possível. Ele aprenderá comportamentos que melhoram a pontuação (como pegar bandeiras ou aproveitar multiplicadores de pontuação) e minimizar as penalidades (como ser atingido por um inimigo.) Com o tempo, os algoritmos do RL podem aprender estratégias avançadas para dominar o jogo, como esvaziar primeiro a parte inferior do labirinto, como e quando ganhar energia e como explorar os comportamentos do inimigo.

O RL pode ser um multiplicador de força em técnicas tradicionais de machine learning. Por exemplo, o RL e o aprendizado supervisionado foram combinados para criar esquemas personalizados de tratamento em saúde, otimizar cadeias de suprimento de fabricação, melhorar o desempenho de turbinas eólicas, dirigir carros autônomos, operar robôs com segurança e até mesmo criar aulas personalizadas e planos de aprendizado para os alunos.

Teste e crie protótipos localmente

Os contêineres Docker de código aberto do Apache MXNet e do Tensorflow usados no Amazon SageMaker estão disponíveis no GitHub. Você pode fazer download desses contêineres para seu ambiente local e usar o SDK para Python do Amazon SageMaker para testar seus scripts antes de implantá-los nos ambientes de treinamento ou de hospedagem do Amazon SageMaker. Quando você estiver pronto para passar dos testes locais para o treinamento e hospedagem em produção, basta alterar uma única linha de código.

Treine

Treinamento em um clique

Quando você estiver pronto para treinar no Amazon SageMaker, basta especificar a localização dos dados no Amazon S3 e indicar o tipo e a quantidade de instâncias de Machine Learning do Amazon SageMaker necessárias para começar a usar com um único clique no console. O Amazon SageMaker configura um cluster de computação distribuído, faz o treinamento, envia o resultado para o Amazon S3 e desfaz o cluster após a conclusão. 

O treinamento de modelos é fácil com o SageMaker; basta especificar a localização dos seus dados no S3 e o Amazon SageMaker executará seu algoritmo em um cluster de treinamento isolado na própria rede definida de software configurada para suas necessidades. Basta escolher o tipo de instância (inclusive instâncias de GPU P3, que são ideais para treinamento rápido e eficiente) e o Amazon SageMaker criará um cluster em um grupo de escalabilidade automática; anexará volumes do EBS a cada nó; configurará os pipelines de dados; e começará a treinar com seu script do TensorFlow, do MXNet, do Chainer ou do PyTorch, com os próprios algoritmos da Amazon ou com os algoritmos fornecidos no contêiner. Quando concluído, ele envia os resultados ao S3 e desfaz o cluster automaticamente.

Para facilitar a realização de treinamento em larga escala, otimizamos o stream dos dados de treinamento vindos do S3. Pela API, você pode especificar se deseja que todos os dados sejam enviados para cada nó no cluster ou se gostaria que o Amazon SageMaker gerenciasse a distribuição dos dados pelos nós, dependendo das necessidades do seu algoritmo.

Combinado com algoritmos internos, o dimensionamento do treinamento que é viabilizado pelo Amazon SageMaker pode reduzir bastante o tempo e o custo dos ciclos de treinamento. 

Ajuste automático de modelos

O Amazon SageMaker pode ajustar seu modelo automaticamente ajustando milhares de combinações de parâmetros de algoritmo diferentes a fim de obter as previsões mais exatas que o modelo é capaz de produzir. 

Enquanto ajusta seu modelo para ser mais exato, você precisa alterar duas alavancas importantes: modificar as entradas de dados fornecidas ao modelo (p. ex., usar o logaritmo de um número) e ajustar os parâmetros do algoritmo. Eles são chamados de hiperparâmetros, e encontrar os valores certos pode ser um desafio. Normalmente, você começa com algo aleatório e vai iterando com ajustes conforme vai vendo o impacto das alterações. O ciclo pode ser longo, dependendo de quantos hiperparâmetros o seu modelo tem.

O Amazon SageMaker simplifica isso oferecendo ajuste automático de modelos como opção durante o treinamento. O Amazon SageMaker usará machine learning para ajustar o modelo de machine learning. Ele funciona aprendendo o que afeta os diferentes tipos de dados que estão no modelo e aplicando esse conhecimento em várias cópias do modelo para localizar rapidamente o melhor resultado possível. Como desenvolvedor ou cientista de dados, isso significa que você só precisa mesmo se preocupar com os ajustes que deseja fazer nos dados que serão passados para o modelo, o que reduz bastante a quantidade de preocupações durante o treinamento.

Ao iniciar o ajuste automático de modelos, basta especificar o número de trabalhos de treinamento por meio da API e o Amazon SageMaker fará o resto. 

Treine uma vez, execute em qualquer lugar

O Amazon SageMaker Neo permite que os modelos de machine learning sejam treinados uma vez executados em qualquer lugar na nuvem e localmente. Normalmente, otimizar modelos de machine learning para execução em várias plataformas é extremamente difícil, pois os desenvolvedores precisam ajustar manualmente os modelos para a configuração específica de hardware e software de cada plataforma. O Neo elimina o tempo e o esforço necessários para fazer isso otimizando automaticamente os modelos do TensorFlow, do MXNet, do PyTorch, do ONNX e do XGBoost para implantação em processadores ARM, Intel e Nvidia atualmente, com suporte para hardware Cadence, Qualcomm e Xilinx em breve. Você pode acessar o SageMaker Neo no console do SageMaker e, com apenas alguns cliques, produzir um modelo otimizado para sua instância de nuvem ou dispositivo de ponto. Os modelos otimizados são executados até duas vezes mais rápido e consomem menos de um centésimo do espaço de armazenamento dos modelos tradicionais. 

Saiba mais

Pesquisa de trabalho de treinamento

O Amazon SageMaker Search permite que você encontre e avalie rapidamente os treinamentos de modelo mais relevantes de possivelmente centenas e milhares de trabalhos de treinamento de modelo do Amazon SageMaker. Atualmente, o SageMaker Search está disponível em versão beta por meio do Console de Gerenciamento da AWS e das APIs do AWS SDK para o Amazon SageMaker.

Desenvolver um modelo de machine learning requer experimentação contínua, testes de novos algoritmos de aprendizado e ajustes de parâmetros de hyper, observando o impacto no desempenho e na precisão do modelo. Geralmente, esse exercício iterativo leva à explosão de centenas de experimentos de treinamento de modelo e versões de modelo, atrasando a convergência e a descoberta do modelo decisivo. Além disso, a explosão de informações dificulta muito o rastreamento da linhagem de uma versão do modelo, ou seja, a combinação exclusiva de conjuntos de dados, algoritmos e parâmetros que fabricaram esse modelo em primeiro lugar.

Com o Amazon SageMaker Search, você pode organizar, acompanhar e avaliar de maneira rápida e fácil seus trabalhos de treinamento de modelo no Amazon SageMaker. Você pode pesquisar por todos os atributos de definição a partir do algoritmo de aprendizado usado, das configurações de parâmetro hyper, dos conjuntos de dados de treinamento usados ​​para uniformizar as tags que você adicionou nos trabalhos de treinamento de modelo. Você também pode comparar e classificar rapidamente suas execuções de treinamento com base em suas métricas de desempenho, como perda de treinamento e precisão de validação, criando, assim, classificações para escolher modelos decisivos para implantação em ambientes de produção. Finalmente, com o Amazon SageMaker Search, você pode rastrear rapidamente a linhagem completa de um modelo implantado em ambientes ativos até o conjunto de dados usado no treinamento ou na validação do modelo.

Implante

Implantação com um clique

Também é possível implantar seu modelo em instâncias do Amazon Machine Learning com escalabilidade automática entre várias zonas de disponibilidade para obter alta redundância. Basta especificar o tipo de instância e os números mínimo e máximo desejados e o Amazon SageMaker cuidará do resto. O serviço inicia as instâncias, implanta o modelo e configura o endpoint HTTPS seguro para o aplicativo. O aplicativo precisa apenas incluir uma chamada à API para esse endpoint a fim de obter inferência de baixa latência/alto throughput. Essa arquitetura permite integrar novos modelos aos minutos do aplicativo, já que as alterações do modelo não exigem mais alterações de código. 

Testes A/B automáticos

O Amazon SageMaker também pode gerenciar os testes A/B do modelo para você. Você pode configurar o ponto de extremidade para espalhar o tráfego por até cinco modelos diferentes e definir a porcentagem de chamadas de inferência com que cada um deve lidar. Você pode mudar tudo isso na hora, o que é bem flexível na hora de fazer experiências e determinar qual modelo produz os resultados mais exatos no mundo real. 

Hospedagem gerenciada com o Auto Scaling

O Amazon SageMaker gerencia a infraestrutura de computação de produção por você para fazer verificações de integridade, aplicar patches de segurança e realizar manutenções de rotina, tudo com o monitoramento e o registro em logs do Amazon CloudWatch. 

Batch Transform

O Batch Transform permite que você execute previsões em dados em lotes grandes ou pequenos. Não há necessidade de dividir o conjunto de dados em diversas partes nem gerenciar endpoints em tempo real. Com uma API simples, você pode solicitar previsões para um grande número de registros de dados e transformar os dados de maneira rápida e fácil. 

 

Pipelines de inferência

O Amazon SageMaker permite implantar pipelines de inferência para que você possa transmitir dados de entrada brutos e executar pré-processamento, previsões e pós-processamento em solicitações de inferência em lote e em tempo real. Os pipelines de inferência podem ser compostos de qualquer estrutura de machine learning, algoritmo integrado ou contêineres personalizados utilizáveis ​​no Amazon SageMaker. Você pode criar pipelines de processamento de dados de recursos e de engenharia de recursos com um conjunto de transformadores de recursos disponíveis nos contêineres de estruturas SparkML e Scikit-learn no Amazon SageMaker, além de implantá-los como parte dos pipeline de inferência para reutilizar o código de processamento de dados e facilitar o gerenciamento dos processos de machine learning.

 

Saiba mais sobre a definição de preço do Amazon SageMaker

Acesse a página de definição de preço
Pronto para começar?
Cadastrar-se
Mais dúvidas?
Entre em contato conosco