Skip to content

Latest commit

 

History

History
65 lines (32 loc) · 5.25 KB

personalize-training.md

File metadata and controls

65 lines (32 loc) · 5.25 KB

Personalize 학습

Event Tracker 설정

Personalize에서 User와 Interaction 데이터를 수집하기 위해서는 Event Tracker를 생성하여야 합니다. Data Group Console로 진입하여, 아래와 같이 "image-recommender-dataset"을 선택합니다. 이후 [Create event tracker]를 선택합니다. image

noname

[Configure tracker]에서 아래와 같이 [Tracker name]로 "image-recommender-event-tracker"로 입력 후에 [Next]를 선택하고, [Finish]를 선택합니다.

noname

왼쪽 메뉴의 [Event trackers]를 선택한 후에 "image-recommender-event-tracker"를 선택하면, 아래와 같이 Tracking ID를 확인할 수 있습니다. 아래와 같이 여기에서는 Tracking ID가 "326c8489-2683-420c-b7eb-4ac44bde346d"임을 알 수 있습니다.

noname

Tracking ID 정보를 업데이트하여야 하므로, 다시 Cloud9의 왼쪽 메뉴에서 "image-recommender-based-on-emotion/cdk-image-recommender/lib/cdk-image-recommender-stack.ts"을 오픈후에 아래와 같이 trackingId를 업데이트 합니다.

noname

이후 터미널에서 아래와 같이 CDK folder로 이동하여 재배포를 합니다.

cd cdk-image-recommender/ && cdk deploy

Personalize DataSet 준비

Personalize는 최소 25명 이상의 user와 최소 1000개 이상의 interaction 데이터가 있어야 합니다. 따라서 gallery에서 이미지를 보여주기 위해서는 먼저 최소한의 Traning Dateset을 준비하여야 합니다.

Enabler 이용한 데이터셋 생성

Enabler를 이용하여 데이터를 수집할 수 있습니다. Enabler는 DynamoDB에서 item 정보를 가져와서 감정에 따라 보여주고, 사용자의 선호를 like API를 이용해 수집합니다. Enabler의 접속은 Output의 주소 "Enabler"를 이용합니다. Enabler를 이용하여 25명에 대한 1000개의 interaction 데이터셋을 수집하는 것은 많은 시간이 소요되므로 아래와 같이 Dataset Generator을 사용하여 편리하게 생성할 수 있습니다.

Dataset Generator를 이용한 데이터셋 생성

Dataset Generator를 이용해 Personalize에 dataset을 push 합니다. Dataset Generator의 접속 위치는 Output의 "DatasetGenerator"을 이용하여 아래와 같이 접속 후에 [Generate]를 선택합니다.

noname

Dataset Generator는 datasetGenerator.js와 같이 userId를 ${gender}/${emotions[i]}와 같이 성별(gender)과 감정(emotion)에 따라 lambda-generate-dataset을 호출합니다. lambda-generate-dataset은 DynamoDB에 있는 item 데이터를 이용하여 interaction 데이터셋을 생성합니다.

Solution / Campaign 생성

Dataset groups Console로 접속하여 "image-recommender-dataset"로 접속하여 왼쪽 메뉴의 [Datasets] - [Data analysis]을 선택한 후에 [Run analysis]을 선택하여 분석합니다. 분석 결과(Insights)에서 User의 숫자가 25이하, interaction이 1000이하로 알림이 발생하면, Personalize에서 입력한 데이터가 분석중임으로 수분 정도 대기한 후에 재시도 합니다.

noname

Solution Console로 접속하여, 이미 생성한 dataset인 "image-recommender-dataset"을 선택하여 진입한 후에 [Create solution]을 선택합니다. 이후 아래와 같이 [Solution name]으로 "image-recommender-solution"을 입력하고 [Solution type]으로 "Item recommendation"을 선택한 다음에 [Recipe]로 "aws-user-personalization"을 선택합니다. Solution 생성에는 약 20분정도가 소요됩니다.

noname

왼쪽 메뉴에서 아래와 같이 [Campaigns]를 선택한 후에 [Create campaign]을 선택합니다.

noname

아래와 같이 [Campaign name]으로 "image-recommender-campaign"으로 입력한 후에 [Solution]으로 "image-recommender-solution"을 선택합니다. 이후 [Create campaign]을 선택하면 약 10분 정도후에 Campaign이 생성합니다.

noname