O que é um repositório de recursos?
Esta página explica o que é um repositório de recursos e quais benefícios ele fornece, além das vantagens específicas do Repositório de Recursos do Databricks.
Um repositório de recursos é um repositório centralizado que permite que os cientistas de dados encontrem e compartilhem recursos e que garante que o mesmo código usado para calcular os valores do recurso seja usado para treinamento e inferência de modelo.
O aprendizado de máquina usa os dados existentes para criar um modelo e prever resultados futuros. Em quase todos os casos, os dados brutos exigem pré-processamento e transformação antes que possam ser usados para criar um modelo. Esse processo é chamado de engenharia de recursos e as saídas dele são chamadas de recursos: os blocos de construção do modelo.
O desenvolvimento de recursos é complexo e demorado. Uma complicação adicional é que, para o aprendizado de máquina, os cálculos de recursos precisam ser feitos para o treinamento do modelo e depois novamente, quando o modelo é usado para fazer previsões. Essas implementações podem não ser feitas pela mesma equipe ou usando o mesmo ambiente de código, o que pode levar a atrasos e erros. Além disso, equipes diferentes em uma organização geralmente têm necessidades de recursos semelhantes, mas podem não estar cientes do trabalho que outras equipes fizeram. Um repositório de recursos foi projetado para resolver esses problemas.
Por que usar o Repositório de Recursos do Databricks?
O Repositório de Recursos do Databricks é totalmente integrado a outros componentes do Azure Databricks.
- Detectabilidade. A interface do usuário do Repositório de Recursos, acessível no workspace do Databricks, permite navegar e pesquisar recursos existentes.
- Linhagem. Quando você cria uma tabela de recursos no Azure Databricks, as fontes de dados usadas para criar a tabela de recursos são salvas e acessíveis. Para cada recurso em uma tabela de recursos, também é possível acessar os modelos, notebooks, trabalhos e pontos de extremidade que o utilizam.
- Integração com a pontuação e o fornecimento de modelo. Ao usar recursos do Repositório de Recursos para treinar um modelo, esse modelo é empacotado com metadados de recursos. Quando você usa o modelo para pontuação em lote ou inferência online, ele recupera automaticamente os recursos do Repositório de Recursos. O chamador não precisa saber sobre eles ou incluir lógica para pesquisar ou unir recursos a fim de pontuar novos dados. Isso facilita muito a implantação e as atualizações do modelo.
- Pesquisas pontuais. O Repositório de Recursos dá suporte a casos de uso de série temporal e baseados em eventos que exigem uma correção pontual.
Engenharia de Recursos no Catálogo do Unity
Com o Databricks Runtime 13.3 LTS e superior, se o seu espaço de trabalho estiver habilitado para o Unity Catalog, o Unity Catalog se tornará seu repositório de recursos. Você pode usar qualquer tabela Delta ou o Delta Live Tables no Catálogo do Unity com uma chave primária como uma tabela de recursos para treinamento ou inferência de modelo. O Catálogo do Unity fornece descoberta de recursos, governança, linhagem e acesso entre espaços de trabalho.
Como funciona o Databricks Feature Store?
O fluxo de trabalho típico de machine learning com o Repositório de Recursos segue este caminho:
- Escrever o código para converter dados brutos em recursos e criar um DataFrame do Spark contendo os recursos desejados.
- Quanto aos espaços de trabalho que estão habilitados para o Catálogo do Unity, registre o DataFrame como uma tabela de recursos no Catálogo do Unity. Se seu espaço de trabalho não estiver habilitado para o Catálogo do Unity, grave o DataFrame como uma tabela de recursos no Repositório de Recursos do Espaço de Trabalho.
- Treine um modelo usando recursos do repositório de recursos. Ao fazer isso, o modelo armazena as especificações dos recursos usados para treinamento. Quando o modelo é usado para inferência, ele une automaticamente os recursos das tabelas de recursos apropriadas.
- Registre o modelo no Registro de modelos.
Agora é possível usar o modelo para fazer previsões sobre novos dados.
Para casos de uso em lote, o modelo recupera automaticamente os recursos necessários no Repositório de Recursos.
Para casos de uso de distribuição em tempo real, publique os recursos em uma tabela online. Também há suporte para lojas online de terceiros. Confira Lojas online de terceiros.
No momento da inferência, o modelo faz a leitura dos recursos pré-computados do Repositório de Recursos online e os une aos dados fornecidos na solicitação do cliente para o ponto de extremidade de serviço do modelo.
Começar a usar o Repositório de Recursos
Confira os seguintes artigos para começar a usar o Repositório de Recursos:
- Experimente um dos notebooks de exemplo que ilustram as funcionalidades do repositório de recursos.
- Consulte o material de referência para a API do Python do Repositório de Recursos.
- Saiba mais sobre modelos de treinamento com o Repositório de Recursos.
- Saiba mais sobre a Engenharia de Recursos no Catálogo do Unity.
- Saiba mais sobre o Repositório de Recursos do Workspace.
- Use as tabelas de recursos de séries temporais e pesquisas pontuais para recuperar os valores de recursos mais recentes a partir de um determinado momento para treinamento ou pontuação de um modelo.
- Saiba mais sobre como publicar recursos em repositórios de recursos online ou tabelas online para atendimento em tempo real e pesquisa automática de recursos.
- Saiba mais sobre o Serviço de Recursos, que disponibiliza recursos na plataforma Databricks com baixa latência para modelos ou aplicativos implantados fora do Databricks.
Quando você usa a Engenharia de Recursos no Catálogo do Unity, o Catálogo do Unity cuida do compartilhamento de tabelas de recursos entre workspaces e você usa privilégios do Catálogo do Unity para controlar o acesso às tabelas de recursos. Os links a seguir são apenas para o Repositório de Recursos do Workspace:
Tipos de dados com suporte
A Engenharia de Recursos no Catálogo do Unity e o Repositório de Recursos do Workspace dá suporte para os seguintes tipos de dados PySpark:
IntegerType
FloatType
BooleanType
StringType
DoubleType
LongType
TimestampType
DateType
ShortType
ArrayType
BinaryType
[1]DecimalType
[1]MapType
[1]
[1] há suporte para BinaryType
, DecimalType
e MapType
em todas as versões da Engenharia de Recursos no Catálogo do Unity e no Repositório de Recursos do Workspace v0.3.5 ou superior.
Os tipos de dados listados acima dão suporte a tipos de recursos comuns em aplicativos de machine learning. Por exemplo:
- Você pode armazenar vetores, tensores e inserções densos como
ArrayType
. - Você pode armazenar vetores, tensores e inserções esparsos como
MapType
. - Você pode armazenar texto como
StringType
.
Quando publicados em repositórios online, os recursos ArrayType
e MapType
são armazenados no formato JSON.
A interface do usuário do Repositório de Recursos exibe metadados em tipos de dados de recurso:
Mais informações
Para obter mais informações sobre as melhores práticas para usar os Repositórios de Recursos, baixe o Manual Abrangente para Repositórios de Recursos.
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de