KR20210110006A - Server and method for recommending product - Google Patents
Server and method for recommending product Download PDFInfo
- Publication number
- KR20210110006A KR20210110006A KR1020200025377A KR20200025377A KR20210110006A KR 20210110006 A KR20210110006 A KR 20210110006A KR 1020200025377 A KR1020200025377 A KR 1020200025377A KR 20200025377 A KR20200025377 A KR 20200025377A KR 20210110006 A KR20210110006 A KR 20210110006A
- Authority
- KR
- South Korea
- Prior art keywords
- vector
- product
- keywords
- additional
- additional information
- Prior art date
Links
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
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (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)
Abstract
Description
본 발명은 제품을 추천하는 서버 및 방법에 관한 것이다. The present invention relates to a server and method for recommending a product.
최근 IT 산업의 발달에 따라 개인화된 서비스나 제품의 추천 시스템이 다양한 형태로 개발되고 있다. Recently, with the development of the IT industry, a system for recommending personalized services or products has been developed in various forms.
일반적으로, 추천 시스템은 고객들에게 추천 상품 리스트를 만들어 고객들이 구매 가능성이 있는 상품을 쉽게 찾도록 도와주는 개인화된 정보 필터링 기술이다. In general, the recommendation system is a personalized information filtering technology that helps customers easily find products that they are likely to purchase by creating a list of recommended products for customers.
기존의 추천 시스템에 사용되는 협업 필터링(collaborative filtering)은 데이터 마이닝 기술의 하나로 특히 사용자 데이터 분석 기법이다. 인터넷 쇼핑몰 사이트 등에 있는 추천 상품은 대부분 협업 필터링 기법을 통해 도출된다. Collaborative filtering used in the existing recommendation system is one of the data mining techniques, and in particular, a user data analysis technique. Most of the recommended products on Internet shopping mall sites are derived through collaborative filtering.
하지만, 협업 필터링을 이용한 추천 시스템은 인터넷 쇼핑몰에서 관리하는 상품과 고객의 수가 급속히 증가하면서 입력 데이터의 희박성(Sparsity) 문제와 시스템 확장성(Scalability) 문제가 발생하고 있다. However, in the recommendation system using collaborative filtering, as the number of products and customers managed by the Internet shopping mall rapidly increases, the problem of sparsity of input data and the problem of system scalability are occurring.
또한, 인터넷 쇼핑몰이나, 앱 등을 통해 사업을 추진하는 개인 사업자들의 경우, 추천 시스템을 통한 비즈니스를 수행하기에 기술적 장벽이 존재한다. 전문화된 데이터 마이닝 기술을 보유하지 않은 비전문가가 다양한 분야에서 추천 시스템을 이용한 개인 맞춤 추천 서비스를 제공하기 위해서는 추천 시스템 개발 과정을 경량화할 방법이 필요하다.In addition, in the case of individual operators who promote business through Internet shopping malls or apps, there are technical barriers to conducting business through a recommendation system. In order for non-specialists who do not have specialized data mining skills to provide personalized recommendation services using a recommendation system in various fields, a method to lighten the recommendation system development process is needed.
한편, 기존의 개인화된 상품 추천은 사용자의 나이, 성별, 현재 위치 등의 개인 정보를 이용하여 사용자의 개인 정보와 유사 또는 동일한 주변 사용자가 구매한 상품을 사용자에 추천하는 것으로, 사용자에게 상품을 추천하기 위해서는 반드시 사용자의 개인 정보가 필요하다. 하지만, 사용자 개인 정보의 보호 차원에서 사용자의 개인 정보를 자유롭게 이용하기 어려운 문제가 있다. On the other hand, the existing personalized product recommendation uses personal information such as the user's age, gender, and current location to recommend products purchased by nearby users similar to or identical to the user's personal information to the user. In order to do this, the user's personal information is absolutely necessary. However, there is a problem in that it is difficult to freely use the user's personal information in order to protect the user's personal information.
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 사용자 단말로부터 수신된 제품 추천 요청에 포함된 제품 및 부가 정보 각각에 대한 벡터에 기초하여 해당 제품과 다른 복수의 제품을 사용자 단말에게 추천하고자 한다. 다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다. The present invention is to solve the problems of the prior art described above, and based on a vector for each product and additional information included in a product recommendation request received from a user terminal, to recommend a plurality of products different from the corresponding product to the user terminal. do. However, the technical problems to be achieved by the present embodiment are not limited to the technical problems described above, and other technical problems may exist.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 제품 추천 장치는 복수의 웹사이트로부터 복수의 제품 각각에 대한 복수의 제 1 키워드 및 복수의 부가 정보 각각에 대한 복수의 제 2 키워드를 수집하는 키워드 수집부; 상기 복수의 제 1 키워드 및 복수의 제 1 키워드 각각의 빈도수에 기초하여 상기 복수의 제품 각각에 대한 아이템 벡터를 생성하고, 상기 복수의 제 2 키워드 및 복수의 제 2 키워드 각각의 빈도수에 기초하여 상기 복수의 부가 정보 각각에 대한 부가 벡터를 생성하는 벡터 생성부; 사용자 단말로부터 제 1 제품에 대한 정보 및 제 1 부가 정보를 포함하는 제품 추천 요청을 수신하는 요청 수신부; 및 상기 복수의 제품 각각에 대한 아이템 벡터 중 상기 제 1 제품에 대한 아이템 벡터 및 상기 복수의 부가 정보 각각에 대한 부가 벡터 중 상기 제 1 부가 정보에 대한 부가 벡터에 기초하여 상기 제 1 제품과 다른 복수의 제품을 상기 사용자 단말로 추천하는 제품 추천부를 포함할 수 있다. As a technical means for achieving the above technical problem, the product recommendation apparatus according to the first aspect of the present invention provides a plurality of first keywords and a plurality of additional information for each of a plurality of products from a plurality of websites. a keyword collecting unit collecting a second keyword; generating an item vector for each of the plurality of products based on the plurality of first keywords and the respective frequencies of the plurality of first keywords, and based on the respective frequencies of the plurality of second keywords and the plurality of second keywords a vector generator for generating an additional vector for each of the plurality of pieces of additional information; a request receiving unit for receiving a product recommendation request including information on a first product and first additional information from the user terminal; and a plurality of items different from the first product based on the additional vector for the first additional information among the item vector for the first product among the item vectors for each of the plurality of products and the additional vector for each of the plurality of additional information It may include a product recommendation unit for recommending a product of the user terminal.
본 발명의 제 2 측면에 따른 제품 추천 방법은 복수의 웹사이트로부터 복수의 제품 각각에 대한 복수의 제 1 키워드 및 복수의 부가 정보 각각에 대한 복수의 제 2 키워드를 수집하는 단계; 상기 복수의 제 1 키워드 및 복수의 제 1 키워드 각각의 빈도수에 기초하여 상기 복수의 제품 각각에 대한 아이템 벡터를 생성하고, 상기 복수의 제 2 키워드 및 복수의 제 2 키워드 각각의 빈도수에 기초하여 상기 복수의 부가 정보 각각에 대한 부가 벡터를 생성하는 단계; 사용자 단말로부터 제 1 제품에 대한 정보 및 제 1 부가 정보를 포함하는 제품 추천 요청을 수신하는 단계; 및 상기 복수의 제품 각각에 대한 아이템 벡터 중 상기 제 1 제품에 대한 아이템 벡터 및 상기 복수의 부가 정보 각각에 대한 부가 벡터 중 상기 제 1 부가 정보에 대한 부가 벡터에 기초하여 상기 제 1 제품과 다른 복수의 제품을 상기 사용자 단말로 추천하는 단계를 포함할 수 있다. A product recommendation method according to a second aspect of the present invention includes: collecting a plurality of first keywords for each of a plurality of products and a plurality of second keywords for each of a plurality of additional information from a plurality of websites; generating an item vector for each of the plurality of products based on the plurality of first keywords and the respective frequencies of the plurality of first keywords, and based on the respective frequencies of the plurality of second keywords and the plurality of second keywords generating an additional vector for each of the plurality of pieces of additional information; receiving a product recommendation request including information on a first product and first additional information from a user terminal; and a plurality of items different from the first product based on the additional vector for the first additional information among the item vector for the first product among the item vectors for each of the plurality of products and the additional vector for each of the plurality of additional information It may include the step of recommending a product of the user terminal.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.The above-described problem solving means are merely exemplary, and should not be construed as limiting the present invention. In addition to the exemplary embodiments described above, there may be additional embodiments described in the drawings and detailed description.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 본 발명은 사용자 단말로부터 수신된 제품 추천 요청에 포함된 제품 및 부가 정보 각각에 대한 벡터에 기초하여 개인 맞춤형의 제품을 사용자 단말에게 추천할 수 있다. According to any one of the above-described problem solving means of the present invention, the present invention can recommend a personalized product to the user terminal based on the vector for each product and additional information included in the product recommendation request received from the user terminal. have.
도 1은 본 발명의 일 실시예에 따른, 제품 추천 장치의 블록도이다.
도 2a 내지 2b는 본 발명의 일 실시예에 따른, 복수의 제품 각각에 대한 키워드 및 빈도수를 저장한 테이블을 나타낸 도면이다.
도 3a 내지 3b는 본 발명의 일 실시예에 따른, 복수의 부가 정보 각각에 대한 키워드 및 빈도수를 저장한 테이블을 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따른, 제품을 추천하는 방법을 나타낸 흐름도이다.1 is a block diagram of a product recommendation apparatus according to an embodiment of the present invention.
2A to 2B are diagrams illustrating tables storing keywords and frequencies for a plurality of products, respectively, according to an embodiment of the present invention.
3A to 3B are diagrams illustrating tables storing keywords and frequencies for a plurality of pieces of additional information, respectively, according to an embodiment of the present invention.
4 is a flowchart illustrating a method of recommending a product according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art can easily implement them. However, the present invention may be embodied in many different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification, when a part is "connected" with another part, this includes not only the case of being "directly connected" but also the case of being "electrically connected" with another element interposed therebetween. . In addition, when a part "includes" a certain component, this means that other components may be further included, rather than excluding other components, unless otherwise stated.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다. In this specification, a "part" includes a unit realized by hardware, a unit realized by software, and a unit realized using both. In addition, one unit may be implemented using two or more hardware, and two or more units may be implemented by one hardware.
본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다. Some of the operations or functions described as being performed by the terminal or device in the present specification may be instead performed by a server connected to the terminal or device. Similarly, some of the operations or functions described as being performed by the server may also be performed in a terminal or device connected to the server.
이하, 첨부된 구성도 또는 처리 흐름도를 참고하여, 본 발명의 실시를 위한 구체적인 내용을 설명하도록 한다. Hereinafter, detailed contents for carrying out the present invention will be described with reference to the accompanying configuration diagram or process flow diagram.
도 1은 본 발명의 일 실시예에 따른, 제품 추천 장치(10)의 블록도이다. 1 is a block diagram of a
도 1을 참조하면, 제품 추천 장치(10)는 키워드 수집부(100), 벡터 생성부(110), 요청 수신부(120) 및 제품 추천부(130)를 포함할 수 있다. 다만, 도 1에 도시된 제품 추천 장치(10)는 본 발명의 하나의 구현 예에 불과하며, 도 1에 도시된 구성요소들을 기초로 하여 여러 가지 변형이 가능하다. Referring to FIG. 1 , the
이하에서는 도 2a 내지 3b를 함께 참조하여 도 1을 설명하기로 한다. Hereinafter, FIG. 1 will be described with reference to FIGS. 2A to 3B.
키워드 수집부(100)는 복수의 웹사이트로부터 복수의 제품 각각에 대한 복수의 제 1 키워드 및 복수의 부가 정보 각각에 대한 복수의 제 2 키워드를 수집할 수 있다. 여기서, 복수의 부가 정보는 상품을 추천함에 있어서 영향을 미치는 모든 정보로서 예를 들어, 환경 정보(예컨대, 날씨 정보, 계절 정보 등), 생산국 정보, 성분 정보, 관련 상품 정보, 추천 목적 정보(선물용, 장식용 등) 등을 포함할 수 있다. The
키워드 수집부(100)는 복수의 웹사이트로부터 복수의 제품 각각에 대한 복수의 제 1 키워드 각각이 출현한 빈도수를 산출하고, 복수의 웹사이트로부터 복수의 부가 정보 각각에 대한 복수의 제 2 키워드 각각이 출현한 빈도수를 산출할 수 있다. The keyword collecting
키워드 수집부(100)는 제품 별로 각 제품의 제 1 키워드 및 각 제 1 키워드의 빈도수를 매핑한 테이블을 저장할 수 있다. 또한, 키워드 수집부(100)는 부가 정보 별로 각 부가 정보의 제 2 키워드 및 각 제 2 키워드의 빈도수를 매핑한 테이블을 저장할 수 있다. The
예를 들어, 도 2a 내지 2b를 참조하면, 키워드 수집부(100)는 제 1 와인과 관련된 키워드를 크롤링할 수 있다.For example, referring to FIGS. 2A to 2B , the
예를 들어, 키워드 수집부(100)는 검색 엔진을 통해 검색한 제 1 와인에 대한 검색 결과에 대응하는 복수의 웹사이트로부터 제 1 와인과 관련된 '맛있다' 키워드, '달콤하다' 키워드, '톡쏜다' 키워드 및 '상큼하다' 키워드를 포함하는 복수의 제 1 키워드를 수집하고, 복수의 제 1 키워드 각각이 복수의 웹 사이트에서 출현한 빈도수를 산출할 수 있다. 예를 들어, 키워드 수집부(100)는 제 1 와인에 대한 검색 결과에 대응하는 복수의 웹 사이트에서 제 1 와인과 관련된 '맛있다' 키워드가 출현한 빈도수를 산출하고, 제 1 와인의 정보에 '맛있다' 키워드 및 '맛있다' 키워드의 빈도수를 매핑하여 테이블에 저장할 수 있다. For example, the
다른 예를 들어, 키워드 수집부(100)는 기설정된 제품의 리뷰 사이트, SNS(Social Network Services) 및 기타 커뮤니티로부터 제 1 와인에 대한 키워드를 수집할 수도 있다.For another example, the
또한, 키워드 수집부(100)는 제 2 와인에 대하여 검색한 결과에 대응하는 복수의 웹사이트로부터 제 2 와인과 관련된 '맛있다' 키워드, '쓰다' 키워드, '상큼하다' 키워드, '밋밋하다' 키워드를 포함하는 복수의 제 1 키워드를 수집하고, 복수의 제 1 키워드 각각이 복수의 웹 사이트(제 2 제품이 검색된 웹사이트)에서 출현한 빈도수를 산출하고, 제 2 와인의 정보에 각 제 1 키워드 및 각 제 1 키워드의 빈도수를 매핑하여 테이블에 저장할 수 있다. In addition, the
다른 예를 들어, 키워드 수집부(100)는 기설정된 제품의 리뷰 사이트, SNS 및 기타 커뮤니티로부터 제 2 와인에 대한 키워드를 수집할 수도 있다.For another example, the
예를 들어, 도 3a 내지 3b를 참조하면, 키워드 수집부(100)는 복수의 웹사이트 로부터 날씨 정보(예컨대, '맑은 날씨에 제 1 와인을 마시고 싶다' 또는 '흐린 날씨에 제 1 와인을 마시고 싶다' 등로부터 추출된 날씨 정보)가 추출되면, 복수의 웹사이트로부터 날씨 정보(예컨대, '맑음', '흐름') 각각에 대하여 복수의 제 2 키워드를 수집하고, 복수의 웹사이트에서 출현한 각 제 2 키워드의 빈도수를 산출할 수 있다. 예를 들어, 키워드 수집부(100)는 복수의 웹페이지로부터 '맑음'에 해당하는 날씨 정보와 관련하여 감정 키워드(예컨대, 기분이 좋다), 여행 키워드(예컨대, 여행 가고 싶다), 산책 키워드(예컨대, 산책하고 싶다) 및 음악 키워드(예컨대, 밝은 음악 듣고 싶다) 등을 포함하는 복수의 제 2 키워드를 수집할 수 있다. 또한, 키워드 수집부(100)는 복수의 웹페이지로부터 '흐림'에 해당하는 날씨 정보와 관련하여 감정 키워드(예컨대, 우울하다), 홈 키워드(예컨대, 집에 있고 싶다) 및 음악 키워드(예컨대, 차분한 음악 듣고 싶다) 등을 포함하는 제 2 키워드를 수집할 수 있다. 여기서, 복수의 웹사이트는 SNS, 복수의 커뮤니티 등을 포함할 수 있다.For example, referring to FIGS. 3A to 3B , the
벡터 생성부(110)는 복수의 제품 각각에 대한 복수의 제 1 키워드 및 복수의 제 1 키워드 각각의 빈도수에 기초하여 복수의 제품 각각에 대한 아이템 벡터를 생성할 수 있다. The
예를 들어, 도 2a를 참조하면, 벡터 생성부(110)는 제 1 와인에 대한 '맛있다' 키워드, '달콤하다' 키워드, '톡쏜다' 키워드 및 '상큼하다' 키워드 각각의 빈도수에 기초하여 제 1 와인에 대한 아이템 벡터를 생성할 수 있다. For example, referring to FIG. 2A , the
도 2b를 참조하면, 벡터 생성부(110)는 제 2 와인에 대한 '맛있다' 키워드, '쓰다' 키워드, '상큼하다' 키워드, '밋밋하다' 키워드 각각의 빈도수에 기초하여 제 2 와인에 대한 아이템 벡터를 생성할 수 있다. Referring to FIG. 2B , the
벡터 생성부(110)는 복수의 부가 정보 별 복수의 제 2 키워드 및 복수의 제 2 키워드 각각의 빈도수에 기초하여 복수의 부가 정보 각각에 대한 부가 벡터를 생성할 수 있다. The
예를 들어, 도 3a 내지 3b를 참조하면, 벡터 생성부(110)는 제 1 날씨 정보(예컨대, '맑음')에 대한 감정 키워드, 여행 키워드, 산책 키워드 및 음악 키워드 각각의 빈도수에 기초하여 제 1 날씨 정보에 대한 부가 벡터를 생성할 수 있다. 또한, 벡터 생성부(110)는 제 2 날씨 정보(예컨대, '흐림')에 대한 감정 키워드, 홈 키워드 및 음악 키워드 각각의 빈도수에 기초하여 제 2 날씨 정보에 대한 부가 벡터를 생성할 수 있다. For example, referring to FIGS. 3A to 3B , the
요청 수신부(120)는 사용자 단말로부터 제 1 제품에 대한 정보 및 제 1 부가 정보를 포함하는 제품 추천 요청을 수신할 수 있다. 예를 들어, 요청 수신부(120)는 사용자 단말로부터 '맑은 날씨에 마실 상큼한 와인을 추천해줘'를 포함하는 제품 추천 요청을 수신할 수 있다. The
벡터 생성부(110)는 제품 추천 요청에 포함된 제 1 부가 정보가 미리 수집되어 있는 경우, 테이블에 저장된 복수의 제품 각각에 대한 아이템 벡터 중 제 1 제품에 대한 아이템 벡터를 추출하고, 테이블에 저장된 복수의 부가 정보 각각에 대한 부가 벡터 중 제 1 부가 정보에 대한 부가 벡터를 추출할 수 있다. When the first additional information included in the product recommendation request is collected in advance, the
제품 추천부(130)는 복수의 제품 각각에 대한 아이템 벡터로부터 추출된 제 1 제품에 대한 아이템 벡터 및 복수의 부가 정보 각각에 대한 부가 벡터로부터 추출된 제 1 부가 정보에 대한 부가 벡터에 기초하여 제 1 제품과 다른 복수의 제품을 사용자 단말에게 추천할 수 있다. 예를 들어, 제품 추천부(130)는 '상큼한 와인'에 대한 아이템 벡터 및 '맑은 날씨' 부가 정보에 대한 부가 벡터에 기초하여 복수의 다른 와인을 사용자 단말에게 추천할 수 있다. The
제품 추천부(130)는 제 1 제품에 대한 아이템 벡터와 제 1 부가 정보에 대한 부가 벡터 각각에 기설정된 가중치를 반영하여 다른 복수의 제품을 사용자 단말에게 추천할 수 있다. 여기서, 기설정된 가중치는 제 1 제품에 대한 아이템 벡터 및 제 1 부가 정보에 대한 부가 벡터 중 어느 벡터에 더 큰 가중치를 둘 것 인가에 대한 것으로 사용자 단말로의 제품 추천에 따른 사용자의 피드백 비율 또는 새로운 부가 정보의 출현 유무 등에 기초하여 달라질 수 있다. 예를 들어, 제품 추천부(130)는 '상큼한 와인'에 대한 아이템 벡터에 제 1 가중치를 반영하고, '맑은 날씨' 부가 정보에 대한 부가 벡터에 제 2 가중치를 반영할 수 있다. The
제품 추천부(130)는 제 1 제품에 대한 아이템 벡터 및 제 1 부가 정보에 대한 부가 벡터에 기초하여 신규 벡터를 생성할 수 있다. 또한, 제품 추천부(130)는 제 1 제품에 대한 아이템 벡터 및 제 1 부가 정보에 대한 부가 벡터 각각에 반영된 기설정된 가중치를 이용하여 신규 벡터를 생성할 수 있다. 여기서, 제품 추천부(130)는 [수학식 1]에 기초하여 신규 벡터를 생성할 수 있다. The
[수학식 1][Equation 1]
신규 벡터 = α*(제 1 제품에 대한 아이템 벡터) + (1-α)*(제 1 부가 정보에 대한 부가 벡터) New vector = α*(item vector for first product) + (1-α)*(addition vector for first additional information)
여기서, α는 기설정된 가중치이고, 0<α<1이다. Here, α is a preset weight, and 0<α<1.
제품 추천부(130)는 테이블에 저장된 복수의 제품 각각에 대한 아이템 벡터 중 신규 벡터와 유사한 아이템 벡터를 추출하고, 유사한 아이템 벡터에 대응하는 제품을 다른 복수의 제품 중 하나로 사용자 단말에게 추천할 수 있다. The
여기서, 벡터 생성부(110)는 신규 벡터와 유사한 아이템 벡터를 갖는 다른 복수의 제품 각각의 아이템 벡터와 신규 벡터 간의 유사도를 [수학식 2]를 통해 계산할 수 있다. 여기서, 유사도는 코사인 유사도일 수 있다. Here, the
[수학식 2][Equation 2]
제품 추천부(130)는 신규 벡터와 유사한 아이템 벡터를 갖는 다른 복수의 제품을 신규 벡터와의 유사도 순으로 정렬하여 사용자 단말에게 추천할 수 있다. 예를 들어, 제품 추천부(130)는 신규 벡터와의 유사도를 내림차순으로 정렬하여 신규 벡터와 유사도가 높은 제품 순으로 사용자 단말에게 추천할 수 있다. The
키워드 수집부(100)는 제품 추천 요청에 포함된 제 1 부가 정보에 대한 부가 벡터가 미리 수집되어 있지 않은 경우, 기설정된 웹사이트로부터 제 1 부가 정보에 대한 복수의 제 3 키워드를 실시간으로 수집하고, 기설정된 웹사이트로부터 각 제 3 키워드가 출현한 빈도수를 산출할 수 있다. When the additional vector for the first additional information included in the product recommendation request is not collected in advance, the
또한, 키워드 수집부(100)는 제품 추천 요청에 포함된 제 1 제품에 대한 정보에 기초하여 제 1 제품에 제 1 부가 정보에 대한 복수의 제 3 키워드 및 각 제 3 키워드의 빈도수를 매핑하여 새로운 테이블에 추가로 저장할 수 있다. 향후 키워드 수집부(100)는 해당 새로운 테이블을 상술한 크롤링을 통해 업데이트할 수 있다.In addition, the
벡터 생성부(110)는 제 1 부가 정보에 대한 복수의 제 3 키워드 및 복수의 제 3 키워드 각각의 빈도수에 기초하여 제 1 부가 정보에 대한 부가 벡터를 실시간으로 생성할 수 있다. The
제품 추천부(130)는 제 1 제품에 대한 아이템 벡터 및 실시간으로 생성된 제 1 부가 정보에 대한 부가 벡터에 기초하여 제 1 제품과 다른 복수의 제품을 사용자 단말에게 추천할 수 있다.The
제품 추천부(130)는 실시간으로 생성된 제 1 부가 정보에 대한 부가 벡터보다 제 1 제품에 대한 아이템 벡터에 높은 가중치를 반영하여 다른 복수의 제품을 사용자 단말에게 추천할 수 있다. 이는 제 1 부가 정보에 대한 부가 벡터는 단기간에 실시간으로 생성되어 신뢰성이 낮기 때문이다.The
제품 추천부(130)는 복수의 사용자 단말에게 추천한 제 1 제품과 다른 복수의 제품과 관련하여 복수의 사용자 단말로부터 사용자의 피드백 정보를 수신한 경우, 복수의 사용자의 피드백 정보에 기초하여 아이템 벡터 및 부가 벡터에 부여할 기설정된 가중치를 조정할 수 있다. 예를 들어, 제품 추천부(130)는 복수의 사용자의 피드백 정보에 대한 평균값을 계산하고, 계산된 평균값이 기설정된 임계값 이상인 경우, 기존의 기설정된 가중치를 변경하지 않고, 계산된 평균값이 기설정된 임계값 이하인 경우, 기존의 기설정된 가중치를 변경할 수 있다. When the
한편, 당업자라면, 키워드 수집부(100), 벡터 생성부(110), 요청 수신부(120) 및 제품 추천부(130) 각각이 분리되어 구현되거나, 이 중 하나 이상이 통합되어 구현될 수 있음을 충분히 이해할 것이다. On the other hand, those skilled in the art will recognize that each of the
도 4는 본 발명의 일 실시예에 따른, 제품을 추천하는 방법을 나타낸 흐름도이다.4 is a flowchart illustrating a method of recommending a product according to an embodiment of the present invention.
도 4를 참조하면, 단계 S401에서 제품 추천 장치(10)는 복수의 웹사이트로부터 복수의 제품 각각에 대한 복수의 제 1 키워드 및 복수의 부가 정보 각각에 대한 복수의 제 2 키워드를 수집할 수 있다. Referring to FIG. 4 , in step S401 , the
단계 S403에서 제품 추천 장치(10)는 복수의 제 1 키워드 및 복수의 제 1 키워드 각각의 빈도수에 기초하여 복수의 제품 각각에 대한 아이템 벡터를 생성하고, 복수의 제 2 키워드 및 복수의 제 2 키워드 각각의 빈도수에 기초하여 복수의 부가 정보 각각에 대한 부가 벡터를 생성할 수 있다. In step S403 , the
단계 S405에서 제품 추천 장치(10)는 사용자 단말로부터 제 1 제품에 대한 정보 및 제 1 부가 정보를 포함하는 제품 추천 요청을 수신할 수 있다. In step S405 , the
단계 S407에서 제품 추천 장치(10)는 복수의 제품 각각에 대한 아이템 벡터 중 제 1 제품에 대한 아이템 벡터 및 복수의 부가 정보 각각에 대한 부가 벡터 중 제 1 부가 정보에 대한 부가 벡터에 기초하여 제 1 제품과 다른 복수의 제품을 상기 사용자 단말에게 추천할 수 있다. In step S407, the
상술한 설명에서, 단계 S401 내지 S407은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. In the above description, steps S401 to S407 may be further divided into additional steps or combined into fewer steps, according to an embodiment of the present invention. In addition, some steps may be omitted as necessary, and the order between steps may be changed.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. An embodiment of the present invention may also be implemented in the form of a recording medium including instructions executable by a computer, such as a program module executed by a computer. Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. Also, computer-readable media may include all computer storage media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. The description of the present invention described above is for illustration, and those of ordinary skill in the art to which the present invention pertains can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and likewise components described as distributed may be implemented in a combined form.
본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다. The scope of the present invention is indicated by the following claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present invention. .
10: 제품 추천 장치
100: 키워드 수집부
110: 벡터 생성부
120: 요청 수신부
130: 제품 추천부10: Product recommendation device
100: keyword collection unit
110: vector generator
120: request receiving unit
130: product recommendation unit
Claims (10)
복수의 웹사이트로부터 복수의 제품 각각에 대한 복수의 제 1 키워드 및 복수의 부가 정보 각각에 대한 복수의 제 2 키워드를 수집하는 키워드 수집부;
상기 복수의 제 1 키워드 및 복수의 제 1 키워드 각각의 빈도수에 기초하여 상기 복수의 제품 각각에 대한 아이템 벡터를 생성하고, 상기 복수의 제 2 키워드 및 복수의 제 2 키워드 각각의 빈도수에 기초하여 상기 복수의 부가 정보 각각에 대한 부가 벡터를 생성하는 벡터 생성부;
사용자 단말로부터 제 1 제품에 대한 정보 및 제 1 부가 정보를 포함하는 제품 추천 요청을 수신하는 요청 수신부; 및
상기 복수의 제품 각각에 대한 아이템 벡터 중 상기 제 1 제품에 대한 아이템 벡터 및 상기 복수의 부가 정보 각각에 대한 부가 벡터 중 상기 제 1 부가 정보에 대한 부가 벡터에 기초하여 상기 제 1 제품과 다른 복수의 제품을 상기 사용자 단말로 추천하는 제품 추천부
를 포함하는 것인, 제품 추천 장치.
In the product recommendation device,
a keyword collecting unit for collecting a plurality of first keywords for each of a plurality of products and a plurality of second keywords for each of a plurality of additional information from a plurality of websites;
generating an item vector for each of the plurality of products based on the plurality of first keywords and the respective frequencies of the plurality of first keywords, and based on the respective frequencies of the plurality of second keywords and the plurality of second keywords a vector generator for generating an additional vector for each of the plurality of pieces of additional information;
a request receiving unit for receiving a product recommendation request including information on a first product and first additional information from the user terminal; and
A plurality of items different from the first product on the basis of an item vector for the first product among the item vectors for each of the plurality of products and an additional vector for the first additional information among the additional vectors for each of the plurality of additional information A product recommendation unit that recommends a product to the user terminal
Which will include, a product recommendation device.
상기 제품 추천부는 상기 제 1 제품에 대한 아이템 벡터와 상기 제 1 부가 정보에 대한 부가 벡터 각각에 기설정된 가중치를 반영하여 상기 다른 복수의 제품을 추천하는 것인, 제품 추천 장치.
The method of claim 1,
wherein the product recommendation unit recommends the other plurality of products by reflecting a preset weight to each of the item vector for the first product and the additional vector for the first additional information.
상기 제품 추천부는 상기 제 1 제품에 대한 아이템 벡터 및 상기 제 1 부가 정보에 대한 부가 벡터에 기초하여 신규 벡터를 생성하고, 상기 복수의 제품 각각에 대한 아이템 벡터 중 상기 신규 벡터와 유사한 아이템 벡터를 추출하고, 상기 유사한 아이템 벡터에 대응하는 제품을 상기 다른 복수의 제품 중 하나로 추천하는 것인, 제품 추천 장치.
The method of claim 1,
The product recommendation unit generates a new vector based on the item vector for the first product and the additional vector for the first additional information, and extracts an item vector similar to the new vector from the item vectors for each of the plurality of products and recommending a product corresponding to the similar item vector as one of the other plurality of products.
상기 제품 추천부는
상기 다른 복수의 제품을 상기 신규 벡터와의 유사도 순으로 정렬하여 상기 사용자 단말로 추천하는 것인, 제품 추천 장치.
4. The method of claim 3,
The product recommendation section
The product recommendation apparatus of claim 1, wherein the plurality of other products are arranged in the order of similarity with the new vector and recommended to the user terminal.
상기 제 1 부가 정보에 대한 부가 벡터가 미리 수집되어 있지 않은 경우, 상기 키워드 수집부는 기설정된 웹사이트로부터 상기 제 1 부가 정보에 대한 복수의 제 3 키워드를 실시간으로 수집하고,
상기 벡터 생성부는 상기 복수의 제 3 키워드 및 상기 복수의 제 3 키워드 각각의 빈도수에 기초하여 상기 제 1 부가 정보에 대한 부가 벡터를 실시간으로 생성하는 것인, 제품 추천 장치.
The method of claim 1,
If the additional vector for the first additional information has not been collected in advance, the keyword collection unit collects a plurality of third keywords for the first additional information from a preset website in real time,
wherein the vector generator generates an additional vector for the first additional information in real time based on the plurality of third keywords and the frequency of each of the plurality of third keywords.
상기 제품 추천부는 상기 제 1 부가 정보에 대한 부가 벡터보다 상기 제 1 제품에 대한 아이템 벡터에 높은 가중치를 반영하는 것인, 제품 추천 장치.
6. The method of claim 5,
wherein the product recommendation unit reflects a higher weight to the item vector for the first product than to the additional vector for the first additional information.
상기 유사도는 코사인 유사도인 것인, 제품 추천 장치.
5. The method of claim 4,
The similarity will be a cosine similarity, product recommendation device.
복수의 웹사이트로부터 복수의 제품 각각에 대한 복수의 제 1 키워드 및 복수의 부가 정보 각각에 대한 복수의 제 2 키워드를 수집하는 단계;
상기 복수의 제 1 키워드 및 복수의 제 1 키워드 각각의 빈도수에 기초하여 상기 복수의 제품 각각에 대한 아이템 벡터를 생성하고, 상기 복수의 제 2 키워드 및 복수의 제 2 키워드 각각의 빈도수에 기초하여 상기 복수의 부가 정보 각각에 대한 부가 벡터를 생성하는 단계;
사용자 단말로부터 제 1 제품에 대한 정보 및 제 1 부가 정보를 포함하는 제품 추천 요청을 수신하는 단계; 및
상기 복수의 제품 각각에 대한 아이템 벡터 중 상기 제 1 제품에 대한 아이템 벡터 및 상기 복수의 부가 정보 각각에 대한 부가 벡터 중 상기 제 1 부가 정보에 대한 부가 벡터에 기초하여 상기 제 1 제품과 다른 복수의 제품을 상기 사용자 단말로 추천하는 단계
를 포함하는 것인, 제품 추천 방법.
In the product recommendation method,
collecting a plurality of first keywords for each of a plurality of products and a plurality of second keywords for each of a plurality of additional information from a plurality of websites;
generating an item vector for each of the plurality of products based on the plurality of first keywords and the respective frequencies of the plurality of first keywords, and based on the respective frequencies of the plurality of second keywords and the plurality of second keywords generating an additional vector for each of the plurality of pieces of additional information;
receiving a product recommendation request including information on a first product and first additional information from a user terminal; and
A plurality of items different from the first product on the basis of an item vector for the first product among the item vectors for each of the plurality of products and an additional vector for the first additional information among the additional vectors for each of the plurality of additional information Recommending a product to the user terminal
A method for recommending a product, comprising:
상기 제 1 제품과 다른 복수의 제품을 상기 사용자 단말로 추천하는 단계는
상기 제 1 제품에 대한 아이템 벡터와 상기 제 1 부가 정보에 대한 부가 벡터 각각에 기설정된 가중치를 반영하여 상기 다른 복수의 제품을 추천하는 단계를 포함하는 것인, 제품 추천 방법.
9. The method of claim 8,
The step of recommending a plurality of products different from the first product to the user terminal
and recommending the other plurality of products by reflecting a preset weight to each of the item vector for the first product and the additional vector for the first additional information.
상기 제 1 부가 정보에 대한 부가 벡터가 미리 수집되어 있지 않은 경우, 기설정된 웹사이트로부터 상기 제 1 부가 정보에 대한 복수의 제 3 키워드를 실시간으로 수집하는 단계; 및
상기 복수의 제 3 키워드 및 상기 복수의 제 3 키워드 각각의 빈도수에 기초하여 상기 제 1 부가 정보에 대한 부가 벡터를 실시간으로 생성하는 단계
를 더 포함하는 것인, 제품 추천 방법.
9. The method of claim 8,
collecting, in real time, a plurality of third keywords for the first additional information from a preset website when the additional vector for the first additional information has not been previously collected; and
generating an additional vector for the first additional information in real time based on the plurality of third keywords and the frequency of each of the plurality of third keywords
Which will further include, a product recommendation method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200025377A KR20210110006A (en) | 2020-02-28 | 2020-02-28 | Server and method for recommending product |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200025377A KR20210110006A (en) | 2020-02-28 | 2020-02-28 | Server and method for recommending product |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210110006A true KR20210110006A (en) | 2021-09-07 |
Family
ID=77797110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200025377A KR20210110006A (en) | 2020-02-28 | 2020-02-28 | Server and method for recommending product |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20210110006A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230057120A (en) | 2021-10-21 | 2023-04-28 | 주식회사 에이미랩스 | Apparatus and method for providing customized nutritional supplements information |
KR20230061148A (en) | 2021-10-28 | 2023-05-08 | 주식회사 비포플레이 | Apparatus and method for recommending game based on player situation |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100132824A (en) | 2009-06-10 | 2010-12-20 | 유성보 | Roller assembly and apparatus for making a plastic sheet |
-
2020
- 2020-02-28 KR KR1020200025377A patent/KR20210110006A/en not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100132824A (en) | 2009-06-10 | 2010-12-20 | 유성보 | Roller assembly and apparatus for making a plastic sheet |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230057120A (en) | 2021-10-21 | 2023-04-28 | 주식회사 에이미랩스 | Apparatus and method for providing customized nutritional supplements information |
KR20230061148A (en) | 2021-10-28 | 2023-05-08 | 주식회사 비포플레이 | Apparatus and method for recommending game based on player situation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Bennett et al. | Inferring and using location metadata to personalize web search | |
CN101243386B (en) | For the method and system of endorsing local search results | |
CN101256596B (en) | Method and system for instation guidance | |
KR20160055930A (en) | Systems and methods for actively composing content for use in continuous social communication | |
US20100318427A1 (en) | Enhancing database management by search, personal search, advertising, and databases analysis efficiently using core-set implementations | |
WO2009144698A1 (en) | A system for finding website invitation cueing keywords and for attribute-based generation of invitation-cueing instructions | |
JP6137960B2 (en) | Content search apparatus, method, and program | |
Zhang et al. | Proposing a new friend recommendation method, FRUTAI, to enhance social media providers' performance | |
KR20210110006A (en) | Server and method for recommending product | |
KR20120033821A (en) | System and method for providing search result based on personal network | |
KR101610847B1 (en) | Server and method providing product recommending service using social network service | |
CN102693326A (en) | Advertisement searching method | |
KR20130082662A (en) | Apparatus and method for managing topic map user interest keyword, apparatus and method for advertising using topic map | |
Alotaibi et al. | Implicit social networks for social recommendation of scholarly papers | |
Fukazawa et al. | User-centered profile representation for recommendations across multiple content domains | |
KR101596370B1 (en) | Ad delivery method and system for based on users' queries | |
Prajna et al. | Implementation of a hybrid recommendation system for Movies | |
Oro et al. | A Methodology for Identifying Influencers and their Products Perception on Twitter. | |
Junior et al. | A recommendation system for shared-use mobility service | |
Deshmuk et al. | A community detection and recommendation system | |
CN111489213A (en) | Electronic commerce personalized recommendation system based on big data | |
CN110347912A (en) | One e-commerce website recommends the rule of search result | |
Kharrat et al. | Improving Collaborative Filtering Algorithms: Sentiment-based Approach in Social Network | |
KR102130035B1 (en) | Apparatus and Method for Evaluating User Value | |
CN106649675A (en) | Cross-service electronic resource recommendation method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
X601 | Decision of rejection after re-examination |