KR102437759B1 - 아이템에 대한 선택에 기반하여 추천 아이템을 제공하는 방법 및 장치 - Google Patents

아이템에 대한 선택에 기반하여 추천 아이템을 제공하는 방법 및 장치 Download PDF

Info

Publication number
KR102437759B1
KR102437759B1 KR1020200027474A KR20200027474A KR102437759B1 KR 102437759 B1 KR102437759 B1 KR 102437759B1 KR 1020200027474 A KR1020200027474 A KR 1020200027474A KR 20200027474 A KR20200027474 A KR 20200027474A KR 102437759 B1 KR102437759 B1 KR 102437759B1
Authority
KR
South Korea
Prior art keywords
item
items
user
search
recommended
Prior art date
Application number
KR1020200027474A
Other languages
English (en)
Other versions
KR20210112451A (ko
Inventor
김석천
김형욱
양민철
황현동
장예훈
이정태
Original Assignee
네이버 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 네이버 주식회사 filed Critical 네이버 주식회사
Priority to KR1020200027474A priority Critical patent/KR102437759B1/ko
Priority to JP2020095391A priority patent/JP7051938B2/ja
Publication of KR20210112451A publication Critical patent/KR20210112451A/ko
Application granted granted Critical
Publication of KR102437759B1 publication Critical patent/KR102437759B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

사용자 단말에 대해, 검색어에 대한 검색 결과로서 복수의 아이템들을 포함하는 검색 결과 페이지를 제공하고, 아이템에 대한 선택에 따라 선택된 아이템에 대한 상세 정보 페이지를 제공하고, 사용자로부터의 뒤로가기 명령이나 재검색 요청에 따라 추천 아이템을 더 포함하는 검색 결과 페이지를 제공하는, 추천 아이템 제공 방법이 제공된다.

Description

아이템에 대한 선택에 기반하여 추천 아이템을 제공하는 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING RECOMMENDED ITEM BASED ON SELECTION FOR ITEM}
본 개시는 상품과 같은 아이템에 대한 선택에 기반하여 추천 아이템을 제공하는 방법 및 장치에 관한 것으로, 보다 자세하게는, 사용자와 연관된 세션이 유지되는 동안 상품과 같은 아이템에 대한 사용자의 선택의 이력에 기반하여, 추천 아이템(예컨대, 추천 상품)을 제공하는 방법 및 장치와 관련된다.
온라인 쇼핑몰 및 소셜커머스와 같은 전자상 거래의 성장에 따라, 사용자가 구매하고자 하는 상품을 온라인 검색 환경을 통해 검색하여 구매하는 경우가 매우 빈번하게 되었다.
사용자는 상품 구매를 위한 전용 어플리케이션이나 검색 엔진을 통해, 구매하고자 하는 아이템을 검색한다. 사용자가 구매하고자 하는 상품의 일반 명칭을 검색어로서 사용하는 경우, 무수한 상품들이 검색 결과로서 제시된다. 사용자는 이러한 무수한 상품들 중 자신이 원하는 가격대/디자인/스타일의 상품을 선택하여 구매하게 된다.
그러나, 검색 결과로서 제시되는 상품의 수와 종류가 매우 많으므로, 사용자는 자신이 원하는 상품을 적절하게 선택하기가 어렵다. 또한, 동일한 검색어로 검색을 수행하는 사용자들에 대해서는 모두 동일한 상품들이 검색 결과로서 제공되게 되는 바, 사용자는 자신의 취향에 맞는 상품을 검색 결과로서 제공 받기가 어렵다.
따라서, 상품에 대한 검색을 수행하는 사용자에 대해, 사용자의 행동(활동) 및 검색 이력을 고려하여 사용자가 적절한 상품을 검색할 수 있도록 하고, 사용자가 원하는 상품에 쉽게 도달할 수 있도록 사용자의 상품 검색 활동에 즉각적으로 반응하여 추천 상품을 제공할 수 있도록 하는 방법이 요구된다.
한편, 한국공개특허 제10-2019-0142526호(공개일 2019년 12월 27일)에는 오프라인 매장의 잠재 고객을 위한 상품 추천 시스템 및 방법으로서, 고객 정보를 기반으로 고객의 선호 스타일, 사이즈를 포함하는 고객 맞춤 상품정보를 추출하고, 고객 맞춤 상품 정보를 이용하여 매장에 구비된 상품 중 고객의 선호 스타일에 부합하는 상품을 추천하고, 추천 받은 상품을 디스플레이하는 방법을 개시하고 있다.
상기에서 설명된 정보는 단지 이해를 돕기 위한 것이며, 종래 기술의 일부를 형성하지 않는 내용을 포함할 수 있으며, 종래 기술이 통상의 기술자에게 제시할 수 있는 것을 포함하지 않을 수 있다.
일 실시예는, 사용자 단말에 대해, 검색어에 대한 검색 결과로서 복수의 아이템들을 포함하는 검색 결과 페이지를 제공하고, 아이템에 대한 선택에 따라 선택된 아이템에 대한 상세 정보 페이지를 제공하고, 사용자로부터의 뒤로가기 명령이나 재검색 요청에 따라 추천 아이템을 더 포함하는 검색 결과 페이지를 제공하는, 추천 아이템 제공 방법을 제공할 수 있다.
일 실시예는, 추천 아이템을 포함하는 검색 결과 페이지를 제공함에 있어서, 사용자와 연관된 세션에서 사용자로부터의 아이템들에 대한 선택의 이력에 따라, 즉, 아이템에 대한 선택이 사용자와 연관된 세션에서 최초의 선택이면 추천 아이템으로서 선택된 아이템과 관련된 제1 추천 아이템을 제공하고, 해당 세션에서 아이템에 대한 선택 이전에 다른 아이템에 대한 선택의 이력이 존재하는 경우에는 추천 아이템으로서 선택된 아이템 및 해당 다른 아이템과 관련된 제2 추천 아이템 제공하는 추천 아이템 제공 방법을 제공할 수 있다.
일 측면에 있어서, 서버에 의해 수행되는, 사용자 단말에 대한 추천 아이템 제공 방법에 있어서, 사용자 단말에 대해, 사용자로부터 입력되는 검색어에 대한 검색 결과로서 복수의 아이템들을 포함하는 검색 결과 페이지를 제공하는 단계, 상기 사용자 단말에 대해, 상기 사용자로부터의 상기 복수의 아이템들 중 적어도 하나의 아이템에 대한 선택에 따라, 상기 선택된 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지를 제공하는 단계 및 상기 사용자 단말에 대해, 상기 사용자로부터 뒤로가기 명령이 수신되거나 상기 검색어를 사용한 재검색이 수행되는 경우, 상기 복수의 아이템들과 함께 추천 아이템을 포함하는 상기 검색 결과 페이지를 제공하는 단계를 포함하고, 상기 추천 아이템은 상기 사용자와 연관된 세션에서의 상기 사용자로부터의 상기 복수의 아이템들에 대한 선택의 이력에 따라 변화하는, 추천 아이템 제공 방법이 제공된다.
상기 추천 아이템을 포함하는 상기 검색 결과 페이지를 제공하는 단계는, 상기 아이템에 대한 선택이 상기 세션에서 상기 복수의 아이템들에 대한 최초의 선택이면, 상기 복수의 아이템들과 함께 상기 추천 아이템으로서 상기 선택된 아이템과 관련된 제1 추천 아이템을 포함하는 검색 결과 페이지를 제공하고, 상기 세션에서 상기 아이템에 대한 선택 이전에 상기 복수의 아이템들 중 적어도 하나의 다른 아이템에 대한 선택의 이력이 존재하는 경우에는, 상기 복수의 아이템들과 함께 상기 추천 아이템으로서 상기 선택된 아이템 및 상기 다른 아이템과 관련된 제2 추천 아이템을 포함하는 검색 결과 페이지를 제공할 수 있다.
상기 추천 아이템 제공 방법은 상기 세션이 유지되는 동안, 상기 사용자로부터의 상기 복수의 아이템들에 대한 선택의 이력을 상기 사용자의 식별자 및 상기 검색어와 연관하여 저장하는 단계를 더 포함하고, 상기 제2 추천 아이템은 상기 저장된 선택의 이력에 기반하여 상기 복수의 아이템들 중 결정된 추천 아이템을 포함할 수 있다.
상기 추천 아이템 제공 방법은 상기 세션에서 상기 다른 아이템에 대한 선택의 이력이 존재하는 경우, 상기 선택된 아이템에 대한 제1 가중치 및 상기 다른 아이템에 대한 상기 제1 가중치보다 더 낮은 제2 가중치를 사용하여, 상기 복수의 아이템들 중 상기 제2 추천 아이템을 결정할 수 있다.
상기 제2 추천 아이템을 결정하는 단계는, 상기 사용자의 성별 및 상기 사용자의 연령 중 적어도 하나를 더 고려하여, 상기 복수의 아이템들 중 상기 제2 추천 아이템을 결정할 수 있다.
상기 추천 아이템을 포함하는 상기 검색 결과 페이지를 제공하는 단계는, 상기 세션에서 상기 선택의 이력이 존재하는 경우에 있어서, 상기 제2 추천 아이템 및 상기 제1 추천 아이템을 포함하는 검색 결과 페이지를 제공할 수 있다.
상기 제1 추천 아이템은, 기 구축된 연관 아이템 데이터베이스를 참조하여 결정된, 상기 복수의 아이템들 중 상기 선택된 아이템과 연관된 추천 아이템을 포함할 수 있다.
상기 제2 추천 아이템은, 상기 선택된 아이템과 상기 적어도 하나의 다른 아이템으로 구성된 시퀀스를 기 구축된 아이템 추천 모델에 의해 분석함으로써 결정된, 상기 복수의 아이템들 중 상기 시퀀스와 연관된 추천 아이템을 포함할 수 있다.
상기 추천 아이템 제공 방법은 소정의 시간 동안 상기 사용자의 활동이 없는 경우, 상기 사용자와 연관된 세션이 종료된 것으로 결정하는 단계 및 상기 세션이 종료된 것으로 결정된 경우, 상기 저장된 선택의 이력을 삭제하는 단계를 더 포함할 수 있다.
상기 소정의 시간 내에 상기 사용자로부터의, 상기 검색어의 입력 및 상기 복수의 아이템들 중 적어도 하나에 대한 선택 중 적어도 하나를 포함하는 상기 사용자의 활동이 있는 경우, 상기 세션은 유지되고 있는 것으로 결정될 수 있다.
상기 추천 아이템은 상기 복수의 아이템들 중 상기 사용자가 선택할 것으로 예측되는 아이템일 수 있다.
상기 검색 결과 페이지는 상기 검색어에 대한 카테고리 검색에 따라, 상기 사용자 단말에게 제공되는 것일 수 있다.
상기 추천 아이템은 상기 검색 결과 페이지에서, 상기 선택된 아이템이 표시되는 제1 영역과 인접한 제2 영역에서 표시될 수 있다.
상기 검색 결과 페이지는 상기 검색어에 대한 통합 검색에 따라, 상기 사용자 단말에게 제공되는 것이고, 상기 추천 아이템은 상기 검색 결과 페이지에서, 상기 복수의 아이템들이 표시되는 제1 영역의 하단의 제2 영역에서 표시될 수 있다.
상기 추천 아이템은 검색 결과 페이지 내에서, 상기 선택된 아이템이 표시되는 제1 영역과 구분되는 제2 영역에서 표시되고, 상기 추천 아이템을 포함하는 상기 검색 결과 페이지를 제공하는 단계는, 상기 세션에서 상기 선택의 이력이 존재하는 경우에 있어서, 상기 추천 아이템으로서 상기 제2 추천 아이템 및 상기 제1 추천 아이템을 포함하는 검색 결과 페이지를 제공하고, 상기 세션에서 상기 다른 아이템에 대한 선택의 이력이 존재하는 경우, 상기 제2 영역에는 상기 제1 추천 아이템이 상기 제2 추천 아이템보다 상위에 표시될 수 있다.
상기 선택된 아이템은 상기 복수의 아이템들 중 광고와 연관되지 않은 아이템이고, 상기 사용자로부터 상기 복수의 아이템들 중 광고와 연관된 광고 아이템이 선택되고, 상기 사용자 단말에 대해, 상기 광고 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지가 제공된 후, 상기 사용자로부터 뒤로가기 명령이 수신되거나 상기 검색어를 사용한 재검색이 수행되는 경우에는, 상기 광고 아이템과 관련된 추천 아이템을 포함하지 않는 상기 복수의 아이템들을 포함하는 검색 결과 페이지가 상기 사용자 단말에 대해 제공될 수 있다.
다른 일 측면에 있어서, 추천 아이템을 제공하는 서버에 있어서, 컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 사용자 단말에 대해, 사용자로부터 입력되는 검색어에 대한 검색 결과로서 복수의 아이템들을 포함하는 검색 결과 페이지를 제공하고, 상기 사용자로부터의 상기 복수의 아이템들 중 적어도 하나의 아이템에 대한 선택에 따라, 상기 선택된 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지를 제공하고, 상기 사용자로부터 뒤로가기 명령이 수신되거나 상기 검색어를 사용한 재검색이 수행되는 경우, 상기 복수의 아이템들과 함께 추천 아이템을 포함하는 상기 검색 결과 페이지를 제공하고, 상기 추천 아이템은 상기 사용자와 연관된 세션에서 상기 사용자로부터의 상기 복수의 아이템들에 대한 선택의 이력에 따라 변화하는, 서버가 제공된다.
상기 적어도 하나의 프로세서는, 사용자 단말에 대해, 상기 아이템에 대한 선택이 상기 사용자와 연관된 세션에서 상기 복수의 아이템들에 대한 최초의 선택이면, 상기 복수의 아이템들과 함께 상기 추천 아이템으로서 상기 선택된 아이템과 관련된 제1 추천 아이템을 포함하는 검색 결과 페이지를 제공하고, 상기 세션에서 상기 아이템에 대한 선택 이전에 상기 복수의 아이템들 중 적어도 하나의 다른 아이템에 대한 선택의 이력이 존재하는 경우에는, 상기 복수의 아이템들과 함께 상기 추천 아이템으로서 상기 선택된 아이템 및 상기 다른 아이템과 관련된 제2 추천 아이템을 포함하는 검색 결과 페이지를 제공할 수 있다.
상기 서버는, 아이템 선택 이력 데이터베이스를 더 포함하고, 상기 적어도 하나의 프로세서는, 상기 세션이 유지되는 동안, 상기 사용자로부터의 상기 복수의 아이템들에 대한 선택의 이력을 상기 사용자의 식별자 및 상기 검색어와 연관하여 상기 아이템 선택 이력 데이터베이스 저장하고, 상기 제2 추천 아이템은 상기 저장된 선택의 이력에 기반하여 상기 복수의 아이템들 중 결정된 추천 아이템을 포함할 수 있다.
또 다른 일 측면에 있어서, 추천 아이템을 제공하는 사용자 단말에 있어서, 디스플레이 및 컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 상기 디스플레이를 통해, 사용자로부터 입력되는 검색어에 대한 검색 결과로서 복수의 아이템들을 포함하는 검색 결과 페이지를 표시하고, 상기 사용자로부터의 상기 복수의 아이템들 중 적어도 하나의 아이템에 대한 선택에 따라, 상기 선택된 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지를 표시하고, 상기 사용자로부터 뒤로가기 명령이 수신되거나 상기 검색어를 사용한 재검색이 수행되는 경우, 상기 복수의 아이템들과 함께 추천 아이템을 포함하는 상기 검색 결과 페이지를 표시하고, 상기 추천 아이템은 상기 사용자와 연관된 세션에서의의 상기 사용자로부터의 상기 복수의 아이템들에 대한 선택의 이력에 따라 변화하는, 사용자 단말이 제공된다.
사용자가 검색어에 대한 검색 결과로서 제시된 아이템들 중 일 아이템을 선택한 후, 사용자로부터 뒤로가기 명령이나 재검색 요청이 있는 경우, 검색어에 대한 검색 결과로서 추천 아이템을 더 포함하는 검색 결과 페이지를 제공함으로써, 추천 아이템을 통해, 사용자가 원하는 아이템을 보다 효율적으로 검색하도록 할 수 있다.
사용자와 연관된 세션에서 아이템에 대한 사용자의 선택의 이력에 따라, 해당 이력과 사용자에 의한 선택을 반영하여 결정된 아이템을 추천 아이템으로서 사용자에게 제공할 수 있다. 이에 따라, 사용자의 아이템에 대한 검색 활동에 즉각적으로 반응하는 추천 아이템의 제공이 이루어질 수 있고, 사용자는 원하는 아이템(즉, 상품)에 보다 쉽게 도달할 수 있다.
도 1은 일 실시예에 따른, 사용자로부터 입력되는 검색어에 대한 검색 결과로서 추천 아이템을 제공하는 방법을 나타낸다.
도 2는 일 실시예에 따른, 추천 아이템을 포함하는 검색 결과 페이지를 제공하는 서버와, 해당 검색 결과 페이지를 표시하는 사용자 단말의 구조를 나타낸다.
도 3은 일 실시예에 따른, 서버 및 사용자 단말을 통해, 사용자로부터 입력되는 검색어에 대한 검색 결과로서 추천 아이템을 제공하는 방법을 나타내는 흐름도이다.
도 4는 일 예에 따른 아이템 선택의 이력에 기반하여 추천 아이템을 결정하는 방법을 나타내는 흐름도이다.
도 5는 일 예에 따른, 사용자와 연관된 세션이 유지되고 있는지 여부를 결정하는 방법을 나타내는 흐름도이다.
도 6은 일 예에 따른, 검색어에 대해 수행된 카테고리 검색에 따라 추천 아이템을 포함하는 검색 결과 페이지를 제공하는 방법을 나타낸다.
도 7은 일 예에 따른, 검색어에 대해 수행된 통합 검색에 따라 추천 아이템을 포함하는 검색 결과 페이지를 제공하는 방법을 나타낸다.
도 8은 일 예에 따른, 연관 아이템 추천 모델과 세션 기반 아이템 추천 모델을 사용하여, 사용자의 활동에 반응하여 추천 아이템을 제공하는 방법을 나타낸다.
도 9는 일 예에 따른, 세션 기반 아이템 추천 모델을 사용하여, 사용자로부터의 아이템의 선택의 시퀀스를 분석함으로써 추천 아이템을 결정하는 방법을 나타낸다.
도 10은 일 예에 따른, 연관 아이템 추천 모델과 세션 기반 아이템 추천 모델을 사용하여, 사용자의 활동에 반응하여 추천 아이템을 제공하는 방법을 관련된 API와 관련하여 나타낸다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 일 실시예에 따른, 사용자로부터 입력되는 검색어에 대한 검색 결과로서 추천 아이템을 제공하는 방법을 나타낸다.
도 1을 참조하여, 사용자 단말을 통해 사용자가 입력한 검색어에 대해 수행된 검색에 의해, 복수의 아이템들이 검색 결과로서 사용자 단말에 제공되고, 제공된 복수의 아이템들에 대한 사용자로부터의 선택의 이력에 기반하여 선택된 아이템과 관련되는 추천 아이템(들)이 사용자 단말에게 제공되는 방법을 설명한다.
도 1에서는, 검색어로서 "원피스"가 입력된 경우에 있어서, 복수의 아이템들(원피스들)을 포함하는 검색 결과를 포함하는 검색 결과 페이지(100-1)가 사용자 단말에서 표시되는 경우가 예시되었다. 도시된 것처럼, 사용자는 자신의 사용자 단말에 표시된 검색어 입력창에 검색어("원피스")를 입력할 수 있고, 이에 따라, 검색 결과 페이지(100-1)에는 복수의 아이템들(원피스들)이 검색 결과로서 표시될 수 있다.
사용자는 검색 결과 페이지(100-1)의 복수의 아이템들 중 마음에 드는 아이템을 선택할 수 있고, 이에 따라, 선택된 아이템(예컨대, 원피스 D)의 상세 정보를 포함하는 상세 정보 페이지(100-2)가 사용자 단말에서 표시될 수 있다.
해당 선택된 아이템을 확인한 사용자는 추가로 아이템들을 확인하기 위해, 사용자 단말을 조작하여, 뒤로가기 명령 또는 "원피스"의 검색어로의 재검색을 사용자 단말에 명령할 수 있다. 이러한, 뒤로가기 명령 또는 재검색의 명령에 따라, 사용자 단말은 다시 검색 결과 페이지(100-3 및 100-4)를 표시할 수 있다.
다시 표시되는 검색 결과 페이지(100-3 및 100-4)는 검색 결과 페이지(100-1)에 포함되었던 것과 동일한 아이템들을 포함할 수 있다. 실시예에서, 사용자 단말이 표시하는 검색 결과 페이지(100-3 및 100-4)는 사용자에 의해 선택된 아이템과 관련되는 추천 아이템(들)을 더 포함할 수 있다.
도시된 것처럼, 검색 결과 페이지(100-3 및 100-4)에는 사용자에 의해 선택된 아이템과 관련된 복수의 추천 아이템들이 표시될 수 있고, 이러한 추천 아이템들은 기존에 검색 결과 페이지(100-1)에서 표시되었던 아이템들과는 구분되는 영역에서 표시될 수 있다.
예컨대, 검색 결과 페이지(100-3)와 같이, 검색 결과 페이지(100-3)가 검색어에 대한 통합 검색에 따라, 사용자 단말에게 제공되는 것이라면, 검색 결과 페이지(100-3)에서 표시되는 추천 아이템은 검색 결과 페이지(100-3)에서, 복수의 아이템들이 표시되는 영역(110-1)의 하단의 영역(120-1)에서 표시될 수 있다. 또는, 검색 결과 페이지(100-4)와 같이, 검색 결과 페이지(100-4)가 검색어에 대한 카테고리 검색에 따라, 사용자 단말에게 제공되는 것이라면, 검색 결과 페이지(100-4)에서 표시되는 추천 아이템은 검색 결과 페이지(100-4)에서, 선택된(즉, 가장 최근에 선택되었던) 아이템이 표시되는 영역(110-2)과 인접한 영역(120-2)에서 표시될 수 있다.
검색 결과 페이지(100-3 및 100-4)에서 표시되는 추천 아이템은 사용자와 연관된 세션에서 사용자로부터의 검색 결과 페이지(100-1, 100-3 또는 100-4)에서 표시된 아이템들에 대한 선택의 이력에 따라 변화될 수 있다.
사용자와 연관된 세션은, 사용자로부터의 일정 시간 동안 사용자 단말을 조작함으로써 이루어지는 일련의 활동을 하나의 상태로 간주한 것일 수 있다. 예컨대, 사용자가 사용자 단말을 통해 최초로 검색어를 입력하는 경우 사용자와 연관된 세션이 개시될 수 있고, 소정의 시간 내에 사용자로부터 추가적인 활동(예컨대, 웹 페이지에의 접속, 추가적인 검색의 수행, 재검색의 수행 및 검색 결과에 대한 선택 중 적어도 하나)이 있는 경우 세션은 유지될 수 있다. 한편, 세션이 개시된 후(즉, 세션이 유지되고 있는 동안) 상기 소정의 시간 내에 사용자로부터 추가적인 활동이 없는 경우 세션은 종료될 수 있다. 사용자와 연관된 세션이 유지되고 있는지 여부를 결정하는 방법에 대해서는 후술될 도 5를 참조하여 더 자세하게 설명된다.
실시예에서, 검색 결과 페이지(100-3 및 100-4)에서 표시되는 추천 아이템은 이러한 사용자와 연관된 세션에서의 사용자로부터의 아이템들에 대한 선택의 이력에 따라 변화될 수 있다. 예컨대, 검색 결과 페이지(100-1)에서의 아이템에 대한 선택이 해당 세션에서의 아이템들에 대한 최초의 선택이면, 검색 결과 페이지(100-3 및 100-4)에서 표시되는 추천 아이템은 상기 선택된 아이템과 연관된 연관 추천 아이템을 포함할 수 있다. 또는, 검색 결과 페이지(100-1)에서의 아이템에 대한 선택 이전에 다른 아이템에 대한 선택의 이력이 존재하는 경우에는, 검색 결과 페이지(100-3 및 100-4)에서 표시되는 추천 아이템은 사용자에 의해 선택된 아이템들의 시퀀스와 관련되는 세션 추천 아이템을 포함할 수 있다.
말하자면, 실시예에서는 세션이 유지되는 동안 사용자에 의해 검색 결과 페이지(100-1, 100-3 또는 100-4)에서 표시된 아이템들에 대한 선택이 이루어짐에 따라, 영역(120-1 또는 120-2)에서 제공되는 추천 아이템이 상이하게 구성될 수 있고, 사용자가 더 많은 아이템을 선택할수록, 사용자가 소망하는(예컨대, 구매하고자 하는) 아이템에 더 가까운 아이템이 추천 아이템으로서 제공될 수 있다. 따라서, 사용자의 아이템에 대한 선택에 즉각적으로 반응하는 추천 아이템의 제공이 이루어질 수 있고, 사용자는 원하는 아이템에 보다 쉽게 도달할 수 있다.
사용자로부터 입력되는 검색어에 대한 검색 결과로서 추천 아이템을 제공하는 보다 구체적인 방법에 대해서는 후술될 도 2 내지 도 10을 참조하여 더 자세하게 설명된다.
도 2는 일 실시예에 따른, 추천 아이템을 포함하는 검색 결과 페이지를 제공하는 서버와, 해당 검색 결과 페이지를 표시하는 사용자 단말의 구조를 나타낸다.
도 1을 참조하여 전술된 사용자 단말(200)은 도시된 사용자 단말(200)에 대응할 수 있다. 서버(240)는 사용자 단말(200)에 대해 전술된 검색 결과 페이지(100-1, 100-3 및 100-4)와 상세 정보 페이지(100-2)를 제공할 수 있고, 사용자 단말(200)은 서버(240)로부터 제공된 검색 결과 페이지(100-1, 100-3 및 100-4)와 상세 정보 페이지(100-2)를 표시할 수 있다.
서버(240)는 사용자 단말(200)에 대해 검색 결과 페이지(100-1, 100-3 및 100-4)와 상세 정보 페이지(100-2)를 제공하거나, 이러한 페이지들(100-1 내지 4)을 사용자 단말(200)에서 표시시키기 위해 요구되는 데이터를 사용자 단말(200)로 전송하는 서버일 수 있다. 서버(240)는 예컨대, 클라이언트(client)인 사용자 단말(200)에 대해 웹 페이지를 제공하는 웹 서버이거나, 이러한 웹 서버의 일부를 구성하는 장치일 수 있다. 또한, 서버(240)는 사용자 단말(200)에 대해 검색 결과를 제공하기 위한 검색 엔진(미도시)을 포함하거나, 검색 엔진과 통신할 수 있다.
서버(240)는 사용자 단말(200) 상에 설치된 어플리케이션(예컨대, 웹 브라우저 어플리케이션 또는 전자상 거래/온라인 쇼핑용 어플리케이션)과 통신하는 것을 통해 사용자 단말(200)에게 복수의 아이템들을 포함하는 검색 결과 페이지(100-1, 100-3 및 100-4)와 선택된 아이템에 대한 상세 정보 페이지(100-2)를 제공할 수 있다. 서버(240)는 사용자 단말(200)에 대해 제공할 추천 아이템(들)을 결정할 수 있고, 결정된 추천 아이템을 포함하는 검색 결과 페이지(100-3 및 100-4)를 사용자 단말(200)에 제공할 수 있다. 서버(240)는 적어도 하나의 컴퓨터 또는 컴퓨팅 장치로 구현될 수 있다.
도시된 것처럼, 서버(240)는 통신부(250) 및 프로세서(260)를 포함할 수 있다.
통신부(250)는 서버(240)가 다른 서버나 사용자 단말(200)과 통신하기 위한 장치일 수 있다. 말하자면, 통신부(250)는 다른 서버나 사용자 단말(200)에 대해 데이터 및/또는 정보를 전송/수신하는, 서버(240)의 네트워크 인터페이스 카드, 네트워크 인터페이스 칩 및 네트워킹 인터페이스 포트 등과 같은 하드웨어 모듈 또는 네트워크 디바이스 드라이버(driver) 또는 네트워킹 프로그램과 같은 소프트웨어 모듈일 수 있다.
프로세서(260)는 서버(240)의 구성 요소들을 관리할 수 있고, 사용자 단말(200)에 대해 추천 아이템을 제공하기 위해 사용하는 프로그램 또는 어플리케이션을 실행할 수 있고, 상기 프로그램 또는 어플리케이션의 실행 및 데이터의 처리 등에 필요한 연산을 처리할 수 있다. 또한, 프로세서(260)는 다른 서버 및 사용자 단말(200)로부터 수신된 데이터를 처리하도록 구성될 수 있다. 프로세서(260)는 서버(240)의 적어도 하나의 프로세서 또는 프로세서 내의 적어도 하나의 코어(core)일 수 있다.
서버(240)는 도시되지는 않았으나 메모리를 포함할 수 있다. 메모리는 컴퓨터에서 판독 가능한 기록매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 여기서 ROM과 비소멸성 대용량 기록장치는 메모리와 분리되어 별도의 영구 저장 장치로서 포함될 수도 있다. 또한, 메모리에는 운영체제와 적어도 하나의 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신부(250)를 통해 메모리에 로딩될 수도 있다.
프로세서(260)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리 또는 통신부(250)에 의해 프로세서(260)로 제공될 수 있다. 예를 들어, 프로세서(260)는 메모리에 로딩된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다. 이러한 프로세서(260)에 의한 동작에 의해 서버(240)는 사용자 단말(200)에 대해 추천 아이템을 제공할 수 있다.
예컨대, 서버(240)는 프로세서(260)에 의한 제어에 따라, 사용자 단말(200)에 대해, 사용자로부터 입력되는 검색어에 대한 검색 결과로서 복수의 아이템들을 포함하는 검색 결과 페이지(100-1)를 제공할 수 있고, 사용자로부터의 복수의 아이템들 중 적어도 하나의 아이템에 대한 선택에 따라, 선택된 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지(100-2)를 제공할 수 있다. 또한, 서버(240)는 프로세서(260)에 의한 제어에 따라, 사용자 단말에 대해, 사용자로부터 뒤로가기 명령이 수신되거나 검색어를 사용한 재검색이 수행되는 경우, 검색 결과로서 제공되었던 복수의 아이템들과 함께 추천 아이템을 포함하는 검색 결과 페이지(100-3 및 100-4)를 제공할 수 있다.
서버(240)는 도시된 것처럼 사용자로부터의 아이템에 대한 선택의 이력을 저장 및 관리하기 위한 (아이템) 선택 이력 DB(270)를 더 포함할 수 있다. 선택 이력 DB(270)는 사용자와 연관된 세션이 유지되는 동안 사용자의 사용자 단말(200)을 조작하는 활동을 저장 및 관리할 수 있다. 예컨대, 프로세서(260)는 사용자와 연관된 세션이 유지되는 동안, 사용자로부터의 (검색 결과로서 제공된) 복수의 아이템들에 대한 선택의 이력을 사용자의 식별자 및 검색어와 연관하여 선택 이력 데이터베이스(270)에 저장할 수 있다. 사용자의 식별자는 (예컨대, 검색과 연관된 서비스에 대한) 사용자의 ID 또는 사용자 단말(200)의 식별자(예컨대, 식별키)일 수 있다. 일례로, 사용자의 식별자는 사용자 bcookie를 포함할 수 있다.
선택 이력 DB(270)는 (검색 결과로서 제공된) 복수의 아이템들에 대한 사용자의 선택 데이터(예컨대, 클릭 데이터)를 저장할 수 있다. 관련하여, 선택 이력 DB(270)는 사용자가 선택한 아이템 리스트(아이템의 식별자) 및 사용자가 검색에 사용한 검색어 중 적어도 하나를 저장할 수 있다.
또한, 선택 이력 DB(270)는 사용자 단말(200)에게 제공된 추천 아이템과 관련된 데이터를 더 저장할 수 있다. 관련하여, 선택 이력 DB(270)는 추천 아이템을 제공 받은 사용자의 식별자(예컨대, 사용자 bcookie), 사용자가 검색에 사용한 검색어 및 사용자에게 추천된 추천 아이템 리스트(추천 아이템의 식별자) 중 적어도 하나를 저장할 수 있다.
서버(240)는 선택 이력 데이터베이스(270)에 저장된 데이터를 사용하여 사용자 단말(200)에게 제공할 추천 아이템을 결정할 수 있다.
선택 이력 데이터베이스(270)는 도시된 것과는 달리 서버(240)와는 별개의 서버 또는 서버(240) 외부의 장치로서 구현될 수 있다.
사용자 단말(200)은 PC(personal computer), 노트북 컴퓨터(laptop computer), 스마트폰(smart phone), 태블릿(tablet), 웨어러블 컴퓨터(wearable computer), 사물 인터넷(Internet Of Things) 기기 등을 포함하여, 서버(240)와 관련된 웹/모바일 사이트의 접속과, 복수의 아이템들을 포함하는 검색 결과의 표시 및 추천 아이템의 표시를 위한 어플리케이션/프로그램의 설치 및 실행이 가능한 모든 단말 장치 또는 전자 장치를 의미할 수 있다.
사용자 단말(200)은 웹 브라우저 어플리케이션 또는 전자상 거래/온라인 쇼핑용 어플리케이션과 같은 어플리케이션의 제어 하에서 검색 결과로서 제공되는 복수의 아이템들 및 추천 아이템을 표시하고, 이를 위해 요구되는 연산 및 동작을 수행할 수 있다.
사용자 단말(200)은 통신부(210), 프로세서(220) 및 디스플레이(230)를 포함할 수 있다.
통신부(210)은 사용자 단말(200)이 서버(240)나 다른 사용자 단말과 통신하기 위한 장치일 수 있다. 말하자면, 통신부(210)는 서버(240)나 다른 사용자 단말에 대해 데이터 및/또는 정보를 전송/수신하는, 사용자 단말(200)의 네트워크 인터페이스 카드, 네트워크 인터페이스 칩 및 네트워킹 인터페이스 포트 등과 같은 하드웨어 모듈 또는 네트워크 디바이스 드라이버(driver) 또는 네트워킹 프로그램과 같은 소프트웨어 모듈일 수 있다. 통신부(210)는 서버(240)에 의해 제공되는 검색 결과 및 추천 아이템을 수신할 수 있다.
프로세서(220)는 사용자 단말(200)의 구성 요소들을 관리할 수 있고, 사용자 단말(200)이 사용하는 프로그램 또는 어플리케이션을 실행할 수 있다. 예컨대, 프로세서(220)는, 서버(240)에 의해 검색 결과 및 추천 아이템의 수신 및 표시를 위한 어플리케이션/프로그램(예컨대, 웹 브라우저 어플리케이션 또는 전자상 거래/온라인 쇼핑용 어플리케이션)을 설치 및 실행할 수 있고, 상기 프로그램 또는 어플리케이션의 실행 및 데이터의 처리 등에 필요한 연산을 처리할 수 있다. 프로세서(220)는 사용자 단말(200)의 적어도 하나의 프로세서 또는 프로세서 내의 적어도 하나의 코어(core)일 수 있다.
프로세서(220)는 디스플레이(230)를 통해 복수의 아이템들을 포함하는 검색 결과를 포함하는 검색 결과 페이지(100-1, 100-3, 및 100-4)를 표시할 수 있고, 선택된 아이템에 대한 상세 정보 페이지(100-2)를 표시할 수 있다.
사용자 단말(200) 역시 도시되지는 않았으나 메모리를 포함할 수 있다. 메모리에 대한 기술적 특징에 대해서는 서버(240)의 메모리에 대해 전술된 기술적 설명이 유사하게 적용될 수 있는 바, 중복되는 설명은 생략한다.
프로세서(220)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리 또는 통신부(210)에 의해 프로세서(220)로 제공될 수 있다. 예를 들어, 프로세서(220)는 메모리에 로딩된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다. 이러한 프로세서(220)에 의한 동작에 의해 사용자 단말(200)은 검색 결과 페이지(100-1, 100-3, 및 100-4) 및 상세 정보 페이지(100-2)의 표시를 제어할 수 있다.
예컨대, 사용자 단말(200)은 프로세서(220)에 의한 제어에 따라, 디스플레이(230)를 통해, 사용자로부터 입력되는 검색어에 대한 검색 결과로서 복수의 아이템들을 포함하는 검색 결과 페이지(100-1)를 표시하고, 사용자로부터의 복수의 아이템들 중 적어도 하나의 아이템에 대한 선택에 따라, 선택된 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지(100-2)를 표시할 수 있다. 또한, 사용자 단말(200)은 프로세서(220)에 의한 제어에 따라, 디스플레이(230)를 통해, 사용자로부터 뒤로가기 명령이 수신되거나 검색어를 사용한 재검색이 수행되는 경우, 검색 결과로서 제공되었던 복수의 아이템들과 함께 추천 아이템을 포함하는 검색 결과 페이지(100-3 및 100-4)를 표시할 수 있다.
디스플레이(230)는 검색 결과 페이지(100-1, 100-3, 및 100-4) 및 상세 정보 페이지(100-2)를 표시하기 위한 디스플레이 장치일 수 있다. 또한, 디스플레이(230)은 검색어 등과 같은 사용자에 의해 입력된 데이터를 출력할 수 있다. 디스플레이(230)는 터치 스크린(터치 패널)을 포함할 수 있으며, 전술된 뒤로가기 명령이나 검색어를 통한 재검색을 수행하기 위한 명령은 터치 스크린을 통해 사용자 단말(200)에 입력될 수 있다.
서버(240)와 사용자 단말(200)에 의해, 사용자에게 검색어에 대한 검색 결과로서 추천 아이템을 제공하는 보다 구체적인 방법에 대해서는 후술될 도 3 내지 도 10을 참조하여 더 자세하게 설명된다.
이상, 도 1을 참조하여 전술된 기술적 특징에 대한 설명은, 도 2에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
후술될 상세한 설명에서, 사용자 단말(200)의 구성들(예컨대, 프로세스(220))에 의해 수행되는 동작이나 사용자 단말(200)이 실행하는 어플리케이션에 의해 수행되는 동작은 설명의 편의상 사용자 단말(200)에 의해 수행되는 동작으로 설명될 수 있다. 마찬가지로, 서버(240)의 구성들(예컨대, 프로세스(260))에 의해 수행되는 동작 역시 설명의 편의상 서버(240)에 의해 수행되는 동작으로 설명될 수 있다.
도 3은 일 실시예에 따른, 서버 및 사용자 단말을 통해, 사용자로부터 입력되는 검색어에 대한 검색 결과로서 추천 아이템을 제공하는 방법을 나타내는 흐름도이다.
단계(305)에서, 사용자 단말(200)은 사용자로부터의 선택에 따라 검색의 타입을 설정할 수 있다. 설정되는 검색의 타입은 예컨대, 통합 검색, 쇼핑 검색, 이미지 검색, 동영상 검색 및 어학사전 검색 등을 포함할 수 있다. 쇼핑 검색, 이미지 검색, 동영상 검색 및 어학사전 검색의 각각은 카테고리 검색의 일 예일 수 있다. 사용자는 검색어를 사용하여 검색을 수행할 때마다 검색의 타입을 설정할 수 있다.
"통합 검색"은 검색 엔진이 제공하는 다양한 도메인 콘텐츠를 제공하는 서비스를 나타낼 수 있다. 카테고리 검색, 일례로, "쇼핑 검색"은 쇼핑에 해당하는 도메인의 콘텐츠(예컨대, 상품)를 검색하여 제공하는 서비스를 나타낼 수 있다.
"쇼핑 검색"과 같은 카테고리 검색에 있어서는 실시예의 추천 아이템 제공 방법을 구현하기 위한 UI가 구현될 수 있다(예컨대, 도 1 및 도 6에서의 쇼핑 검색에서의 검색 결과 페이지(100-4) 참조).
단계(310)에서, 사용자 단말(200)은 사용자로부터 입력되는 검색어를 수신할 수 있다. 검색어는 검색 엔진(310)에 대해 검색 결과를 획득하기 위해 사용되는 키워드로서 적어도 하나의 단어로 구성될 수 있다. 검색 엔진(310)은 서버(240)와 별개로 구성될 수 있으나, 서버(240)와 단일한 서버(300)에 포함될 수도 있다. 검색 엔진(310)은 예컨대, 사용자가 검색어로서 입력하는 키워드에 대해 관련되는 아이템들(예컨대, 상품들)을 검색 결과로서 제공할 수 있다.
단계(315)(및 단계(318))에서, 사용자 단말(200)로부터 검색어가 입력되어 검색이 요청됨에 따라, 서버(240)(및 검색 엔진(310))는 이러한 검색 요청을 수신할 수 있다. 서버(240)는, 소정의 시간 동안 사용자 단말(200)로부터 여하한 활동을 수신하지 않은 후, 이러한 검색의 요청을 수신한 경우, 사용자와 연관된 세션을 개시되는 것으로 결정할 수 있다. 한편, 서버(240)는 소정의 시간 동안 사용자 단말(200)로부터 여하한 활동이 수신된 후, 이러한 검색의 요청을 수신한 경우에는, 사용자와 연관된 세션이 유지되고 있는 것으로 결정할 수 있다. 사용자와 연관된 세션이 유지되고 있는지 여부를 결정하는 방법에 대해서는 후술될 도 5를 참조하여 더 자세하게 설명된다.
단계(325)에서, 서버(240)는 검색 엔진(310)으로부터의 검색 결과(단계(320))를 포함하는 검색 결과 페이지(100-1)를 사용자 단말(200)에 대해 제공할 수 있다. 검색 결과 페이지(100-1)는 사용자로부터 입력되는 검색어에 대한 검색 결과로서 복수의 아이템들을 포함할 수 있다. 복수의 아이템들의 각각은 검색 결과에 대응할 수 있고, 예컨대, 상품을 나타낼 수 있다.
단계(330)에서, 사용자 단말(200)은 사용자로부터 입력되는 검색어에 대한 검색 결과로서 복수의 아이템들을 포함하는 검색 결과 페이지(100-1)를 표시할 수 있다. 복수의 아이템들의 각각이 상품인 경우 각 아이템은 해당 상품에 대한 정보를 포함할 수 있다. 예컨대, 도 1에서 도시된 것처럼, 각 아이템에 포함된 상품에 대한 정보는 상품의 이미지, 상품의 명칭, 상품의 가격, 상품에 대한 리뷰의 수, 상품을 찜한 수 및 상품의 판매처의 수를 포함할 수 있다.
단계(335)에서, 사용자 단말(200)은 사용자로부터 검색 결과 페이지(100-1)(뒤로가기/재검색 후의 실시예에 있어서는, 검색 결과 페이지(100-3 및 100-4))의 복수의 아이템들 중 적어도 하나의 아이템에 대한 선택을 수신할 수 있다. 예컨대, 사용자는 검색 결과 페이지(100-1, 100-3 및 100-4)에서 표시된 아이템들 중 하나를 터치하거나 클릭함으로써 해당 아이템을 선택할 수 있다.
단계(340 및 344)에서, 사용자 단말(200)은 선택된 아이템의 상세 정보를 서버(240)(및 검색 엔진(310))로 요청할 수 있다.
단계(342)에서, 서버(240)는 사용자 단말(200)에 의한 아이템의 선택의 이력을 선택 이력 DB(270)에 저장할 수 있다. 예컨대, 서버(240)는 사용자와 연관된 세션이 유지되는 동안, 사용자로부터의 검색 결과 페이지(100-1, 100-3 및 100-4)에서 표시된 복수의 아이템들에 대한 선택의 이력을 사용자의 식별자 및 검색어와 연관하여 저장할 수 있다. 복수의 아이템들에 대한 선택의 이력이 사용자의 식별자 및 검색어와 둘 다와 연관하여(즉, 사용자의 식별자 및 검색어별로) 저장 및 관리됨으로써, 동일한 사용자가 다른 검색어로 검색을 수행하는 경우, 이전에 사용한 검색어와 관련된 추천 아이템이 다른 검색어로의 검색 결과에는 포함되지 않게 될 수 있다. 말하자면, 실시예에서는 사용자의 식별자와 검색어를 키로 두고 아이템에 대한 선택의 이력이 저장 및 관리될 수 있다.
한편, 다른 실시예로서는, 복수의 아이템들에 대한 선택의 이력은 사용자의 식별자 및 검색어가 속하는 카테고리와 연관하여(즉, 사용자의 식별자 및 검색어가 속하는 카테고리별로) 저장 및 관리될 수도 있다. 이 때, 동일한 사용자가 다른 검색어로 검색을 수행하는 경우라도, 이전에 사용한 검색어와 동일한 카테고리의 검색어로 검색을 수행하는 경우라면 관련된 추천 아이템이 다른 검색어로의 검색 결과 페이지에 포함될 수 있다.
단계(350)에서, 서버(240)는 검색 엔진(310)으로부터의 선택된 아이템에 대한 상세 정보(단계(345))를 포함하는 상세 정보 페이지(100-2)를 사용자 단말(200)에 대해 제공할 수 있다.
단계(355)에서, 사용자 단말(200)은 선택된 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지(100-2)를 표시할 수 있다. 상세 정보 페이지(100-2)는 선택된 아이템에 대한 보다 상세한 정보를 포함할 수 있다. 선택된 아이템에 대한 보다 상세한 정보는 도 1에서 설명된 것처럼, 선택된 아이템이 상품인 경우 판매처에 관한 정보 및 상품과 관련된 리뷰에 대한 정보를 포함할 수 있다. 판매처에 관한 정보는 각 판매처에 대한 이름, 각 판매처에서 해당 상품의 가격 및 각 판매처로의 링크 중 적어도 하나를 포함할 수 있다. 리뷰에 대한 정보는 해당 상품에 관한 평점, 해당 상품에 관한 일반 리뷰(텍스트 리뷰) 및 해당 상품에 관한 포토 및/또는 동영상 리뷰 중 적어도 하나를 포함할 수 있다.
단계(360)에서, 사용자 단말(200)은 사용자로부터 뒤로가기 명령 또는 상기 검색어를 사용한 재검색의 명령을 수신할 수 있다. 뒤로가기 명령은 사용자 단말(200)이 현재 표시되고 있는 상세 정보 페이지(100-2) 이전의 페이지를 표시하도록 사용자 단말(200)을 제어하기 위한 명령일 수 있다.
단계(365)에서, 사용자 단말(200)은 서버로 상기 뒤로가기 명령 또는 재검색의 명령을 송신할 수 있다.
단계(375)에서, 서버(240)는 사용자 단말(200)에 대해 제공할 추천 아이템을 결정할 수 있다. 서버(240)는 사용자와 연관된 세션에서의 사용자로부터의 검색 결과 페이지(100-1, 100-3 및 100-4)에서 표시된 복수의 아이템들에 대한 선택의 이력에 따라 사용자 단말(200)에 대해 제공할 추천 아이템을 결정할 수 있다. 사용자 단말(200)에 대해 제공할 추천 아이템을 결정하는 구체적인 방법에 대해서는 도 4, 도 8 및 도 9를 참조하여 더 자세하게 설명한다.
단계(380)에서, 서버(240)는 사용자 단말(200)에 대해, 사용자로부터의 뒤로가기 명령 또는 재검색의 명령에 따라, 검색 결과 페이지(100-1, 100-3 및 100-4)에서 표시되었던 복수의 아이템들과 함께 추천 아이템을 포함하는 검색 결과 페이지(100-3 및 100-4)를 제공할 수 있다. 예컨대, 서버(240)는 검색 결과 페이지(100-1)에 비해 추천 아이템들을 포함하는 영역(120-1 및 120-2)을 더 포함하는 검색 결과 페이지(100-3 및 100-4)를 사용자 단말(200)에 대해 제공할 수 있다.
단계(385)에서, 사용자 단말(200)은 검색 결과 페이지(100-1, 100-3 및 100-4)에서 표시되었던 복수의 아이템들과 함께 추천 아이템을 포함하는 검색 결과 페이지(100-3 및 100-4)를 표시할 수 있다.
검색 결과 페이지(100-3 및 100-4)에 포함되는 추천 아이템(들)은 사용자와 연관된 세션에서의 사용자로부터의 검색 결과로서 제공되는 복수의 아이템들에 대한 선택의 이력에 따라 변화될 수 있다. 말하자면, 검색 결과 페이지(100-3 및 100-4)는 검색 결과로서 제공되는 복수의 아이템들에 대한 선택의 이력이 존재하는지 및 해당 이력이 존재한다면 그 내용(예컨대, 선택된 아이템들의 시퀀스)에 따라 다른 추천 아이템들을 포함하도록 구성될 수 있다.
사용자 단말(200)에 대해 제공되는 추천 아이템은 검색 결과로서 제공된 복수의 아이템들 중 사용자가 선택할 것으로 예측되는 아이템을 포함할 수 있다. 말하자면, 추천 아이템은 검색 결과로서 제공된 복수의 아이템들 중에서 사용자가 다음에 클릭할 가능성이 높을 것으로 결정된 아이템을 포함할 수 있다.
사용자 단말(200)에 대해 제공되는 추천 아이템을 결정하는 구체적인 방법과, 추천 아이템을 포함하는 검색 결과 페이지(100-3 및 100-4)에 대해서는 후술될 도 4 내지 도 10을 참조하여 더 자세하게 설명된다.
이상, 도 1 및 도 2를 참조하여 전술된 기술적 특징에 대한 설명은, 도 3에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다
도 4는 일 예에 따른 아이템 선택의 이력에 기반하여 추천 아이템을 결정하는 방법을 나타내는 흐름도이다.
단계(410)에서, 서버(240)는 검색 결과 페이지(100-1)(혹은, 검색 결과 페이지(100-3 및 100-4))에서의 아이템에 대한 선택이 사용자와 연관된 세션에서의 아이템들에 대한 최초의 선택인지 여부를 판정할 수 있다.
단계(420)에서, 서버(240)는, 상기 아이템에 대한 선택이 해당 세션에서 아이템들에 대한 최초의 선택인 것으로 판정되면, 검색 결과로서 제공되었던 아이템들 중 선택된 아이템과 연관된 아이템을 제1 추천 아이템으로서 결정할 수 있다. 이에 따라, 서버(240)는 추천 아이템으로서 상기 선택된 아이템과 관련된 제1 추천 아이템(즉, 최근에 선택된 아이템과 연관된 연관 추천 아이템)을 포함하는 검색 결과 페이지(100-3 및 100-4)를 사용자 단말(200)에 대해 제공할 수 있다.
단계(430)에서, 서버(240)는, 상기 아이템에 대한 선택이 해당 세션에서의 아이템들에 대한 최초의 선택이 아니고 상기 선택 이전에 다른 아이템(들)에 대한 선택의 이력이 존재하는 것으로 판정된 경우에는, 검색 결과로서 제공되었던 아이템들 중 상기 선택된 아이템 및 상기 (이전에 선택된) 다른 아이템(들)과 관련된 아이템을 제2 추천 아이템(즉, 세션에서 선택된 아이템들의 시퀀스와 연관된 세션 추천 아이템)으로서 결정할 수 있다. 이에 따라, 서버(240)는 추천 아이템으로서 상기 제2 추천 아이템을 포함하는 검색 결과 페이지(100-3 및 100-4)를 사용자 단말(200)에 대해 제공할 수 있다. 제2 추천 아이템은 전술된 선택 이력 DB(270)에서 저장된 선택의 이력에 기반하여 (검색 결과로 제공된) 아이템들 중 결정된 추천 아이템을 포함할 수 있다. 선택 이력 DB(270)에서 저장된 선택의 이력은 세션이 유지되는 동안 사용자가 특정 검색어로 검색한 후 아이템을 선택한 이력을 포함할 수 있다.
단계(430)에서와 같이, 사용자와 연관된 세션에서 아이템에 대한 사용자의 선택 이전에 다른 아이템에 대한 선택의 이력이 존재하는 경우에 있어서, 상기 제2 추천 아이템은 사용자에 의해 선택된 아이템들의 각각(즉, 선택된 아이템들의 시퀀스에 포함되는 아이템들 각각)에 대한 가중치에 기반하여 결정될 수 있다.
예컨대, 서버(240)는 가장 최근에 선택된 아이템에 대한 제1 가중치 및 그 이전에 선택된 다른 아이템에 대한 제2 가중치를 사용하여, 검색 결과로 제공된 복수의 아이템들 중 제2 추천 아이템을 결정할 수 있다. 제2 가중치는 제1 가중치보다 더 낮은 값일 수 있다. 따라서, 제2 추천 아이템을 결정함에 있어서는 가장 최근에 선택된 아이템이 가장 주요(dominant)하게 고려될 수 있다. 또한, 세션이 유지되는 동안 이전에 선택된 아이템일수록 제2 추천 아이템을 결정함에 있어서 덜 고려될 수 있다.
또한, 제2 추천 아이템을 결정함에 있어서, 서버(240)는 사용자의 사용자 정보 정보를 더 고려할 수 있다. 예컨대, 서버(240)는 사용자의 성별 및 사용자의 연령 중 적어도 하나를 더 고려하여, 검색 결과로서 제공된 복수의 아이템들 중 제2 추천 아이템을 결정할 수 있다. 이에 따라, 사용자의 특성을 보다 정확하게 반영한 보다 정교한 아이템의 추천이 이루어질 수 있다.
또한, 단계(430)에서와 같이, 사용자와 연관된 세션에서 아이템에 대한 사용자의 선택 이전에 다른 아이템에 대한 선택의 이력이 존재하는 경우에 있어서, 사용자 단말(200)에 제공되는 검색 결과 페이지(100-3 및 100-4)는 상기 제2 추천 아이템 및 상기 제1 추천 아이템을 둘 다 포함할 수 있다. 예컨대, 검색 결과 페이지(100-3 및 100-4)는 추천 아이템으로서 세션이 유지되는 동안 가장 최근에 선택된 아이템과 관련되는 제1 추천 아이템(연관 추천 아이템)과, 세션이 유지되는 동안 사용자에 의해 선택된 아이템들의 시퀀스와 관련되는 제2 추천 아이템(세션 추천 아이템)을 모두 포함할 수 있다. 이 때, 제1 추천 아이템과 제2 추천 아이템은 서로 구분하여 표시될 수 있다.
이와 같이, 검색 결과 페이지(100-3 및 100-4)에서 표시되는 추천 아이템은, 검색 결과로서 제공되는 복수의 아이템들에 대한 선택의 이력이 존재하는지 및 해당 이력이 존재한다면 그 내용(선택된 아이템들의 시퀀스)에 따라, 사용자에 의해 가장 최근에 선택된 아이템과 관련되는 연관 추천 아이템(제1 추천 아이템) 및/또는 사용자에 의해 선택된 아이템들의 시퀀스와 관련되는 세션 추천 아이템(제2 추천 아이템)을 포함할 수 있다.
따라서, 실시예에서는 세션이 유지되는 동안 사용자에 의해 검색 결과 페이지(100-1, 100-3 또는 100-4)에서 표시된 아이템들에 대한 선택이 이루어짐에 따라, 영역(120-1 또는 120-2)에서 제공되는 추천 아이템이 상이하게 구성될 수 있고, 사용자가 더 많은 아이템을 선택할수록, 사용자가 소망하는(예컨대, 구매하고자 하는) 아이템에 더 가까운 아이템이 추천 아이템으로서 제공될 수 있다. 실시예를 통해서는 사용자의 아이템에 대한 선택에 즉각적으로 반응하는 추천 아이템의 제공이 이루어질 수 있고, 사용자는 원하는 아이템에 보다 쉽게 도달할 수 있다.
이상, 도 1 내지 도 3을 참조하여 전술된 기술적 특징에 대한 설명은, 도 4에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다
도 5는 일 예에 따른, 사용자와 연관된 세션이 유지되고 있는지 여부를 결정하는 방법을 나타내는 흐름도이다.
단계(510)에서, 서버(240)는 사용자의 활동을 식별할 수 있다. 사용자의 활동의 식별은 사용자 단말(200)에 의해 수행될 수도 있다. 사용자의 활동은 사용자 단말(200)에 의한 활동일 수 있다. 예컨대, 사용자의 활동은 사용자 단말(200)에 의한 서버(240)(또는, 검색 엔진(310))로의 요청으로서, 예컨대, 특정한 아이템의 선택, 검색어의 입력을 통한 검색 요청 및 웹 페이지의 열람/열람 종료와 같은 브라우징 활동 중 적어도 하나를 포함할 수 있다.
단계(520)에서, 서버(240)는 소정의 시간 동안 사용자의 활동이 있는지 여부를 판정할 수 있다. 소정의 시간은 기 설정된 시간으로서 사용자와 연관된 세션이 유지되는 시간일 수 있다. 소정의 시간은, 예컨대, 6시간으로 설정될 수 있다.
단계(530)에서, 서버(240)는 소정의 시간 내에 사용자의 활동이 있는 것으로 판정될 경우, 사용자와 연관된 세션이 유지되고 있는 것으로 결정할 수 있다. 예컨대, 서버(240)는 검색어(단계(310)에서 입력된 검색어 또는 실시예에 따라서는 이와 상이한 검색어)의 입력 및 검색 결과로서 제공된 복수의 아이템들 중 적어도 하나에 대한 선택 중 적어도 하나를 포함하는 사용자의 활동이 있는 경우, 사용자와 연관된 유지되고 있는 것으로 결정할 수 있다. 소정의 시간 내에 사용자로부터의 활동이 있는 것으로 판정되면, 상기 소정의 시간은 리셋될 수 있다.
세션이 유지되는 동안의 검색 결과로 제공된 아이템에 대한 사용자의 선택은 선택 이력 DB(270)에 저장될 수 있다. 말하자면, 세션이 유지되는 동안의 아이템에 대한 사용자의 선택은, 전술된 제2 추천 아이템을 결정하기 위한 사용자가 선택한 아이템들의 시퀀스를 구성하기 위해 사용될 수 있다.
단계(540)에서, 서버(240)는 소정의 시간 내에 사용자의 활동이 없는 것으로 판정될 경우, 사용자와 연관된 세션이 종료된 것으로 결정할 수 있다. 서버(240)는 소정의 시간 내에 사용자의 활동이 없고 이후에 사용자의 활동이 식별되는 경우에는, 사용자와 연관된 새로운 세션이 개시된 것으로 결정할 수 있다.
단계(550)에서, 서버(240)는 세션이 종료된 것으로 결정된 경우, 선택 이력 DB(270)에 저장된 선택의 이력을 삭제할 수 있다. 따라서, 세션이 종료된 이후에 동일한 검색어를 입력하여 재검색이 수행되는 경우에는, 검색 결과 페이지에 추천 아이템이 포함되지 않을 수 있다. 이후 재검색에 의해 개시된 세션이 유지되는 동안 재검색/뒤로가기 명령이 수행되어 검색 결과 페이지가 다시 사용자 단말(200)에 노출되는 경우, 검색 결과로서 제공된 아이템들에 대한 사용자로부터의 선택의 이력에 따라 변화하는 실시예의 추천 아이템의 제공이 이루어질 수 있다.
이상, 도 1 내지 도 4를 참조하여 전술된 기술적 특징에 대한 설명은, 도 5에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다
도 6은 일 예에 따른, 검색어에 대해 수행된 카테고리 검색에 따라 추천 아이템을 포함하는 검색 결과 페이지를 제공하는 방법을 나타낸다. 도 7은 일 예에 따른, 검색어에 대해 수행된 통합 검색에 따라 추천 아이템을 포함하는 검색 결과 페이지를 제공하는 방법을 나타낸다.
도 7의 검색 결과 페이지(100-3)와 같이, 검색 결과 페이지(100-3)가 검색어에 대한 통합 검색에 따라, 사용자 단말(200)에게 제공되는 것이라면, 검색 결과 페이지(100-3)에서 표시되는 추천 아이템은 검색 결과 페이지(100-3)에서, 복수의 아이템들이 표시되는 영역(710)의 하단의 영역(720)에서 표시될 수 있다. 또는, 도 6의 검색 결과 페이지(100-4)와 같이, 검색 결과 페이지(100-4)가 검색어에 대한 카테고리 검색(예컨대, 쇼핑 검색)에 따라, 사용자 단말(200)에게 제공되는 것이라면, 검색 결과 페이지(100-4)에서 표시되는 추천 아이템은 검색 결과 페이지(100-4)에서, 선택된(즉, 가장 최근에 선택되었던) 아이템이 표시되는 영역(610)과 인접한 영역(620)에서 표시될 수 있다. 예컨대, 추천 아이템이 표시되는 영역(620)은 가장 최근에 선택된 아이템이 표시되는 영역(610)의 하단에 위치될 수 있다.
도 6에서 도시된 것처럼, 추천 아이템이 표시되는 영역(620)은 가장 최근에 선택된 아이템이 표시되는 영역(610)과는 구분될 수 있다. 예컨대, 도시된 것처럼 "함께 보는 상품(아이템) 추천"이라는 텍스트와 함께 영역(610)로부터 구분되어 복수의 추천 아이템(상품)들을 포함하여 표시될 수 있다.
도 6에서 도시된 것처럼, 추천 아이템이 표시되는 영역(620)은 가장 최근에 선택된 아이템이 표시되는 영역(610)과는 구분될 수 있다. 예컨대, 도시된 것처럼 "For you 함께 보는 상품(아이템) 추천"이라는 텍스트와 함께 영역(610)로부터 구분되어 복수의 추천 아이템(상품)들을 포함하여 표시될 수 있다.
도 7에서 도시된 것처럼, 추천 아이템이 표시되는 영역(720)은 복수의 아이템들이 표시되는 영역(710)과는 구분될 수 있다. 예컨대, 도시된 것처럼 "For you 함께 클릭한 상품(아이템) 추천"이라는 텍스트와 함께 영역(710)로부터 구분되어 복수의 추천 아이템(상품)들을 포함하여 표시될 수 있다.
추천 아이템이 표시되는 영역(620 및 720)은, 예컨대, 추천 아이템에 해당하는 상품의 정보로서, 상품의 가격 및 상품의 명칭을 포함할 수 있다.
(도시되지는 않았으나) 영역(620)은 추천 아이템에 해당하는 상품을 찜할 수 있도록 하는 사용자 인터페이스를 제공할 수 있다. 상품을 찜하기 위한 인터페이스는 검색 결과 페이지(100-4)에 표시된 각 아이템에 대해서도 표시될 수 있다. "찜"된 상품(아이템)은 사용자 단말(200)을 통해 사용자가 별도의 페이지 등을 통해 따로 표시될 수 있다. 즉, 사용자는 사용자 단말(200)을 통해 "찜"된 상품(아이템)을 따로 모아서 볼 수 있다. 실시예에 따라, 영역(720) 역시 이러한 상품을 찜하기 위한 인터페이스를 포함할 수도 있다.
영역(720)은 가장 최근에 선택된 아이템의 썸내일을 포함할 수 있다. 도시된 것처럼, 이러한 썸내일은 "For you 함께 클릭한 상품(아이템) 추천"의 좌측에 표시될 수 있다. 또한, 영역(720)은 다른 또는 추가적인 추천 아이템을 제공 받기 위한 "추천 아이템(상품) 새로보기" 사용자 인터페이스를 제공할 수 있다. 실시예에 따라, 영역(620) 역시 상기의 썸내일 및 추천 아이템(상품) 새로보기" 사용자 인터페이스를 포함할 수도 있다.
도 4를 참조하여 전술한 것처럼, 사용자와 연관된 세션에서 아이템에 대한 사용자의 선택 이전에 다른 아이템에 대한 선택의 이력이 존재하는 경우에 있어서, 사용자 단말(200)에 제공되는 검색 결과 페이지(100-3 및 100-4)는 제2 추천 아이템(세션 추천 아이템) 및 제1 추천 아이템(연관 추천 아이템)을 둘 다 포함할 수 있다. 예컨대, 검색 결과 페이지(100-3 및 100-4)는 추천 아이템으로서 세션이 유지되는 동안 가장 최근에 선택된 아이템과 관련되는 제1 추천 아이템(연관 추천 아이템)과, 세션이 유지되는 동안 사용자에 의해 선택된 아이템들의 시퀀스와 관련되는 제2 추천 아이템(세션 추천 아이템)을 모두 포함할 수 있다. 이 때, 제1 추천 아이템과 제2 추천 아이템은 서로 구분하여 표시될 수 있다.
관련된 예시를 도 7을 참조하여 더 자세하게 설명한다. 추천 아이템이 표시되는 영역(720)에는 제1 추천 아이템(들)(730) 및 제2 추천 아이템(들)(740)이 표시될 수 있다. 영역(720)에서 제1 추천 아이템(들)(730)은 제2 추천 아이템(들)(740)보다 더 상위에 표시될 수 있다. 말하자면, 영역(720)에는 추천 아이템으로서 세션이 유지되는 동안 가장 최근에 선택된 아이템과 관련되는 제1 추천 아이템(연관 추천 아이템)(730)이 세션이 유지되는 동안 사용자에 의해 선택된 아이템들의 시퀀스와 관련되는 제2 추천 아이템(세션 추천 아이템)(740)보다 더 상위에 표시될 수 있다. 일례로, 영역(720)에서는 상위 3개의 추천 아이템이 제1 추천 아이템들(730)로서 표시되고, 나머지 또는 하위 21개의 추천 아이템이 제2 추천 아이템들(740)로서 표시될 수 있다. 따라서, 영역(720)에서는 가장 최근에 선택된 아이템과 유사한 추천 아이템들(제1 추천 아이템들(730))이 우선적으로 표시되고, 사용자가 이후에 선택할 것으로 예측되는 추천 아이템들(제2 추천 아이템들(740))이 이어서 표시될 수 있다.
전술한 것처럼, 제2 추천 아이템들(740)은 세션 내에서 사용자가 최소 2회 이상 아이템을 선택한 경우에 영역(720)에서 표시될 수 있고, 세션 내에서 아이템에 대한 선택이 최초로 이루어진 경우, 영역(720)에는 제1 추천 아이템들(730)만이 표시될 수 있다.
추천 아이템이 표시되는 영역(620)에 대해서도 마찬가지의 설명이 적용될 수 있는 바, 중복되는 설명은 생략한다.
추천 아이템이 표시되는 영역(620 및 720)에서 표시되는 추천 아이템들은 아이템들 간의 순위에 기반하여 표시될 수 있다. 순위가 높은 추천 아이템이 영역(620 및 720)에서 상위에 표시될 수 있다. 예컨대, 영역(720)에서 표시되는 제1 아이템들(730)의 경우 가장 최근에 선택된 아이템과의 연관성(예컨대, 유사도)이 높을수록 상위에 표시될 수 있다. 또한, 영역(720)에서 표시되는 제2 아이템들(740)의 경우 선택된 아이템들의 시퀀스와의 연관성(예컨대, 후술될 세션 기반 아이템 추천 모델에 의해 계산된 스코어)이 높을수록 상위에 표시될 수 있다.
도시된 것처럼, 추천 아이템이 표시되는 영역(620 및 720)에서 표시되는 추천 아이템들은 선택된 아이템과 유사한 형태(예컨대, 유사한 로고를 포함하는 원피스)이거나, 유사한 패턴(예컨대, 유사한 소재의 원피스)을 갖는 아이템이 될 수 있다.
검색 결과 페이지(100-1, 100-3 및 100-4)에서 제공되는 아이템들 중 적어도 하나는 광고와 연관된 아이템일 수 있다. 광고와 연관된 아이템은 광고주의 요청에 따라 검색 결과 페이지(100-1, 100-3 및 100-4)에서 상위에 표시되는 아이템일 수 있다.
전술된 단계(335)에서 선택된 아이템은 검색 결과로서 제공된 복수의 아이템들 중 광고와 연관되지 않은 아이템일 수 있다. 추천 아이템이 표시되는 영역(620)은 광고와 연관되지 않은 아이템이 선택된 경우에만, 해당 아이템이 표시되는 영역(610)과 인접하게 표시될 수 있다. 선택된 아이템이 광고와 연관된 아이템인 경우 추천 아이템이 표시되는 영역(620)은 검색 결과 페이지(100-4)에서 표시되지 않을 수 있다. 유사하게, 선택된 아이템이 광고와 연관된 아이템인 경우 추천 아이템이 표시되는 영역(720)은 검색 결과 페이지(100-3)에서 표시되지 않을 수 있다. 말하자면, 광고와 연관된 아이템이 선택되는 경우에는 해당 선택된 아이템과 관련되는 추천 아이템이 결정 및 제공되지 않을 수 있다.
예컨대, 사용자로부터 검색 결과로서 제공된 복수의 아이템들 중 광고와 연관된 광고 아이템이 선택되고, 사용자 단말(200)에 대해, 해당 선택된 광고 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지가 제공된 후, 사용자로부터 뒤로가기 명령이 수신되거나 검색어를 사용한 재검색이 수행되는 경우에는, 광고 아이템과 관련된 추천 아이템을 포함하지 않는 복수의 아이템들을 포함하는 검색 결과 페이지가 사용자 단말(200)에 대해 제공될 수 있다.
이에 따라, 추천 아이템의 표시에 의해 광고 아이템이 검색 결과 페이지의 하방으로 밀려나는 일 없이, 광고 아이템이 상단에 표시되도록 할 수 있다.
이상, 도 1 내지 도 5를 참조하여 전술된 기술적 특징에 대한 설명은, 도 6 및 도 7에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다
도 8은 일 예에 따른, 연관 아이템 추천 모델과 세션 기반 아이템 추천 모델을 사용하여, 사용자의 활동에 반응하여 추천 아이템을 제공하는 방법을 나타낸다.
도 8에서 도시된 것처럼, 사용자로부터 사용자 단말(200)을 통해 (검색 결과 페이지(100-1, 100-3 및 100-4)에서 아이템이 선택되면(805), (예컨대, 선택 이력 DB(570)에 저장된) 아이템 선택 이력(810)에 따라, 연관 추천 아이템(820)이 제공되거나, 또는/추가적으로 세션 추천 아이템(830)이 제공될 수 있다.
연관 추천 아이템(전술된 제1 추천 아이템)은 연관 아이템 추천 모델(815)에 의해 결정될 수 있다. 세션 추천 아이템(전술된 제2 추천 아이템)은 세션 기반 아이템 추천 모델(825)에 의해 결정될 수 있다. 연관 아이템 추천 모델(815) 및 세션 기반 아이템 추천 모델(825)은 실시간 아이템 추천 모델(도시된 실시간 모델 서빙 시스템)에 포함될 수 있고, 실시간 아이템 추천 모델은 서버(240) 내에 또는 그 일부가 서버(240)와 통신하는 외부 장치에 구축될 수 있다.
사용자 단말(200)로부터의 (예컨대, 재검색 요청 또는 뒤로가기 명령을 통한) 검색 재진입에 따라 연관 추천 아이템(820) 및/또는 세션 추천 아이템(830)이 사용자 단말(200)에 제공될 수 있다. 연관 추천 아이템(820) 및/또는 세션 추천 아이템(830)은 추천을 위한 API를 통해 사용자 단말(200)에 제공될 수 있다. 서버(240)는 사용자 단말(200)에 제공할 연관 추천 아이템(820) 및/또는 세션 추천 아이템(830)(해당 추천 아이템의 식별자 또는 키 값)에 대응하는 아이템을 아이템 DB(835)(즉, 상품 DB)로부터 검색하여 반응형 추천 아이템(840)을 제공하기 위한 API를 통해 사용자 단말(200)에 제공할 수 있다.
따라서, 사용자의 검색 재진입과 아이템에 대한 선택에 대해 즉각적으로 반응하여 적절한 추천 아이템이 사용자 단말(200)에 대해 제공될 수 있다.
연관 아이템 추천 모델(815)은 선택된 아이템에 대한 연관 추천 아이템(820)을 결정하기 위한 모델일 수 있다. 연관 아이템 추천 모델(815)은 선택된 아이템에 대해 유사한 아이템을 추론하여 연관 추천 아이템(820)을 결정하는 (실시간) 추론 모델일 수 있다.
또는, 연관 아이템 추천 모델(815)은 기 구축된 연관 추천 아이템 데이터(즉, 기 구축된 연관 아이템 데이터베이스)에 기반하여, 선택된 아이템에 대해 유사한 아이템을 연관 추천 아이템(820)으로서 결정하는 모델일 수 있다. 예컨대, 전술된 제1 추천 아이템은 기 구축된 연관 아이템 데이터베이스를 참조하여 결정된 것으로서, 검색 결과로 제공된 복수의 아이템들 중 선택된 아이템과 연관된 추천 아이템을 포함할 수 있다. 이러한, 연관 추천 아이템(820)은 선택된 아이템과 적어도 하나의 속성이 동일 또는 유사한 것일 수 있다. 아이템의 속성은, 예컨대, 아이템의 형상(모양, 형태 및 크기), 아이템의 색상, 아이템의 가격, 아이템의 브랜드, 아이템에 대한 선택의 빈도, 아이템에 대한 구매의 빈도 및 아이템에 대한 평점 등을 포함할 수 있다.
서버(240)는 선택된 아이템과 관련되는 연관 추천 아이템(820)(제1 추천 아이템)을 결정함에 있어서, 실시간 추론 모델이 아닌 기 구축된 연관 아이템 데이터베이스를 사용함으로써 연관 추천 아이템(820)을 결정하기 위한 연산량을 줄일 수 있다.
아래에서, 연관 아이템 추천 모델(815)을 사용하여 연관 추천 아이템(820)을 결정하는 방법에 대해 보다 자세하게 설명한다. 아래에서는 "아이템"은 상품인 것으로 가정하여 연관 아이템 추천 모델(815)에 대해 설명한다.
연관 아이템 추천 모델(815)은 각 상품을 표현하기 위해 "상품 임베딩 벡터"를 구성하여 사용할 수 있다. 상품 임베딩 벡터는, 예컨대, 상품 ID 벡터(즉, 상품 고유 벡터), 상품 카테고리 벡터, 상품 브랜드 벡터, 상품 가격 벡터 등과 같은 (상품 간 공유 가능한) 각 상품의 다양한 메타 정보 벡터들을 서로 이어 붙임으로써(concatenate) 구성될 수 있다.
이와 같은 상품의 다양한 메타 정보에 기반하여 구성된 상품 임베딩 벡터에 대한 학습은, 쇼핑 검색 시의 일정 세션 내에 함께 클릭된 상품들의 집합을 학습 데이터로서 사용하여, 해당 상품들의 집합 내의 상품 임베딩 벡터끼리가 유사해지도록, 예컨대, word2vec 학습과 유사한 방식으로 이루어질 수 있다.
연관 상품(연관 추천 아이템(820))을 추출함에 있어서는, 연관 아이템 추천 모델(815)은 기준 상품(예컨대, 사용자에 의해 선택된 상품)의 상품 임베딩 벡터를 구성하고, 구성된 상품 임베딩 벡터와 다른 상품들의 상품 임베딩 벡터들과의 유사도를 연산함으로써 유사도가 높은 상품들을 순위화할 수 있다. 순위화된 상품들 중 적어도 일부가 연관 추천 아이템(820)으로서 결정될 수 있다.
이 때, 연관 아이템 추천 모델(815)은 모든 상품들과의 유사도를 연산하지 않을 수 있고, 미리 수행된 클러스터링을 통해, 유사도를 연산할 후보 상품들의 개수를 줄일 수 있다.
한편, 특정한 선택된 아이템(상품)과 관련되는 연관된 아이템을 결정하기 위한 방법 및 이를 위한 모델에는, 전술된 것 외에 여하한 연관된 아이템의 방법 및 모델이 사용될 수 있다. 관련하여, 상세한 설명은 생략한다.
세션 기반 아이템 추천 모델(825)은 세션이 유지되는 동안 사용자에 의해 선택된 아이템들의 시퀀스를 분석하여 추천 아이템을 결정하기 위한 모델일 수 있다. 세션 기반 아이템 추천 모델(825)은 사용자에 의해 아이템이 선택됨에 따라 실시간으로 추천 아이템을 결정하는 실시간 추론 모델일 수 있다. 예컨대, 전술된 제2 추천 아이템은, 사용자에 의해 선택된 아이템과 이전에 선택된 적어도 하나의 다른 아이템으로 구성된 시퀀스를 기 구축된 아이템 추천 모델(즉, 세션 기반 아이템 추천 모델(825))을 통해 분석함으로써 결정된 것으로서, 검색 결과로서 제공되는 복수의 아이템들 중 상기 시퀀스와 연관된 추천 아이템을 포함할 수 있다.
세션 기반 아이템 추천 모델(825)은 세션 내에서 사용자에 의한 아이템들에 대한 선택의 이력(즉, 선택된 아이템들의 시퀀스)을 사용하여, 사용자가 다음에 선택할 아이템을 예측하는 방식으로 추천 아이템을 결정할 수 있다.
일례로, 검색 결과 페이지(100-3 및 100-4)에 제1 추천 아이템 및 제2 추천 아이템이 모두 포함되는 경우에 있어서, 세션이 유지되는 동안, 사용자에 의해 가장 최근에 선택된 아이템과 관련되는 제1 추천 아이템은 연관 아이템 추천 모델(815)을 통해 결정될 수 있고, 사용자가 선택한 아이템들의 시퀀스와 관련되는 제2 추천 아이템은 세션 기반 아이템 추천 모델(825)을 통해 결정될 수 있다. 이러한 경우에는 두 모델들(815 및 825)이 모두 추천 아이템의 결정에 관여할 수 있다.
세션 기반 아이템 추천 모델(825)에 대해서는 후술될 도 9를 참조하여 더 자세하게 설명된다.
이상, 도 1 내지 도 7을 참조하여 전술된 기술적 특징에 대한 설명은, 도 8에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
도 9는 일 예에 따른, 세션 기반 아이템 추천 모델을 사용하여, 사용자로부터의 아이템의 선택의 시퀀스를 분석함으로써 추천 아이템을 결정하는 방법을 나타낸다.
도 9를 참조하여, 전술된 세션 기반 아이템(상품) 추천 모델(825)에 대해 더 자세하게 설명한다 세션 기반 아이템 추천 모델(825)은 사용자의 아이템에 대한 선택의 이력을 분석하여 사용자가 다음에 선택할 아이템을 예측하도록 학습된 딥러닝 모델일 수 있다.
도시된 예시에서, 사용자에 의해 선택된 "아이템"은 "상품"인 것으로 가정되었다.
사용자에 의해 선택된 상품들의 시퀀스는, 예컨대, 신경망 모델의 하나인 트랜스포머(transformer) 모델에 의해 분석될 수 있다. 사용자에 의해 선택된 상품들의 시퀀스가 트랜스포머 모델의 입력이 될 수 있고, 시퀀스 내의 가장 마지막의 항(즉, 가장 최근에 선택된 상품)에 대해 가장 큰 가중치가 부여될 수 있다. 예컨대, 시계열적인 시퀀스가 LSTM을 통해 분석됨으로써, 결과적으로 가장 나중에 선택된 상품이 추천 상품의 결정에 있어서 가장 크게 영향을 미치게 될 수 있다. 말하자면, 가장 최근에 선택된 상품이 추천 상품을 결정함에 있어서 가장 주요(dominant)하게 될 수 있다.
도시된 것처럼, 세션에서의 사용자에 의해 선택된 상품들에 대한 이력(910)에 있어서, 시퀀스에 포함되는 각 상품은 임베딩(embedding)될 수 있다.
실시예에서는, 각 상품에 대한 선택 이력(910)에 포함된 각 상품에 대한 정보(910-1 내지 910-3)는 트랜스포머 모델에의 입력 및 트랜스포머 모델에서의 처리를 위한 세션 벡터로 변환될 수 있다. 예컨대, 각 상품의 속성을 나타내는 상품의 메타데이터(일례로, 상품의 ID(식별자 또는 키(key)), 상품의 브랜드, 상품의 카테고리 및 상품의 가격 등의 적어도 하나)가 임베딩될 수 있다. 각 상품에 대한 임베딩에 의해 생성된 임베딩 벡터는 연결되어(concatenate) 시퀀스로서 트랜스포머 모델에 대한 입력이 될 수 있다.
트랜스포머 모델에서의 출력인 상품 세션 정보는 (인공신경망의) 완전 연결 레이어(Fully Connected Layer)(940)에 대한 입력이 될 수 있고, 따라서, 사용자가 다음에 선택할 것으로 예측되는 추천 상품이 예측될 수 있다.
각 추천 상품은 시퀀스와 연관되는 정도에 따라, 스코어를 포함할 수 있다. 스코어가 높을수록 추천 상품은 시퀀스와 연관되는 정도가 클 수 있다.
또한, 트랜스포머 모델에서의 출력인 상품 세션 정보는 사용자의 정보(사용자의 메타 데이터 정보)와 함께 완전 연결 레이어(940)에 대한 입력이 될 수 있다. 사용자의 메타 데이터 정보는 사용자의 성별, 연령 및 사용자의 상품 선택/구매 이력 중 적어도 하나를 포함할 수 있다. 이에 따라, 사용자의 특성을 보다 정확하게 반영하여 사용자가 선택할 것으로 예측되는 추천 상품이 예측될 수 있다.
세션 기반 상품 추천 모델(825)은 사용자가 다음에 선택할 상품의 ID(또는 키(key)를 학습할 수 있다. 또한, 세션 기반 상품 추천 모델(825)은 상품의 메타데이터(상품의 카테고리, 상품의 브랜드 등)도 학습할 수 있다. 세션 기반 상품 추천 모델(825)은 멀티 태스크 학습(multi task learning)을 활용함으로써 이러한 상품의 메타데이터에 대한 학습 및 결과적인 예측에의 활용성을 높일 수 있다.
아래에서, 세션 기반 상품 추천 모델(825)에 의한 세션 추천 아이템(830)의 결정의 방법을 보다 상세하게 설명한다.
세션 기반 상품 추천 모델(825)이 사용하는 상품 임베딩 벡터는, 전술한 연관 아이템 추천 모델(815)에서와 유사하게, 예컨대, 상품 ID 벡터(즉, 상품 고유 벡터), 상품 카테고리 벡터, 상품 브랜드 벡터, 상품 가격 벡터 등과 같은 (상품 간 공유 가능한) 각 상품의 다양한 메타 정보 벡터들을 서로 이어 붙임으로써(concatenate) 구성될 수 있다.
세션 기반 상품 추천 모델(825)은 사용자와 관련된 사용자 벡터를 사용하여 세션 추천 아이템(830)을 결정할 수 있다. 사용자 벡터는 예컨대, 상품 이력 벡터로 구성될 수 있고, 추가로, 사용자의 성별/연령 벡터가 더 조합되어 구성될 수 있다. 상품 이력 벡터는 사용자가 최근 클릭한 상품의 상품 임베딩 벡터를 순서대로 나열한 벡터 리스트를 트랜스포머 모델에 입력한 결과로서 생성될 수 있다. 사용자의 상품 이력 벡터는 완전 연결 레이어(fully-connected layer)를 거치고, 완전 연결 레이어에서 출력된 임베딩 벡터가 사용자가 다음으로 선택할 것으로 예측되는 상품의 상품 임베딩 벡터를 예측하도록 학습될 수 있다. 한편, 사용자의 상품 이력 벡터와 사용자의 성별/연령 임베딩 벡터가 조합되는 경우, 사용자의 상품 이력 벡터와 사용자의 성별/연령 임베딩 벡터가 완전 연결 레이어를 통과할 수 있고, 거기서 출력된 임베딩 벡터가 사용자가 다음으로 선택할 것으로 예측되는 상품의 상품 임베딩 벡터를 예측하도록 학습될 수 있다.
각 임베딩 벡터의 학습을 위해, 세션 기반 상품 추천 모델(825)은 일정 세션 내에 사용자가 클릭한 상품을 순서화할 수 있고, 마지막 상품을 정답으로 두고, 랜덤하게 샘플링한 상품을 오답으로 둘 수 있다. 세션 기반 상품 추천 모델(825)은, 딥러닝을 통해, 모든 임베딩 벡터들과 모델 내부의 값들이 실제 사용자가 클릭한 상품에 대해서는 예측 점수가 높게, 다른 무작위 상품들에 대해서는 예측 점수가 낮게 나오도록 학습될 수 있다.
세션 기반 상품 추천 모델(825)은 이러한 학습된 모델을 활용하여 최종적인 랭킹 스코어를 계산할 수 있다. 최종적인 랭킹 스코어는 추천 대상 상품의 상품 임베딩 벡터를 매트릭스 멀티플리케이션(matrix multiplication)함으로써 사용자의 세션과 추천 대상 상품들 간의 예측 점수를 구함으로써 계산될 수 있다. 계산된 랭킹 스코어에 기반하여 세션 추천 아이템(830)이 결정될 수 있다.
이상, 도 1 내지 도 8을 참조하여 전술된 기술적 특징에 대한 설명은, 도 9에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
도 10은 일 예에 따른, 연관 아이템 추천 모델과 세션 기반 아이템 추천 모델을 사용하여, 사용자의 활동에 반응하여 추천 아이템을 제공하는 방법을 관련된 API와 관련하여 나타낸다.
도 10은 전반적인 API 및 일 예에 따른 추천 아이템의 제공을 위한 시스템의 구조를 나타낸다. 도시된 것처럼, 서버(240)를 포함하는 시스템은 예컨대, 카프카(Kafka)(카프카 서버)와, docker 및 realm 등과 같은 공용 라이브러리(들)을 사용하여 구현될 수 있다. 카프카 서버는 전술된 사용자에 의한 아이템에 대한 선택의 이력을 관리하는 서버(240) 또는 그 일부가 될 수 있다.
도시된 연관 아이템 추천 스트림은 전술된 연관 아이템 추천 모델(815)에 대응할 수 있고, 세션 아이템 추천 스트림은 전술된 세션 기반 아이템 추천 모델(825)에 대응할 수 있다. 테스트 스트림은 테스트 환경을 나타낼 수 있고, 전체 시스템에는 선택적으로 포함될 수 있다.
일 예에서는, 추천 아이템을 제공하기 위한 데이터를 비동기로 미리 생성해 두고, 실제로 추천 아이템의 제공에 대한 요청이 발생하는 경우, 미리 생성된 데이터를 사용하여 추천 아이템을 제공할 수 있다.
일 예의 시스템에서, API 서버는 Scala로 구현될 수 있고, 세션 기반 아이템 추천 모델은 Python에서 Tensorflow를 활용하여 구축될 수 있다. 시스템의 구축에 있어서, 모델과 API 연동을 위해 모델 실행 환경으로 Docker 이미지를 생성하여 Hadoop YARN 클러스터 환경에서 구동하고, API에서는 Docker container와 연동하여 실시간 모델 Inference가 구현될 수 있다.
이상, 도 1 내지 도 9를 참조하여 전술된 기술적 특징에 대한 설명은, 도 10에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
실시예에 따른 추천 상품의 제공에 의해서는, 사용자에 의한 상품의 선택(클릭) 수가 5개월 동안 대략 2배 증가한 것으로 나타났다. 또한, 상품의 거래를 통한 거래액 역시 5개월 동안 대략 4.3배 증가한 것으로 나타났다. 또한, 실시예의 추천 상품 제공 방법을 이용하는 사용자는 5개월 동안 대략 3.48배 증가한 것으로 나타났다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수 개의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 어플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 서버에 의해 수행되는, 사용자 단말에 대한 추천 아이템 제공 방법에 있어서,
    사용자 단말에 대해, 사용자로부터 입력되는 검색어에 대한 검색 결과로서 복수의 아이템들을 포함하는 검색 결과 페이지를 제공하는 단계;
    상기 사용자 단말에 대해, 상기 사용자로부터의 상기 복수의 아이템들 중 적어도 하나의 아이템에 대한 선택에 따라, 상기 선택된 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지를 제공하는 단계; 및
    상기 사용자 단말에 대해, 상기 사용자로부터 뒤로가기 명령이 수신되거나 상기 검색어를 사용한 재검색이 수행되는 경우, 상기 복수의 아이템들과 함께 추천 아이템을 포함하는 상기 검색 결과 페이지를 다시 제공하는 단계
    를 포함하고,
    다시 제공되는 상기 검색 결과 페이지에서는, 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들은 유지되되 상기 추천 아이템은 상기 사용자와 연관된 세션에서의 상기 사용자로부터의 상기 복수의 아이템들에 대한 선택의 이력에 따라 변화하고, 상기 추천 아이템은 상기 복수의 아이템들과는 구분되는 영역에서 표시되고,
    다시 제공되는 상기 검색 결과 페이지는,
    상기 아이템에 대한 선택이 상기 세션에서 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들에 대한 최초의 선택이면, 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들과, 상기 구분되는 영역에서 표시되는 상기 추천 아이템으로서 상기 선택된 아이템과 관련된 제1 추천 아이템을 포함하도록 구성되고,
    상기 세션에서 상기 아이템에 대한 선택 이전에 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들 중 적어도 하나의 다른 아이템에 대한 선택의 이력이 존재하는 경우에는, 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들과, 상기 구분되는 영역에서 표시되는 상기 추천 아이템으로서 상기 선택된 아이템 및 상기 다른 아이템과 관련된 제2 추천 아이템을 포함하도록 구성되는, 추천 아이템 제공 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 세션이 유지되는 동안, 상기 사용자로부터의 상기 복수의 아이템들에 대한 선택의 이력을 상기 사용자의 식별자 및 상기 검색어와 연관하여 저장하는 단계
    를 더 포함하고,
    상기 제2 추천 아이템은 상기 저장된 선택의 이력에 기반하여 상기 복수의 아이템들 중 결정된 추천 아이템을 포함하는, 추천 아이템 제공 방법.
  4. 제3항에 있어서,
    상기 세션에서 상기 다른 아이템에 대한 선택의 이력이 존재하는 경우,
    상기 선택된 아이템에 대한 제1 가중치 및 상기 다른 아이템에 대한 상기 제1 가중치보다 더 낮은 제2 가중치를 사용하여, 상기 복수의 아이템들 중 상기 제2 추천 아이템을 결정하는 단계
    를 더 포함하는, 추천 아이템 제공 방법.
  5. 제4항에 있어서,
    상기 제2 추천 아이템을 결정하는 단계는,
    상기 사용자의 성별 및 상기 사용자의 연령 중 적어도 하나를 더 고려하여, 상기 복수의 아이템들 중 상기 제2 추천 아이템을 결정하는, 추천 아이템 제공 방법.
  6. 제1항에 있어서,
    상기 추천 아이템을 포함하는 상기 검색 결과 페이지를 제공하는 단계는,
    상기 세션에서 상기 선택의 이력이 존재하는 경우에 있어서, 상기 제2 추천 아이템 및 상기 제1 추천 아이템을 포함하는 검색 결과 페이지를 제공하는, 추천 아이템 제공 방법.
  7. 제1항에 있어서,
    상기 제1 추천 아이템은, 기 구축된 연관 아이템 데이터베이스를 참조하여 결정된, 상기 복수의 아이템들 중 상기 선택된 아이템과 연관된 추천 아이템을 포함하는, 추천 아이템 제공 방법.
  8. 제1항에 있어서,
    상기 제2 추천 아이템은, 상기 선택된 아이템과 상기 적어도 하나의 다른 아이템으로 구성된 시퀀스를 기 구축된 아이템 추천 모델에 의해 분석함으로써 결정된, 상기 복수의 아이템들 중 상기 시퀀스와 연관된 추천 아이템을 포함하는, 추천 아이템 제공 방법.
  9. 제3항에 있어서,
    소정의 시간 동안 상기 사용자의 활동이 없는 경우, 상기 사용자와 연관된 세션이 종료된 것으로 결정하는 단계; 및
    상기 세션이 종료된 것으로 결정된 경우, 상기 저장된 선택의 이력을 삭제하는 단계
    를 더 포함하는, 추천 아이템 제공 방법.
  10. 제9항에 있어서,
    상기 소정의 시간 내에 상기 사용자로부터의, 상기 검색어의 입력 및 상기 복수의 아이템들 중 적어도 하나에 대한 선택 중 적어도 하나를 포함하는 상기 사용자의 활동이 있는 경우, 상기 세션은 유지되고 있는 것으로 결정되는, 추천 아이템 제공 방법.
  11. 제1항에 있어서,
    상기 추천 아이템은 상기 복수의 아이템들 중 상기 사용자가 선택할 것으로 예측되는 아이템을 포함하는, 추천 아이템 제공 방법.
  12. 제1항에 있어서,
    상기 검색 결과 페이지는 상기 검색어에 대한 카테고리 검색에 따라, 상기 사용자 단말에게 제공되는 것이고,
    상기 추천 아이템은 상기 검색 결과 페이지에서, 상기 선택된 아이템이 표시되는 제1 영역과 인접한 제2 영역에서 표시되는, 추천 아이템 제공 방법.
  13. 제1항에 있어서,
    상기 검색 결과 페이지는 상기 검색어에 대한 통합 검색에 따라, 상기 사용자 단말에게 제공되는 것이고,
    상기 추천 아이템은 상기 검색 결과 페이지에서, 상기 복수의 아이템들이 표시되는 제1 영역의 하단의 제2 영역에서 표시되는, 추천 아이템 제공 방법.
  14. 제1항에 있어서,
    상기 추천 아이템은 검색 결과 페이지 내에서, 상기 선택된 아이템이 표시되는 제1 영역과 구분되는 제2 영역에서 표시되고,
    상기 추천 아이템을 포함하는 상기 검색 결과 페이지를 제공하는 단계는,
    상기 세션에서 상기 선택의 이력이 존재하는 경우에 있어서, 상기 추천 아이템으로서 상기 제2 추천 아이템 및 상기 제1 추천 아이템을 포함하는 검색 결과 페이지를 제공하고,
    상기 세션에서 상기 다른 아이템에 대한 선택의 이력이 존재하는 경우, 상기 제2 영역에는 상기 제1 추천 아이템이 상기 제2 추천 아이템보다 상위에 표시되는, 추천 아이템 제공 방법.
  15. 서버에 의해 수행되는, 사용자 단말에 대한 추천 아이템 제공 방법에 있어서,
    사용자 단말에 대해, 사용자로부터 입력되는 검색어에 대한 검색 결과로서 복수의 아이템들을 포함하는 검색 결과 페이지를 제공하는 단계;
    상기 사용자 단말에 대해, 상기 사용자로부터의 상기 복수의 아이템들 중 적어도 하나의 아이템에 대한 선택에 따라, 상기 선택된 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지를 제공하는 단계; 및
    상기 사용자 단말에 대해, 상기 사용자로부터 뒤로가기 명령이 수신되거나 상기 검색어를 사용한 재검색이 수행되는 경우, 상기 복수의 아이템들과 함께 추천 아이템을 포함하는 상기 검색 결과 페이지를 제공하는 단계
    를 포함하고,
    상기 추천 아이템은 상기 사용자와 연관된 세션에서의 상기 사용자로부터의 상기 복수의 아이템들에 대한 선택의 이력에 따라 변화하고,
    상기 선택된 아이템은 상기 복수의 아이템들 중 광고와 연관되지 않은 아이템이고,
    상기 사용자로부터 상기 복수의 아이템들 중 광고와 연관된 광고 아이템이 선택되고, 상기 사용자 단말에 대해, 상기 광고 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지가 제공된 후, 상기 사용자로부터 뒤로가기 명령이 수신되거나 상기 검색어를 사용한 재검색이 수행되는 경우에는, 상기 광고 아이템과 관련된 추천 아이템을 포함하지 않는 상기 복수의 아이템들을 포함하는 검색 결과 페이지가 상기 사용자 단말에 대해 제공되는, 추천 아이템 제공 방법.
  16. 제1항 및 제3항 내지 제15항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 컴퓨터에서 판독 가능한 기록매체에 기록된 프로그램.
  17. 추천 아이템을 제공하는 서버에 있어서,
    컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
    를 포함하고,
    상기 적어도 하나의 프로세서는,
    사용자 단말에 대해,
    사용자로부터 입력되는 검색어에 대한 검색 결과로서 복수의 아이템들을 포함하는 검색 결과 페이지를 제공하고,
    상기 사용자로부터의 상기 복수의 아이템들 중 적어도 하나의 아이템에 대한 선택에 따라, 상기 선택된 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지를 제공하고,
    상기 사용자로부터 뒤로가기 명령이 수신되거나 상기 검색어를 사용한 재검색이 수행되는 경우, 상기 복수의 아이템들과 함께 추천 아이템을 포함하는 상기 검색 결과 페이지를 다시 제공하고,
    다시 제공되는 상기 검색 결과 페이지에서는, 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들은 유지되되 상기 추천 아이템은 상기 사용자와 연관된 세션에서 상기 사용자로부터의 상기 복수의 아이템들에 대한 선택의 이력에 따라 변화하고, 상기 추천 아이템은 상기 복수의 아이템들과는 구분되는 영역에서 표시되고,
    다시 제공되는 상기 검색 결과 페이지는,
    상기 아이템에 대한 선택이 상기 세션에서 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들에 대한 최초의 선택이면, 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들과, 상기 구분되는 영역에서 표시되는 상기 추천 아이템으로서 상기 선택된 아이템과 관련된 제1 추천 아이템을 포함하도록 구성되고,
    상기 세션에서 상기 아이템에 대한 선택 이전에 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들 중 적어도 하나의 다른 아이템에 대한 선택의 이력이 존재하는 경우에는, 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들과, 상기 구분되는 영역에서 표시되는 상기 추천 아이템으로서 상기 선택된 아이템 및 상기 다른 아이템과 관련된 제2 추천 아이템을 포함하도록 구성되는, 서버.
  18. 삭제
  19. 제17항에 있어서,
    아이템 선택 이력 데이터베이스
    를 더 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 세션이 유지되는 동안, 상기 사용자로부터의 상기 복수의 아이템들에 대한 선택의 이력을 상기 사용자의 식별자 및 상기 검색어와 연관하여 상기 아이템 선택 이력 데이터베이스 저장하고,
    상기 제2 추천 아이템은 상기 저장된 선택의 이력에 기반하여 상기 복수의 아이템들 중 결정된 추천 아이템을 포함하는, 서버.
  20. 추천 아이템을 제공하는 사용자 단말에 있어서,
    디스플레이; 및
    컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
    를 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 디스플레이를 통해,
    사용자로부터 입력되는 검색어에 대한 검색 결과로서 복수의 아이템들을 포함하는 검색 결과 페이지를 표시하고,
    상기 사용자로부터의 상기 복수의 아이템들 중 적어도 하나의 아이템에 대한 선택에 따라, 상기 선택된 아이템에 대한 상세 정보를 포함하는 상세 정보 페이지를 표시하고,
    상기 사용자로부터 뒤로가기 명령이 수신되거나 상기 검색어를 사용한 재검색이 수행되는 경우, 상기 복수의 아이템들과 함께 추천 아이템을 포함하는 상기 검색 결과 페이지를 다시 표시하고,
    다시 표시되는 상기 검색 결과 페이지에서는, 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들은 유지되되 상기 추천 아이템은 상기 사용자와 연관된 세션에서의 상기 사용자로부터의 상기 복수의 아이템들에 대한 선택의 이력에 따라 변화하고, 상기 추천 아이템은 상기 복수의 아이템들과는 구분되는 영역에서 표시되고,
    다시 제공되는 상기 검색 결과 페이지는,
    상기 아이템에 대한 선택이 상기 세션에서 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들에 대한 최초의 선택이면, 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들과, 상기 구분되는 영역에서 표시되는 상기 추천 아이템으로서 상기 선택된 아이템과 관련된 제1 추천 아이템을 포함하도록 구성되고,
    상기 세션에서 상기 아이템에 대한 선택 이전에 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들 중 적어도 하나의 다른 아이템에 대한 선택의 이력이 존재하는 경우에는, 상기 검색어에 대한 검색 결과로서의 상기 복수의 아이템들과, 상기 구분되는 영역에서 표시되는 상기 추천 아이템으로서 상기 선택된 아이템 및 상기 다른 아이템과 관련된 제2 추천 아이템을 포함하도록 구성되는, 사용자 단말.
KR1020200027474A 2020-03-05 2020-03-05 아이템에 대한 선택에 기반하여 추천 아이템을 제공하는 방법 및 장치 KR102437759B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200027474A KR102437759B1 (ko) 2020-03-05 2020-03-05 아이템에 대한 선택에 기반하여 추천 아이템을 제공하는 방법 및 장치
JP2020095391A JP7051938B2 (ja) 2020-03-05 2020-06-01 アイテムの選択に基づいて推奨アイテムを提供する方法および装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200027474A KR102437759B1 (ko) 2020-03-05 2020-03-05 아이템에 대한 선택에 기반하여 추천 아이템을 제공하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20210112451A KR20210112451A (ko) 2021-09-15
KR102437759B1 true KR102437759B1 (ko) 2022-08-29

Family

ID=77668811

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200027474A KR102437759B1 (ko) 2020-03-05 2020-03-05 아이템에 대한 선택에 기반하여 추천 아이템을 제공하는 방법 및 장치

Country Status (2)

Country Link
JP (1) JP7051938B2 (ko)
KR (1) KR102437759B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102601775B1 (ko) * 2023-08-14 2023-11-14 비마이펫주식회사 인공지능 모델에 기반하는 반려동물 콘텐츠 제공 시스템
WO2024058712A1 (en) * 2022-09-14 2024-03-21 Grabtaxi Holdings Pte. Ltd. Method and system for recommending an item to a user

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102395026B1 (ko) * 2021-10-22 2022-05-09 쿠팡 주식회사 페이지 정보 제공을 위한 동작 방법 및 이를 지원하는 전자 장치
KR102406418B1 (ko) * 2021-11-02 2022-06-10 쿠팡 주식회사 전자 장치 및 그의 아이템 추천 방법
KR102443513B1 (ko) * 2021-11-12 2022-09-15 쿠팡 주식회사 아이템 정보 제공 방법 및 전자 장치
KR102441999B1 (ko) * 2021-11-16 2022-09-13 쿠팡 주식회사 전자 장치의 아이템 정보 제공 방법
CN114780832A (zh) * 2022-03-29 2022-07-22 北京字节跳动网络技术有限公司 一种信息推荐方法、装置、计算机设备和存储介质
KR20240009194A (ko) * 2022-07-13 2024-01-22 쿠팡 주식회사 아이템 정보를 제공하는 방법 및 이를 지원하는 전자 장치
KR20240009173A (ko) * 2022-07-13 2024-01-22 쿠팡 주식회사 아이템 관련 정보 제공 방법 및 이를 위한 전자 장치
KR102638947B1 (ko) * 2023-05-10 2024-02-20 주식회사 비에스앤진홀딩스 사용자 맞춤형 골프 브랜드 추천 시스템

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101663580B1 (ko) * 2013-03-08 2016-10-07 심플렉스 인터넷 주식회사 전자상거래 추천 분석 시스템 및 추천 분석 방법

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8032506B1 (en) * 2000-08-25 2011-10-04 Andrej Gregov User-directed product recommendations
KR20020021830A (ko) * 2000-09-18 2002-03-23 신현우 인터넷 쇼핑몰을 기반으로 하는 고객별 상품광고 시스템및 이를 이용한 고객별 상품광고 방법
JP2002368822A (ja) * 2001-06-04 2002-12-20 Kyurio:Kk 電子メールマーケティングシステム
JP5269696B2 (ja) * 2009-05-22 2013-08-21 ヤフー株式会社 ネットショッピング管理装置
JP5096411B2 (ja) * 2009-05-22 2012-12-12 ヤフー株式会社 ネットショッピング管理装置
US8908962B2 (en) * 2011-09-30 2014-12-09 Ebay Inc. Item recommendations using image feature data
US9218392B1 (en) * 2012-11-30 2015-12-22 Amazon Technologies, Inc. Interest related search results
KR20160129409A (ko) * 2015-04-30 2016-11-09 (주)유젠 온라인 쇼핑몰의 검색 추천 방법
KR102220273B1 (ko) * 2018-03-29 2021-02-26 네이버 주식회사 상품 추천 방법 및 이를 이용하는 서버

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101663580B1 (ko) * 2013-03-08 2016-10-07 심플렉스 인터넷 주식회사 전자상거래 추천 분석 시스템 및 추천 분석 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024058712A1 (en) * 2022-09-14 2024-03-21 Grabtaxi Holdings Pte. Ltd. Method and system for recommending an item to a user
KR102601775B1 (ko) * 2023-08-14 2023-11-14 비마이펫주식회사 인공지능 모델에 기반하는 반려동물 콘텐츠 제공 시스템

Also Published As

Publication number Publication date
KR20210112451A (ko) 2021-09-15
JP2021140716A (ja) 2021-09-16
JP7051938B2 (ja) 2022-04-11

Similar Documents

Publication Publication Date Title
KR102437759B1 (ko) 아이템에 대한 선택에 기반하여 추천 아이템을 제공하는 방법 및 장치
US11295374B2 (en) Multilevel silhouettes in an online shopping environment
US10572928B2 (en) Method and system for recommending products based on a ranking cocktail
US20180082350A1 (en) Generating display information using a dynamically selected strategy
JP5480389B2 (ja) 動的な検索提案および分類に特化した完了
US8626602B2 (en) Consumer shopping and purchase support system and marketplace
US20180239781A1 (en) Automatically obtaining real-time, geographically-relevant product information from heterogeneus sources
US11734736B2 (en) Building containers of uncategorized items
US9817846B1 (en) Content selection algorithms
US20120054041A1 (en) Shopping profile in an online shopping environment
US10747400B1 (en) Shaping a relevance profile for engagement
US20120215664A1 (en) Epurchase model
US20160019621A1 (en) Review based navigation and product discovery platform
JP6945518B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
US20230005051A1 (en) Context-based personalization of user interfaces
US8533056B2 (en) Customizing an online shopping experience for a user
KR20230072939A (ko) 빅데이터 기반 개인화된 레시피 및 식단 추천 서비스 제공 방법, 장치 및 시스템
AU2014206199B2 (en) Search system using multi-level silhouettes
WO2024103112A1 (en) System and method for identifying items and services of interest in an online environment

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant