KR102119518B1 - Method and system for recommending product based style space created using artificial intelligence - Google Patents
Method and system for recommending product based style space created using artificial intelligence Download PDFInfo
- Publication number
- KR102119518B1 KR102119518B1 KR1020180026762A KR20180026762A KR102119518B1 KR 102119518 B1 KR102119518 B1 KR 102119518B1 KR 1020180026762 A KR1020180026762 A KR 1020180026762A KR 20180026762 A KR20180026762 A KR 20180026762A KR 102119518 B1 KR102119518 B1 KR 102119518B1
- Authority
- KR
- South Korea
- Prior art keywords
- products
- product
- category
- points
- processor
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000013473 artificial intelligence Methods 0.000 title abstract description 3
- 238000004590 computer program Methods 0.000 claims description 10
- 239000000284 extract Substances 0.000 claims description 5
- 238000012549 training Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 230000014509 gene expression Effects 0.000 description 5
- 238000005070 sampling Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000001066 destructive effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/55—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0254—Targeted advertisements based on statistics
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Entrepreneurship & Innovation (AREA)
- Mathematical Physics (AREA)
- Game Theory and Decision Science (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
인공지능을 이용하여 생성되는 스타일 공간에 기반한 상품 추천 방법 및 시스템을 제공한다. 본 발명의 실시예들에 따른 상품 추천 방법은 MDAE(Multimodal Deep Autoencoder)를 이용하여 학습 이미지가 포함하는 카테고리별 상품들의 상관관계를 학습시키고, MDAE(Multimodal Deep Autoencoder)에 학습된 상관관계에 기반하여 상품을 추천할 수 있다.It provides a product recommendation method and system based on a style space created using artificial intelligence. The product recommendation method according to embodiments of the present invention uses MDAE (Multimodal Deep Autoencoder) to learn the correlation of products by category included in the learning image, and based on the correlation learned in the MDAE (Multimodal Deep Autoencoder). You can recommend products.
Description
아래의 설명은 인공지능을 이용하여 생성되는 스타일 공간에 기반한 상품 추천 방법 및 시스템에 관한 것이다.The following description relates to a product recommendation method and system based on a style space created using artificial intelligence.
패션 코디네이터 시스템은 사용자가 착용하기 원하는 의복을 하나 선택하면 그에 적합한 다른 의복을 선택하도록 도와주는 시스템으로 상품이나 서비스를 추천하기 위한 시스템의 일종이다. 이와 같이, 상품이나 서비스를 추천하기 위한 시스템은 크게 사용자들 간의 유사도를 활용한 협력적 필터링(Collaborative filtering) 방식과 상품 및 사용자의 특성 값을 활용하는 내용기반 필터링(Content-based filtering) 방식 등으로 구분된다. 예컨대, 한국등록특허 제10-0882716호에는 사용자 단말기에 설치된 정보 추천 에이전트에서 인식한 상품의 상품 코드, 상품명 또는 모델명 등을 이용하여 상품에 대한 상품 정보를 자동으로 추천하는 기술이 개시되어 있다.The fashion coordinator system is a system that helps a user to select another garment suitable for the wearer to select one, and is a system for recommending a product or service. As described above, the system for recommending a product or service is largely divided into a collaborative filtering method using similarity among users and a content-based filtering method using characteristic values of products and users. Are distinguished. For example, Korean Patent Registration No. 10-0882716 discloses a technique for automatically recommending product information about a product using a product code, product name, or model name of the product recognized by the information recommendation agent installed on the user terminal.
MDAE(Multimodal Deep Autoencoder)를 이용하여 학습 이미지가 포함하는 카테고리별 상품들의 상관관계를 학습시키고, MDAE(Multimodal Deep Autoencoder)에 학습된 상관관계에 기반하여 상품을 추천할 수 있는 상품 추천 방법, 상기 상품 추천 방법을 수행하는 컴퓨터 장치, 컴퓨터와 결합되어 상기 상품 추천 방법을 컴퓨터에 실행시키기 위해 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램 및 그 기록매체를 제공한다.Product recommendation method for learning the correlation of products by category included in the learning image using MDAE (Multimodal Deep Autoencoder), and recommending a product based on the correlation learned in MDAE (Multimodal Deep Autoencoder), the product A computer device performing a recommendation method, a computer program coupled to a computer, and a computer program stored in a computer-readable recording medium to execute the product recommendation method on a computer, and a recording medium therefor.
학습 이미지 세트가 포함하는 카테고리별 상품들을 추출하는 단계; 동일한 학습 이미지에 포함된 카테고리별 상품들간의 상관관계에 기반하여 상기 추출된 카테고리별 상품들을 스타일 공간상의 포인트에 사영(projection)시키도록 MDAE(Multimodal Deep Autoencoder)기반의 상품 추천 모델을 학습시키는 단계; 복수의 추천 대상 상품들을 상기 학습된 상품 추천 모델을 통해 상기 스타일 공간상의 복수의 제1 포인트들에 사영시키는 단계; 검색 대상 상품을 상기 학습된 상품 추천 모델을 통해 상기 스타일 공간상의 제2 포인트에 사영시키는 단계; 및 상기 스타일 공간상에서 상기 제1 포인트들 각각과 상기 제2 포인트간의 거리에 기반하여 상기 복수의 추천 대상 상품들 중 적어도 하나의 추천 대상 상품을 선택하는 단계를 포함하는 것을 특징으로 하는 상품 추천 방법을 제공한다.Extracting products for each category included in the learning image set; Learning a multimodal deep autoencoder (MDAE)-based product recommendation model to project the extracted category-specific products at a point on a style space based on a correlation between product categories by category included in the same learning image; Projecting a plurality of recommendation target products to a plurality of first points on the style space through the learned product recommendation model; Projecting the product to be searched to the second point on the style space through the learned product recommendation model; And selecting at least one recommendation target product among the plurality of recommendation target products based on the distance between each of the first points and the second point in the style space. to provide.
컴퓨터와 결합하여 상기 상품 추천 방법을 컴퓨터에 실행시키기 위해 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램을 제공한다.In combination with a computer, a computer program stored in a computer-readable recording medium is provided to execute the product recommendation method on a computer.
상기 상품 추천 방법을 컴퓨터에 실행시키기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록매체를 제공한다.Provided is a computer-readable recording medium, characterized in that a program for executing the product recommendation method is recorded on a computer.
컴퓨터 장치에 있어서, 컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서에 의해, 학습 이미지 세트가 포함하는 카테고리별 상품들을 추출하고, 동일한 학습 이미지에 포함된 카테고리별 상품들간의 상관관계에 기반하여 상기 추출된 카테고리별 상품들을 스타일 공간상의 포인트에 사영(projection)시키도록 MDAE(Multimodal Deep Autoencoder)기반의 상품 추천 모델을 학습시키고, 복수의 추천 대상 상품들을 상기 학습된 상품 추천 모델을 통해 상기 스타일 공간상의 복수의 제1 포인트들에 사영시키고, 검색 대상 상품을 상기 학습된 상품 추천 모델을 통해 상기 스타일 공간상의 제2 포인트에 사영시키고, 상기 스타일 공간상에서 상기 제1 포인트들 각각과 상기 제2 포인트간의 거리에 기반하여 상기 복수의 추천 대상 상품들 중 적어도 하나의 추천 대상 상품을 선택하는 것을 특징으로 하는 컴퓨터 장치를 제공한다.A computer device, comprising: at least one processor implemented to execute instructions readable by a computer, and by the at least one processor, extracting products by category included in a set of learning images, and included in the same learning image Based on the correlation between products by category, a multimodal deep autoencoder (MDAE)-based product recommendation model is trained to project the extracted category-specific products to a point in a style space, and the plurality of recommendation target products are Projected to a plurality of first points in the style space through the learned product recommendation model, projected the product to be searched to the second point in the style space through the learned product recommendation model, and the product in the style space. Provided is a computer device characterized in that at least one of the plurality of recommendation target products is selected based on the distance between each of the one point and the second point.
MDAE(Multimodal Deep Autoencoder)를 이용하여 학습 이미지가 포함하는 카테고리별 상품들의 상관관계를 학습시키고, MDAE(Multimodal Deep Autoencoder)에 학습된 상관관계에 기반하여 상품을 추천할 수 있다.MDAE (Multimodal Deep Autoencoder) can be used to learn the correlation of products for each category included in the learning image, and products can be recommended based on the correlation learned in MDAE (Multimodal Deep Autoencoder).
MDAE의 디코더를 통해 재구성된 재구성된(reconstructed) 상품들의 특징들을 정답 데이터로 활용함으로써, 오답 데이터의 활용 없이 상품 추천 모델을 학습시킴으로써, 기존의 거리 모델에서 가장 큰 계산량을 갖던 네거티브 샘플링 과정을 생략할 수 있다.By using the features of the reconstructed products reconstructed through the MDAE decoder as the correct answer data, by learning the product recommendation model without using the incorrect answer data, the negative sampling process, which has the largest amount of computation in the existing distance model, can be omitted. Can be.
도 1은 본 발명의 일실시예에 따른 네트워크 환경의 예를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 컴퓨터 장치의 예를 도시한 블록도이다.
도 3은 본 발명의 일실시예에 따른 상품 추천 방법의 예를 도시한 흐름도이다.
도 4는 본 발명의 일실시예에 따른 MDAE의 예를 도시한 도면이다.
도 5 및 도 6은 거리 모델의 예를 도시한 도면이다.
도 7은 본 발명의 일실시예에 따른 스타일 공간 생성 형태의 예를 도시한 도면이다.
도 8은 본 발명의 일실시예에 있어서, MDAE의 학습 예를 도시한 도면이다.
도 9는 본 발명의 일실시예에 따른 스타일 공간의 예를 도시한 도면이다.1 is a diagram showing an example of a network environment according to an embodiment of the present invention.
2 is a block diagram showing an example of a computer device according to an embodiment of the present invention.
3 is a flowchart illustrating an example of a product recommendation method according to an embodiment of the present invention.
4 is a view showing an example of MDAE according to an embodiment of the present invention.
5 and 6 are views showing an example of a distance model.
7 is a diagram illustrating an example of a style space generation form according to an embodiment of the present invention.
8 is a diagram illustrating an example of learning MDAE in an embodiment of the present invention.
9 is a view showing an example of a style space according to an embodiment of the present invention.
이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.
본 발명의 실시예들에 따른 상품 추천 방법은 이후 설명될 전자 기기나 서버와 같은 컴퓨터 장치를 통해 구현될 수 있다. 이때, 컴퓨터 장치에는 본 발명의 일실시예에 따른 컴퓨터 프로그램이 설치 및 구동될 수 있고, 컴퓨터 장치는 구동된 컴퓨터 프로그램의 제어에 따라 본 발명의 실시예들에 따른 상품 추천 방법을 수행할 수 있다. 상술한 컴퓨터 프로그램은 컴퓨터 장치와 결합되어 상품 추천 방법을 컴퓨터에 실행시키기 위해 컴퓨터 판독 가능한 기록매체에 저장될 수 있다.The product recommendation method according to the embodiments of the present invention may be implemented through a computer device such as an electronic device or a server to be described later. At this time, a computer program according to an embodiment of the present invention may be installed and driven on the computer device, and the computer device may perform a product recommendation method according to embodiments of the present invention under the control of the driven computer program. . The above-described computer program may be stored in a computer-readable recording medium to execute a product recommendation method on a computer in combination with a computer device.
도 1은 본 발명의 일실시예에 따른 네트워크 환경의 예를 도시한 도면이다. 도 1의 네트워크 환경은 복수의 전자 기기들(110, 120, 130, 140), 복수의 서버들(150, 160) 및 네트워크(170)를 포함하는 예를 나타내고 있다. 이러한 도 1은 발명의 설명을 위한 일례로 전자 기기의 수나 서버의 수가 도 1과 같이 한정되는 것은 아니다. 또한, 도 1의 네트워크 환경은 본 실시예들에 적용 가능한 환경들 중 하나의 예를 설명하는 것일 뿐, 본 실시예들에 적용 가능한 환경이 도 1의 네트워크 환경으로 한정되는 것은 아니다.1 is a diagram showing an example of a network environment according to an embodiment of the present invention. The network environment of FIG. 1 shows an example including a plurality of
복수의 전자 기기들(110, 120, 130, 140)은 컴퓨터 장치로 구현되는 고정형 단말이거나 이동형 단말일 수 있다. 복수의 전자 기기들(110, 120, 130, 140)의 예를 들면, 스마트폰(smart phone), 휴대폰, 네비게이션, 컴퓨터, 노트북, 디지털방송용 단말, PDA(Personal Digital Assistants), PMP(Portable MultimediaPlayer), 태블릿 PC 등이 있다. 일례로 도 1에서는 전자 기기 1(110)의 예로 스마트폰의 형상을 나타내고 있으나, 본 발명의 실시예들에서 전자 기기 1(110)은 실질적으로 무선 또는 유선 통신 방식을 이용하여 네트워크(170)를 통해 다른 전자 기기들(120, 130, 140) 및/또는 서버(150, 160)와 통신할 수 있는 다양한 물리적인 컴퓨터 장치들 중 하나를 의미할 수 있다.The plurality of
통신 방식은 제한되지 않으며, 네트워크(170)가 포함할 수 있는 통신망(일례로, 이동통신망, 유선 인터넷, 무선 인터넷, 방송망)을 활용하는 통신 방식뿐만 아니라 기기들간의 근거리 무선 통신 역시 포함될 수 있다. 예를 들어, 네트워크(170)는, PAN(personal area network), LAN(local area network), CAN(campus area network), MAN(metropolitan area network), WAN(wide area network), BBN(broadband network), 인터넷 등의 네트워크 중 하나 이상의 임의의 네트워크를 포함할 수 있다. 또한, 네트워크(170)는 버스 네트워크, 스타 네트워크, 링 네트워크, 메쉬 네트워크, 스타-버스 네트워크, 트리 또는 계층적(hierarchical) 네트워크 등을 포함하는 네트워크 토폴로지 중 임의의 하나 이상을 포함할 수 있으나, 이에 제한되지 않는다.The communication method is not limited, and a communication method using a communication network (for example, a mobile communication network, a wired Internet, a wireless Internet, and a broadcasting network) that the
서버(150, 160) 각각은 복수의 전자 기기들(110, 120, 130, 140)과 네트워크(170)를 통해 통신하여 명령, 코드, 파일, 컨텐츠, 서비스 등을 제공하는 컴퓨터 장치 또는 복수의 컴퓨터 장치들로 구현될 수 있다. 예를 들어, 서버(150)는 네트워크(170)를 통해 접속한 복수의 전자 기기들(110, 120, 130, 140)로 서비스(일례로, 소셜 네트워크 서비스, 메시징 서비스, 검색 서비스, 메일 서비스, 컨텐츠 제공 서비스 등)를 제공하는 시스템일 수 있다.Each of the
도 2는 본 발명의 일실시예에 따른 컴퓨터 장치의 예를 도시한 블록도이다. 앞서 설명한 복수의 전자 기기들(110, 120, 130, 140) 각각이나 서버들(150, 160) 각각은 도 2를 통해 도시된 컴퓨터 장치(200)에 의해 구현될 수 있으며, 일실시예에 따른 상품 추천 방법은 이러한 컴퓨터 장치(200)에 의해 구현되는 상품 추천 시스템에 의해 수행될 수 있다.2 is a block diagram showing an example of a computer device according to an embodiment of the present invention. Each of the plurality of
이러한 컴퓨터 장치(200)는 도 2에 도시된 바와 같이, 메모리(210), 프로세서(220), 통신 인터페이스(230) 그리고 입출력 인터페이스(240)를 포함할 수 있다. 메모리(210)는 컴퓨터에서 판독 가능한 기록매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 여기서 ROM과 디스크 드라이브와 같은 비소멸성 대용량 기록장치는 메모리(210)와는 구분되는 별도의 영구 저장 장치로서 컴퓨터 장치(200)에 포함될 수도 있다. 또한, 메모리(210)에는 운영체제와 적어도 하나의 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(210)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 메모리(210)로 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신 인터페이스(230)를 통해 메모리(210)에 로딩될 수도 있다. 예를 들어, 소프트웨어 구성요소들은 네트워크(170)를 통해 수신되는 파일들에 의해 설치되는 컴퓨터 프로그램에 기반하여 컴퓨터 장치(200)의 메모리(210)에 로딩될 수 있다.2, the
프로세서(220)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(210) 또는 통신 인터페이스(230)에 의해 프로세서(220)로 제공될 수 있다. 예를 들어 프로세서(220)는 메모리(210)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.The
통신 인터페이스(230)은 네트워크(170)를 통해 컴퓨터 장치(200)가 다른 장치(일례로, 앞서 설명한 저장 장치들)와 서로 통신하기 위한 기능을 제공할 수 있다. 일례로, 컴퓨터 장치(200)의 프로세서(220)가 메모리(210)와 같은 기록 장치에 저장된 프로그램 코드에 따라 생성한 요청이나 명령, 데이터, 파일 등이 통신 인터페이스(230)의 제어에 따라 네트워크(170)를 통해 다른 장치들로 전달될 수 있다. 역으로, 다른 장치로부터의 신호나 명령, 데이터, 파일 등이 네트워크(170)를 거쳐 컴퓨터 장치(200)의 통신 인터페이스(230)를 통해 컴퓨터 장치(200)로 수신될 수 있다. 통신 인터페이스(230)를 통해 수신된 신호나 명령, 데이터 등은 프로세서(220)나 메모리(210)로 전달될 수 있고, 파일 등은 컴퓨터 장치(200)가 더 포함할 수 있는 저장 매체(상술한 영구 저장 장치)로 저장될 수 있다.The
입출력 인터페이스(240)는 입출력 장치(250)와의 인터페이스를 위한 수단일 수 있다. 예를 들어, 입력 장치는 마이크, 키보드 또는 마우스 등의 장치를, 그리고 출력 장치는 디스플레이, 스피커와 같은 장치를 포함할 수 있다. 다른 예로 입출력 인터페이스(240)는 터치스크린과 같이 입력과 출력을 위한 기능이 하나로 통합된 장치와의 인터페이스를 위한 수단일 수도 있다. 입출력 장치(250)는 컴퓨터 장치(200)와 하나의 장치로 구성될 수도 있다.The input/
또한, 다른 실시예들에서 컴퓨터 장치(200)는 도 2의 구성요소들보다 더 적은 혹은 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 컴퓨터 장치(200)는 상술한 입출력 장치(250) 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.Further, in other embodiments, the
도 3은 본 발명의 일실시예에 따른 상품 추천 방법의 예를 도시한 흐름도이다. 본 실시예에 따른 상품 추천 방법은 앞서 설명한 컴퓨터 장치(200)에 의해 수행될 수 있다. 예를 들어, 컴퓨터 장치(200)의 프로세서(220)는 메모리(210)가 포함하는 운영체제의 코드나 적어도 하나의 프로그램의 코드에 따른 제어 명령(instruction)을 실행하도록 구현될 수 있다. 여기서, 프로세서(220)는 컴퓨터 장치(200)에 저장된 코드가 제공하는 제어 명령에 따라 컴퓨터 장치(200)가 도 3의 방법이 포함하는 단계들(310 내지 370)을 수행하도록 컴퓨터 장치(200)를 제어할 수 있다.3 is a flowchart illustrating an example of a product recommendation method according to an embodiment of the present invention. The product recommendation method according to the present embodiment may be performed by the
단계(310)에서 컴퓨터 장치(200)는 학습 이미지 세트가 포함하는 카테고리별 상품들을 추출할 수 있다. 예를 들어, 컴퓨터 장치(200)는 복수의 학습 이미지들을 포함하는 학습 이미지 세트를 입력받을 수 있으며, 복수의 학습 이미지 각각으로부터 카테고리별 상품들을 추출할 수 있다. 이때, 카테고리들은 일례로, 상의, 하의, 모자, 신발 등과 같이 다양하게 기 정의될 수 있다. 기 정의되는 카테고리의 수 역시 제공하고자 하는 상품들의 카테고리에 따라 다양하게 설정될 수 있다. 예를 들어, 상의와 하의의 두 개의 카테고리만을 사용할 수도 있고, 상의, 하의, 모자, 액세서리, 신발 등과 같이 더 많은 수의 카테고리들을 사용할 수도 있다.In
단계(320)에서 컴퓨터 장치(200)는 동일한 학습 이미지에 포함된 카테고리별 상품들간의 상관관계에 기반하여 추출된 카테고리별 상품들을 스타일 공간상의 포인트에 사영(projection)시키도록 MDAE(Multimodal Deep Autoencoder)기반의 상품 추천 모델을 학습시킬 수 있다. 예를 들어, 학습 이미지들은 서로 어울리는 상품들이 포함된 이미지로서, 일례로 패션 화보나 매거진, 쇼핑몰 등 MD(merchandiser)나 판매자들에 의해 코디된 상품 이미지, 일반 사용자들에 의해 코디 평가 점수가 일정 레벨 이상인 코디 상품 이미지 등을 수집할 수 있다. 다시 말해, 학습 이미지 자체가 동일한 학습 이미지에 포함된 카테고리별 상품들이 서로 상관관계를 갖고 있는 정답 이미지를 포함할 수 있다. MDAE에 기반한 상품 추천 모델은 이러한 학습 이미지가 포함하고 있는 상품들간의 상관관계를 학습하도록 구현될 수 있으며, 특히 서로 어울리는 상품들이 스타일 공간상에서 상대적으로 더 가까운 거리의 포인트들로 사영되도록 학습될 수 있다.In
보다 구체적인 예로, 상술한 스타일 공간은 복수의 공간들로 분류될 수 있으며, MDAE는 입력되는 상품의 이미지 특징에 기반하여 해당 상품을 복수의 공간들 중 하나로 분류하는 모델일 수 있다. 이때, 분류된 공간 내에서의 포인트는 공간들간의 관계에 기반할 수 있다. 이 경우, 컴퓨터 장치(200)는 단계(320)에서 추출된 카테고리별 상품들을 스타일 공간상의 포인트에 사영시키되, 동일한 학습 이미지에 포함된 카테고리별 상품들이 분류된 복수의 공간들 중 동일한 공간의 포인트에 사영되도록 MDAE의 인코더를 학습시킬 수 있다. 동일한 공간의 포인트들은 상대적으로 그 거리가 가까울 것이며, 서로 다른 공간의 포인트들은 상대적으로 그 거리가 멀 가능성이 높다. 따라서, 본 실시예에 따른 MDAE 기반의 상품 추천 모델은 이미 서로 어울리는 상품들을 포함하는 것으로 가정된 동일한 학습 이미지에 포함된 카테고리별 상품들을 스타일 공간상에 분류된 복수의 공간들 중 동일한 공간에 배치함으로써, 동일한 학습 이미지에 포함된 카테고리별 상품들간의 상관관계를 학습할 수 있다.As a more specific example, the above-described style space may be classified into a plurality of spaces, and MDAE may be a model that classifies a corresponding product into one of a plurality of spaces based on an image characteristic of an input product. In this case, points in the classified space may be based on the relationship between the spaces. In this case, the
또한, 컴퓨터 장치(200)는 단계(320)에서 동일한 학습 이미지에 포함된 카테고리별 상품들을 원소로 갖는 집합에 대한 공집합을 제외한 부분집합들 각각을 통해 이미지 특징을 추출하여 상품 추천 모델을 위한 입력 데이터를 생성할 수 있다. 예를 들어, 추출된 카테고리별 상품이 상의에 대응하는 상품, 하의에 대응하는 상품 및 신발에 대응하는 상품이라 가정하자. 이 경우 추출된 카테고리별 상품들을 원소로 갖는 집합을 {상의, 하의, 신발}로 정의할 때, 공집합을 제외한 부분집합들은 {상의}, {하의}, {신발}, {상의, 하의}, {상의 신발}, {하의 신발} 및 {상의, 하의, 신발}의 7개의 집합들일 수 있다. 이 경우, 컴퓨터 장치(200)는 {상의}에 대응하는 상품의 이미지에 대한 이미지 특징, {하의}에 대응하는 상품의 이미지에 대한 이미지 특징, {신발}에 대응하는 상품의 이미지에 대한 이미지 특징, {상의, 하의} 각각에 대응하는 상품들의 이미지들에 대한 이미지 특징, {상의 신발} 각각에 대응하는 상품들의 이미지들에 대한 이미지 특징, {하의 신발} 각각에 대응하는 상품들의 이미지들에 대한 이미지 특징 및 {상의, 하의, 신발} 각각에 대응하는 상품들의 이미지들에 대한 이미지 특징과 같이 모두 7 가지 이미지 특징들의 데이터를 입력 데이터로서 생성할 수 있다. 실시예에 따라 부분집합들 중 일부만이 활용될 수도 있다. In addition, in
또한, 컴퓨터 장치(200)는 단계(320)에서 MDAE의 인코더 및 디코더를 통해 재구성된(reconstructed) 상품들의 특징들을 정답 데이터를 이용하고, 추가적인 오답 데이터의 이용 없이 상기 상품 추천 모델을 학습시킬 수 있다. 이후 보다 자세히 설명하겠지만, MDAE의 인코더와 디코더를 거쳐 재구성되는 특징들은 동일한 학습 이미지에서 추출된 카테고리별 상품들에 대한 이미지 특징들이 공유되고 결합되기 때문에 별도의 오답 데이터(서로 어울리지 않는 상품들을 포함하는 학습 데이터)를 이용하지 않더라도 상품 추천 모델이 높은 정확도로 서로 어울리는 상품들을 선택할 수 있도록 학습될 수 있다.In addition, the
단계(330)에서 컴퓨터 장치(200)는 복수의 추천 대상 상품들을 학습된 상품 추천 모델을 통해 스타일 공간상의 복수의 제1 포인트들에 사영시킬 수 있다. 예를 들어, 컴퓨터 장치(200)는 복수의 추천 대상 상품들이 포함된 복수의 이미지들을 통해 복수의 추천 대상 상품들 각각에 대한 입력 데이터를 생성할 수 있으며, 생성된 입력 데이터를 학습된 상품 추천 모델에 입력시킴에 따라 그 결과로서 스타일 공간상의 복수의 제1 포인트들에 복수의 추천 대상 상품들을 사영시킬 수 있다.In
단계(340)에서 컴퓨터 장치(200)는 검색 대상 상품을 학습된 상품 추천 모델을 통해 스타일 공간상의 제2 포인트에 사영시킬 수 있다. 예를 들어, 컴퓨터 장치(200)는 검색 대상 상품이 포함된 이미지를 통해 입력 데이터를 생성할 수 있으며, 생성된 입력 데이터를 학습된 상품 추천 모델에 입력시킴에 따라 그 결과로서 스타일 공간상의 제2 포인트에 검색 대상 상품을 사영시킬 수 있다.In
단계(350)에서 컴퓨터 장치(200)는 스타일 공간상에서 제1 포인트들 각각과 제2 포인트간의 거리에 기반하여 복수의 추천 대상 상품들 중 적어도 하나의 추천 대상 상품을 선택할 수 있다. 이미 설명한 바와 같이, 스타일 공간상에서 포인트들간의 거리는 포인트들에 대응하는 상품간의 어울림 정도에 대응할 수 있으며, 컴퓨터 장치(200)는 이러한 포인트들간의 거리에 기반하여 검색 대상 상품과 잘 어울리는 추천 대상 상품을 선택할 수 있게 된다.In
예를 들어, 컴퓨터 장치(200)는 단계(350)에서 복수의 추천 대상 상품들 중 제2 포인트와 거리가 가까운 순서로 N(상기 N은 자연수) 개의 제1 포인트들에 대응하는 N 개의 추천 대상 상품을 선택할 수 있다. 다시 말해, 검색 대상 상품이 사영된 제2 포인트와 거리가 가장 가까운 제1 포인트에 대응하는 추천 대상 상품이 검색 대상 상품과 가장 잘 어울리는 추천 대상 상품으로서 선택될 수 있으며, 이러한 제2 포인트와 제1 포인트의 거리가 가까운 순서대로 N 개의 추천 대상 상품들이 선택될 수 있다. 이때, 선택된 추천 대상 상품들 중 적어도 하나의 추천 대상 상품이 검색자에게 제공될 수 있다.For example, in
한편, 상품의 추천 대상은 검색 조건에 따라 검색 대상 상품과 동일한 카테고리이거나 또는 다른 카테고리일 수 있다. 또는 검색자가 특정한 카테고리일 수도 있다. 예를 들어, 컴퓨터 장치(200)는 복수의 추천 대상 상품들 중 검색 대상 상품의 카테고리와 다른 카테고리의 추천 대상 상품을 거리에 기반하여 선택할 수 있다. 다른 예로, 컴퓨터 장치(200)는 복수의 추천 대상 상품들 중 검색자에 의해 선택된 카테고리의 추천 대상 상품을 거리에 기반하여 선택할 수도 있다.Meanwhile, the recommendation target of the product may be the same category as the search target product or a different category according to the search condition. Or, the searcher may be a specific category. For example, the
도 4는 본 발명의 일실시예에 따른 MDAE의 예를 도시한 도면이다. 이미지들의 집합 V가 주어졌을 때, 각각의 이미지 v i 는 집합 V의 원소일 수 있다. 이때, 이미지 v i 의 카테고리 Cj의 상품의 가상 특징들을 나타내는 차원 벡터는 아래 수학식 1과 같이 표현될 수 있다. 4 is a view showing an example of MDAE according to an embodiment of the present invention. Given a set V of images, each image v i may be an element of set V. At this time, the virtual features of the product of the category Cj of the image v i The dimensional vector can be expressed as
추가로 x Cj 는 이미지 v i 의 j 번째 카테고리의 상품의 가상 특징을 나타내는 각각의 엘리먼트 를 갖는 특성 매트릭스를 나타낼 수 있다. In addition, x Cj is Each element representing the virtual characteristics of the product of the jth category of the image v i It can represent a characteristic matrix having a.
두 가지 카테고리가 존재하는 경우의 MDAE의 알고리즘의 예는 표 1과 같다.Table 1 shows an example of the MDAE algorithm when two categories exist.
표 1에서 X t 는 이미지 v i 의 두 가지 카테고리 중 제1 카테고리의 상품의 가상 특징들을 나타내는 차원 벡터를, X b 는 이미지 v i 의 두 가지 카테고리 중 제2 카테고리의 상품의 가상 특징들을 나타내는 차원 벡터를 각각 의미할 수 있다.In Table 1, X t represents virtual characteristics of the product of the first category among the two categories of the image v i The dimensional vector, X b represents the virtual characteristics of the product of the second category of the two categories of the image v i Each may mean a dimensional vector.
도 4에서는 카테고리 C1, C2, C3의 세 가지 카테고리들에 대한 이미지 특징(410)이 MDAE(420)의 입력으로 들어가 인코더 네트워크(Encoder Network)를 통해 공유 표현에 따라 스타일 공간을 생성하고, 다시 디코더 네트워크(Decoder Network)를 통해 입력된 이미지 특징(410)을 재구성하여 재구성된 입력(430)을 출력하는 예를 나타내고 있다. MDAE(420)의 입력은 도 4에 도시된 바와 같이 카테고리 C1, C2, C3의 특징들의 집합이 포함할 수 있는 공집합을 제외한 7 개의 부분집합들(23-1=7)로 형성될 수 있다. 만약, 카테고리가 2 개라면, 특징들의 집합의 공집합을 제외한 부분집합들은 3 개(22-1=3)가 될 것이며, 카테고리가 4 개라면, 특징들의 집합의 공집합을 제외한 부분집합들은 15 개(24-1=15)가 될 것이다.In FIG. 4, image features 410 for three categories of
또한, 도 4에서 재구성된 입력(430)의 와 간의 차이를 평가하기 위한 비용 함수 J(W, b)는 아래 수학식 2와 같이 표현될 수 있다.Also, the reconstructed
도 5 및 도 6은 거리 모델의 예를 도시한 도면이다.5 and 6 are views showing an example of a distance model.
도 5는 입력 데이터(510)로서의 이미지에서 상품별로 이미지 특징을 추출하고, 상품과 어울리지 않는 이미지를 구하여 서로 어울리는 상품들의 이미지들을 포함하는 이미지 세트(이하, '정답 데이터')와 서로 어울리지 않는 상품들의 이미지들을 포함하는 이미지 세트(이하, '오답 데이터')를 각각 모델 입력 형태(520)로서 생성한 후, 상품 추천 모델에 입력하여 스타일 공간을 학습(530)하는 예를 나타내고 있다. 이때, 정답 데이터의 상품들은 스타일 공간상에서 상대적으로 가까운 거리의 포인트들로 사영되고, 오답 데이터의 상품들은 스타일 공간상에서 상대적으로 먼 거리의 포인트들로 사영되도록 MDAE 기반의 상품 추천 모델이 학습될 수 있다.FIG. 5 extracts image characteristics for each product from an image as
도 6은 상품 추천 모델을 위한 학습 이미지(610)에서 상품들의 이미지들을 각각 추출하여 이미지 벡터 공간(620)에 사영시킨 예를 나타내고 있다. 이때, 상품 추천 모델은 이러한 상품들 각각을 스타일 공간(630)에 사영시킬 수 있으며, 이때 앞서 설명한 바와 같이, 정답 데이터의 상품들은 스타일 공간상에서 상대적으로 가까운 거리의 포인트들로 사영되고, 오답 데이터의 상품들은 스타일 공간상에서 상대적으로 먼 거리의 포인트들로 사영되도록 학습될 수 있다.FIG. 6 shows an example of extracting images of products from the
한편, 도 6에 도시한 바와 같이, 서로 어울리지 않는 상품들이 멀어짐을 나타내기 위한 정보를 생성하기 위해서는 서로 어울리지 않는 상품들간의 이미지 세트인 오답 데이터를 생성 및 활용하기 위해 막대한 계산량이 소모될 수 있으며, 소모되는 계산량은 카테고리의 수가 늘어날수록 증가할 수 있다. 따라서, 이후에서는 이러한 오답 데이터의 생성 및 활용 없이도 스타일 공간상에서 상품들간의 거리를 적절히 계산할 수 있는 실시예를 설명한다.Meanwhile, as illustrated in FIG. 6, in order to generate information to indicate that products that do not match each other are far apart, a large amount of calculation may be consumed to generate and utilize incorrect data, which is an image set between products that do not match each other, The amount of calculation consumed may increase as the number of categories increases. Therefore, hereinafter, an embodiment in which distances between products can be properly calculated in a style space without generating and utilizing such incorrect data will be described.
도 7은 본 발명의 일실시예에 따른 스타일 공간 생성 형태의 예를 도시한 도면이다.7 is a diagram illustrating an example of a style space generation form according to an embodiment of the present invention.
도 7에서는 입력 데이터(710)로서의 이미지에서 카테고리별 상품들을 추출하고, 카테고리별 상품들 각각을 위한 이미지 특징을 추출하여 모델 입력 형태(720)를 생성하는 예를 나타내고 있다. 이때, 앞서 설명한 바와 같이, 동일한 학습 이미지에 포함된 카테고리별 상품들을 원소로 갖는 집합에 대한 공집합을 제외한 부분집합들 각각을 통해 이미지 특징을 추출하여 상품 추천 모델을 위한 입력 데이터를 생성할 수 있다. 도 7의 모델 입력 형태(720)는 부분집합들 중 일부를 나타내고 있다. 생성된 모델 입력 형태(720)의 입력 데이터는 MDAE 기반의 상품 추천 모델로 입력(730)될 수 있다. 이때, MDAE 기반의 상품 추천 모델은 입력 데이터에 기반하여 스타일 공간에 상품들을 사영할 수 있다. 이러한 모델 입력 형태(720)는 단순히 두 가지 상품들의 이미지 특징들이 아닌 복수의 카테고리별 상품들에 대한 이미지 특징들을 연계하여 MDAE의 입력 데이터로 활용할 수 있도록 함으로써, 다양한 카테고리의 상품들 전체에 대한 추천이 가능해질 수 있다. 스타일 공간은 복수의 공간들로 분류될 수 있으며, 동일한 학습 이미지에서 추출된 상품들은 복수의 공간들 중 동일한 공간에 위치하도록 상품들이 스타일 공간에 사영될 수 있다. 다시 말해, 동일한 학습 이미지에서 추출된 상품들은 상대적으로 가까운 거리의 포인트들로 사영될 수 있다. 도 7에서는 입력 데이터(710)에서 추출된 세 가지 상품들에 대응하는 3 개의 입력(740)이 스타일 공간을 분류한 복수의 공간들 중 동일한 공간에 위치하게 됨을 나타내고 있다.7 shows an example of extracting products by category from an image as
한편, 정답 데이터(750)는 입력 데이터가 MDAE의 인코더와 디코더를 거치면서 재구성된 데이터일 수 있다. 스타일 공간을 생성하여 상품들을 사영시키는 MDAE의 인코더는 이러한 정답 데이터(750)에 기초하여 학습됨에 따라 별도의 오답 데이터 없이도 동일한 학습 이미지에서 추출된 상품들을 동일한 공간의 포인트로 사영시킬 수 있다. 따라서 거리 모델에서 가장 큰 계산량을 갖는 오답 데이터의 생성 및 활용 과정을 생략함으로써, 현실적인 시간 내에서도 복수 카테고리에 대한 학습 및 추천이 가능해질 수 있다.Meanwhile, the
이처럼, MDAE는 학습 시에 학습 데이터에 의도적으로 노이즈를 넣음으로써, 노이즈가 들어있는 테스트 데이터에서 노이즈를 없애는 디노이징 오토인코더(Denoising Autoencoder) 기술의 응용으로서, 서로 다른 카테고리의 데이터를 학습 시에 각각 노이즈를 추가(blind 처리)함으로써 하나 또는 전체의 부분집합의 데이터만으로도 전체 데이터를 유추할 수 있다. 도 7에서 정답 데이터(750)로서 나타난 의상들이 서로 어울린다고 학습하기 위해 도 5 및 도 6을 통해 설명한 거리 모델에서는 어울리지 않음에 대한 정보를 필수적으로 입력해야만 했던 반면, 본 실시예에 따른 MDAE 기반의 상품 추천 모델은 오토인코더를 이용하여 재구성된 데이터(일례로, 도 4의 재구성된 입력(430))와 정답 데이터(750)를 이용하여 학습함에 따라 공유 표현에 의상의 특징들이 학습됨을 이용하여, 스타일 공간을 생성할 수 있다.As described above, MDAE is an application of a denoising autoencoder technology that removes noise from test data containing noise by intentionally adding noise to the training data during training. By adding noise (blind processing), the entire data can be inferred from only one or a whole subset of data. In order to learn that the clothes shown as the
도 8은 본 발명의 일실시예에 있어서, MDAE의 학습 예를 도시한 도면이다. MDAE는 도 8에 나타난 원본 데이터(특징들의 집합의 부분집합들 중 모든 원소를 포함하는 부분집합, 810)와 블라인드 처리된 유사한 데이터(특징들의 집합의 부분집합들 중 일부 원소를 포함하는 부분집합, 820 및 830)가 동일한 데이터가 되도록 학습됨에 따라, 특징이 학습되는 공유 표현의 값도 유사하게 학습될 수 있다. 이 경우, MDAE에 대해 학습이 완료되면, 하나의 카테고리의 이미지(블라인드 처리된 유사한 데이터(820 및 830))에서 정답 데이터(750)를 생성할 수 있으며, 블라인드 처리된 유사한 데이터의 공유 표현은 정답 데이터(750)의 공유 표현과 유사해진다. 다시 말해, 정답 데이터(750)의 서브세트 카테고리들 각각의 공유 표현들은 모두 유사해지기 때문에 스타일 공간상의 거리가 서로 가까워지게 된다. 이로써, 각 서브세트의 공유 표현은 자신만의 특징에 따라 스타일 공간에 분포하게 되지만, 유사한 스타일(동일한 정답 데이터(750)에서 나온 스타일)의 경우에는 서로 가까운 공간상에 위치하게 된다.8 is a diagram illustrating an example of learning MDAE in an embodiment of the present invention. MDAE includes the original data shown in FIG. 8 (a subset containing all elements of the subset of the set of features, 810) and similar data processed blind (a subset containing some elements of the subset of the set of features, As 820 and 830 are learned to be the same data, the value of the shared expression in which the feature is learned can be similarly learned. In this case, when learning about MDAE is completed,
이처럼 본 실시예에 따른 MDAE 기반의 상품 추천 모델은, 거리 모델에서 오답 데이터 샘플링을 이용하여 강제적으로 스타일이 다른 경우 거리가 멀어지도록 학습시키는 것과 달리, 별도의 오답 데이터 샘플링 없이도 기존의 이미지의 특징을 이용하여 이미지들을 서로 다른 공간에 자동으로 사영시킴과 동시에 서로 유사한 특징(동일한 정답 데이터에서 나온 특징)을 갖는 이미지들은 스타일 공간상에서 서로 가까운 거리상에 위치시킬 수 있다.As described above, the MDAE-based product recommendation model according to the present embodiment uses the incorrect data sampling in the distance model to forcibly study the distance from the distance when the styles are different, and the characteristics of the existing image without additional incorrect data sampling. By automatically projecting images in different spaces, images having similar characteristics (characteristics from the same correct answer data) can be placed at close distances from each other in style space.
도 9는 본 발명의 일실시예에 따른 스타일 공간의 예를 도시한 도면이다. 이러한 도 9에서는 학습 이미지(910)에서 추출된 상품들 각각에 대한 이미지 벡터 공간(920)을 생성하고, 이미지 특징을 입력으로 하는 입력 데이터에 대해 MDAE에 기반하여 스타일 공간(930)을 생성하여 스타일 공간(930)에 상품들을 사영시킨 예를 나타내고 있다. 이미 설명한 바와 같이 MDAE는 동일한 학습 이미지에서 추출된 상품들이 스타일 공간(930)의 동일한 공간상의 포인트에 사영되도록 학습될 수 있으며, 이에 따라 도 9에서는 동일한 학습 이미지에서 추출된 이미지들이 스타일 공간(930)에서 서로 가까운 포인트들에 사영됨을 나타내고 있다. 또한, 도 9에서는 서로 다른 학습 이미지들에서 추출된 상품들이 스타일 공간(930)에서 서로 다른 공간상의 포인트에 사영되도록 학습됨에 따라, 서로 다른 학습 이미지들에서 추출된 상품들이 스타일 공간(930)에서 상대적으로 서로 먼 포인트들에 사영됨을 나타내고 있다. 또한, MDAE는 이미지 벡터 공간(920)을 인코딩한 후 다시 디코딩하여 재구성된 이미지 벡터 공간(940)을 생성하며, 재구성된 이미지 특징들을 활용함으로써 추가적인 오답 데이터의 생성 및 활용 없이도 상품들을 스타일 공간의 알맞은 포인트에 사영하도록 MDAE의 인코더를 학습시킬 수 있다.9 is a view showing an example of a style space according to an embodiment of the present invention. In FIG. 9, an
이처럼 본 발명의 실시예들에 따르면, MDAE(Multimodal Deep Autoencoder)를 이용하여 학습 이미지가 포함하는 카테고리별 상품들의 상관관계를 학습시키고, MDAE(Multimodal Deep Autoencoder)에 학습된 상관관계에 기반하여 상품을 추천할 수 있다. 또한, MDAE의 디코더를 통해 재구성된 재구성된(reconstructed) 상품들의 특징들을 정답 데이터로 활용함으로써, 오답 데이터의 활용 없이 상품 추천 모델을 학습시킴으로써, 기존의 거리 모델에서 가장 큰 계산량을 갖던 네거티브 샘플링 과정을 생략할 수 있다.As described above, according to embodiments of the present invention, the correlation of products by category included in the learning image is learned using MDAE (Multimodal Deep Autoencoder), and the product is based on the correlation learned in MDAE (Multimodal Deep Autoencoder). Can recommend In addition, by using the features of the reconstructed products reconstructed through the MDAE decoder as correct answer data, by learning the product recommendation model without using the incorrect answer data, a negative sampling process having the largest computation in the existing distance model is performed. Can be omitted.
이상에서 설명된 시스템 또는 장치는 하드웨어 구성요소, 또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The system or device described above may be implemented as a hardware component, or a combination of hardware components and software components. For example, the devices and components described in the embodiments include, for example, processors, controllers, arithmetic logic units (ALUs), digital signal processors (micro signal processors), microcomputers, field programmable gate arrays (FPGAs). , A programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose computers or special purpose computers. The processing device may perform an operating system (OS) and one or more software applications running on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of the software. For convenience of understanding, a processing device may be described as one being used, but a person having ordinary skill in the art, the processing device may include a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that may include. For example, the processing device may include a plurality of processors or a processor and a controller. In addition, other processing configurations, such as parallel processors, are possible.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록매체에 저장될 수 있다.The software may include a computer program, code, instruction, or a combination of one or more of these, and configure the processing device to operate as desired, or process independently or collectively You can command the device. Software and/or data may be interpreted by a processing device, or to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. Can be embodied in The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, or the like alone or in combination. The medium may be a computer that continuously stores executable programs or may be temporarily stored for execution or download. In addition, the medium may be various recording means or storage means in the form of a combination of single or several hardware, and is not limited to a medium directly connected to a computer system, but may be distributed on a network. Examples of the medium include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and magneto-optical media such as floptical disks, And program instructions including ROM, RAM, flash memory, and the like. In addition, examples of other media may include an application store for distributing applications or a recording medium or storage medium managed by a site, server, or the like that supplies or distributes various software. Examples of program instructions include high-level language code that can be executed by a computer using an interpreter, etc., as well as machine language codes produced by a compiler.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by a limited embodiment and drawings, those skilled in the art can make various modifications and variations from the above description. For example, the described techniques are performed in a different order than the described method, and/or the components of the described system, structure, device, circuit, etc. are combined or combined in a different form from the described method, or other components Alternatively, even if replaced or substituted by equivalents, appropriate results can be achieved.
그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.
Claims (15)
상기 적어도 하나의 프로세서에 의해, 학습 이미지 세트가 포함하는 카테고리별 상품들을 추출하는 단계;
상기 적어도 하나의 프로세서에 의해, 동일한 학습 이미지에 포함된 카테고리별 상품들간의 상관관계에 기반하여 상기 추출된 카테고리별 상품들을 스타일 공간상의 포인트들에 사영(projection)시키도록 MDAE(Multimodal Deep Autoencoder) 기반의 상품 추천 모델을 학습시키는 단계;
상기 적어도 하나의 프로세서에 의해, 복수의 추천 대상 상품들을 상기 학습된 상품 추천 모델을 통해 상기 스타일 공간상의 복수의 제1 포인트들에 사영시키는 단계;
상기 적어도 하나의 프로세서에 의해, 검색 대상 상품을 상기 학습된 상품 추천 모델을 통해 상기 스타일 공간상의 제2 포인트에 사영시키는 단계; 및
상기 적어도 하나의 프로세서에 의해, 상기 스타일 공간상에서 상기 제1 포인트들 각각과 상기 제2 포인트간의 거리에 기반하여 상기 복수의 추천 대상 상품들 중 적어도 하나의 추천 대상 상품을 선택하는 단계
를 포함하고,
상기 스타일 공간은 복수의 공간들로 분류되고,
상기 상품 추천 모델을 학습하는 단계는,
상기 추출된 카테고리별 상품들을 스타일 공간상의 포인트들에 사영시키되, 동일한 학습 이미지에 포함된 카테고리별 상품들이 상기 분류된 복수의 공간들 중 동일한 공간의 포인트들에 사영되도록 상기 MDAE의 인코더를 학습시키는 것을 특징으로 하는 상품 추천 방법.A method for recommending a product of a computer device including at least one processor, the method comprising:
Extracting products for each category included in the learning image set by the at least one processor;
MDAE (Multimodal Deep Autoencoder) based on the at least one processor to project the extracted category-specific products to points in a style space based on correlations between category-specific products included in the same learning image. Learning a product recommendation model of the product;
Projecting, by the at least one processor, a plurality of recommendation target products to a plurality of first points on the style space through the learned product recommendation model;
Projecting, by the at least one processor, a product to be searched through the learned product recommendation model to a second point on the style space; And
Selecting at least one recommendation target product among the plurality of recommendation target products based on the distance between each of the first points and the second point in the style space by the at least one processor;
Including,
The style space is classified into a plurality of spaces,
The step of learning the product recommendation model,
It is to project the extracted products for each category to points on a style space, but to train the encoder of the MDAE such that products for each category included in the same learning image are projected at points of the same space among the classified plurality of spaces. Featured product recommendation method.
상기 학습시키는 단계는,
상기 동일한 학습 이미지에 포함된 카테고리별 상품들을 원소로 갖는 집합에 대한 공집합을 제외한 부분집합들 각각을 통해 이미지 특징을 추출하여 상기 상품 추천 모델을 위한 입력 데이터를 생성하는 것을 특징으로 하는 상품 추천 방법.According to claim 1,
The step of learning,
A product recommendation method characterized by extracting image features through each of the sub-sets excluding the empty set for a set having products by category included in the same learning image as elements, and generating input data for the product recommendation model.
상기 상품 추천 모델을 학습하는 단계는,
상기 MDAE의 인코더 및 디코더를 통해 재구성된(reconstructed) 상품들의 특징들을 정답 데이터를 이용하고, 추가적인 오답 데이터의 이용 없이 상기 상품 추천 모델을 학습시키는 것을 특징으로 하는 상품 추천 방법.According to claim 1,
The step of learning the product recommendation model,
A product recommendation method characterized by using the correct answer data for features of products reconstructed through the encoder and decoder of the MDAE and learning the product recommendation model without using additional incorrect data.
상기 선택하는 단계는,
상기 복수의 추천 대상 상품들 중 상기 제2 포인트와 거리가 가까운 순서로 N(상기 N은 자연수) 개의 제1 포인트들에 대응하는 N 개의 추천 대상 상품을 선택하는 것을 특징으로 하는 상품 추천 방법.According to claim 1,
The step of selecting,
A product recommendation method comprising selecting N recommendation target products corresponding to N (N is a natural number) first points in an order of distance from the second point among the plurality of recommendation target products.
상기 선택하는 단계는,
상기 복수의 추천 대상 상품들 중 상기 검색 대상 상품의 카테고리와 다른 카테고리의 추천 대상 상품을 상기 거리에 기반하여 선택하는 것을 특징으로 하는 상품 추천 방법.According to claim 1,
The step of selecting,
A method of recommending a product, wherein a product of a category different from the category of the product to be searched is selected from among the plurality of products to be recommended based on the distance.
상기 동일한 학습 이미지에 포함된 카테고리별 상품들은 서로 다른 셋 이상의 카테고리별 상품들을 포함하는 것을 특징으로 하는 상품 추천 방법.According to claim 1,
A product recommendation method characterized in that the products for each category included in the same learning image include three or more products for each category.
컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서에 의해,
학습 이미지 세트가 포함하는 카테고리별 상품들을 추출하고,
동일한 학습 이미지에 포함된 카테고리별 상품들간의 상관관계에 기반하여 상기 추출된 카테고리별 상품들을 스타일 공간상의 포인트들에 사영(projection)시키도록 MDAE(Multimodal Deep Autoencoder) 기반의 상품 추천 모델을 학습시키고,
복수의 추천 대상 상품들을 상기 학습된 상품 추천 모델을 통해 상기 스타일 공간상의 복수의 제1 포인트들에 사영시키고,
검색 대상 상품을 상기 학습된 상품 추천 모델을 통해 상기 스타일 공간상의 제2 포인트에 사영시키고,
상기 스타일 공간상에서 상기 제1 포인트들 각각과 상기 제2 포인트간의 거리에 기반하여 상기 복수의 추천 대상 상품들 중 적어도 하나의 추천 대상 상품을 선택하고,
상기 스타일 공간은 복수의 공간들로 분류되고,
상기 적어도 하나의 프로세서에 의해,
상기 추출된 카테고리별 상품들을 스타일 공간상의 포인트들에 사영시키되, 동일한 학습 이미지에 포함된 카테고리별 상품들이 상기 분류된 복수의 공간들 중 동일한 공간의 포인트들에 사영되도록 상기 MDAE의 인코더를 학습시키는 것
을 특징으로 하는 컴퓨터 장치.In the computer device,
At least one processor implemented to execute computer readable instructions
Including,
By the at least one processor,
Extract products by category included in the learning image set,
A multimodal deep autoencoder (MDAE)-based product recommendation model is trained to project the extracted category-specific products to points on a style space based on correlations between category-specific products included in the same learning image,
Projecting a plurality of recommended target products to a plurality of first points on the style space through the learned product recommendation model,
The product to be searched is projected to the second point on the style space through the learned product recommendation model,
On the style space, based on the distance between each of the first points and the second point, select at least one recommended target product among the plurality of recommended target products,
The style space is classified into a plurality of spaces,
By the at least one processor,
Learning the encoder of the MDAE such that the extracted products for each category are projected to points on a style space, and products for each category included in the same learning image are projected at points in the same space among the plurality of classified spaces.
Computer device characterized in that.
상기 적어도 하나의 프로세서에 의해,
상기 동일한 학습 이미지에 포함된 카테고리별 상품들을 원소로 갖는 집합에 대한 공집합을 제외한 부분집합들 각각을 통해 이미지 특징을 추출하여 상기 상품 추천 모델을 위한 입력 데이터를 생성하는 것을 특징으로 하는 컴퓨터 장치.The method of claim 10,
By the at least one processor,
A computer device characterized by extracting image features through each of the subsets excluding the empty set for a set having elements by category included in the same learning image as elements, and generating input data for the product recommendation model.
상기 적어도 하나의 프로세서에 의해,
상기 MDAE의 인코더 및 디코더를 통해 재구성된(reconstructed) 상품들의 특징들을 정답 데이터를 이용하고, 추가적인 오답 데이터의 이용 없이 상기 상품 추천 모델을 학습시키는 것을 특징으로 하는 컴퓨터 장치.The method of claim 10,
By the at least one processor,
A computer device characterized by using the correct answer data for features of products reconstructed through the encoder and decoder of the MDAE, and training the product recommendation model without using additional incorrect data.
상기 적어도 하나의 프로세서에 의해,
상기 복수의 추천 대상 상품들 중 상기 제2 포인트와 거리가 가까운 순서로 N(상기 N은 자연수) 개의 제1 포인트들에 대응하는 N 개의 추천 대상 상품을 선택하는 것을 특징으로 하는 컴퓨터 장치.The method of claim 10,
By the at least one processor,
A computer device characterized by selecting N recommended target products corresponding to N (where N is a natural number) first points in a sequence close to the second point among the plurality of recommended target products.
상기 적어도 하나의 프로세서에 의해,
상기 복수의 추천 대상 상품들 중 상기 검색 대상 상품의 카테고리와 다른 카테고리의 추천 대상 상품을 상기 거리에 기반하여 선택하는 것을 특징으로 하는 컴퓨터 장치.The method of claim 10,
By the at least one processor,
A computer device, characterized in that, among the plurality of recommended target products, a category of the search target product and a recommended target product of a different category are selected based on the distance.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180026762A KR102119518B1 (en) | 2018-03-07 | 2018-03-07 | Method and system for recommending product based style space created using artificial intelligence |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180026762A KR102119518B1 (en) | 2018-03-07 | 2018-03-07 | Method and system for recommending product based style space created using artificial intelligence |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190109652A KR20190109652A (en) | 2019-09-26 |
KR102119518B1 true KR102119518B1 (en) | 2020-06-08 |
Family
ID=68067880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180026762A KR102119518B1 (en) | 2018-03-07 | 2018-03-07 | Method and system for recommending product based style space created using artificial intelligence |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102119518B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102446720B1 (en) * | 2022-02-18 | 2022-09-26 | 오드컨셉 주식회사 | An image reconstruction model, and a training method of the image reconstruction model |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102150720B1 (en) * | 2020-01-03 | 2020-09-02 | 주식회사 스타일쉐어 | Image embedding apparatus and method for content-based user clustering |
KR102392674B1 (en) * | 2020-01-30 | 2022-04-29 | 오드컨셉 주식회사 | Fashion goods recommendation methods, devices and systems |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100461159C (en) * | 2001-05-25 | 2009-02-11 | 恩迪卡技术公司 | Hierarchical data-driven navigation system and method for information retrieval |
CA2854723A1 (en) * | 2011-11-09 | 2013-05-16 | Rockstar Consortium Us Lp | Method and system for providing relevant information to a mobile device |
KR20170096971A (en) * | 2016-02-17 | 2017-08-25 | 옴니어스 주식회사 | Method for recommending a product using style feature |
-
2018
- 2018-03-07 KR KR1020180026762A patent/KR102119518B1/en active IP Right Grant
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102446720B1 (en) * | 2022-02-18 | 2022-09-26 | 오드컨셉 주식회사 | An image reconstruction model, and a training method of the image reconstruction model |
Also Published As
Publication number | Publication date |
---|---|
KR20190109652A (en) | 2019-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112313697B (en) | System and method for generating interpretable description-based recommendations for description angle augmentation | |
KR102211650B1 (en) | Method and system for recommending product based on artificial intelligence | |
JP6446602B2 (en) | Method and system for categorizing data | |
CN111680221B (en) | Information recommendation method, device, equipment and computer readable storage medium | |
US10073860B2 (en) | Generating visualizations from keyword searches of color palettes | |
KR102214422B1 (en) | Method and system of real-time graph-based embedding for personalized content recommendation | |
US11954142B2 (en) | Method and system for producing story video | |
US20150378999A1 (en) | Determining affiliated colors from keyword searches of color palettes | |
US20150379004A1 (en) | Identifying data from keyword searches of color palettes and keyword trends | |
US20150379002A1 (en) | Determining color names from keyword searches of color palettes | |
US12118042B2 (en) | Method, system, and non-transitory computer-readable record medium for providing multiple models of federated learning using personalization | |
CN115917535A (en) | Recommendation model training method, recommendation device and computer readable medium | |
US20160132601A1 (en) | Hybrid Explanations In Collaborative Filter Based Recommendation System | |
KR20210018384A (en) | Method and system of real-time graph-based embedding for personalized content recommendation | |
CN111818370B (en) | Information recommendation method and device, electronic equipment and computer-readable storage medium | |
US9767417B1 (en) | Category predictions for user behavior | |
CN112380453B (en) | Article recommendation method and device, storage medium and equipment | |
US9767204B1 (en) | Category predictions identifying a search frequency | |
KR102119518B1 (en) | Method and system for recommending product based style space created using artificial intelligence | |
CN105580043A (en) | Strength based modeling for recommendation system | |
US10474670B1 (en) | Category predictions with browse node probabilities | |
CN116894711A (en) | Commodity recommendation reason generation method and device and electronic equipment | |
KR102011099B1 (en) | Method, apparatus, and computer program for selecting music based on image | |
US20210192000A1 (en) | Searching using changed feature of viewed item | |
US20210192338A1 (en) | Machine learning multiple features of depicted item |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |