KR20200133439A - Product recommendation system and method reflecting user purchasing criterion - Google Patents

Product recommendation system and method reflecting user purchasing criterion Download PDF

Info

Publication number
KR20200133439A
KR20200133439A KR1020190058596A KR20190058596A KR20200133439A KR 20200133439 A KR20200133439 A KR 20200133439A KR 1020190058596 A KR1020190058596 A KR 1020190058596A KR 20190058596 A KR20190058596 A KR 20190058596A KR 20200133439 A KR20200133439 A KR 20200133439A
Authority
KR
South Korea
Prior art keywords
product
user
data
purchase
score
Prior art date
Application number
KR1020190058596A
Other languages
Korean (ko)
Other versions
KR102252188B1 (en
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 KR1020190058596A priority Critical patent/KR102252188B1/en
Publication of KR20200133439A publication Critical patent/KR20200133439A/en
Application granted granted Critical
Publication of KR102252188B1 publication Critical patent/KR102252188B1/en

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/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Development Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

According to one embodiment of the present invention, a system for recommending a product reflecting user purchase criteria includes: a data collection part crawling and collecting product review data and product information regarding a product for which a user has searched, based on purchase criteria about the product selected by the user during a product search from an online shopping mall system; a data preprocessing part conducting morpheme analysis and emotion analysis with respect to the product review data to calculate an emotion score about the purchase criteria by digitizing positive and negative assessments contained in the product review data; and a product recommending part providing products for extracting to be recommended for the user from a product list in accordance with the product information based on the emotional score to provide the products to the user as customized recommendation information. Therefore, the present invention is capable of solving an existing problem that products with a large number of reviews are placed in upper ranks regardless of purchase assessments.

Description

사용자 구매 기준을 반영한 상품 추천 시스템 및 방법{PRODUCT RECOMMENDATION SYSTEM AND METHOD REFLECTING USER PURCHASING CRITERION}Product recommendation system and method reflecting user purchase criteria {PRODUCT RECOMMENDATION SYSTEM AND METHOD REFLECTING USER PURCHASING CRITERION}

본 발명의 실시예들은 상품 추천 시스템 및 방법에 관한 것으로, 더욱 상세하게는 상품 구매 시 사용자가 선택한 구매 기준을 반영하여 사용자에게 추천할 상품을 제공할 수 있는 사용자 구매 기준을 반영한 상품 추천 시스템 및 방법에 관한 것이다.Embodiments of the present invention relate to a product recommendation system and method, and more particularly, a product recommendation system and method that reflects a user purchase criterion capable of providing a product to be recommended to a user by reflecting a purchase criterion selected by the user when purchasing a product. It is about.

최근 상품에 대한 사용자의 의견을 공유할 수 있도록 하는 사용자 리뷰가 여러 구매자들에 의해 상품 리뷰가 작성되고, SNS, 블로그 등 다양한 경로를 통해서 공유되어 활성화 되고 있다. 이러한 상품 리뷰에는 해당 상품에 관해 사용자가 갖고 있는 선호에 대한 보다 상세하고 신뢰할 수 있는 정보를 담고 있어 추천 시스템에 유용한 활용이 가능하여 실제로 많은 연구가 진행되고 있다.User reviews, which allow users to share user opinions on recent products, have been written by various buyers, and are being shared through various channels such as SNS and blogs. These product reviews contain more detailed and reliable information on the preferences of users about the product, and thus can be used usefully in a recommendation system, and many studies are actually being conducted.

또한, 개방적인 웹의 특성에 의해 소비자들이 온라인상에서 작성한 상품 리뷰 데이터의 양이 급격하게 증가하였고, 자연스럽게 상품 리뷰에 담긴 방대한 양의 의견 정보를 분석하는 여러 방법이 제안되었다.In addition, due to the nature of the open web, the amount of product review data created by consumers online has rapidly increased, and various methods have been proposed to naturally analyze the vast amount of opinion information contained in product reviews.

그러나, 기존의 상품 추천 시스템은 객관적이지 못한 정보를 바탕으로 하거나, 사용자의 선호도를 고려하지 않아 만족도가 낮은 편이다. 사용자가 상품을 구매할 때 중요하게 여기는 기준을 고려하여 반영한다면 추천 상품에 대한 만족도를 높일 수 있다.However, the existing product recommendation system is based on information that is not objective or does not consider the user's preference, so the satisfaction level is low. Satisfaction with recommended products can be increased if the criteria that users consider important when purchasing products are considered and reflected.

관련 선행기술로는 대한민국 등록특허공보 제10-1621938호(발명의 명칭: 사용자 등록 게시정보를 이용한 온라인 쇼핑정보 추천시스템, 등록일자: 2016.05.11)가 있다.As a related prior art, there is Korean Patent Publication No. 10-1621938 (name of invention: online shopping information recommendation system using user registration posting information, registration date: 2016.05.11).

본 발명의 일 실시예는 상품 구매 시 사용자가 선택한 구매 기준을 반영하여 사용자에게 추천할 상품을 제공할 수 있는 사용자 구매 기준을 반영한 상품 추천 시스템 및 방법을 제공한다.An embodiment of the present invention provides a product recommendation system and method that reflects a user purchase criterion capable of providing a product to be recommended to a user by reflecting a purchase criterion selected by a user when purchasing a product.

본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제(들)로 제한되지 않으며, 언급되지 않은 또 다른 과제(들)은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problem to be solved by the present invention is not limited to the problem(s) mentioned above, and another problem(s) not mentioned will be clearly understood by those skilled in the art from the following description.

본 발명의 일 실시예에 따른 사용자 구매 기준을 반영한 상품 추천 시스템은 상품의 검색 시 사용자에 의해 선택된 상기 상품에 대한 구매 기준을 기반으로, 상기 사용자에 의해 검색된 상품에 관한 상품 정보 및 상품 리뷰 데이터를 온라인 쇼핑몰 시스템으로부터 크롤링(crawling)하여 수집하는 데이터 수집부; 상기 상품 리뷰 데이터를 대상으로 형태소 분석 및 감정 분석을 수행하여, 상기 상품 리뷰 데이터에 내포되어 있는 긍정 평가와 부정 평가를 수치화하여 상기 구매 기준에 대한 상기 상품의 감성 점수를 산출하는 데이터 전처리부; 및 상기 감성 점수에 기초하여 상기 상품 정보에 따른 상품 리스트로부터 상기 사용자에게 추천할 상품을 추출하여 상기 사용자에게 맞춤형 추천 정보로서 제공하는 상품 추천부를 포함한다.The product recommendation system reflecting the user purchase criteria according to an embodiment of the present invention provides product information and product review data on the product searched by the user based on the purchase criteria for the product selected by the user when searching for a product. A data collection unit for collecting by crawling from an online shopping mall system; A data preprocessing unit that performs morpheme analysis and emotion analysis on the product review data, quantifies positive and negative evaluations contained in the product review data, and calculates an emotional score of the product with respect to the purchase criteria; And a product recommendation unit extracting a product to be recommended to the user from a product list according to the product information based on the emotion score and providing the product as customized recommendation information to the user.

상기 데이터 전처리부는 상기 구매 기준과 연관되는 키워드를 선정하고, 상기 크롤링한 상품 리뷰 데이터 중 상기 선정된 키워드가 포함된 상품 리뷰 데이터를 대상으로 상기 형태소 분석을 수행할 수 있다.The data preprocessor may select a keyword associated with the purchase criterion, and perform the morpheme analysis on product review data including the selected keyword among the crawled product review data.

상기 데이터 전처리부는 상기 형태소 분석을 통해, 특징과 구매 기준을 나타내는 명사, 및 그 특징에 대한 의견과 감정을 나타내는 동사와 형용사를 추출하고, 상기 추출된 명사 및 동사와 형용사에 기초하여 상기 감정 분석을 수행할 수 있다.The data preprocessing unit extracts a noun representing a characteristic and a purchase criterion, and a verb and an adjective representing an opinion and emotion about the characteristic through the morpheme analysis, and performs the emotion analysis based on the extracted noun, verb and adjective. Can be done.

상기 데이터 전처리부는 상기 감정 분석의 결과를 바탕으로, 상기 상품에 대한 전체 상품 리뷰 중 긍정적 평가의 개수 및 부정적 평가의 개수를 세어 긍정 평가 비율 및 부정 평가 비율을 산출하고, 상기 긍정 평가 비율 및 상기 부정 평가 비율에 기초하여 긍정 점수 및 부정 점수를 포함하는 상기 감성 점수를 산출하며, 상기 긍정 점수 및 상기 부정 점수를 합한 값을 상기 전체 상품 리뷰의 개수로 나누어 상기 감성 점수의 평균값을 산출하며, 상기 상품 추천부는 상기 감성 점수의 평균값이 높은 상위 N(상기 N은 자연수)개의 상품을 상기 사용자에게 추천할 상품으로서 추출하고, 상기 추출된 상품을 오름차순으로 정렬하여 상기 사용자에게 맞춤형 추천 정보로서 제공할 수 있다.The data preprocessor counts the number of positive evaluations and negative evaluations among all product reviews for the product based on the result of the sentiment analysis to calculate a positive evaluation ratio and a negative evaluation ratio, and the positive evaluation ratio and the negative evaluation The emotional score including a positive score and a negative score is calculated based on an evaluation ratio, and the sum of the positive score and the negative score is divided by the number of all product reviews to calculate the average value of the emotional score, and the product The recommendation unit may extract the top N products (where N is a natural number) having a high average value of the emotion score as products to be recommended to the user, sort the extracted products in ascending order, and provide customized recommendation information to the user. .

상기 데이터 전처리부는 상기 구매 기준이 상기 사용자에 의해 복수개 선택된 경우, 상기 복수개의 선택 시 미리 설정된 우선순위에 따라 각 구매 기준별로 가중치를 부여하고, 상기 각 구매 기준별로 부여된 가중치를 반영하여 상기 상품의 감성 점수를 산출할 수 있다.When a plurality of the purchase criteria are selected by the user, the data preprocessing unit assigns a weight for each purchase criteria according to a preset priority when the plurality of selections are selected, and reflects the weight given for each purchase criteria Emotional score can be calculated.

상기 데이터 전처리부는 상기 상품 리뷰 데이터를 크롤링 할 때, 추후의 형태소 분석에 유용하도록 마침표를 기준으로 한 문장씩 문장 단위로 분할하여 읽어와 텍스트 파일 형태로 저장할 수 있다.When crawling the product review data, the data preprocessor may divide and read the product review data in sentence units by one sentence based on a period to be useful for later morpheme analysis, and store it in the form of a text file.

상기 데이터 수집부는 상기 수집된 데이터를 데이터베이스(DB)에 저장하되, 상기 상품의 URL, 상품명 및 ID를 포함하는 상기 상품 정보는 상기 데이터베이스의 제1 테이블에 저장하고, 상기 상품 리뷰 데이터는 상기 데이터베이스의 제2 테이블에 저장하며, 상기 구매 기준 및 상기 구매 기준과 관련된 연관어가 포함된 상품 리뷰 데이터는 상기 데이터베이스의 제3 테이블에 저장할 수 있다.The data collection unit stores the collected data in a database (DB), wherein the product information including the URL, product name, and ID of the product is stored in a first table of the database, and the product review data is stored in the database. It is stored in a second table, and product review data including the purchase criteria and a related word related to the purchase criteria may be stored in a third table of the database.

상기 데이터 전처리부는 상기 상품 리뷰 데이터에 대해 노이즈 필터링(noise filtering)을 수행하여, 상기 상품 리뷰 데이터에 포함된 특수문자와 의미 없는 불용어, 및 상기 상품 리뷰 데이터의 문장 안에 긍정 혹은 부정을 판단할 수 있는 형용사가 포함되어 있지 않은 문장을 노이즈로 판단하여 상기 형태소 분석의 대상에서 제외시킬 수 있다.The data preprocessor can perform noise filtering on the product review data to determine affirmative or negative in a sentence of special characters and meaningless stopwords included in the product review data, and the product review data. A sentence that does not contain an adjective may be determined as noise and excluded from the subject of the morpheme analysis.

본 발명의 일 실시예에 따른 사용자 구매 기준을 반영한 상품 추천 방법은 상기 상품 추천 시스템의 데이터 수집부가 상품의 검색 시 사용자에 의해 선택된 상기 상품에 대한 구매 기준을 기반으로, 상기 사용자에 의해 검색된 상품에 관한 상품 정보 및 상품 리뷰 데이터를 온라인 쇼핑몰 시스템으로부터 크롤링(crawling)하여 수집하는 단계; 상기 상품 추천 시스템의 데이터 전처리부가 상기 상품 리뷰 데이터를 대상으로 형태소 분석 및 감정 분석을 수행하여, 상기 상품 리뷰 데이터에 내포되어 있는 긍정 평가와 부정 평가를 수치화하여 상기 구매 기준에 대한 상기 상품의 감성 점수를 산출하는 단계; 및 상기 상품 추천 시스템의 상품 추천부가 상기 감성 점수에 기초하여 상기 상품 정보에 따른 상품 리스트로부터 상기 사용자에게 추천할 상품을 추출하여 상기 사용자에게 맞춤형 추천 정보로서 제공하는 단계를 포함한다.In the product recommendation method reflecting the user purchase criteria according to an embodiment of the present invention, based on the purchase criteria for the product selected by the user when the data collection unit of the product recommendation system searches for a product, the product searched by the user is Collecting related product information and product review data by crawling from an online shopping mall system; The data preprocessing unit of the product recommendation system performs morpheme analysis and emotion analysis on the product review data to quantify the positive and negative evaluations contained in the product review data, and the emotional score of the product against the purchase criteria Calculating a; And extracting, by the product recommendation unit of the product recommendation system, a product to be recommended to the user from a product list according to the product information based on the emotion score, and providing the product as customized recommendation information to the user.

상기 형태소 분석을 수행하는 단계는 상기 구매 기준과 연관되는 키워드를 선정하는 단계; 및 상기 크롤링한 상품 리뷰 데이터 중 상기 선정된 키워드가 포함된 상품 리뷰 데이터를 대상으로 상기 형태소 분석을 수행하는 단계를 포함할 수 있다.The performing of the morpheme analysis may include selecting a keyword associated with the purchase criterion; And performing the morpheme analysis on product review data including the selected keyword among the crawled product review data.

상기 구매 기준이 상기 사용자에 의해 복수개 선택된 경우, 상기 상품의 감성 점수를 산출하는 단계는 상기 복수개의 선택 시 미리 설정된 우선순위에 따라 각 구매 기준별로 가중치를 부여하는 단계; 및 상기 각 구매 기준별로 부여된 가중치를 반영하여 상기 상품의 감성 점수를 산출하는 단계를 포함할 수 있다.When a plurality of purchase criteria are selected by the user, calculating the emotional score of the product may include assigning a weight for each purchase criterion according to a preset priority when the plurality of selections are made; And calculating an emotional score of the product by reflecting the weight assigned to each purchase criterion.

본 발명의 일 실시예에 따른 사용자 구매 기준을 반영한 상품 추천 방법은 상기 데이터 전처리부가 상기 상품 리뷰 데이터에 대해 노이즈 필터링(noise filtering)을 수행하여, 상기 상품 리뷰 데이터에 포함된 특수문자와 의미 없는 불용어, 및 상기 상품 리뷰 데이터의 문장 안에 긍정 혹은 부정을 판단할 수 있는 형용사가 포함되어 있지 않은 문장을 노이즈로 판단하여 상기 형태소 분석의 대상에서 제외시키는 단계를 더 포함할 수 있다.In the product recommendation method reflecting the user purchase criteria according to an embodiment of the present invention, the data preprocessor performs noise filtering on the product review data, so that special characters and meaningless stop words included in the product review data are performed. And determining a sentence in which an adjective for determining positive or negative in the sentence of the product review data is not included as noise and excluding it from the subject of the morpheme analysis.

기타 실시예들의 구체적인 사항들은 상세한 설명 및 첨부 도면들에 포함되어 있다.Details of other embodiments are included in the detailed description and accompanying drawings.

본 발명의 일 실시예에 따르면, 상품 구매 시 사용자가 선택한 구매 기준을 반영하여 사용자에게 추천할 상품을 제공할 수 있다.According to an embodiment of the present invention, when purchasing a product, a product to be recommended to a user may be provided by reflecting a purchase criterion selected by the user.

본 발명의 일 실시예에 따르면, 상품 리뷰 데이터를 형태소 분석 및 감정 분석하여 산출한 감성 점수의 평균값을 이용하여, 상품 리뷰가 많은 상품이 상위권에 랭크되지 않도록 하는 작업을 통해, 상품 리뷰의 개수와 상관없이 동일한 점수가 산출되도록 하며, 이를 통해 상품 리뷰의 개수가 많은 상품이 구매 평가와 상관없이 상위권에 랭크되는 기존의 문제점을 해결할 수 있다.According to an embodiment of the present invention, the number of product reviews and the number of product reviews by using the average value of the emotional score calculated by analyzing product review data morpheme and emotion analysis are used to prevent products with many product reviews from being ranked in the upper ranks. The same score is calculated regardless, and through this, it is possible to solve the existing problem in which products with a large number of product reviews are ranked at the top regardless of purchase evaluation.

본 발명의 일 실시예에 따르면, 구매 기준별 가중치를 달리함으로써 사용자의 구매 기준에 최적화된 상품을 상위권에 랭크되도록 할 수 있다.According to an embodiment of the present invention, a product optimized for a user's purchase criterion may be ranked at a higher rank by varying the weight for each purchase criterion.

도 1은 본 발명의 일 실시예에 따른 사용자 구매 기준을 반영한 상품 추천 시스템의 네트워크 구성을 도시한 도면이다.
도 2는 도 1의 상품 추천 시스템의 상세 구성을 설명하기 위해 도시한 블록도이다.
도 3은 도 2의 데이터베이스(DB)의 상세 구성을 설명하기 위해 도시한 블록도이다.
도 4 및 도 5는 본 발명의 일 실시예에 따른 사용자 구매 기준을 반영한 상품 추천 방법을 설명하기 위해 도시한 흐름도이다.
도 6은 Twitter 클래스에서 제공하는 형태소 태그와 그에 대한 설명을 나타낸 도면이다.
도 7은 '가격'을 1순위로, '배송'을 2순위로 선택한 경우로, 구매 기준과 연관된 키워드가 포함된 사용자 리뷰 데이터를 한 문장씩 형태소 분석을 한 예시이다.
도 8은 각 구매 기준에 대한 긍정/부정 점수를 합산한 결과 상위 10위를 정리하여 나타낸 도면이다.
도 9는 감성(긍정/부정) 점수를 바탕으로 순위를 매긴 상위 15개 상품의 구매 기준 비중을 나타낸 도면이다.
도 10은 상위 15개 상품의 구매 기준 비중을 보여주는 도면이다.
1 is a diagram illustrating a network configuration of a product recommendation system reflecting user purchase criteria according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a detailed configuration of the product recommendation system of FIG. 1.
3 is a block diagram illustrating a detailed configuration of the database DB of FIG. 2.
4 and 5 are flowcharts illustrating a product recommendation method reflecting a user purchase criterion according to an embodiment of the present invention.
6 is a diagram showing a morpheme tag provided by the Twitter class and a description thereof.
7 is a case in which “price” is selected as the first priority and “delivery” is selected as the second priority, and is an example of morphological analysis of user review data including keywords related to purchase criteria, sentence by sentence.
8 is a diagram showing the top 10 places as a result of summing positive/negative scores for each purchase criterion.
9 is a diagram showing the weight of the purchase criteria of the top 15 products ranked based on emotion (positive/negative) scores.
10 is a diagram showing the proportion of purchase criteria of the top 15 products.

본 발명의 이점 및/또는 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다.Advantages and/or features of the present invention, and a method of achieving them will become apparent with reference to the embodiments described below in detail together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but will be implemented in a variety of different forms, only these embodiments make the disclosure of the present invention complete, and common knowledge in the technical field to which the present invention pertains. It is provided to completely inform the scope of the invention to those who have, and the invention is only defined by the scope of the claims. The same reference numerals refer to the same elements throughout the specification.

또한, 이하 실시되는 본 발명의 바람직한 실시예는 본 발명을 이루는 기술적 구성요소를 효율적으로 설명하기 위해 각각의 시스템 기능구성에 기 구비되어 있거나, 또는 본 발명이 속하는 기술분야에서 통상적으로 구비되는 시스템 기능 구성은 가능한 생략하고, 본 발명을 위해 추가적으로 구비되어야 하는 기능 구성을 위주로 설명한다. 만약 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 하기에 도시하지 않고 생략된 기능 구성 중에서 종래에 기 사용되고 있는 구성요소의 기능을 용이하게 이해할 수 있을 것이며, 또한 상기와 같이 생략된 구성 요소와 본 발명을 위해 추가된 구성 요소 사이의 관계도 명백하게 이해할 수 있을 것이다.In addition, a preferred embodiment of the present invention to be implemented below is already provided in each system functional configuration in order to efficiently describe the technical components constituting the present invention, or system functions commonly provided in the technical field to which the present invention belongs. The configuration will be omitted as much as possible, and a functional configuration that should be additionally provided for the present invention will be mainly described. If a person of ordinary skill in the art to which the present invention belongs will be able to easily understand the functions of components previously used among functional configurations that are not shown below and are omitted, the configuration omitted as described above. The relationship between the elements and the components added for the present invention will also be clearly understood.

또한, 이하의 설명에 있어서, 신호 또는 정보의 "전송", "통신", "송신", "수신" 기타 이와 유사한 의미의 용어는 일 구성요소에서 다른 구성요소로 신호 또는 정보가 직접 전달되는 것뿐만이 아니라 다른 구성요소를 거쳐 전달되는 것도 포함한다. 특히 신호 또는 정보를 일 구성요소로 "전송" 또는 "송신"한다는 것은 그 신호 또는 정보의 최종 목적지를 지시하는 것이고 직접적인 목적지를 의미하는 것이 아니다. 이는 신호 또는 정보의 "수신"에 있어서도 동일하다.In addition, in the following description, "transmission", "communication", "transmission", "receive" of a signal or information, and other terms with similar meanings refer to direct transmission of signals or information from one component to another. Not only that, but it includes things that are passed through other components. In particular, "transmitting" or "transmitting" a signal or information to a component indicates the final destination of the signal or information and does not imply a direct destination. The same is true for "reception" of signals or information.

이하에서는 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 사용자 구매 기준을 반영한 상품 추천 시스템의 네트워크 구성을 도시한 도면이고, 도 2는 도 1의 상품 추천 시스템의 상세 구성을 설명하기 위해 도시한 블록도이며, 도 3은 도 2의 데이터베이스(DB)의 상세 구성을 설명하기 위해 도시한 블록도이다.1 is a diagram illustrating a network configuration of a product recommendation system reflecting a user purchase criterion according to an embodiment of the present invention, and FIG. 2 is a block diagram illustrating a detailed configuration of the product recommendation system of FIG. 1; 3 is a block diagram illustrating a detailed configuration of the database DB of FIG. 2.

도 1 내지 도 3을 참조하면, 본 발명의 일 실시예에 따른 사용자 구매 기준을 반영한 상품 추천 시스템(100)은 데이터 수집부(210), 데이터 전처리부(220), 상품 추천부(230), 데이터베이스(DB)(240), 및 제어부(250)를 포함할 수 있다.1 to 3, the product recommendation system 100 reflecting the user purchase criteria according to an embodiment of the present invention includes a data collection unit 210, a data preprocessor 220, a product recommendation unit 230, A database (DB) 240 and a control unit 250 may be included.

상기 데이터 수집부(210)는 사용자에 의해 검색된 상품에 관한 상품 정보 및 상품 리뷰 데이터를 온라인 쇼핑몰 시스템(102)으로부터 크롤링(crawling)하여 수집할 수 있다. 이때, 상기 데이터 수집부(210)는 상품의 검색 시 사용자에 의해 선택된 상품에 대한 구매 기준을 기반으로, 상기 상품 정보 및 상품 리뷰 데이터를 수집할 수 있다.The data collection unit 210 may collect product information and product review data about a product searched by a user by crawling from the online shopping mall system 102. In this case, the data collection unit 210 may collect the product information and product review data based on a purchase criterion for a product selected by a user when searching for a product.

구체적으로, 사용자는 사용자 단말기(101)를 통해 온라인 쇼핑몰 시스템(102)에 접속하여 구매하고자 하는 상품을 검색할 수 있다. 이때, 상기 사용자는 상기 검색된 상품에 대한 구매 기준을 하나 선택할 수 있으며, 이와 달리 여러 개의 구매 기준을 선택할 수도 있다. 이처럼 상기 사용자에 의해 상기 상품에 대한 구매 기준이 선택되면, 상기 데이터 수집부(210)는 상기 상품에 대한 구매 기준을 활용하여 상기 온라인 쇼핑몰 시스템(102)과의 연동을 통해 상기 검색된 상품에 관한 상품 정보와 상품 리뷰 데이터를 상기 온라인 쇼핑몰 시스템(102)으로부터 크롤링하여 수집할 수 있다.Specifically, the user may access the online shopping mall system 102 through the user terminal 101 and search for a product to be purchased. In this case, the user may select one purchase criterion for the searched product, or alternatively, may select multiple purchase criteria. In this way, when a purchase criterion for the product is selected by the user, the data collection unit 210 uses the purchase criterion for the product to link with the online shopping mall system 102 to obtain a product related to the searched product. Information and product review data may be collected by crawling from the online shopping mall system 102.

여기서, 상기 구매 기준은 상기 사용자가 상품을 선택할 때 우선시 하는 기준으로서, 상기 상품의 내구성, 디자인, 가성비 등을 포함할 수 있다. 예를 들어, 상기 사용자가 상기 상품의 검색 시 가성비를 구매 기준으로 선택한 경우, 상기 데이터 수집부(210)는 상기 상품과 관련된 리뷰 중에서 가격과 연관된 문장을 포함하는 리뷰를 선별하고, 상기 선별된 리뷰를 상기 상품 리뷰 데이터로서 수집할 수 있다.Here, the purchase criterion is a criterion prioritized when the user selects a product, and may include durability, design, cost performance, etc. of the product. For example, when the user selects the cost performance as a purchase criterion when searching for the product, the data collection unit 210 selects a review including a sentence related to a price among reviews related to the product, and the selected Reviews can be collected as the product review data.

또한, 상기 구매 기준은 인플루언서(influencer)를 더 포함할 수 있다. 여기서, 인플루언서(influencer)는 포털사이트에서 영향력이 큰 블로그를 운영하는 ‘파워블로거’와 수십만 명의 팔로워 수를 가진 소셜네트워크서비스(SNS) 사용자, 1인 방송 진행자들을 통칭한 용어다. 인플루언서는 콘텐츠를 생산하는 크리에이터형 인플루언서와 패션뷰티 분야의 모델형 인플루언서로 구분할 수 있다. 한편, 영향력을 행사하는 사람을 활용한 마케팅 방법이 인플루언서 마케팅인데, 본 발명의 일 실시예에 따른 사용자 구매 기준을 반영한 상품 추천 시스템(100)은 인플루언서 마케팅에도 적용될 수 있다.In addition, the purchasing criteria may further include an influencer. Here, influencer is a collective term for “power bloggers” who operate blogs with great influence on portal sites, social network service (SNS) users with hundreds of thousands of followers, and single-person broadcasters. Influencers can be divided into creator-type influencers that produce content and model-type influencers in the fashion and beauty field. Meanwhile, a marketing method using a person exercising influence is influencer marketing, and the product recommendation system 100 reflecting user purchase criteria according to an embodiment of the present invention can also be applied to influencer marketing.

예컨대, 상기 사용자가 상기 상품의 검색 시 인플루언서를 구매 기준으로 선택한 경우, 상기 데이터 수집부(210)는 상기 사용자가 검색한 상품 중 상기 인플루언서와 관련된 상품, 다시 말해 연예인이나 셀럽, 유튜브 스타 등과 같은 인플루언서가 사용하거나 추천한 상품을 선별하고, 상기 선별된 상품과 관련된 리뷰를 상기 상품 리뷰 데이터로서 수집할 수 있다. 이때, 상기 데이터 수집부(210)는 데이터 마이닝(data mining)을 통해 상기 사용자가 검색한 상품 중 상기 인플루언서와 관련된 상품을 선별할 수 있다.For example, when the user selects an influencer as a purchase criterion when searching for the product, the data collection unit 210 may select a product related to the influencer among the products searched by the user, that is, a celebrity, a celebrity, or YouTube. Products used or recommended by influencers such as stars may be selected, and reviews related to the selected products may be collected as product review data. In this case, the data collection unit 210 may select a product related to the influencer from among the products searched by the user through data mining.

이와 같이 상기 상품의 검색 시 상기 사용자가 상기 상품에 대한 구매 기준을 직접 선택할 수도 있지만, 다른 실시예로서 상기 상품의 검색 시 상기 상품에 대한 구매 기준의 선택 과정 없이 자동으로 추천된 구매 기준이 적용될 수도 있다. 예를 들면, 상기 데이터 수집부(210)는 일정 기간 동안(예: 1년)의 구매 기준을 분석하여 각 구매 기준별 사용자 선택 횟수를 산출하고, 상기 산출된 각 구매 기준별 사용자 선택 횟수에 근거하여 각 구매 기준별로 우선 순위를 부여함으로써 최우선 순위의 구매 기준을 상기 사용자에게 추천하여 상기 사용자의 선택에 도움을 주거나 최우선 순위의 구매 기준을 사용자가 선택한 구매 기준으로서 바로 적용할 수도 있다.In this way, when searching for the product, the user may directly select a purchase criterion for the product, but in another embodiment, when searching for the product, the recommended purchase criterion may be applied automatically without selecting the purchase criterion for the product. have. For example, the data collection unit 210 calculates the number of user selections for each purchase criterion by analyzing the purchase criteria for a certain period (eg, one year), and based on the calculated number of user selections for each purchase criterion. Thus, by assigning a priority to each purchase criterion, the purchase criterion of the highest priority may be recommended to the user to aid in the user's selection, or the purchase criterion of the highest priority may be directly applied as a purchase criterion selected by the user.

다른 예를 들면, 상기 데이터 수집부(210)는 일정 기간 동안(예: 1년)의 구매 기준을 분석하여 각 구매 기준별 사용자 선택 횟수를 산출하고, 상기 산출된 각 구매 기준별 사용자 선택 횟수에 근거하여 각 구매 기준별로 가중치를 부여함으로써 가중치가 가장 높은 구매 기준을 상기 사용자에게 추천하되, 가중치가 가장 높은 구매 기준(A)의 가중치와 다른 구매 기준(B)의 가중치가 설정치 이하인 경우에는 구매 기준(A)와 구매 기준(B)를 모두 상기 사용자에게 추천함으로써 상기 사용자에게 다른 사용자들이 선호하는 구매 기준을 직접 선택하도록 구매 기준 선호 목록(A, B)을 제공할 수도 있다.For another example, the data collection unit 210 calculates the number of user selections for each purchase standard by analyzing the purchase criteria for a certain period (eg, one year), and calculates the number of user selections for each purchase criteria. Based on the weighting of each purchase criterion, the purchase criterion with the highest weight is recommended to the user, but if the weight of the purchase criterion (A) with the highest weight and the weight of the purchase criterion (B) other than the set value is less than the set value, the purchase criterion By recommending both (A) and purchase criteria (B) to the user, the purchase criteria preference list (A, B) may be provided to the user to directly select the purchase criteria preferred by other users.

또 다른 예를 들면, 상기 데이터 수집부(210)는 성별, 연령별 조건으로 일정 기간 동안(예: 1년)의 구매 기준을 분석하여 성별, 연령별 조건에 따른 각 구매 기준별 사용자 선택 횟수를 산출하고, 상기 산출된 각 구매 기준별 사용자 선택 횟수에 근거하여 각 구매 기준별로 가중치를 부여할 수도 있다.For another example, the data collection unit 210 calculates the number of user selections for each purchase criterion according to gender and age-specific conditions by analyzing the purchase criteria for a certain period (eg, one year) based on the conditions for each gender and age, and , Based on the calculated number of user selections for each purchase criterion, a weight may be assigned to each purchase criterion.

상기 데이터 수집부(210)는 상기 수집된 데이터(상품 정보, 상품 리뷰 데이터)를 데이터베이스(DB)(240)에 저장할 수 있다. 이를 위해, 상기 데이터베이스(240)는 도 3에 도시된 바와 같이 제1 테이블(310), 제2 데이터(320) 및 제3 데이터(330)를 포함할 수 있다.The data collection unit 210 may store the collected data (product information, product review data) in a database (DB) 240. To this end, the database 240 may include a first table 310, a second data 320, and a third data 330 as shown in FIG. 3.

다시 말해, 상기 데이터 수집부(210)는 상기 상품의 URL, 상품명 및 ID를 포함하는 상품 정보는 상기 데이터베이스(240)의 제1 테이블(310)에 저장하고, 상기 상품 리뷰 데이터는 상기 데이터베이스(240)의 제2 테이블(320)에 저장할 수 있다. 그리고, 상기 데이터 수집부(210)는 상기 구매 기준 및 상기 구매 기준과 관련된 연관어가 포함된 상품 리뷰 데이터는 상기 데이터베이스(240)의 제3 테이블(330)에 저장할 수 있다.In other words, the data collection unit 210 stores product information including the URL, product name, and ID of the product in the first table 310 of the database 240, and the product review data is the database 240 ) Can be stored in the second table 320. Further, the data collection unit 210 may store product review data including the purchase criteria and a related word related to the purchase criteria in the third table 330 of the database 240.

상기 데이터 전처리부(220)는 상기 상품 리뷰 데이터를 크롤링 할 때, 추후의 형태소 분석에 유용하도록 마침표를 기준으로 한 문장씩 문장 단위로 분할하여 읽어와 텍스트 파일 형태로 저장할 수 있다.When crawling the product review data, the data preprocessing unit 220 may divide and read the product review data in sentence units by one sentence based on a period to be useful for later morpheme analysis, and store it in a text file format.

상기 데이터 전처리부(220)는 상기 상품 리뷰 데이터에 대해 노이즈 필터링(noise filtering)을 수행하여, 상기 상품 리뷰 데이터에 포함된 특수문자와 의미 없는 불용어를 노이즈로 판단하여 상기 형태소 분석의 대상에서 제외시킬 수 있다. 또한, 상기 데이터 전처리부(220)는 상기 상품 리뷰 데이터의 문장 안에 긍정 혹은 부정을 판단할 수 있는 형용사가 포함되어 있지 않은 문장을 노이즈로 판단하여 상기 형태소 분석의 대상에서 제외시킬 수 있다.The data preprocessor 220 performs noise filtering on the product review data, determines special characters and meaningless stop words included in the product review data as noise, and excludes them from the subject of the morpheme analysis. I can. In addition, the data preprocessing unit 220 may determine a sentence in which the adjective for determining positive or negative is not included in the sentence of the product review data as noise and exclude it from the target of the morpheme analysis.

이를 위해, 상기 데이터 전처리부(220)는 상기 상품 리뷰 데이터에 포함된 특수문자와 의미 없는 불용어를 제거하여 노이즈 필터링을 수행할 수 있다. 또한, 상기 데이터 전처리부(220)는 상기 상품 리뷰 데이터의 문장 안에 긍정 혹은 부정을 판단할 수 있는 형용사가 포함되어 있지 않은 문장을 제거하여 노이즈 필터링을 수행할 수 있다.To this end, the data preprocessor 220 may perform noise filtering by removing special characters and meaningless stop words included in the product review data. In addition, the data preprocessor 220 may perform noise filtering by removing a sentence in which an adjective for determining positive or negative is not included in the sentence of the product review data.

상기 데이터 전처리부(220)는 상기 상품 리뷰 데이터를 대상으로 형태소 분석 및 감정 분석을 수행하여, 상기 상품 리뷰 데이터에 내포되어 있는 긍정 평가와 부정 평가를 수치화하여 상기 구매 기준에 대한 상기 상품의 감성 점수를 산출할 수 있다.The data preprocessing unit 220 performs morpheme analysis and emotion analysis on the product review data to quantify the positive and negative evaluations contained in the product review data, and the emotional score of the product with respect to the purchase criterion Can be calculated.

구체적으로, 상기 데이터 전처리부(220)는 상기 구매 기준과 연관되는 키워드를 선정하고, 상기 크롤링한 상품 리뷰 데이터 중 상기 선정된 키워드가 포함된 상품 리뷰 데이터를 대상으로 형태소 분석을 수행할 수 있다. 상기 데이터 전처리부(220)는 상기 형태소 분석을 통해, 특징과 구매 기준을 나타내는 명사, 및 그 특징에 대한 의견과 감정을 나타내는 동사와 형용사를 추출하고, 상기 추출된 명사 및 동사와 형용사에 기초하여 상기 상품 리뷰 데이터에 대한 감정 분석을 수행할 수 있다.Specifically, the data preprocessor 220 may select a keyword related to the purchase criterion and perform morpheme analysis on product review data including the selected keyword among the crawled product review data. The data preprocessing unit 220 extracts a noun representing a characteristic and a purchase criterion, and a verb and an adjective representing an opinion and feeling about the characteristic through the morpheme analysis, and based on the extracted noun, verb and adjective. Emotion analysis may be performed on the product review data.

상기 데이터 전처리부(220)는 상기 감정 분석의 결과를 바탕으로, 상기 상품에 대한 전체 상품 리뷰 중 긍정적 평가의 개수 및 부정적 평가의 개수를 세어 긍정 평가 비율 및 부정 평가 비율을 산출할 수 있다. 상기 데이터 전처리부(220)는 상기 긍정 평가 비율 및 상기 부정 평가 비율에 기초하여 상기 긍정 평가에 해당하는 긍정 점수 및 상기 부정 평가에 해당하는 부정 점수를 포함하는 감성 점수를 산출할 수 있다. 상기 데이터 전처리부(220)는 상기 긍정 점수 및 상기 부정 점수를 합한 값을 상기 전체 상품 리뷰의 개수로 나누어 상기 감성 점수의 평균값을 산출할 수 있다.The data preprocessor 220 may calculate a positive evaluation ratio and a negative evaluation ratio by counting the number of positive evaluations and negative evaluations among all product reviews for the product based on the result of the emotion analysis. The data preprocessor 220 may calculate an emotion score including a positive score corresponding to the positive evaluation and a negative score corresponding to the negative evaluation based on the positive evaluation ratio and the negative evaluation ratio. The data preprocessor 220 may calculate an average value of the emotion score by dividing the sum of the positive score and the negative score by the total number of product reviews.

구체적으로, 상기 데이터 전처리부(220)는 각 상품별로 나누어 상기 상품 리뷰 데이터를 형태소 분석하고, 상기 형태소 분석한 결과를 바탕으로 상기 각 상품에 대한 전체 상품 리뷰 중 긍정적 평가의 개수 및 부정적 평가의 개수를 카운트(count)할 수 있다. 상기 데이터 전처리부(220)는 상기 각 상품에 대한 전체 상품 리뷰의 개수 대비 긍정적 평가의 개수를 토대로 긍정 평가 비율을 산출하고, 상기 각 상품에 대한 전체 상품 리뷰의 개수 대비 부정적 평가의 개수를 토대로 부정 평가 비율을 산출할 수 있다. 상기 데이터 전처리부(220)는 상기 산출된 긍정 평가 비율에 기초하여 상기 긍정 평가에 해당하는 긍정 점수를 산출하고, 상기 산출된 부정 평가 비율에 기초하여 상기 부정 평가에 해당하는 부정 점수를 산출함으로써 상기 감성 점수를 도출해낼 수 있다. 상기 데이터 전처리부(220)는 상기 감성 점수, 즉 상기 긍정 점수 및 부정 점수를 합한 값을 상기 전체 상품 리뷰의 개수로 나누는 나눗셈 연산을 수행하여 상기 상품에 대한 감성 점수의 평균값을 산출할 수 있다.Specifically, the data preprocessing unit 220 morphemely analyzes the product review data by dividing each product, and based on the morpheme analysis result, the number of positive and negative evaluations among all product reviews for each product. Can be counted. The data preprocessing unit 220 calculates a positive evaluation ratio based on the number of positive evaluations relative to the number of total product reviews for each product, and negative based on the number of negative evaluations relative to the number of all product reviews for each product. You can calculate the evaluation rate. The data preprocessing unit 220 calculates a positive score corresponding to the positive evaluation based on the calculated positive evaluation ratio, and calculates a negative score corresponding to the negative evaluation based on the calculated negative evaluation ratio. Emotional scores can be derived. The data preprocessor 220 may calculate the average value of the emotional score for the product by performing a division operation in which the emotion score, that is, a sum of the positive score and the negative score, is divided by the number of all product reviews.

이처럼 본 발명의 일 실시예에서는 상기 상품에 대한 감성 점수의 평균값을 이용함으로써 상품 리뷰가 많은 상품이 상위권에 랭크되지 않도록 하는 작업을 통해 상품 리뷰의 개수와 상관없이 동일한 점수가 산출되도록 하며, 이는 상품 리뷰의 개수가 많은 상품이 구매 평가와 상관없이 상위권에 랭크되는 기존의 문제점을 해결할 수 있다.As described above, in an embodiment of the present invention, the same score is calculated regardless of the number of product reviews by using the average value of the sentiment score for the product so that products with many product reviews are not ranked in the top ranking. It is possible to solve the existing problem that products with a large number of reviews are ranked at the top regardless of purchase evaluation.

한편, 상기 사용자는 상기 상품의 검색 시 복수개의 구매 기준을 선택할 수도 있다. 이때, 상기 사용자는 상기 복수개의 구매 기준 각각에 우선순위를 미리 설정할 수도 있다. 이와 같이 복수개의 구매 기준이 선택된 경우, 상기 데이터 전처리부(220)는 미리 설정된 우선순위에 따라 각 구매 기준별로 가중치를 부여하고, 상기 각 구매 기준별로 부여된 가중치를 반영하여 상기 상품의 감성 점수를 산출할 수도 있다.Meanwhile, the user may select a plurality of purchase criteria when searching for the product. In this case, the user may preset priorities for each of the plurality of purchase criteria. When a plurality of purchase criteria are selected as described above, the data preprocessor 220 assigns weights for each purchase criteria according to a preset priority, and reflects the weights assigned for each purchase criteria to calculate the emotional score of the product. It can also be calculated.

상기 상품 추천부(230)는 상기 데이터 전처리부(220)에 의해 산출된 감성 점수에 기초하여, 상기 상품 정보에 따른 상품 리스트로부터 상기 사용자에게 추천할 상품을 추출하고, 상기 추출된 추천 상품을 상기 사용자에게 맞춤형 추천 정보로서 제공할 수 있다.The product recommendation unit 230 extracts a product to be recommended to the user from a product list according to the product information, based on the emotion score calculated by the data preprocessor 220, and selects the extracted recommended product. It can be provided as customized recommendation information to the user.

이때, 상기 상품 추천부(230)는 상기 감성 점수의 평균값이 높은 상위 N(상기 N은 자연수)개, 예를 들면 10개의 상품을 상기 사용자에게 추천할 상품으로서 추출하고, 상기 추출된 상품을 오름차순으로 정렬하여 상기 사용자에게 맞춤형 추천 정보로서 제공할 수 있다.At this time, the product recommendation unit 230 extracts the highest N (the N is a natural number), for example, 10 products to be recommended to the user with a high average value of the emotion score, and the extracted products in ascending order. It can be sorted and provided as customized recommendation information to the user.

상기 데이터베이스(240)는 상기 데이터 수집부(210)에 의해 수집된 데이터를 저장할 수 있다. 특히, 상기 데이터베이스(240)는 앞서 설명한 바와 같이 제1 내지 제3 테이블(310, 320, 330)에 상기 수집된 데이터를 분산하여 저장할 수 있다.The database 240 may store data collected by the data collection unit 210. In particular, the database 240 may distribute and store the collected data in the first to third tables 310, 320, and 330 as described above.

구체적으로, 상기 제1 테이블(310)에는 상기 상품의 URL, 상품명 및 ID를 포함하는 상품 정보가 저장되고, 상기 제2 테이블(320)에는 상기 상품 리뷰 데이터가 저장될 수 있다. 그리고, 상기 제3 테이블(330)에는 상기 사용자가 상품의 검색 시 선택한 구매 기준 및 상기 구매 기준과 관련된 연관어가 포함된 상품 리뷰 데이터가 저장될 수 있다.Specifically, product information including a URL, a product name, and an ID of the product may be stored in the first table 310, and the product review data may be stored in the second table 320. In addition, the third table 330 may store product review data including a purchase criterion selected by the user when searching for a product and a related word related to the purchase criterion.

상기 제어부(250)는 본 발명의 일 실시예에 따른 사용자 구매 기준을 반영한 상품 추천 시스템(100), 즉 상기 데이터 수집부(210), 상기 데이터 전처리부(220), 상기 상품 추천부(230), 상기 데이터베이스(240) 등의 동작을 전반적으로 제어할 수 있다.The control unit 250 is a product recommendation system 100 reflecting the user purchase criteria according to an embodiment of the present invention, that is, the data collection unit 210, the data preprocessing unit 220, and the product recommendation unit 230 , It is possible to control overall operations of the database 240 and the like.

이상에서 설명된 장치는 하드웨어 구성 요소, 소프트웨어 구성 요소, 및/또는 하드웨어 구성 요소 및 소프트웨어 구성 요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성 요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the devices and components described in the embodiments include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA), It can be implemented using one or more general purpose computers or special purpose computers, such as a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications executed on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of software. For the convenience of understanding, although it is sometimes described that one processing device is used, one of ordinary skill in the art, the processing device is a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it may include. For example, the processing device may include a plurality of processors or one processor and one controller. In addition, other processing configurations are possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of these, configuring the processing unit to behave as desired or processed 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. , Or may be permanently or temporarily embodyed in a transmitted signal wave. 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.

도 4 및 도 5는 본 발명의 일 실시예에 따른 사용자 구매 기준을 반영한 상품 추천 방법을 설명하기 위해 도시한 흐름도이다.4 and 5 are flowcharts illustrating a product recommendation method reflecting a user purchase criterion according to an embodiment of the present invention.

여기서 설명하는 상품 추천 방법은 본 발명의 하나의 실시예에 불과하며, 그 이외에 필요에 따라 다양한 단계들이 부가될 수 있고, 하기의 단계들도 순서를 변경하여 실시될 수 있으므로, 본 발명이 하기에 설명하는 각 단계 및 그 순서에 한정되는 것은 아니다.The product recommendation method described here is only one embodiment of the present invention, and various steps may be added as needed, and the following steps may also be implemented by changing the order, so that the present invention will be described below. It is not limited to each step and the order to be described.

먼저 도 1, 도 2 및 도 4를 참조하면, 단계(410)에서 사용자는 사용자 단말기(101)를 통해 온라인 쇼핑몰 시스템(102)에 접속하여 구매하고자 하는 상품을 검색할 수 있다.First, referring to FIGS. 1, 2 and 4, in step 410, the user may access the online shopping mall system 102 through the user terminal 101 and search for a product to be purchased.

다음으로, 단계(420)에서 상기 사용자는 상기 상품의 검색 시 상기 상품에 대한 구매 기준을 선택할 수 있다. 여기서, 상기 구매 기준은 상기 사용자가 상품을 선택할 때 우선시 하는 기준으로서, 상기 상품의 내구성, 디자인, 가성비 등을 포함할 수 있다. 또한, 상기 사용자는 상기 상품에 대대 복수개의 구매 기준을 선택할 수도 있으며, 이때에는 각 구매 기준에 대해 우선순위를 미리 설정할 수 있다.Next, in step 420, the user may select a purchase criterion for the product when searching for the product. Here, the purchase criterion is a criterion prioritized when the user selects a product, and may include durability, design, cost performance, etc. of the product. In addition, the user may select a large number of purchasing criteria for the product, and in this case, priority may be set in advance for each purchasing criteria.

다음으로, 단계(430)에서 상기 상품 추천 시스템(100)의 데이터 수집부(210)는 상기 사용자에 의해 검색된 상품에 관한 상품 정보 및 상품 리뷰 데이터를 수집할 수 있다.Next, in step 430, the data collection unit 210 of the product recommendation system 100 may collect product information and product review data about the product searched by the user.

다음으로, 단계(440)에서 상기 상품 추천 시스템(100)의 데이터 수집부(210)는 상기 수집된 데이터(상품 정보, 상품 리뷰 데이터 등)를 데이터베이스(240)에 저장할 수 있다.Next, in step 440, the data collection unit 210 of the product recommendation system 100 may store the collected data (product information, product review data, etc.) in the database 240.

다음으로, 단계(450)에서 상기 상품 추천 시스템(100)의 데이터 전처리부(220)는 상기 상품 리뷰 데이터를 대상으로 형태소 분석 및 감정 분석을 수행하여, 상기 선택된 구매 기준에 대한 상품의 감성 점수를 산출할 수 있다. 이에 대해 도 5를 참조하여 구체적으로 설명하면 다음과 같다.Next, in step 450, the data preprocessing unit 220 of the product recommendation system 100 performs morpheme analysis and emotion analysis on the product review data, and calculates the emotional score of the product for the selected purchase criterion. Can be calculated. This will be described in detail with reference to FIG. 5 as follows.

즉, 단계(510)에서 상기 데이터 전처리부(220)는 형태소 분석을 통해, 특징과 구매 기준을 나타내는 명사, 및 그 특징에 대한 의견과 감정을 나타내는 동사와 형용사를 추출할 수 있다. 이후, 단계(520)에서 상기 데이터 전처리부(220)는 상기 추출된 명사 및 동사와 형용사에 기초하여 상기 상품 리뷰 데이터에 대한 감정 분석을 수행할 수 있다. 이후, 단계(530)에서 상기 데이터 전처리부(220)는 상기 감정 분석의 결과를 바탕으로, 상기 상품에 대한 전체 상품 리뷰 중 긍정적 평가의 개수 및 부정적 평가의 개수를 세어 긍정 평가 비율 및 부정 평가 비율을 산출할 수 있다. 이후, 단계(540)에서 상기 데이터 전처리부(220)는 상기 긍정 평가 비율 및 상기 부정 평가 비율에 기초하여 상기 긍정 평가에 해당하는 긍정 점수 및 상기 부정 평가에 해당하는 부정 점수를 포함하는 감성 점수를 산출할 수 있다. 이후, 단계(550)에서 상기 데이터 전처리부(220)는 상기 긍정 점수 및 상기 부정 점수를 합한 값을 상기 전체 상품 리뷰의 개수로 나누어 상기 감성 점수의 평균값을 산출할 수 있다.That is, in step 510, the data preprocessor 220 may extract nouns representing features and purchasing criteria, and verbs and adjectives representing opinions and feelings about the features through morpheme analysis. Thereafter, in step 520, the data preprocessor 220 may perform an emotion analysis on the product review data based on the extracted nouns, verbs and adjectives. Thereafter, in step 530, the data preprocessing unit 220 counts the number of positive evaluations and negative evaluations among all product reviews for the product, based on the result of the emotion analysis, and the positive evaluation ratio and the negative evaluation ratio. Can be calculated. Thereafter, in step 540, the data preprocessor 220 generates an emotion score including a positive score corresponding to the positive evaluation and a negative score corresponding to the negative evaluation based on the positive evaluation ratio and the negative evaluation ratio. Can be calculated. Thereafter, in step 550, the data preprocessor 220 may calculate an average value of the emotion score by dividing the sum of the positive score and the negative score by the number of all product reviews.

다시 도 4를 참조하면, 단계(460)에서 상기 상품 추천 시스템(100)의 상품 추천부(230)는 상기 데이터 전처리부(220)에 의해 산출된 감성 점수에 기초하여 상품 리스트로부터 상기 사용자에게 추천할 상품을 추출할 수 있다. 이때, 상기 상품 추천부(230)는 상기 평가 점수의 평균값이 높은 상위 N(상기 N은 자연수)개의 상품을 상기 사용자에게 추천할 상품으로서 추출할 수 있다.Referring back to FIG. 4, in step 460, the product recommendation unit 230 of the product recommendation system 100 recommends the product to the user from the product list based on the emotional score calculated by the data preprocessing unit 220. You can extract products to do. In this case, the product recommendation unit 230 may extract the top N products (where N is a natural number) having a high average value of the evaluation score as products to be recommended to the user.

다음으로, 단계(470)에서 상기 상품 추천 시스템(100)의 상품 추천부(230)는 상기 추출된 상품을 오름차순으로 정렬하여 상기 사용자 단말기(101)를 통해 상기 사용자에게 맞춤형 추천 정보로서 제공할 수 있다.Next, in step 470, the product recommendation unit 230 of the product recommendation system 100 sorts the extracted products in ascending order and provides them as customized recommendation information to the user through the user terminal 101. have.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CDROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(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 in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CDROMs and DVDs, and magnetic-optical media such as floptical disks. And hardware devices specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of the program instructions include not only machine language codes such as those produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.

이하에서는 본 발명의 일 실시예에 따른 사용자 구매 기준을 반영한 상품 추천 시스템을 구현하는 일례를 상세히 설명하기로 한다.Hereinafter, an example of implementing a product recommendation system reflecting user purchase criteria according to an embodiment of the present invention will be described in detail.

시스템 구현System implementation

본 실험에서 사용한 컴퓨터는 Windows 운영체제 기반의 CPU(Intel i5-4690), RAM-8G를 사용하였고, 구현은 Pycharm을 사용하였다. 시스템 구현을 위해 사용자가 가격과 배송을 구매 기준으로 선택한 경우를 예시로 들었다. 즉, 사용자가 다른 디자인이나 브랜드 인지도 등의 구매 기준보다 가격이 저렴하고 배송이 빠른 상품을 구매하길 원하는 경우를 예로 들었다.The computer used in this experiment was a Windows operating system based CPU (Intel i5-4690), RAM-8G, and Pycharm was used for implementation. For the system implementation, a case where the user selected price and delivery as the purchase criteria was cited as an example. That is, a case where a user wants to purchase a product with a lower price and faster delivery than other purchasing standards such as design or brand recognition is cited as an example.

1. 데이터 수집(Crawling)1. Data Crawling

실험을 위하여 Python을 이용하여 국내 쇼핑몰의 카테고리 중 계절가전의 '전기히터'를 수집 대상으로 선정하고, 전기 히터 상품의 정보와 상품에 대해 사용자가 작성한 리뷰를 수집한다. 상품 리뷰의 양질이 이번 실험을 좌우하기 때문에 비교적 솔직한 사용 후기가 많이 작성되어 있는 가전용품으로 정하였고, 국내에서 약 7~8조 이상의 거래액을 기록한 인터넷 사이트로부터 수집했다. 거래액이 많은 만큼 소비자들이 많이 이용하고, 많이 이용하는 만큼 많은 리뷰 데이터가 있을 것이라고 생각했다. '계절가전' 카테고리 항목에서 가장 많은 리뷰가 존재하는 '전기히터' 상품 항목의 상품명, 상품 URL과 상품 리뷰를 BeautifulSoup 웹크롤러를 이용하여 수집한다. 분석 데이터가 될 수 있도록 리뷰의 개수가 20개 초과인 상품만을 선별하여 추출한다.For the experiment, Python is used to select'electric heaters' of seasonal home appliances among the categories of domestic shopping malls, and collect information on electric heater products and reviews written by users about the products. Because the quality of product reviews influences this experiment, it was decided as a home appliance with a lot of relatively honest user reviews, and it was collected from Internet sites that recorded more than 7-8 trillion transactions in Korea. As the transaction amount is large, consumers use it a lot, and as much as they use it, there will be as much review data. The product name, product URL, and product review of the product item'Electric Heater', which has the most reviews in the'Seasonal Appliances' category, are collected using BeautifulSoup web crawler. Only products with more than 20 reviews are selected and extracted so that they can be analyzed data.

크롤링 하고자 하는 온라인 쇼핑몰 시스템에서 제공하는 상품 리뷰는 '더보기' 버튼을 누르는 행위와 같이, 일정 수의 리뷰가 작성되면 페이지를 넘겨 볼 수 있는 웹 브라우저 상의 액션이 이루어져야 모든 리뷰의 목록을 볼 수가 있다. 따라서 이러한 액션들을 크롤링 할 때 자동으로 수행할 수 있는 웹 페이지 테스트 툴인 Selenium을 이용한다. 이 툴은 초기에 브라우저를 조정하여 웹을 테스트하는 용도로 쓰이며, 웹 페이지 내에 태그명이나 HTML 태그 내에 있는 텍스트를 자바스크립트를 포함하여 크롤링 하는 기능들이 있어 손쉽게 데이터 수집이 가능하여 크롤링을 할 때 널리 쓰이는 툴이기도 하다.For product reviews provided by the online shopping mall system to be crawled, the list of all reviews can be viewed only when a certain number of reviews are written, such as clicking the'More' button, and an action on the web browser to turn the page. Therefore, Selenium, a web page testing tool that can be automatically executed when crawling these actions, is used. This tool is initially used to test the web by adjusting the browser, and it has functions to crawl the tag name in the web page or the text in the HTML tag, including JavaScript, so it is possible to collect data easily and is widely used when crawling. It is also a used tool.

Selenium 패키지는 Python 환경에서 상품의 URL을 통해 웹 브라우저를 실행시키고 HTML 태그 이름을 이용하여 상품의 이름, 상품의 분류, 리뷰 등을 수집한다. 상품 정보와 상품 리뷰를 크롤링할 때 상품 리뷰의 수가 20개 초과인 상품만을 DB에 저장한다.The Selenium package runs a web browser through the URL of the product in a Python environment, and collects the product name, product classification, and reviews using the HTML tag name. When crawling product information and product reviews, only products with more than 20 product reviews are stored in the DB.

2. 전처리(Pre-processing)2. Pre-processing

위와 같이 상품 정보와 상품 리뷰를 크롤링 할 때 정성적 정보인 상품 리뷰를 정량적인 정보로 수치화해야 하므로 적정한 수준의 상품 리뷰가 존재해야 한다. 일정 수준 이하의 상품 리뷰를 가지고 가중치를 계산한다면, 해당 상품을 평가할 때 적절하지 못하기 때문이다.As above, when crawling product information and product reviews, product reviews, which are qualitative information, must be quantified as quantitative information, so there must be an appropriate level of product reviews. This is because if the weight is calculated with product reviews below a certain level, it is not appropriate when evaluating the product.

따라서 본 실시예에서는 상품 리뷰의 수가 20개 초과인 상품만을 DB에 저장한다. 상품 특징의 점수를 계산하기 위해서는 각 특징이 속한 문장의 점수를 구하는 것이 선행되어야 한다. 그러기 위해서는 문장을 분리하는 작업이 필요하다. 각 리뷰마다 적게는 1개, 많게는 10개의 문장으로 이루어지는 것이 보편적이다. 따라서 상품 리뷰를 크롤링할 때는 마침표를 기준으로 한 문장씩을 읽어와 텍스트 파일로 저장하여 이후 형태소 분석에 용이하도록 했다. 또한 특수 문자나 'ㅋㅋㅋㅋ'와 같은 의미 없는 불용어(stopword)를 제거하는 전처리 작업을 한다.Therefore, in this embodiment, only products having more than 20 product reviews are stored in the DB. In order to calculate the score of the product feature, it is necessary to obtain the score of the sentence to which each feature belongs. To do that, it is necessary to separate the sentences. It is common for each review to consist of as few as 1 and as many as 10 sentences. Therefore, when crawling product reviews, each sentence was read based on the period and saved as a text file to facilitate later morpheme analysis. It also performs preprocessing to remove special characters or meaningless stopwords such as'ㅋㅋㅋㅋ'.

본 실시예에서는 구매 기준을 표현하는 명사(noun)뿐만 아니라 '가격' 등과 같은 구매 기준의 키워드를 설명하는 형용사(adjective)를 함께 고려한다. 예를 들면, 사용자가 가격이 저렴한 상품을 원하기 때문에 '가격'이라는 키워드와 함께 '저렴-' 혹은 '싸-'와 같은 형용사를 키워드에 추가하여 사용자 리뷰 데이터로부터 추출한다. 명사와 함께 형용사를 고려함으로써 더 정확하게 사용자가 원하는 구매 기준에 부합하는 상품을 추출할 수 있고, 또한 분석에 필요한 정보만을 고려함으로써 불필요한 데이터를 필터링하는 기능도 할 수 있다.In the present embodiment, not only a noun expressing a purchasing criterion but also an adjective describing a purchasing criterion keyword such as'price' is considered. For example, since a user wants a product with a low price, adjectives such as'cheap-' or'cheap-' along with the keyword'price' are added to the keyword and extracted from the user review data. By considering adjectives together with nouns, it is possible to more accurately extract products that meet the purchasing criteria desired by the user, and to filter unnecessary data by considering only information necessary for analysis.

3. 형태소 분석3. Morphological analysis

Python 프로그램의 한글을 처리하는 패키지인 'KoNLP'를 설치하여 Twitter 클래스를 기반으로 하여 수행한다. Twitter 클래스는 트위터에서 만든 스칼라로 작성된 오픈 소스 한국어 토크나이저로, 보다 간결하고 이해하기 쉽게 결과를 출력 한다. 도 6은 Twitter 클래스에서 제공하는 형태소 태그와 그에 대한 설명을 나타낸 도면이다. Twitter 클래스는 도 6에 포함시키지 않은 트위터 해쉬태그(Hashtag), 트위터 아이디(ScreenName), 이메일 주소(Email) 등을 포함한 약 20개의 태그를 가지고 있다.Install'KoNLP', a package that handles Hangul in Python programs, and execute it based on the Twitter class. The Twitter class is an open source Korean tokenizer written in Scala created by Twitter, and it outputs results more concise and easy to understand. 6 is a diagram showing a morpheme tag provided by the Twitter class and a description thereof. The Twitter class has about 20 tags including a Twitter Hashtag, a Twitter ID (ScreenName), and an email address (Email) not included in FIG. 6.

이전 단계에서 저장한 텍스트 파일을 읽어와 리스트로 저장하여 한 문장씩 형태소 분석을 수행한다. 이 과정에서 리뷰의 문장 중 긍정 혹은 부정을 판단할 수 있는 형용사가 포함되어 있지 않은 문장들은 노이즈로 판단하여 분석 대상에서 제거한다.The text file saved in the previous step is read and saved as a list to perform morpheme analysis one sentence by one. In this process, sentences that do not contain adjectives that can judge positive or negative among the sentences of the review are judged as noise and removed from the analysis target.

도 7은 '가격'을 1순위로, '배송'을 2순위로 선택한 경우로, 구매 기준과 연관된 키워드가 포함된 사용자 리뷰 데이터를 한 문장씩 형태소 분석을 한 예시이다. 7 is a case where'price' is selected as the first priority and'delivery' is selected as the second priority, and is an example of morphological analysis of user review data including keywords related to purchase criteria one sentence by one.

4. 감성(긍정/부정) 점수 부여4. Emotional (positive/negative) score assigned

상품 추천을 위해서는 앞서 추출한 상품 리뷰 중 사용자가 선택한 구매 기준이 긍정적으로 평가한 상품 리뷰가 많은지, 부정적으로 평가한 상품 리뷰가 많은지 판별한다. 각각 1순위와 2순위의 구매 기준이 포함된 문장에서 그 구매 기준에 대한 평가가 있는 '형용사' 혹은 '동사'를 가지고 감성(긍정/부정) 점수를 매긴다. 예를 들어, "배송이 정말 빠르네요."라는 리뷰 문장이 있다면, '배송'이라는 구매 기준에 대해 '빠르네요.'라는 긍정적인 표현을 했으므로 +1점을 매긴다. 이렇게 긍정적인 평가이면 +1점, 부정적인 평가이면 -1점으로 하여 합산하는 방식으로 한다.For product recommendation, among the product reviews extracted previously, it is determined whether there are many product reviews evaluated positively or as many negative product reviews as the purchase criteria selected by the user. Sentiment (positive/negative) scores are scored with'adjective' or'verb' that evaluates the purchasing criteria in sentences containing the purchasing criteria of the 1st and 2nd, respectively. For example, if there is a review sentence that says "Delivery is really fast", it gives a +1 point because it expresses a positive expression of the purchase criterion of'delivery' as'fast.' In this way, positive evaluation is +1 point and negative evaluation is -1 point.

전체 리뷰 중 '가격'이라는 키워드가 포함된 리뷰를 PR={pr1, pr2, ... , prn}이라고 하고, 그 리뷰를 긍정/부정 점수를 매긴 것을 PS(PriceScore)라고 했을 때, 구매 기준 '가격'에 대한 최종 리뷰 점수(Keyword Review)는 KR1=PS/RP으로 구할 수 있다. 마찬가지로 두 번째 키워드인 '배송'의 경우에는 키워드가 포함된 리뷰(Delivery Review)는 DR={dr1, dr2, ..., drn}이고, 그 리뷰의 긍정/부정 점수를 매긴 것을 DS(DeliveryScore)이면, '배송' 키워드의 최종 리뷰 점수는 KR2=DS/DR으로 계산할 수 있다.When a review that includes the keyword'price' among all reviews is called PR={pr 1 , pr 2 , ..., pr n }, and the review with a positive/negative score is PS (PriceScore), The final keyword review for the purchase standard'price' can be obtained with KR 1 =PS/RP. Likewise, in the case of the second keyword,'Shipping', the review containing the keyword is DR={dr 1 , dr 2 , ..., dr n }, and the positive/negative score of the review is DS If (DeliveryScore), the final review score of the keyword'delivery' can be calculated as KR 2 =DS/DR.

그러나 중립적인 의견은 판별하는 데 어려움이 있어 노이즈로 판단하여 제외시켰고, 전체적인 상품 리뷰가 긍정적이지만 정렬 기준 키워드인 '가격' 혹은 '배송'에 대한 좋은 평가가 없는 상품 리뷰도 제외 목록에 포함시켰다.However, since neutral opinions were difficult to determine, they were judged as noise and excluded. Product reviews that had positive overall product reviews but did not have good evaluation of the sorting keyword'price' or'shipping' were also included in the exclusion list.

긍정과 부정 점수를 합산한 점수에 각 구매 기준의 가중치를 곱하여 합산하고 이를 백분율로 나타내면 각 구매 기준에 대한 비중을 구할 수 있다. 이 비율은 높을수록 상위권에 랭크될 확률이 높아진다는 것을 알 수 있다. 같은 방식으로 구매 기준 2순위도 산출하여 두 개의 점수를 합산한 점수가 최종 점수가 되고, 이 점수를 가지고 순위를 매기게 된다. 이를 식으로 나타내면 아래 수학식 1과 같다.The weight of each purchase criterion can be obtained by multiplying the score of the positive and negative scores by the weight of each purchase criterion and expressing it as a percentage. It can be seen that the higher this ratio, the higher the probability of being ranked in the top. In the same way, the second order of purchase criteria is calculated, and the sum of the two scores becomes the final score, and this score is used to rank. This can be expressed in Equation 1 below.

[수학식 1] [Equation 1]

Figure pat00001
Figure pat00001

그 결과로, 전체 상품 리스트 중 가장 좋은 평가를 받은 상품을 사용자에게 추천한다. 도 8은 각 구매 기준에 대한 긍정/부정 점수를 합산한 결과 상위 10위를 정리하여 나타낸 도면이다.As a result, the product that received the best evaluation among the entire product list is recommended to the user. 8 is a diagram showing the top 10 places as a result of summing positive/negative scores for each purchase criterion.

본 실시예에서 제안하는 상품 추천 시스템은 Beautifulsoup 웹 크롤러를 사용하여 데이터를 수집하고 Python 환경에서 상품 리뷰 데이터의 형태소 분석과 감성 분석을 통해 사용자에게 적합한 추천 정보를 제공한다. 또한, 사용자 맞춤형 추천 정보를 도출하기 위해 상품 구매 의사 결정에 영향을 미치는 구매 기준을 직접 선택하고 이를 알고리즘에 반영함으로써 기존의 추천 시스템과 차별화하였다.The product recommendation system proposed in this embodiment collects data using the Beautifulsoup web crawler, and provides recommendation information suitable to users through morpheme analysis and sentiment analysis of product review data in a Python environment. In addition, in order to derive user-tailored recommendation information, purchasing criteria that influence product purchase decisions are directly selected and reflected in the algorithm to differentiate from the existing recommendation system.

앞서 산출한 감성 점수를 전체 상품 리뷰의 개수로 나누어 비중을 구할 수 있다. 이것은 그 상품에서 해당 구매 기준이 차지하는 비중을 알 수 있다. 그리고 가중치가 상품 목록의 생성에 큰 영향을 끼치는지도 알 수 있다.The weight can be calculated by dividing the sentiment score calculated earlier by the number of total product reviews. This allows us to see the share of the purchase criteria in the product. And it can be seen that the weight has a great influence on the creation of the product list.

도 9는 감성(긍정/부정) 점수를 바탕으로 순위를 매긴 상위 15개 상품의 구매 기준 비중을 나타낸 도면이다. 11위 상품과 같이 상위 10위의 상품보다 더 높은 비중을 가지고 있는 데도 불구하고 그보다 낮은 순위에 랭크된 상품이 있다. 이는 1순위와 2순위의 가중치에 따라 순위가 결정된다는 것을 보여준다.9 is a diagram showing the weight of the purchase criteria of the top 15 products ranked based on emotion (positive/negative) scores. There are products that rank lower than that, even though they have a higher proportion than those in the top 10, such as the 11th product. This shows that the ranking is determined according to the weights of the first and second priority.

도 10은 상위 15개 상품의 구매 기준 비중을 보여주는 도면이다. 도 9에서 높은 비율에도 불구하고 11위에 랭크된 상품과 낮은 비율임에도 불구하고 상위 5위에 랭크된 상품의 경우를 비교해 보면 2순위였던 '배송'의 감성 점수 비율보다 1순위인 '가격'의 감성 점수 비율이 월등히 높은 것을 알 수 있다. 2순위의 가중치를 1순위의 가중치의 절반으로 반영했기 때문에 전체 리뷰의 비율이 더 크지만 상위권에 랭크되지 않은 결과가 도출된 것이다.10 is a diagram showing the proportion of purchase criteria of the top 15 products. In Figure 9, when comparing the case of the products ranked 11th despite the high ratio and the products ranked top 5 despite the low ratio, the emotional score of'price', which is the first priority than the emotional score of'delivery', which was the second priority It can be seen that the ratio is much higher. Since the weight of the 2nd priority was reflected as half of the weight of the 1st, the ratio of the total review was larger, but the result was not ranked in the top.

이와 같이 사용자가 선택한 구매 기준의 우선순위에 따라 추천 순위가 바뀌는 것을 확인할 수 있다. 나아가 이 결과는 사용자의 선호도와 구매 성향을 반영하여 각각의 개인 사용자별 맞춤형 상품 추천을 할 수 있다는 의미가 될 수 있다. 따라서 구매 기준별 가중치를 달리함으로써 사용자의 구매 기준에 최적화된 상품을 상위권에 랭크되도록 할 수 있다.In this way, it can be seen that the recommendation order changes according to the priority of the purchase criteria selected by the user. Furthermore, this result may mean that it is possible to recommend customized products for each individual user by reflecting the user's preference and purchasing tendency. Therefore, by varying the weight for each purchase criterion, a product optimized for the user's purchase criterion can be ranked at the top.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by the limited embodiments and drawings, various modifications and variations are possible from the above description by those of ordinary skill in the art. For example, the described techniques are performed in a different order from the described method, and/or components such as a system, structure, device, circuit, etc. described are combined or combined in a form different from the described method, or other components Alternatively, even if substituted or substituted by an equivalent, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims also fall within the scope of the following claims.

100: 상품 추천 시스템
101: 사용자 단말기
102: 온라인 쇼핑몰 시스템
210: 데이터 수집부
220: 상품 평가부
230: 상품 추천부
240: DB
250: 제어부
310: 제1 테이블
320: 제2 테이블
330: 제3 테이블
100: product recommendation system
101: user terminal
102: online shopping mall system
210: data collection unit
220: product evaluation unit
230: product recommendation unit
240: DB
250: control unit
310: first table
320: second table
330: third table

Claims (12)

상품의 검색 시 사용자에 의해 선택된 상기 상품에 대한 구매 기준을 기반으로, 상기 사용자에 의해 검색된 상품에 관한 상품 정보 및 상품 리뷰 데이터를 온라인 쇼핑몰 시스템으로부터 크롤링(crawling)하여 수집하는 데이터 수집부;
상기 상품 리뷰 데이터를 대상으로 형태소 분석 및 감정 분석을 수행하여, 상기 상품 리뷰 데이터에 내포되어 있는 긍정 평가와 부정 평가를 수치화하여 상기 구매 기준에 대한 상기 상품의 감성 점수를 산출하는 데이터 전처리부; 및
상기 감성 점수에 기초하여 상기 상품 정보에 따른 상품 리스트로부터 상기 사용자에게 추천할 상품을 추출하여 상기 사용자에게 맞춤형 추천 정보로서 제공하는 상품 추천부
를 포함하는 것을 특징으로 하는 사용자 구매 기준을 반영한 상품 추천 시스템.
A data collection unit that crawls and collects product information and product review data about the product searched by the user from the online shopping mall system based on a purchase criterion for the product selected by the user when searching for a product;
A data preprocessing unit that performs morpheme analysis and emotion analysis on the product review data, quantifies positive and negative evaluations contained in the product review data, and calculates an emotional score of the product with respect to the purchase criteria; And
A product recommendation unit extracting a product to be recommended to the user from a product list according to the product information based on the sentiment score and providing customized recommendation information to the user
Product recommendation system reflecting the user purchase criteria, characterized in that it comprises a.
제1항에 있어서,
상기 데이터 전처리부는
상기 구매 기준과 연관되는 키워드를 선정하고, 상기 크롤링한 상품 리뷰 데이터 중 상기 선정된 키워드가 포함된 상품 리뷰 데이터를 대상으로 상기 형태소 분석을 수행하는 것을 특징으로 하는 사용자 구매 기준을 반영한 상품 추천 시스템.
The method of claim 1,
The data preprocessor
A product recommendation system reflecting user purchase criteria, characterized in that a keyword related to the purchase criteria is selected, and the morpheme analysis is performed on product review data including the selected keyword among the crawled product review data.
제1항에 있어서,
상기 데이터 전처리부는
상기 형태소 분석을 통해, 특징과 구매 기준을 나타내는 명사, 및 그 특징에 대한 의견과 감정을 나타내는 동사와 형용사를 추출하고, 상기 추출된 명사 및 동사와 형용사에 기초하여 상기 감정 분석을 수행하는 것을 특징으로 하는 사용자 구매 기준을 반영한 상품 추천 시스템.
The method of claim 1,
The data preprocessor
Through the morpheme analysis, a noun representing a characteristic and a purchase criterion, and a verb and an adjective representing an opinion and emotion on the characteristic are extracted, and the emotion analysis is performed based on the extracted noun, verb and adjective. A product recommendation system that reflects the user purchase criteria.
제1항에 있어서,
상기 데이터 전처리부는
상기 감정 분석의 결과를 바탕으로, 상기 상품에 대한 전체 상품 리뷰 중 긍정적 평가의 개수 및 부정적 평가의 개수를 세어 긍정 평가 비율 및 부정 평가 비율을 산출하고, 상기 긍정 평가 비율 및 상기 부정 평가 비율에 기초하여 긍정 점수 및 부정 점수를 포함하는 상기 감성 점수를 산출하며, 상기 긍정 점수 및 상기 부정 점수를 합한 값을 상기 전체 상품 리뷰의 개수로 나누어 상기 감성 점수의 평균값을 산출하며,
상기 상품 추천부는
상기 감성 점수의 평균값이 높은 상위 N(상기 N은 자연수)개의 상품을 상기 사용자에게 추천할 상품으로서 추출하고, 상기 추출된 상품을 오름차순으로 정렬하여 상기 사용자에게 맞춤형 추천 정보로서 제공하는 것을 특징으로 하는 사용자 구매 기준을 반영한 상품 추천 시스템.
The method of claim 1,
The data preprocessor
Based on the result of the sentiment analysis, the number of positive evaluations and negative evaluations among all product reviews for the product is counted to calculate a positive evaluation ratio and a negative evaluation ratio, and based on the positive evaluation ratio and the negative evaluation ratio The emotion score including the positive score and the negative score is calculated, and the sum of the positive score and the negative score is divided by the number of all product reviews to calculate an average value of the emotion score,
The product recommendation section
Extracting the top N products (where N is a natural number) having a high average value of the emotional score as products to be recommended to the user, and providing the extracted products as customized recommendation information to the user by sorting the extracted products in ascending order. Product recommendation system reflecting user purchase criteria.
제1항에 있어서,
상기 데이터 전처리부는
상기 구매 기준이 상기 사용자에 의해 복수개 선택된 경우, 상기 복수개의 선택 시 미리 설정된 우선순위에 따라 각 구매 기준별로 가중치를 부여하고, 상기 각 구매 기준별로 부여된 가중치를 반영하여 상기 상품의 감성 점수를 산출하는 것을 특징으로 하는 사용자 구매 기준을 반영한 상품 추천 시스템.
The method of claim 1,
The data preprocessor
When a plurality of purchase criteria are selected by the user, a weight is assigned to each purchase criteria according to a preset priority when the plurality of selections are selected, and the emotional score of the product is calculated by reflecting the weight assigned to each purchase criteria. Product recommendation system reflecting the user purchase criteria, characterized in that.
제1항에 있어서,
상기 데이터 전처리부는
상기 상품 리뷰 데이터를 크롤링 할 때, 추후의 형태소 분석에 유용하도록 마침표를 기준으로 한 문장씩 문장 단위로 분할하여 읽어와 텍스트 파일 형태로 저장하는 것을 특징으로 하는 사용자 구매 기준을 반영한 상품 추천 시스템.
The method of claim 1,
The data preprocessor
When crawling the product review data, the product recommendation system reflecting the user purchase criteria, characterized in that, for use in later morphological analysis, divided into sentences by sentence units based on periods, read and stored in a text file format.
제1항에 있어서,
상기 데이터 수집부는
상기 수집된 데이터를 데이터베이스(DB)에 저장하되, 상기 상품의 URL, 상품명 및 ID를 포함하는 상기 상품 정보는 상기 데이터베이스의 제1 테이블에 저장하고, 상기 상품 리뷰 데이터는 상기 데이터베이스의 제2 테이블에 저장하며, 상기 구매 기준 및 상기 구매 기준과 관련된 연관어가 포함된 상품 리뷰 데이터는 상기 데이터베이스의 제3 테이블에 저장하는 것을 특징으로 하는 사용자 구매 기준을 반영한 상품 추천 시스템.
The method of claim 1,
The data collection unit
The collected data is stored in a database (DB), the product information including the product URL, product name, and ID is stored in a first table of the database, and the product review data is stored in a second table of the database. And storing product review data including the purchase criteria and a related word related to the purchase criteria in a third table of the database.
제1항에 있어서,
상기 데이터 전처리부는
상기 상품 리뷰 데이터에 대해 노이즈 필터링(noise filtering)을 수행하여, 상기 상품 리뷰 데이터에 포함된 특수문자와 의미 없는 불용어, 및 상기 상품 리뷰 데이터의 문장 안에 긍정 혹은 부정을 판단할 수 있는 형용사가 포함되어 있지 않은 문장을 노이즈로 판단하여 상기 형태소 분석의 대상에서 제외시키는 것을 특징으로 하는 사용자 구매 기준을 반영한 상품 추천 시스템.
The method of claim 1,
The data preprocessor
By performing noise filtering on the product review data, special characters and meaningless stop words included in the product review data, and adjectives that can determine positive or negative in the sentence of the product review data are included. A product recommendation system reflecting user purchase criteria, characterized in that the non-existent sentence is determined as noise and is excluded from the morpheme analysis.
사용자 구매 기준을 반영한 상품 추천 시스템을 이용한 상품 추천 방법에 있어서,
상기 상품 추천 시스템의 데이터 수집부가 상품의 검색 시 사용자에 의해 선택된 상기 상품에 대한 구매 기준을 기반으로, 상기 사용자에 의해 검색된 상품에 관한 상품 정보 및 상품 리뷰 데이터를 온라인 쇼핑몰 시스템으로부터 크롤링(crawling)하여 수집하는 단계;
상기 상품 추천 시스템의 데이터 전처리부가 상기 상품 리뷰 데이터를 대상으로 형태소 분석 및 감정 분석을 수행하여, 상기 상품 리뷰 데이터에 내포되어 있는 긍정 평가와 부정 평가를 수치화하여 상기 구매 기준에 대한 상기 상품의 감성 점수를 산출하는 단계; 및
상기 상품 추천 시스템의 상품 추천부가 상기 감성 점수에 기초하여 상기 상품 정보에 따른 상품 리스트로부터 상기 사용자에게 추천할 상품을 추출하여 상기 사용자에게 맞춤형 추천 정보로서 제공하는 단계
를 포함하는 것을 특징으로 하는 사용자 구매 기준을 반영한 상품 추천 방법.
In the product recommendation method using a product recommendation system reflecting user purchase criteria,
The data collection unit of the product recommendation system crawls product information and product review data about the product searched by the user from the online shopping mall system, based on the purchase criteria for the product selected by the user when searching for the product. Collecting;
The data preprocessing unit of the product recommendation system performs morpheme analysis and emotion analysis on the product review data to quantify the positive and negative evaluations contained in the product review data, and the emotional score of the product against the purchase criteria Calculating a; And
Extracting, by a product recommendation unit of the product recommendation system, a product to be recommended to the user from a product list according to the product information based on the emotion score, and providing the product as customized recommendation information to the user
Product recommendation method reflecting the user purchase criteria, characterized in that it comprises a.
제9항에 있어서,
상기 형태소 분석을 수행하는 단계는
상기 구매 기준과 연관되는 키워드를 선정하는 단계; 및
상기 크롤링한 상품 리뷰 데이터 중 상기 선정된 키워드가 포함된 상품 리뷰 데이터를 대상으로 상기 형태소 분석을 수행하는 단계
를 포함하는 것을 특징으로 하는 사용자 구매 기준을 반영한 상품 추천 방법.
The method of claim 9,
The step of performing the morpheme analysis
Selecting a keyword associated with the purchase criterion; And
Performing the morpheme analysis on product review data including the selected keyword among the crawled product review data
Product recommendation method reflecting the user purchase criteria, characterized in that it comprises a.
제9항에 있어서,
상기 구매 기준이 상기 사용자에 의해 복수개 선택된 경우,
상기 상품의 감성 점수를 산출하는 단계는
상기 복수개의 선택 시 미리 설정된 우선순위에 따라 각 구매 기준별로 가중치를 부여하는 단계; 및
상기 각 구매 기준별로 부여된 가중치를 반영하여 상기 상품의 감성 점수를 산출하는 단계
를 포함하는 것을 특징으로 하는 사용자 구매 기준을 반영한 상품 추천 방법.
The method of claim 9,
When a plurality of the purchase criteria are selected by the user,
The step of calculating the emotional score of the product
Assigning a weight for each purchase criterion according to a preset priority when the plurality of selections are made; And
Calculating the emotional score of the product by reflecting the weight assigned to each purchase criterion
Product recommendation method reflecting the user purchase criteria, characterized in that it comprises a.
제9항에 있어서,
상기 데이터 전처리부가 상기 상품 리뷰 데이터에 대해 노이즈 필터링(noise filtering)을 수행하여, 상기 상품 리뷰 데이터에 포함된 특수문자와 의미 없는 불용어, 및 상기 상품 리뷰 데이터의 문장 안에 긍정 혹은 부정을 판단할 수 있는 형용사가 포함되어 있지 않은 문장을 노이즈로 판단하여 상기 형태소 분석의 대상에서 제외시키는 단계
를 더 포함하는 것을 특징으로 하는 사용자 구매 기준을 반영한 상품 추천 방법.
The method of claim 9,
The data preprocessing unit performs noise filtering on the product review data, so that special characters and meaningless stop words included in the product review data, and positive or negative in the sentence of the product review data can be determined. Determining a sentence without an adjective as noise and excluding it from the subject of the morpheme analysis
Product recommendation method reflecting the user purchase criteria, characterized in that it further comprises.
KR1020190058596A 2019-05-20 2019-05-20 Product recommendation system and method reflecting user purchasing criterion KR102252188B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190058596A KR102252188B1 (en) 2019-05-20 2019-05-20 Product recommendation system and method reflecting user purchasing criterion

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190058596A KR102252188B1 (en) 2019-05-20 2019-05-20 Product recommendation system and method reflecting user purchasing criterion

Publications (2)

Publication Number Publication Date
KR20200133439A true KR20200133439A (en) 2020-11-30
KR102252188B1 KR102252188B1 (en) 2021-05-13

Family

ID=73642018

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190058596A KR102252188B1 (en) 2019-05-20 2019-05-20 Product recommendation system and method reflecting user purchasing criterion

Country Status (1)

Country Link
KR (1) KR102252188B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112991017A (en) * 2021-03-26 2021-06-18 刘秀萍 Accurate recommendation method for label system based on user comment analysis
KR102337502B1 (en) 2021-03-31 2021-12-10 오브젠 주식회사 Method and apparatus for detecting abnormal product reviews online
KR20220101326A (en) 2021-01-11 2022-07-19 전형민 System for increasing open market product sales and efficient operation
KR102505204B1 (en) * 2022-04-01 2023-03-03 주식회사 애자일소다 Apparatus and method for analyzing user reviews
KR102644361B1 (en) * 2023-01-16 2024-04-08 주식회사 페르미온 Method and system for providing service in metaverse

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102448071B1 (en) * 2021-05-31 2022-09-29 한양여자대학교산학협력단 Apparatus and method for analysing fashion trend

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060099377A (en) * 2005-03-08 2006-09-19 메이크스타일주식회사 Intelligent searching service system and method in accordance with the customer's personalized shopping preference
KR101230744B1 (en) * 2008-05-15 2013-02-08 야후! 인크. Method and apparatus for utilizing social network information for showing reviews
KR20180052489A (en) * 2016-11-10 2018-05-18 주식회사 레드아이스 method of providing goods recommendation for cross-border E-commerce based on user experience analysis and environmental factors
KR20180080492A (en) * 2017-01-04 2018-07-12 (주)프람트테크놀로지 Rating system and method for goods using user's reviews

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060099377A (en) * 2005-03-08 2006-09-19 메이크스타일주식회사 Intelligent searching service system and method in accordance with the customer's personalized shopping preference
KR101230744B1 (en) * 2008-05-15 2013-02-08 야후! 인크. Method and apparatus for utilizing social network information for showing reviews
KR20180052489A (en) * 2016-11-10 2018-05-18 주식회사 레드아이스 method of providing goods recommendation for cross-border E-commerce based on user experience analysis and environmental factors
KR20180080492A (en) * 2017-01-04 2018-07-12 (주)프람트테크놀로지 Rating system and method for goods using user's reviews

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220101326A (en) 2021-01-11 2022-07-19 전형민 System for increasing open market product sales and efficient operation
CN112991017A (en) * 2021-03-26 2021-06-18 刘秀萍 Accurate recommendation method for label system based on user comment analysis
KR102337502B1 (en) 2021-03-31 2021-12-10 오브젠 주식회사 Method and apparatus for detecting abnormal product reviews online
KR102505204B1 (en) * 2022-04-01 2023-03-03 주식회사 애자일소다 Apparatus and method for analyzing user reviews
KR102644361B1 (en) * 2023-01-16 2024-04-08 주식회사 페르미온 Method and system for providing service in metaverse

Also Published As

Publication number Publication date
KR102252188B1 (en) 2021-05-13

Similar Documents

Publication Publication Date Title
KR102174717B1 (en) Product recommendation system and method based on user purchase criterion and product review
KR102252188B1 (en) Product recommendation system and method reflecting user purchasing criterion
US10282737B2 (en) Analyzing sentiment in product reviews
US11615079B1 (en) Graphical user interface for recurring searches
US9117006B2 (en) Recommending keywords
US8751322B2 (en) Method, device, and system for analyzing and ranking web-accessible data targets
US8463648B1 (en) Method and apparatus for automated topic extraction used for the creation and promotion of new categories in a consultation system
KR20210047229A (en) Recommendation System and METHOD Reflecting Purchase Criteria and Product Reviews Sentiment Analysis
CN103455522A (en) Recommendation method and system of application extension tools
US10223442B2 (en) Prioritizing survey text responses
US20200294071A1 (en) Determining user intents related to websites based on site search user behavior
TW201423450A (en) Information pushing, search method and device based on keyword extraction of electronic information
KR102142126B1 (en) Hierarchical Category Cluster Based Shopping Basket Associated Recommendation Method
CN111444304A (en) Search ranking method and device
Hossain et al. Machine learning based class level prediction of restaurant reviews
Kiran et al. User specific product recommendation and rating system by performing sentiment analysis on product reviews
Nakatsuji et al. Collaborative filtering by analyzing dynamic user interests modeled by taxonomy
Albalawi et al. Toward a real-time social recommendation system
Kim et al. Product recommendation system based user purchase criteria and product reviews
CN109118243B (en) Product sharing, useful evaluation identification and pushing method and server
Bang et al. Product recommendation system based on user purchase priority
Zhang et al. Predicting temporary deal success with social media timing signals
US20200311761A1 (en) System and method for analyzing the effectiveness and influence of digital online content
Pugsee et al. Comment analysis for food recipe preferences
KR20220026262A (en) System and Method for Recommending Health Supplement Based on Buyer's Evaluation

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