brunch

You can make anything
by writing

C.S.Lewis

by 말바보 Nov 06. 2022

Instacart 주문 비하인드 스토리

3부: 매장 예측



이것은 "주문 비하인드 스토리" 시리즈의 세 번째 기사로, 앱에서 식료품 항목을 표시하고, 매장 검색을 가능하게 하고, 매장 전과 매장 중 의사소통을 용이하게 하고, 라스트 마일을 강화하는 기술을 안내합니다. 한 시간 안에 저녁 식사를 집까지 배달해 드립니다. 아직 확인하지 않았다면 1부 에서 식료품 카탈로그 데이터를 수집하고 정규화하는 방법을 확인하고 2부 에서는 매장 검색 및 구매 이면의 기술을 다룹니다.


지난 호에서 여러분이 좋아하는 주중 레몬 허브 연어의 재료를 쉽게 찾고 구입할 수 있는 기술에 대해 배웠습니다. 이 세 번째 기사에서는 Meyer Lemons, Fresh Dill 및 Salmon Fillets의 재고 여부를 결정하는 데 도움이 되는 예측 모델에 집중할 것입니다. 또한 고객이 선호하는 교체 품목을 더 쉽게 선택하고 전달할 수 있도록 하는 기계 학습 모델을 살펴보고 있습니다.


훈련 데이터



카탈로그 데이터는 4면 시장의 기술적 기반입니다.



카탈로그에는 약 500만 개의 고유 제품이 있으며 총 약 950,000,000개의 제품 목록이 있습니다. 이러한 각 목록에는 이름, 제품 ID 및 부서, 통로 번호, 식이/요리 태그 및 영양 정보와 같은 여러 하위 속성이 있습니다. 또한 제품이 시장에서 어떻게 작동하는지 자세히 설명하는 과거 데이터에 의존합니다. 이 데이터에는 품목 가용성 내역, 품목이 교체품으로 선택된 횟수 등이 포함됩니다.


이 데이터는 함께 우리의 많은 기계 학습 모델을 강화합니다. 원활한 고객 및 쇼핑 경험을 보장하기 위해 특별히 협력하는 두 가지 모델: 품목 가용성 모델 및 교체 권장 모델 .


품목 가용성 파악



60분마다 5억 개 이상의 목록이 제공될 것으로 예측합니다.



당사의 품목 가용성 모델은 과거 소매업체 가용성 데이터, 매장 위치, 품목의 구매 내역 및 구매자 입력에 의존하여 당사 카탈로그의 특정 품목이 거의 25,000개에 달하는 실제 매장 중 하나 에 재고가 있거나 없을 가능성을 예측합니다.


이것은 정말 어렵습니다. 우리는 소매 파트너로부터 하루에 한 번 품목의 가용성을 감지하지만, 우리 모두가 알고 있듯이 가용성은 하루 종일 매우 가변적일 수 있습니다. 하루에 한 번의 데이터 드롭은 우리가 기대치를 적절하게 설정하는 데 필요한 시간별 예측을 제공하지 않습니다. 특히 Meyer Lemon과 같이 구하기 힘든 과일 품종의 경우에는 더욱 그렇습니다! 일부 지역은 계절에 따라 재배자로부터 새로운 배송을 받을 수 있습니다. 그리고 과일이 제철일 때 일부 상점 위치는 아침에만 레몬을 보충할 수 있는 반면, 다른 상점 위치는 조금 더 바쁘고 하루에 여러 번 재고 생산 섹션일 수 있습니다.


하루 종일의 변동성을 이해하기 위해 우리는 시간 중심 데이터 기능, 특히 매장에서 쇼핑객이 품목을 선택한 시간과 요일을 살펴보고 각 목록을 제공하는 모델을 구축했습니다. 가용성 점수 .


다음은 Meyer Lemons의 가용성 점수가 하루 종일 어떻게 변하는지 살펴보겠습니다.

항목 가용성 모델에 대해 자세히 알아보려면 Abhay Pawar Sr. Machine Learning Engineer가 작성한 이 심층 분석을 읽어보십시오 .


올바른 대체품 표면화



일반적으로 고객이 직접 구매하면 찾고 있는 품목의 7%가 교체됩니다.



슬프게도, 우리가 가장 좋아하는 엄마 및 대중 소매점의 Meyer Lemons는 낮은 가용성 점수를 받았습니다. 이런 일이 발생하면 교체 권장 사항 모델이 인계받아 고객 대면 앱에서 고객이 탐색할 때 교체품을 미리 선택하도록 요청하는 흐름을 시작합니다.

Meyer 레몬을 유기농 레몬, 유기농 레몬 한 봉지, 비유기농 레몬 또는 Meyer 레몬 주스로 교체하시겠습니까?


교체품을 특히 예측하기 어렵게 만드는 것은 고객이 품목을 구매하는 광범위한 컨텍스트입니다. 예를 들어 연어 위에 레몬 주스를 짜서 맛을 내고 싶다면 레몬 주스를 대체품으로 선택할 수 있지만 연어에 레몬 조각을 장식하고 싶다면 유기농 레몬을 원할 수 있습니다.


우리의 현재 모델은 관련 항목 목록과 스택 순위 잠재적 교체 사이에 보이지 않는 선을 그리기 위해 제품 이름 및 항목의 교체 내역과 같은 범주형 데이터의 조합에 의존합니다.


우리는 몇 가지 이유로 점수를 매길 때 교체 이력과 같은 과거 데이터에 범주형 데이터보다 훨씬 더 많은 가중치를 부여합니다. 과거 데이터는 범주형 데이터(복도, 부서, 이름)의 렌즈를 통해 볼 때 비정형적인 대체품처럼 보이지만 인간의 두뇌에서는 완벽하게 정상적인 항목을 찾는 데 도움이 됩니다. Meyer Lemon의 경우 고객은 일반적으로 농산물 섹션에 살지 않는 대체품으로 Meyer Lemon Juice를 선택합니다. 과거 쇼핑객과 고객 선호도에 더 많은 가중치를 부여함으로써 Ms. Meyer's Lemon Soap과 같은 제품이 강력한 이름 일치를 가짐에도 불구하고 주스가 훨씬 더 널리 선호된다는 것을 알 수 있습니다.


고객이 인앱 교체를 선택하지 않고 쇼핑객에게 맡기는 경우(약 절반 시간 발생) 교체 모델은 쇼핑객이 선택할 수 있도록 앱 흐름에 상위 역사적 교체품 중 일부를 표시합니다.


재고 없음 항목과 같은 잠재적인 장애물을 완화하는 것은 주문 처리 체인의 성공에 매우 중요합니다. 이 두 가지 예측 모델은 한 목록의 가용성에 대한 가용성 기대치를 설정하고 주문 컨텍스트를 쇼핑객에게 빠르고 쉽게 전달할 수 있는 기회를 제공하기 위해 함께 작동했습니다. 이 시리즈의 마지막 기사를 계속 지켜봐 주십시오. 여기서 쇼핑객을 매장을 통해 바로 집 앞까지 안내하는 기술을 파헤칠 것입니다.


데이터 과학, 모바일 개발 및 기계 학습에 대해 충분히 이해할 수 없습니까? 엔지니어링 및 제품 팀을 모집합니다! 우리의 현재 오프닝을 확인하십시오 .


*Instacart의 기술 블로그 에서 엔지니어링에 대해 자세히 알아보십시오 .



                    

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari