Modelo e recursos de dados

Veja nas seções a seguir o modelo de dados e a terminologia do Feature Store da Vertex AI que é usado para descrever os recursos e componentes do Feature Store da Vertex AI.

Modelo de dados da Vertex AI Feature Store (legado)

O Feature Store da Vertex AI usa um modelo de dados de série temporal para armazenar uma série de valores para recursos. Esse modelo permite que o Feature Store da Vertex AI mantenha os valores dos recursos à medida que eles mudam ao longo do tempo. O Feature Store da Vertex AI organiza os recursos hierarquicamente na seguinte ordem: Featurestore -> EntityType -> Feature. É preciso criar esses recursos antes de importar dados no Vertex AI Feature Store (legado).

Como exemplo, suponha que você tenha os seguintes dados de origem de amostra de uma tabela do BigQuery. Os dados de origem são os filmes e os recursos deles.

Mostra como os dados de origem são mapeados para o modelo de dados do Feature Store da Vertex AI

Antes de importar esses dados no Vertex AI Feature Store (legado), é necessário criar uma featurestore, que é um contêiner de nível superior para todos os outros recursos. No featurestore, crie tipos de entidade que agrupem e contenham recursos relacionados. Assim, é possível criar recursos que são mapeados para atributos nos dados de origem. Os nomes do tipo e os recursos da entidade podem espelhar os nomes dos cabeçalhos das colunas, mas isso não é obrigatório.

Neste exemplo, o cabeçalho da coluna movie_id pode ser mapeado para um tipo de entidade movie. O average_rating, title e genre são recursos do tipo de entidade movie. Os valores em cada coluna mapeiam instâncias específicas de um tipo de entidade ou atributos, que são chamados de entidades e valores de recurso.

A coluna de carimbo de data/hora indica quando os valores do recurso foram gerados. No featurestore, os carimbos de data/hora são um atributo dos valores dos atributos, não um tipo de recurso separado. Se todos os valores de atributo forem gerados ao mesmo tempo, você não precisará ter uma coluna de carimbo de data/hora. É possível especificar o carimbo de data/hora como parte de sua solicitação de importação.

Featurestore

Um featurestore é o contêiner de nível superior para tipos de entidades, recursos e valores de recursos. Normalmente, uma organização cria um featurestore compartilhado para importar, disponibilizar e compartilhar atributos entre todas as equipes da organização. No entanto, às vezes é possível criar vários featurestores no mesmo projeto para isolar ambientes. Por exemplo, você pode ter featurestores separados para experimentação, teste e produção.

Tipo de entidade

Um tipo de entidade é um conjunto de recursos semanticamente relacionados. Você define os próprios tipos de entidade, com base nos conceitos relevantes para seu caso de uso. Por exemplo, um serviço de filme pode ter os tipos de entidade movie e user, que agrupam recursos relacionados que correspondem a filmes ou clientes.

Entity

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. Em um featurestore, cada entidade precisa ter um ID exclusivo e ser do tipo STRING.

Recurso

Um recurso é uma propriedade ou atributo mensurável de um tipo de entidade. Por exemplo, o tipo de entidade movie tem recursos como average_rating e title que rastreiam várias propriedades de filmes. Os recursos são associados a tipos de entidade. Os recursos precisam ser distintos dentro de um determinado tipo de entidade, mas não precisam ser globalmente exclusivos. Por exemplo, se você usar title para dois tipos de entidade diferentes, o Feature Store da Vertex AI interpretará title como dois recursos diferentes. Ao ler os valores de recursos, você fornece o recurso e o tipo de entidade como parte da solicitação.

Ao criar um recurso, você especifica seu tipo de valor, como BOOL_ARRAY, DOUBLE, DOUBLE_ARRAY e STRING. Esse valor determina os tipos de valores que podem ser importados para um determinado atributo. Para mais informações sobre os tipos de valores compatíveis, consulte o valueType na referência da API.

Valor do atributo

O Feature Store da Vertex AI captura valores de recursos para um recurso em um momento específico. Em outras palavras, é possível ter vários valores para uma determinada entidade e recurso. Por exemplo, a entidade movie_01 pode ter vários valores de recursos para o recurso average_rating. O valor pode ser 4.4 de uma vez e 4.8 em outro momento, O Feature Store da Vertex AI associa um identificador de tupla a cada valor de recurso (entity_id, feature_id, timestamp), que o Feature Store da Vertex AI usa para procurar valores no momento da veiculação.

O Vertex AI Feature Store armazena valores discretos, mesmo que o tempo seja contínuo. Quando você solicita um valor de recurso no momento de t, o Feature Store do Vertex AI retorna o valor armazenado mais recente no momento ou antes do t. Por exemplo, se a Feature Store da Vertex AI armazenar as informações de local de um carro às vezes 100 e 110, a localização no momento 100 será usada para solicitações sempre 100 (inclusivo) e 110 (exclusivo). Se você precisa de uma resolução mais alta, é possível inferir, por exemplo, o local entre os valores ou aumentar a taxa de amostragem dos seus dados.

Importação de atributos

Importação de atributos é o processo de importação de valores de atributos calculados pelos jobs de engenharia de atributos para um featurestore. Antes de importar dados, o tipo de entidade e os atributos correspondentes precisam ser definidos no featurestore. O Vertex AI Feature Store (legado) permite a importação em lote e de streaming, permitindo que você adicione valores de recursos em massa ou em tempo real.

Por exemplo, você pode ter dados de origem calculados que residem em locais como BigQuery ou Cloud Storage. É possível importar em lote os dados dessas fontes em um featurestore central para que esses valores de recursos possam ser veiculados em um formato uniforme. À medida que os dados de origem mudam, é possível usar a importação de streaming para colocar essas mudanças rapidamente no featurestore. Dessa forma, você terá os dados mais recentes disponíveis para os cenários de exibição on-line.

Para mais informações, consulte Valores de recursos de importação em lote ou Importação de streaming.

Disponibilização de atributos

A disponibilização de recursos é o processo de exportação de valores de atributos armazenados para treinamento ou inferência. O Feature Store da Vertex AI oferece dois métodos para exibir recursos: em lote e on-line. A disponibilização em lote é destinada à alta capacidade e à disponibilização de grandes volumes de dados para processamento off-line (como para treinamento de modelos ou previsões em lote). A exibição on-line serve para recuperação de dados de baixa latência de pequenos lotes de dados para processamento em tempo real (como para previsões on-line).

Para mais informações, consulte a exibição on-line ou em lote.

Visualização de entidade

Quando você recupera valores de um featurestore, o serviço retorna uma visualização de entidade que contém os valores de recurso solicitados. Pense em uma visualização de entidade como uma projeção dos recursos e valores que o Feature Store da Vertex AI retorna de uma solicitação de disponibilização on-line ou em lote:

  • Para solicitações de veiculação on-line, você pode ter todos ou um subconjunto de recursos para um tipo de entidade específico.
  • Para solicitações de veiculação em lote, é possível receber todos ou um subconjunto de recursos para um ou mais tipos de entidade. Por exemplo, se os recursos estiverem distribuídos em vários tipos de entidade, você poderá recuperá-los em uma única solicitação, que une esses recursos. Depois, é possível usar os resultados para alimentar uma solicitação de machine learning ou previsão em lote.

Exportar dados

O Vertex AI Feature Store permite exportar dados dos seus featurestores para que você possa fazer backup e arquivar valores de recursos. É possível exportar os valores de recurso mais recentes (snapshot) ou um intervalo de valores (exportação completa). Para mais informações, consulte Exportar valores de recurso.

A seguir