As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Preparando dados de interação de itens para treinamento
Uma interação de item é um evento de interação positiva entre um usuário e um item em seu catálogo. Por exemplo, um usuário assistindo a um filme, visualizando um anúncio ou comprando um par de sapatos. Você deve importar dados sobre interações entre usuários e itens para um conjunto de dados de interações com itens. Você pode gravar vários tipos de eventos, como clicar, assistir ou comprar.
Por exemplo, se um usuário clicar em um item específico e depois curtir o item, você pode fazer com que o Amazon Personalize use esses eventos como dados de treinamento. Para cada evento, você registraria o ID do usuário, o ID do item, o carimbo de data/hora (no formato de horário Unix epoch) e o tipo de evento (clicar e curtir). Depois, você deve adicionar os dois eventos de interação a um conjunto de dados de interações com itens.
Para todos os casos de uso de domínio e receitas personalizadas, seus dados de interações de itens em massa devem estar em um CSV arquivo. Cada linha deve representar uma única interação entre um usuário e um item. Depois de concluir a preparação dos dados, você estará pronto para criar um JSON arquivo de esquema. Esse arquivo informa ao Amazon Personalize sobre a estrutura dos seus dados. Para obter mais informações, consulte Criação de JSON arquivos de esquema para esquemas do Amazon Personalize.
As seções a seguir fornecem mais informações sobre como preparar os dados de interação do item para o Amazon Personalize. Para obter diretrizes de formato de dados em massa para todos os tipos de dados, consulte as diretrizes de formato de dados em massa
Tópicos
Requisitos de dados de interação do item
As seções a seguir listam os requisitos de dados de interação do item para o Amazon Personalize. Para cotas adicionais, consulteCotas e endpoints do Amazon Personalize.
Requisitos mínimos de treinamento
Para todos os casos de uso de domínio e receitas personalizadas, seus dados de interações de itens em massa devem ter o seguinte:
-
No mínimo, mil registros de interações com itens de usuários que interagem com itens do catálogo. Essas interações podem ser de importações em massa, eventos transmitidos ou ambas as coisas.
-
No mínimo 25 usuários únicos IDs com pelo menos duas interações de itens para cada um.
Para obter recomendações de qualidade, o ideal é que você tenha, no mínimo, cinquenta mil interações com itens de, pelo menos, mil usuários com duas ou mais interações com itens cada.
Para criar um recomendador ou uma solução personalizada, é necessário, no mínimo, criar um conjunto de dados de interações com itens.
Requisitos de coluna
Os dados de interações do item devem ter as seguintes colunas.
-
USER_ID — O identificador exclusivo do usuário que interagiu com o item. Todo evento deve ter um USER _ID. Ele deve ter
string
um tamanho máximo de 256 caracteres. -
ITEM_ID — O identificador exclusivo do item com o qual o usuário interagiu. Todo evento deve ter um ID de item. Ele deve ter
string
um tamanho máximo de 256 caracteres. -
TIMESTAMP— A hora em que o evento ocorreu (no formato de hora de época do Unix em segundos). Cada interação deve ter umTIMESTAMP. Para obter mais informações, consulte Dados de carimbo de data/hora.
-
EVENT_ TYPE — A natureza do evento de interação do item, como clicar, assistir ou comprar. Para recomendadores de domínio, você deve ter uma coluna de tipo de evento e cada interação deve ter um tipo de evento. Para todas as receitas personalizadas, uma TYPE coluna EVENT _ é recomendada, mas opcional. Se você adicioná-lo, cada evento deverá ter um tipo de evento. Para ter mais informações, consulte Tipo de evento e dados de valor do evento.
Você pode adicionar colunas personalizadas adicionais, dependendo do seu caso de uso e dos seus dados. O número máximo de colunas de metadados opcionais é 5. Essas colunas podem incluir valores vazios/nulos. Recomendamos que essas colunas estejam no mínimo 70% completas.
Dados de carimbo de data/hora
Os dados do carimbo de data/hora devem estar no formato de hora de época do Unix em segundos. Por exemplo, o carimbo de data/hora Unix epoch em segundos para a data 31 de julho de 2020 é 1596238243. Para converter datas em timestamps Unix epoch, use um conversor Epoch - conversor de timestamp Unix.
O Amazon Personalize usa dados de carimbo de data/hora para calcular a atualidade e identificar qualquer padrão baseado em tempo. Isso ajuda o Amazon Personalize a manter as recomendações de acordo up-to-date com as preferências em evolução dos usuários.
Tipo de evento e dados de valor do evento
Um conjunto de dados de interações de itens pode armazenar dados de tipo e valor de evento para cada interação. Somente recursos personalizados usam dados de valor do evento.
Dados de tipos de eventos
O tipo de evento de uma interação de item fornece contexto sobre sua natureza e significado. Exemplos de tipos de eventos podem ser clicar, assistir ou comprar. O Amazon Personalize usa dados do tipo de evento, como dados de clique ou compra, para identificar a intenção e o interesse do usuário. O número máximo de tipos de eventos distintos combinados com o número total de colunas de metadados opcionais em um conjunto de dados de interações de itens é 10.
Para recomendadores de domínio, você deve ter uma coluna de tipo de evento e cada interação deve ter um tipo de evento. Para todas as receitas personalizadas, uma TYPE coluna EVENT _ é recomendada, mas opcional. Se você adicioná-lo, cada evento deverá ter um tipo de evento.
Se você criar recursos personalizados, poderá escolher os eventos usados para treinamento por tipo de evento. Se seu conjunto de dados tiver vários tipos de eventos em uma TYPE coluna EVENT _ e você não fornecer um tipo de evento ao configurar uma solução personalizada, o Amazon Personalize usará todos os dados de interações do item para treinar com o mesmo peso, independentemente do tipo. Para obter mais informações, consulte Selecionar os dados de interações com itens utilizados para treinamento.
Os seguintes casos de uso têm requisitos específicos de tipo de evento:
VIDEO_ON_ casos de uso DEMAND do domínio
-
Porque você assistiu X, requer no mínimo 1000
Watch
eventos. -
Os mais populares exigem no mínimo 1000
Watch
eventos.
ECOMMERCEcasos de uso de domínio
-
Os mais vistos exigem no mínimo 1000
View
eventos. -
Os mais vendidos exigem no mínimo 1000
Purchase
eventos.
Tipos de eventos positivos e negativos
O Amazon Personalize presume que qualquer interação é positiva. Interações com um tipo de evento negativo, como não curtir, não necessariamente impedirão que o item apareça nas recomendações futuras do usuário.
Veja a seguir formas de fazer com que eventos negativos e o desinteresse dos usuários influenciem as recomendações:
-
Para todos os casos de uso do domínio e a User-Personalization receita, o Amazon Personalize pode usar dados de impressões. Quando um item aparece nos dados de impressões e o usuário não o escolhe, é menos provável que o item apareça nas recomendações. Para obter mais informações, consulte Dados de impressões.
-
Se você usar recursos personalizados e importar tipos de eventos positivos e negativos, poderá treinar somente em tipos de eventos positivos e depois filtrar os itens com os quais o usuário interagiu negativamente. Para ter mais informações, consulte Selecionar os dados de interações com itens utilizados para treinamento e Como filtrar recomendações e segmentos de usuários.
Dados de valor do evento (recursos personalizados)
Os dados do valor do evento podem ser a porcentagem de um filme que um usuário assistiu ou uma classificação de 10. Se você criar soluções personalizadas, poderá escolher os registros usados para treinamento com base nos dados nas VALUE colunas EVENT EVENT _ TYPE e _. Com os recomendadores de domínio, o Amazon Personalize não usa dados de valor de eventos e você não pode filtrar eventos antes do treinamento.
Para escolher registros com base no tipo e no valor, registre os dados do tipo de evento e do valor do evento para eventos. Nem todos os eventos devem ter um valor de evento. O valor escolhido para cada evento depende dos dados que você deseja excluir e dos tipos de eventos que você está gravando. Por exemplo, você pode corresponder à atividade do usuário, como a porcentagem de vídeos que o usuário assistiu para os tipos de eventos assistir.
Ao configurar uma solução, você define um valor específico como limite para excluir registros do treinamento. Por exemplo, se seus EVENT _ VALUE dados de eventos com EVENT _ TYPE de exibição forem a porcentagem de um vídeo que um usuário assistiu, se você definir o limite do valor do evento como 0,5 e o tipo de evento a ser assistido, o Amazon Personalize treina o modelo usando apenas eventos de interação com o relógio com EVENT um VALUE _ maior ou igual a 0,5.
Para ter mais informações, consulte Selecionar os dados de interações com itens utilizados para treinamento
Metadados contextuais
Com determinados casos de uso de fórmulas e recomendadores, o Amazon Personalize pode usar metadados contextuais ao identificar padrões subjacentes que revelam os itens mais relevantes para seus usuários. Metadados contextuais são dados de interações que você coleta no ambiente do usuário no momento de um evento, como sua localização ou tipo de dispositivo. Você também pode especificar o contexto de um usuário ao receber recomendações para o usuário.
Inclua metadados contextuais para fornecer uma experiência mais personalizada para seus usuários e diminuir a fase de inicialização a frio para novos usuários. A fase de inicialização a frio ocorre quando as recomendações são menos relevantes devido à falta de dados históricos do usuário.
Por exemplo, se seu CSV arquivo de interações de itens incluir uma TYPE coluna DEVICE _ com phone
valores tablet
e valores, o Amazon Personalize poderá aprender como os clientes compram de forma diferente em dispositivos diferentes. Ao receber recomendações para um usuário, você pode especificar o dispositivo e as recomendações serão mais relevantes, mesmo que o usuário não tenha histórico de interações.
Veja a seguir como você formataria um CSV arquivo de interações de itens com uma TYPE coluna DEVICE _ como metadados contextuais.
ITEM_ID,USER_ID,TIMESTAMP,DEVICE_TYPE,EVENT_TYPE shoe12345,12,1428624000,Tablet,CLICK shoe12346,12,1420416000,Tablet,CLICK shoe12347,12,1410652800,Tablet,BUY shoe4444,13,1409961600,Phone,CLICK shoe4445,13,1402876800,Phone,BUY shoe4336,13,1402185600,Phone,CLICK .....
Para grupos de conjuntos de dados de domínio, os seguintes casos de uso de recomendador podem usar metadados contextuais:
-
Recomendados para você(ECOMMERCEdomínio)
-
As melhores opções para você(VIDEO_ON_ domínioDEMAND)
Para recursos personalizados, as fórmulas que usam metadados contextuais incluem o seguinte:
Para obter informações sobre como incluir contexto ao receber recomendações, consulteComo aumentar a relevância das recomendações com metadados contextuais. Para obter um exemplo completo que mostra como usar metadados contextuais, consulte o seguinte AWS Publicação no blog do Machine Learning: Aumentando a relevância de suas recomendações do Amazon Personalize utilizando informações contextuais
Dados de impressões
Impressões são listas de itens que estavam visíveis para um usuário durante a interação (por exemplo, clicar ou assistir) com determinado item. Se você usar um caso de uso de domínio que forneça personalização ou a User-Personalization receita, o Amazon Personalize poderá usar dados de impressões para orientar a exploração.
Com a exploração, as recomendações incluem alguns itens ou ações que normalmente teriam menor probabilidade de ser recomendados para o usuário, como novos itens ou ações, itens ou ações com poucas interações ou itens ou ações menos relevantes com base no comportamento anterior do usuário. Quanto mais frequentemente um item aparece nos dados de impressões, menor a probabilidade de o Amazon Personalize incluir o item na exploração.
Quando você cria um recomendador ou uma solução, o Amazon Personalize sempre exclui os dados de impressões do treinamento. Isso ocorre porque o Amazon Personalize não treina seus modelos com dados de impressões. Em vez disso, ele o usa quando você recebe recomendações para orientar a exploração para o usuário.
Os valores de impressão podem ter no máximo 1.000 caracteres (incluindo o caractere da barra vertical). Para grupos de conjuntos de dados de domínio, os seguintes casos de uso recomendados podem usar dados de impressões:
-
Recomendados para você(ECOMMERCEdomínio)
-
As melhores opções para você(VIDEO_ON_ domínioDEMAND)
Para obter mais informações sobre exploração, consulte Exploration (Exploração). O Amazon Personalize pode modelar dois tipos de impressões: Impressões implícitas e Impressões explícitas.
Impressões explícitas
Impressões explícitas são impressões que você grava e envia manualmente para o Amazon Personalize. Use impressões explícitas para manipular os resultados do Amazon Personalize. A ordem dos itens não é relevante.
Por exemplo, você pode ter um aplicativo de compras que faça recomendações de calçados. Se recomendar apenas calçados que estão atualmente em estoque, você pode especificar esses itens usando impressões explícitas. Seu fluxo de trabalho de recomendação usando impressões explícitas pode ser o seguinte:
-
Você solicita recomendações para um de seus usuários usando o Amazon Personalize GetRecommendationsAPI.
-
O Amazon Personalize gera recomendações para o usuário usando seu modelo (versão da solução) e as retorna na API resposta.
-
Você mostra ao usuário somente os calçados recomendados que estão em estoque.
-
Para importação incremental de dados em tempo real, quando o usuário interage com (por exemplo, clica) com um par de sapatos, você grava a escolha em uma chamada para o PutEvents API e lista os itens recomendados que estão em estoque no parâmetro.
impression
Para obter um exemplo de código, consulte Gravação de eventos de interação de itens com dados de impressões.Para importar impressões em dados históricos de interações com itens, é possível listar impressões explícitas no arquivo csv e separar cada item com um caractere “|”. O caractere de barra vertical conta para o limite de 1.000 caracteres. Para ver um exemplo, consulte Como formatar impressões explícitas.
-
O Amazon Personalize usa os dados de impressões para orientar a exploração, considerando que as recomendações futuras incluem novos sapatos com menos dados de interações ou relevância.
Como formatar impressões explícitas
Para incluir impressões explícitas em seu CSV arquivo, adicione uma IMPRESSION coluna. Para cada interação de item, adicione uma lista de caracteres itemIds separados com uma barra vertical, '|'. O caractere de barra vertical conta para o limite de 1.000 caracteres dos dados de impressões. Se você incluir impressões explícitas em PutEvents operação, você especifica os itens em uma matriz de cadeias de caracteres.
Veja a seguir um pequeno trecho de um CSV arquivo que inclui impressões explícitas na coluna. IMPRESSION
EVENT_TYPE | IMPRESSION | ITEM_ID | TIMESTAMP | USER_ID |
---|---|---|---|---|
click |
73|70|17|95|96 |
73 |
1586731606 |
USER_1 |
click |
35|82|78|57|20|63|1|90|76|75|49|71|26|24|25|6 |
35 |
1586735164 |
USER_2 |
... | ... | ... | ... | ... |
A aplicação mostrava itens USER_1
do usuário: 73
, 70
, 17
, 95
e 96
; e o usuário finalmente escolheu o item 73
. Quando você cria uma nova versão da solução com base nesses dados, os itens 70
, 17
, 95
e 96
serão recomendados com menos frequência ao usuário USER_1
.
Impressões implícitas
As impressões implícitas são as recomendações, recuperadas do Amazon Personalize, que você mostra ao usuário. Seu CSV arquivo não precisa incluir colunas IMPRESSION ou RECOMMENDATION _ID para usar impressões implícitas. Em vez disso, você inclui o RecommendationId
(retornado pelas GetPersonalizedRanking operações GetRecommendations e) nas PutEvents solicitações. O Amazon Personalize obtém as impressões implícitas com base nos seus dados de recomendação.
Por exemplo, você pode ter um aplicativo que faça recomendações de streaming de vídeo. Seu fluxo de trabalho de recomendação usando impressões implícitas pode ser o seguinte:
-
Você solicita recomendações de vídeo para um de seus usuários usando a operação Amazon Personalize. GetRecommendations API
-
O Amazon Personalize gera recomendações para o usuário usando seu modelo (versão da solução) e as retorna com um
recommendationId
na API resposta. -
Você mostra as recomendações de vídeo para o usuário em seu aplicativo.
-
Quando seu usuário interage com (por exemplo, clica) com um vídeo, grave a escolha em uma chamada para o PutEvents API e inclua o
recommendationId
como parâmetro. Para obter um exemplo de código, consulte Gravação de eventos de interação de itens com dados de impressões. -
O Amazon Personalize usa o
recommendationId
para derivar os dados de impressão das recomendações de vídeo anteriores e, em seguida, usa os dados de impressão para orientar a exploração, onde as recomendações futuras incluem novos vídeos com menos dados de interações ou relevância.Para obter mais informações sobre como registrar eventos com dados de impressão implícita, consulte Gravação de eventos de interação de itens com dados de impressões.
Exemplo de dados de interações
Os dados de interações a seguir representam o histórico da atividade do usuário em um site de streaming de vídeo. Você pode usar os dados para treinar um modelo que fornece recomendações de filmes com base nos dados de interação dos usuários. Observe que alguns valores para EVENT _ VALUE são nulos.
USER_ID,ITEM_ID,EVENT_TYPE,EVENT_VALUE,TIMESTAMP 196,242,watch,.50,881250949 186,302,watch,.75,891717742 22,377,click,,878887116 244,51,click,,880606923 166,346,watch,.50,886397596 298,474,watch,.25,884182806 115,265,click,,881171488 253,465,watch,.50,891628467 305,451,watch,.75,886324817
O Amazon Personalize exige a USER_ID
colunaITEM_ID
, e. TIMESTAMP
USER_ID
é o identificador de um usuário do seu aplicativo. ITEM_ID
é o identificador de um filme. EVENT_TYPE
e EVENT_VALUE
são os identificadores das interações do usuário. Nos dados de amostra, os eventos são watch
e click
eventos e os valores são a porcentagem de um vídeo que um usuário assistiu. TIMESTAMP
Representa a época do Unix em que a compra do filme ocorreu.
Depois de concluir a preparação dos dados, você estará pronto para criar um JSON arquivo de esquema. Esse arquivo informa ao Amazon Personalize sobre a estrutura dos seus dados. Para obter mais informações, consulte Criação de JSON arquivos de esquema para esquemas do Amazon Personalize. Essa é a aparência do JSON arquivo de esquema para os dados de amostra.
{ "type": "record", "name": "Interactions", "namespace": "com.amazonaws.personalize.schema", "fields": [ { "name": "USER_ID", "type": "string" }, { "name": "ITEM_ID", "type": "string" }, { "name": "EVENT_TYPE", "type": "string" }, { "name": "EVENT_VALUE", "type": "float" }, { "name": "TIMESTAMP", "type": "long" } ], "version": "1.0" }