As secções seguintes apresentam o modelo de dados do Vertex AI Feature Store (antigo) e a terminologia usada para descrever os recursos e os componentes do Vertex AI Feature Store (antigo).
Modelo de dados do Vertex AI Feature Store (antigo)
O Vertex AI Feature Store (antigo) usa um modelo de dados de séries cronológicas para armazenar uma série de valores para funcionalidades. Este modelo permite que o Vertex AI Feature Store (antigo) mantenha os valores das caraterísticas à medida que mudam ao longo do tempo. O Vertex AI Feature Store (antigo) organiza os recursos hierarquicamente
pela seguinte ordem: Featurestore -> EntityType -> Feature
. Tem de criar estes recursos antes de poder importar dados para o Vertex AI Feature Store (antigo).
Por exemplo, suponha que tem os seguintes dados de origem de amostra de uma tabela do BigQuery. Estes dados de origem referem-se a filmes e respetivas funcionalidades.
Antes de poder importar estes dados para o Vertex AI Feature Store (antigo), tem de criar um featurestore, que é um contentor de nível superior para todos os outros recursos. Na Feature Store, crie tipos de entidades que agrupam e contêm funcionalidades relacionadas. Em seguida, pode criar elementos que sejam mapeados para elementos nos seus dados de origem. Os nomes do tipo de entidade e das funcionalidades podem refletir os nomes dos cabeçalhos das colunas, mas não é obrigatório.
Neste exemplo, o cabeçalho da coluna movie_id
pode ser mapeado para um tipo de entidade
movie
. average_rating
, title
e genre
são funcionalidades do tipo de entidade movie
. Os valores em cada coluna são mapeados para instâncias específicas de um tipo de entidade ou funcionalidades, que são denominadas entidades e valores de funcionalidades.
A coluna de data/hora indica quando os valores das funcionalidades foram gerados. No featurestore, as datas/horas são um atributo dos valores das funcionalidades e não um tipo de recurso separado. Se todos os valores das funcionalidades foram gerados ao mesmo tempo, não é necessário ter uma coluna de data/hora. Pode especificar a data/hora como parte do seu pedido de importação.
Featurestore
Um Feature Store é o contentor de nível superior para tipos de entidades, funcionalidades e valores de funcionalidades. Normalmente, uma organização cria uma feature store partilhada para importar, publicar e partilhar funcionalidades em todas as equipas da organização. No entanto, por vezes, pode optar por criar várias lojas de funcionalidades no mesmo projeto para isolar ambientes. Por exemplo, pode ter featurestores separadas para experimentação, testes e produção.
Tipo de entidade
Um tipo de entidade é uma coleção de funcionalidades relacionadas semanticamente. Define os seus próprios tipos de entidades com base nos conceitos relevantes para o seu exemplo de utilização. Por exemplo, um serviço de filmes pode ter os tipos de entidades movie
e user
, que agrupam funcionalidades relacionadas que correspondem a filmes ou clientes.
Entidade
Uma entidade é uma instância de um tipo de entidade. Por exemplo, movie_01
e
movie_02
são entidades do tipo de entidade movie
. Num featurestore, cada entidade tem de ter um ID exclusivo e tem de ser do tipo STRING
.
Funcionalidade
Uma caraterística é uma propriedade ou um atributo mensurável de um tipo de entidade. Por exemplo, o tipo de entidade movie
tem funcionalidades como average_rating
e title
que
monitorizam várias propriedades de filmes. As funcionalidades estão associadas a tipos de entidades.
As funcionalidades têm de ser distintas num determinado tipo de entidade, mas não têm de ser globalmente únicas. Por exemplo, se usar title
para dois tipos de entidades diferentes, o Vertex AI Feature Store (antigo) interpreta title
como duas funcionalidades diferentes. Quando lê valores de funcionalidades, fornece a funcionalidade e o respetivo tipo de entidade como parte do pedido.
Quando cria uma funcionalidade, especifica o respetivo tipo de valor, como BOOL_ARRAY
, DOUBLE
, DOUBLE_ARRAY
e STRING
. Este valor determina os tipos de valores
que pode importar para uma funcionalidade específica. Para mais informações sobre os tipos de valores suportados, consulte valueType
na referência da API.
Valor da funcionalidade
O Vertex AI Feature Store (antigo) captura valores de funcionalidades para uma funcionalidade num momento específico. Por outras palavras, pode ter vários valores para uma determinada entidade e funcionalidade. Por exemplo, a entidade movie_01
pode ter vários valores de caraterísticas para a caraterística average_rating
. O valor pode ser 4.4
num determinado momento e 4.8
num momento posterior. O Vertex AI Feature Store (antigo) associa um identificador de tuplo a cada valor de funcionalidade (entity_id
, feature_id
, timestamp
), que o Vertex AI Feature Store (antigo) usa para procurar valores no momento da publicação.
O Vertex AI Feature Store (antigo) armazena valores discretos, mesmo que o tempo seja contínuo. Quando pede um valor de funcionalidade no momento t
, o Vertex AI Feature Store (antigo) devolve o valor armazenado mais recente no momento t
ou antes. Por exemplo, se o Vertex AI Feature Store (antigo) armazenar as informações de localização de um carro nos momentos 100
e 110
, a localização no momento 100
é usada para pedidos em todos os momentos entre 100
(inclusive) e 110
(exclusivo). Se precisar de uma resolução mais elevada, pode, por exemplo, inferir a localização entre valores ou aumentar a taxa de amostragem dos seus dados.
Importação de funcionalidades
A importação de funcionalidades é o processo de importação de valores de funcionalidades calculados pelos seus trabalhos de engenharia de funcionalidades para um repositório de funcionalidades. Antes de poder importar dados, o tipo de entidade e as funcionalidades correspondentes têm de ser definidos no Feature Store. O Vertex AI Feature Store (antigo) oferece importação em lote e com streaming, o que lhe permite adicionar valores de caraterísticas em massa ou em tempo real.
Por exemplo, pode ter dados de origem calculados que residem em localizações como o BigQuery ou o Cloud Storage. Pode importar dados em lote dessas origens para um repositório de funcionalidades central, para que esses valores de funcionalidades possam ser fornecidos num formato uniforme. À medida que os dados de origem mudam, pode usar a importação de streaming para incorporar rapidamente essas alterações no seu Feature Store. Desta forma, tem os dados mais recentes disponíveis para cenários de publicação online.
Para mais informações, consulte os artigos Funcionalidade de importação em lote de valores ou Importação em streaming.
Publicação de funcionalidades
A publicação de funcionalidades é o processo de exportação de valores de funcionalidades armazenados para preparação ou inferência. O Vertex AI Feature Store (antigo) oferece dois métodos para publicar funcionalidades: em lote e online. O serviço em lote destina-se a um débito elevado e ao serviço de grandes volumes de dados para processamento offline (como para a preparação de modelos ou previsões em lote). A publicação online destina-se à obtenção de dados de baixa latência de pequenos lotes de dados para processamento em tempo real (como para previsões online).
Para mais informações, consulte o artigo sobre a publicação online ou em lote.
Vista de entidade
Quando obtém valores de um Feature Store, o serviço devolve uma vista de entidade que contém os valores das funcionalidades que pediu. Pode considerar uma vista de entidade como uma projeção das funcionalidades e dos valores que o Vertex AI Feature Store (antigo) devolve de um pedido de fornecimento online ou em lote:
- Para pedidos de publicação online, pode obter todas ou um subconjunto de funcionalidades para um tipo de entidade específico.
- Para pedidos de publicação em lote, pode obter todas ou um subconjunto de funcionalidades para um ou mais tipos de entidades. Por exemplo, se as funcionalidades estiverem distribuídas por vários tipos de entidades, pode obtê-las em conjunto num único pedido, que junta essas funcionalidades. Em seguida, pode usar os resultados para os introduzir num pedido de aprendizagem automática ou de previsão em lote.
Exportar dados
O Vertex AI Feature Store (antigo) permite-lhe exportar dados dos seus featurestores para poder fazer uma cópia de segurança e arquivar valores de funcionalidades. Pode optar por exportar os valores das funcionalidades mais recentes (captura de ecrã) ou um intervalo de valores (exportação completa). Para mais informações, consulte Exporte valores de funcionalidades.
O que se segue?
- Saiba como configurar o seu projeto para o Vertex AI Feature Store (antigo).
- Saiba mais sobre os requisitos dos dados de origem.