KR102538519B1 - System and Method for recomending related product using key phrase extraction - Google Patents

System and Method for recomending related product using key phrase extraction Download PDF

Info

Publication number
KR102538519B1
KR102538519B1 KR1020220080330A KR20220080330A KR102538519B1 KR 102538519 B1 KR102538519 B1 KR 102538519B1 KR 1020220080330 A KR1020220080330 A KR 1020220080330A KR 20220080330 A KR20220080330 A KR 20220080330A KR 102538519 B1 KR102538519 B1 KR 102538519B1
Authority
KR
South Korea
Prior art keywords
phrase
sub
phrases
extracted
word
Prior art date
Application number
KR1020220080330A
Other languages
Korean (ko)
Inventor
정민성
이시윤
지성영
박윤영
Original Assignee
주식회사 애자일소다
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 애자일소다 filed Critical 주식회사 애자일소다
Priority to KR1020220080330A priority Critical patent/KR102538519B1/en
Application granted granted Critical
Publication of KR102538519B1 publication Critical patent/KR102538519B1/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
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • 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/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • 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/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0282Rating or review of business operators or products

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present invention relates to a device and method for recommending a related product using a key phrase extraction that extract a phrase or clause configured with one word or two or more consecutive words with connotation, representativeness, and originality from text data as a key phrase, to easily check a meaning and characteristic having the text data. The device comprises: a text data collection part; a key phrase extraction part; and a related product recommendation part.

Description

주요 구절 추출을 이용한 관련상품 추천 장치 및 방법 {System and Method for recomending related product using key phrase extraction}Apparatus and method for recommending related products using key phrase extraction {System and Method for recomending related product using key phrase extraction}

본 발명은 주요 구절 추출을 이용한 관련상품 추천 장치 및 방법에 관한 것으로, 더욱 상세하게는 특정 상품에 대한 텍스트 데이터들로부터 함축성, 대표성, 독창성을 지닌 하나의 단어 또는 연속된 두 단어 이상으로 구성된 구(句) 또는 절(節)을 주요 구절(key phrase)로 추출하고, 이를 이용하여 해당 상품과 연관된 다른 상품을 추천하는 주요 구절 추출을 이용한 관련상품 추천 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for recommending a related product using key phrase extraction, and more particularly, from text data for a specific product, a word having connotation, representativeness, and originality, or a phrase composed of two or more consecutive words ( An apparatus and method for recommending related products using key phrase extraction that extracts phrases or clauses as key phrases and recommends other products related to the corresponding product using the same.

통신 기술이 발달함에 따라 무선 통신을 이용하여 상품 및 서비스를 매매하는 이커머스(E-commerce) 시장이 지속적으로 확장되고 있다. 특히, 이커머스 시장은 모바일 단말의 보급으로 인해 이커머스에 대한 접근성이 높아져 크게 성장할 수 있었고, 최근 들어, COVID-19의 전 세계적 확산으로 인해 더욱 큰 폭으로 성장하고 있다.BACKGROUND As communication technology develops, an E-commerce market for buying and selling goods and services using wireless communication is continuously expanding. In particular, the e-commerce market has been able to grow significantly due to increased accessibility to e-commerce due to the spread of mobile terminals, and recently, it is growing even more significantly due to the global spread of COVID-19.

이커머스를 통해 상품 및 서비스를 구매하는 경우, 상품 및 서비스 제공자를 소비자가 직접 확인할 수 없으므로, 소비자는 판매자에 의해 제공된 정보(이미지, 설명 등)와, 해당 상품에 대하여 다른 사용자가 작성한 리뷰 정보에 기반하여 구매 의사를 결정하게 된다. When purchasing products and services through e-commerce, consumers cannot directly verify the product or service provider, so consumers rely on information provided by the seller (images, descriptions, etc.) and review information written by other users about the product. based on which decision to purchase is made.

하지만, 판매자에 의해 제공되는 정보들은 상품 구매를 유도하기 위해 판매자측에서 과장하거나 불리한 정보를 숨기는 경우가 있어 소비자 입장에서는 신뢰도가 떨어질 수 있다. However, the information provided by the seller may be exaggerated or hide unfavorable information on the seller's side in order to induce purchase of the product, and thus reliability may be lowered from the consumer's point of view.

이에 따라, 최근에는 상품 및 서비스를 구매한 다른 사용자에 의해 작성된 사용자 리뷰는 소비자가 구매 의사를 결정하는데 크게 기여하고 있다. 상품에 대한 사용자들의 리뷰는 기업과 구매자에게 의사결정을 지원하는 중요한 요소로, 이커머스 판매자는 사용자 리뷰를 작성한 소비자에게 적립금 또는 할인 쿠폰 등과 같은 혜택을 제공함으로써 다수의 사용자 리뷰를 수집하기 위해 노력을 기울이고 있다.Accordingly, user reviews written by other users who have recently purchased products and services greatly contribute to consumers' purchasing decisions. Users' reviews of products are an important factor in supporting decision-making for companies and buyers, and e-commerce sellers make efforts to collect a large number of user reviews by providing benefits such as points or discount coupons to consumers who write user reviews. are leaning

이러한 리뷰 데이터는 하나의 상품에 대하여 많게는 수천개씩 작성되고 있고, 최신순, 인기순, 가격순 등과 같은 기준으로 리뷰 데이터를 단순히 정렬하는 데에만 그치고 있기 때문에, 사용자는 많은 리뷰들을 일일이 확인하기 힘들 뿐만 아니라, 많은 리뷰들 중에서 유의미한 정보를 가진 리뷰만을 선택적으로 필터링하기에는 한계가 있다.Since such review data is created in thousands of pieces for a single product, and the review data is simply sorted by criteria such as newest, popular, and price, it is difficult for users to check many reviews one by one, and many reviews There is a limit to selectively filtering only reviews with meaningful information among reviews.

이에, 이러한 비정형적인 리뷰를 정량화하여 분석하는 연구들이 지속적으로 수행되고 있다. 종래의 리뷰 분석은 각 리뷰의 키워드(명사)만을 추출하여 분류차원과 워드 임베딩 방식을 사용하여 각 차원별로 거리가 가까운 단어를 사전으로 구축하는 방식이나, 이는 다른 상품군의 리뷰 분석에 적용하기 어려운 확장성의 한계를 가지고 있다.Accordingly, studies to quantify and analyze such atypical reviews are continuously being conducted. Conventional review analysis is a method of extracting only the keywords (nouns) of each review and constructing a dictionary of words with close distances for each dimension using the classification dimension and word embedding method, but this is an extension that is difficult to apply to review analysis of other product groups. has gender limitations.

한편, 전술한 배경 기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.On the other hand, the above-mentioned background art is technical information that the inventor possessed for derivation of the present invention or acquired in the process of derivation of the present invention, and cannot necessarily be said to be known art disclosed to the general public prior to filing the present invention. .

한국등록특허 제10-2310487호Korean Patent Registration No. 10-2310487

본 발명의 일측면은 특정 상품에 대한 리뷰 데이터들로부터 함축성, 대표성, 독창성을 지닌 하나의 단어 또는 연속된 두 단어 이상으로 구성된 구(句) 또는 절(節)을 주요 구절(key phrase)로 추출하고, 이를 이용하여 특정 상품에 대한 전체 리뷰 데이터 중 해당 주요 구절과 연관된 리뷰 데이터를 필터링하는 주요 구절 추출을 이용한 관련리뷰 필터링 장치 및 방법을 제공한다.One aspect of the present invention extracts a word or a phrase consisting of two or more consecutive words with connotation, representativeness, and originality as a key phrase from review data on a specific product. and a related review filtering device and method using main phrase extraction for filtering review data related to a corresponding main phrase among all review data for a specific product using this.

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

본 발명의 일 실시예에 따른 주요 구절 추출을 이용한 관련상품 추천 장치는, 특정 상품에 대한 텍스트 데이터들로부터 적어도 하나의 하위 구절을 추출하고, 추출된 하위 구절들을 복수의 그룹으로 군집화하고, 각 그룹에 포함된 복수의 하위 구절들로부터 하나의 단어 또는 연속된 두 단어 이상으로 구성된 구(句) 또는 절(節)을 주요 구절(key phrase)로 추출하고, 이를 이용하여 해당 상품과 연관된 다른 상품을 추천한다.An apparatus for recommending related products using main phrase extraction according to an embodiment of the present invention extracts at least one sub-phrase from text data on a specific product, clusters the extracted sub-phrases into a plurality of groups, and A phrase or clause composed of one word or two or more consecutive words is extracted as a key phrase from a plurality of sub-phrases included in, and other products related to the corresponding product are extracted using this I recommend you.

상기 주요 구절 추출을 이용한 관련상품 추천 장치는,The related product recommendation device using the main phrase extraction,

상품별 텍스트 데이터를 수집하는 텍스트 데이터 수집부; a text data collection unit that collects text data for each product;

미리 학습된 개체명 인식(Named Entity Recognition, NER) 모델을 이용하여, 텍스트 데이터를 구성하는 각각의 단어가 미리 정의된 구절의 시작인지, 중간인지 또는 미리 정의된 구절이 아닌지를 구분하고, 구절의 시작에 해당되는 단어와 구절의 중간에 해당되는 단어를 묶어 하나의 하위 구절로 추출하고, 복수의 상기 하위 구절들을 복수의 그룹으로 군집화하고, 각 그룹에 포함된 복수의 하위 구절들로부터 하나의 주요 구절을 추출하는 주요 구절 추출부; 및Using a pre-learned Named Entity Recognition (NER) model, each word constituting the text data is distinguished whether it is the beginning of a predefined phrase, the middle of a predefined phrase, or not a predefined phrase, and A word corresponding to the beginning and a word corresponding to the middle of a phrase are grouped and extracted as one sub-phrase, a plurality of the sub-phrases are clustered into a plurality of groups, and a plurality of sub-phrases included in each group are grouped into one main phrase. a main phrase extraction unit for extracting phrases; and

특정 상품에 대해 추출된 주요 구절을 다른 상품에 대해 추출된 하위 구절들과 비교한 결과에 따라 특정 상품과 연관된 관련상품을 추천하는 관련상품 추천부를 포함한다.A related product recommendation unit recommending related products related to a specific product according to a result of comparing the main phrase extracted for a specific product with sub-phrases extracted for other products is included.

상기 주요 구절 추출부는,The main phrase extraction part,

하나의 텍스트 데이터로부터 미리 설정된 구절내 속성의 중요도순에 따라 하나의 텍스트 데이터로부터 최대허용개수 미만의 하위 구절들을 추출한다.Sub-phrases less than the maximum allowable number are extracted from one text data according to the order of importance of attributes within preset passages from one text data.

상기 주요 구절 추출부는,The main phrase extraction part,

구절의 시작에 해당되는 단어에 제1 태그를 라벨링하고, 구절의 중간에 해당되는 단어에 제2 태그를 라벨링하며, 구절이 아닌 단어에 제3 태그를 라벨링한 후,After labeling a first tag on a word corresponding to the beginning of a phrase, labeling a second tag on a word corresponding to the middle of a phrase, and labeling a third tag on a word other than a phrase,

제1 태그가 라벨링된 하나의 단어를 하위 구절로 추출하거나, Extract one word labeled with the first tag as a sub-phrase,

제1 태그가 라벨링된 제1 단어와, 상기 제1 단어의 후속단어이면서 제2 태그가 라벨링된 적어도 하나의 제2단어를 묶어 하나의 하위 구절로 추출하는 것을 특징으로 한다.A first word labeled with a first tag and at least one second word following the first word and labeled with a second tag are bundled and extracted as one sub-phrase.

상기 주요 구절 추출부는,The main phrase extraction part,

BERT(Bidirectional Encoder Representations from Transformers) 모델을 이용하여 상기 하위 구절에 대한 임베딩 벡터를 생성하고, 복수의 하위 구절들 각각에 대하여 생성된 복수의 임베딩 벡터에 기초하여 복수의 상기 하위 구절들을 복수의 그룹으로 군집화하되,An embedding vector for the sub-phrase is generated using a BERT (Bidirectional Encoder Representations from Transformers) model, and a plurality of the sub-phrases are divided into a plurality of groups based on the plurality of embedding vectors generated for each of the plurality of sub-phrases. cluster, but

특정 상품에 대한 텍스트 데이터의 개수가 미리 설정된 기준값 이상으로 수집된 경우 실루엣 스코어(silhoutte score)을 이용하여 군집화할 그룹의 개수를 최적화하고, 특정 상품에 대한 텍스트 데이터의 개수가 미리 설정된 기준값 미만으로 수집된 경우 미리 설정된 클러스터 개수에 따라 복수의 상기 하위 구절들을 복수의 그룹으로 군집화한다.When the number of text data for a specific product is collected above a preset reference value, the number of groups to be clustered is optimized using a silhouette score, and the number of text data for a specific product is collected below a preset reference value. In this case, a plurality of the sub-phrases are clustered into a plurality of groups according to a preset number of clusters.

상기 주요 구절 추출부는, The main phrase extraction part,

각 그룹에 포함된 복수의 임베딩 벡터로부터 어느 하나의 대표값을 추출하고, 추출된 대표값에 대응되는 하위 구절을 주요 구절로 추출한다.A representative value is extracted from a plurality of embedding vectors included in each group, and a sub-phrase corresponding to the extracted representative value is extracted as a main phrase.

상기 관련상품 추천부는,The related product recommendation unit,

특정 상품에서 추출된 주요 구절과 다른 상품에서 추출된 하위 구절들간의 평균 임베딩 유사도를 산출하여, 미리 설정된 임계값 이상인 임베딩 유사도를 갖는 하위 구절을 추출하고, 추출된 하위 구절에 대응되는 상품을 특정 상품에 대한 연관상품으로 추천한다.By calculating the average embedding similarity between the main phrase extracted from a specific product and sub-phrases extracted from other products, sub-phrases having an embedding similarity higher than a preset threshold are extracted, and the product corresponding to the extracted sub-phrase is selected as a specific product. It is recommended as a related product for

또한, 본 발명의 일 실시예에 따른 주요 구절 추출을 이용한 관련상품 추천 방법은 주요 구절 추출을 이용한 관련상품 추천 장치에 의해 수행되며,In addition, the related product recommendation method using main phrase extraction according to an embodiment of the present invention is performed by the related product recommendation device using main phrase extraction,

상품별 텍스트 데이터를 수집하는 단계; Collecting text data for each product;

미리 학습된 개체명 인식(Named Entity Recognition, NER) 모델을 이용하여, 텍스트 데이터를 구성하는 각각의 단어가 미리 정의된 구절의 시작인지, 중간인지 또는 미리 정의된 구절이 아닌지를 구분하고, 구절의 시작에 해당되는 단어와 구절의 중간에 해당되는 단어를 묶어 하나의 하위 구절로 추출하고, 복수의 상기 하위 구절들을 복수의 그룹으로 군집화하고, 각 그룹에 포함된 복수의 하위 구절들로부터 하나의 주요 구절을 추출하는 단계; 및Using a pre-learned Named Entity Recognition (NER) model, each word constituting the text data is distinguished whether it is the beginning of a predefined phrase, the middle of a predefined phrase, or not a predefined phrase, and A word corresponding to the beginning and a word corresponding to the middle of a phrase are grouped and extracted as one sub-phrase, a plurality of the sub-phrases are clustered into a plurality of groups, and a plurality of sub-phrases included in each group are grouped into one main phrase. extracting phrases; and

특정 상품에 대해 추출된 주요 구절을 다른 상품에 대해 추출된 하위 구절들과 비교한 결과에 따라 특정 상품과 연관된 관련상품을 추천하는 단계를 포함한다.and recommending a related product related to a specific product according to a result of comparing the main phrase extracted for a specific product with sub-phrases extracted for other products.

상기 주요 구절을 추출하는 단계는,The step of extracting the main phrase,

하나의 텍스트 데이터로부터 미리 설정된 구절 내 속성 중요도순에 따라 하나의 텍스트 데이터로부터 최대허용개수 미만의 하위 구절들을 추출하는 것을 특징으로 한다.It is characterized in that sub-phrases less than the maximum allowable number are extracted from one text data according to the order of importance of attributes within preset passages from one text data.

상기 주요 구절을 추출하는 단계는,The step of extracting the main phrase,

상기 개체명 인식 모델을 통해 구절의 시작에 해당되는 단어에 제1 태그를 라벨링하고, 구절의 중간에 해당되는 단어에 제2 태그를 라벨링하며, 구절이 아닌 단어에 제3 태그를 라벨링한 후,After labeling a first tag to a word corresponding to the beginning of a phrase through the entity name recognition model, labeling a second tag to a word corresponding to the middle of a phrase, and labeling a third tag to a word other than a phrase,

제1 태그가 라벨링된 하나의 단어를 하위 구절로 추출하거나, Extract one word labeled with the first tag as a sub-phrase,

제1 태그가 라벨링된 제1 단어와, 상기 제1 단어의 후속단어이면서 제2 태그가 라벨링된 적어도 하나의 제2단어를 묶어 하나의 하위 구절로 추출하는 것을 특징으로 한다.A first word labeled with a first tag and at least one second word following the first word and labeled with a second tag are bundled and extracted as one sub-phrase.

상기 주요 구절을 추출하는 단계는,The step of extracting the main phrase,

BERT(Bidirectional Encoder Representations from Transformers) 모델을 이용하여 상기 하위 구절에 대한 임베딩 벡터를 생성하고, 복수의 하위 구절들 각각에 대하여 생성된 복수의 임베딩 벡터에 기초하여 복수의 상기 하위 구절들을 복수의 그룹으로 군집화하되,An embedding vector for the sub-phrase is generated using a BERT (Bidirectional Encoder Representations from Transformers) model, and a plurality of the sub-phrases are divided into a plurality of groups based on the plurality of embedding vectors generated for each of the plurality of sub-phrases. cluster, but

특정 상품에 대한 텍스트 데이터의 개수가 미리 설정된 기준값 미만으로 수집된 경우 미리 설정된 클러스터 개수에 따라 복수의 상기 하위 구절들을 복수의 그룹으로 군집화하는 것을 특징으로 한다.When the number of text data for a specific product is collected to be less than a preset reference value, a plurality of sub-phrases are clustered into a plurality of groups according to a preset number of clusters.

상기 주요 구절을 추출하는 단계는,The step of extracting the main phrase,

특정 상품에 대한 텍스트 데이터의 개수가 미리 설정된 기준값 이상으로 수집된 경우 실루엣 스코어(silhoutte score)을 이용하여 군집화할 그룹의 개수를 최적화하는 것을 특징으로 한다.When the number of text data for a specific product is collected over a preset reference value, the number of groups to be clustered is optimized using a silhouette score.

상기 주요 구절을 추출하는 단계는,The step of extracting the main phrase,

각 그룹에 포함된 복수의 임베딩 벡터로부터 어느 하나의 대표값을 추출하고, 추출된 대표값에 대응되는 하위 구절을 주요 구절로 추출하는 것을 특징으로 한다.It is characterized in that any one representative value is extracted from a plurality of embedding vectors included in each group, and a sub-phrase corresponding to the extracted representative value is extracted as a main phrase.

상기 관련상품을 추천하는 단계는,The step of recommending the related product is,

특정 상품에서 추출된 주요 구절과 다른 상품에서 추출된 하위 구절들간의 평균 임베딩 유사도를 산출하여, 미리 설정된 임계값 이상인 평균 임베딩 유사도를 갖는 하위 구절을 추출하고, 추출된 하위 구절에 대응되는 상품을 특정 상품에 대한 연관상품으로 추천하는 것을 특징으로 한다.By calculating the average embedding similarity between the main phrase extracted from a specific product and sub-phrases extracted from other products, sub-phrases having an average embedding similarity higher than a preset threshold are extracted, and the product corresponding to the extracted sub-phrase is specified. It is characterized in that the product is recommended as a related product.

상술한 본 발명의 일측면에 따르면, 종래의 키워드 추출 기법과 달리 텍스트 데이터의 특징(함축성, 대표성, 독창성)이 잘 반영된 구절인 주요 구절(key phrase)을 신뢰성 있게 추출할 수 있다.According to one aspect of the present invention described above, unlike the conventional keyword extraction technique, it is possible to reliably extract a key phrase, which is a phrase well reflecting the characteristics (implication, representativeness, originality) of text data.

또한, 추출된 주요 구절을 이용하여 연관상품을 추천함으로써, 사용자는 자신에게 유의미한 연관상품에 대한 정보들을 손쉽게 확인할 수 있다.In addition, by recommending related products using the extracted main phrases, the user can easily check information on related products that are meaningful to him or her.

도 1은 본 발명의 일 실시예에 따른 주요 구절 추출을 이용한 관련상품 추천 장치의 개략적인 구성이 도시된 도면이다.
도 2 내지 도 4는 음식 상품에 대한 하나의 텍스트 데이터로부터 하위 구절을 추출하는 구체적인 일 예가 도시된 도면이다.
도 5는 주요 구절 추출부의 전체 프로세스가 도시된 개념도이다.
도 6은 특정 상품에 대해 최종적으로 추출된 주요 구절의 일 예가 도시된 도면이다.
도 7은 연관상품 추천부에서 주요 구절과 하위 구절간 임베딩 유사도를 산출하는 일 예가 도시된 도면이다.
도 8은 관련상품 추천부에 의해 추천된 관련상품의 구체적인텍스트 일 예가 도시된 도면이다.
도 9는 본 발명의 일 실시예에 따른 주요 구절 추출을 이용한 관련상품 추천 방법의 개략적인 흐름이 도시된 도면이다.
1 is a diagram showing a schematic configuration of a related product recommendation device using main phrase extraction according to an embodiment of the present invention.
2 to 4 are diagrams illustrating a specific example of extracting a sub-phrase from one piece of text data about a food product.
5 is a conceptual diagram showing the entire process of the main phrase extraction unit.
6 is a diagram illustrating an example of a main phrase finally extracted for a specific product.
7 is a diagram showing an example of calculating the embedding similarity between a main phrase and a sub phrase in a related product recommendation unit.
8 is a diagram illustrating an example of specific text of a related product recommended by a related product recommendation unit.
9 is a diagram showing a schematic flow of a related product recommendation method using main phrase extraction according to an embodiment of the present invention.

후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예와 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The detailed description of the present invention which follows refers to the accompanying drawings which illustrate, by way of illustration, specific embodiments in which the present invention may be practiced. These embodiments are described in sufficient detail to enable one skilled in the art to practice the present invention. It should be understood that the various embodiments of the present invention are different from each other but are not necessarily mutually exclusive. For example, specific shapes, structures, and characteristics described herein may be implemented in another embodiment without departing from the spirit and scope of the invention in connection with one embodiment. Additionally, it should be understood that the location or arrangement of individual components within each disclosed embodiment may be changed without departing from the spirit and scope of the invention. Accordingly, the detailed description set forth below is not to be taken in a limiting sense, and the scope of the present invention, if properly described, is limited only by the appended claims, along with all equivalents as claimed by those claims. Like reference numbers in the drawings indicate the same or similar function throughout the various aspects.

이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the drawings.

도 1은 본 발명의 일 실시예에 따른 주요 구절 추출을 이용한 관련상품 추천 장치의 개략적인 구성요소들이 도시된 도면이다.1 is a diagram showing schematic components of an apparatus for recommending related products using main phrase extraction according to an embodiment of the present invention.

본 발명에 따른 주요 구절 추출을 이용한 관련상품 추천 장치는 텍스트 데이터가 가진 의미를 파악하고 분석하기 위한 사용자가 소지한 사용자 단말일 수 있으며, 사용자 단말은 외부기기와 유무선 통신이 가능하고 정보의 입출력 및 처리가 가능한 스마트폰, PC, 태블릿 PC, 웨어러블 디바이스 등과 같은 전자장치일 수 있다.The apparatus for recommending related products using the extraction of main phrases according to the present invention may be a user terminal possessed by a user for understanding and analyzing the meaning of text data, and the user terminal is capable of wired and wireless communication with an external device and inputs and outputs information It may be an electronic device capable of processing, such as a smart phone, PC, tablet PC, wearable device, and the like.

이러한 사용자 단말에 구현된 본 발명에 따른 주요 구절 추출을 이용한 관련상품 추천 장치는 텍스트 데이터로부터 함축성, 대표성 및 독창성을 지닌 하나의 단어 또는 연속된 두 단어 이상으로 구성된 구(句) 또는 절(節)을 주요 구절(key phrase)로 추출하는 일련의 과정들을 모델링함으로써, 인공지능을 이용하여 대량의 텍스트 데이터로부터 신뢰성 있는 정보들을 효율적으로 추출할 수 있다.The apparatus for recommending related products using main phrase extraction according to the present invention implemented in such a user terminal is one word or a phrase or clause composed of two or more consecutive words having connotation, representativeness, and originality from text data. By modeling a series of processes of extracting as a key phrase, reliable information can be efficiently extracted from a large amount of text data using artificial intelligence.

본 발명에 따른 주요 구절 추출을 이용한 관련상품 추천 장치를 이용하여 상품과 관련된 텍스트 데이터로부터 추출된 주요 구절은 텍스트 데이터로부터 추출된 구절중에서 수집 대상(예컨대 상품)의 특징을 다른 구절에 비하여 잘 나타낼 수 있는 핵심적인 구절을 의미하며, 다음과 같은 특징을 가질 수 있다.The main phrase extracted from text data related to a product using the related product recommendation device using main phrase extraction according to the present invention can represent the characteristics of the collection target (eg, product) better than other phrases among the phrases extracted from the text data. It means a key phrase in a sentence, and can have the following characteristics.

1) 주요 구절은 수집 대상별로 텍스트 데이터의 공통적 특징을 나타내는 대표성을 지니는 것이 바람직하다.1) It is desirable that main passages have representativeness representing common characteristics of text data for each subject of collection.

2) 주요 구절은 수집 대상간에 텍스트 데이터의 차별성을 보여주는 독창성을 가지는 것이 바람직하다.2) It is desirable that the main passages have originality that shows the differentiation of text data among collection subjects.

3) 주요 구절은 수집 대상에 대한 텍스트 데이터의 내용을 요약적으로 나타내는 함축성을 가지고 있는 것이 바람직하다.3) It is desirable that the main passages have connotation that summarizes the contents of the text data on the subject of collection.

따라서, 추출된 구절중에서 다른 구절에 비하여 수집 대상에 대한 대표성과 독창성과 함축성을 가지고 있는 구절은 수집 대상의 특징을 효과적으로 나타내고 있다고 볼 수 있음에 따라 해당 구절은 주요 구절로 선정될 수 있다.Therefore, among the extracted passages, the passages that have representativeness, originality, and connotation for the collection object compared to other passages can be regarded as effectively representing the characteristics of the collection object, and thus the corresponding passage can be selected as the main passage.

이를 위해, 본 발명의 일 실시예에 따른 주요 구절 추출을 이용한 관련상품 추천 장치(1)는 텍스트 데이터 수집부(100), 주요 구절 추출부(200) 및 관련상품 추천부(300)를 포함한다.To this end, the related product recommendation device 1 using main phrase extraction according to an embodiment of the present invention includes a text data collection unit 100, a main phrase extraction unit 200, and a related product recommendation unit 300. .

텍스트 데이터 수집부(100)는 특정 상품과 관련된 텍스트 데이터를 수집한다.The text data collection unit 100 collects text data related to a specific product.

여기서, 수집 대상과 관련된 텍스트 데이터라 함은, 상품을 구매한 사용자들이 작성한 리뷰 데이터일 수 있다. 하지만, 텍스트 데이터의 종류는 이에 한정되는 것은 아니며, 해당 상품의 매뉴얼, 관련기사, 홍보물 등과 같이 특정 도메인에 대해 수집된 다양한 형태의 텍스트 데이터를 더 포함할 수 있다.Here, the text data related to the subject to be collected may be review data written by users who have purchased the product. However, the type of text data is not limited thereto, and may further include various types of text data collected for a specific domain, such as manuals of corresponding products, related articles, promotional materials, and the like.

텍스트 데이터 수집부(100)는 다양한 방법으로 텍스트 데이터를 수집할 수 있다. 예컨대, 텍스트 데이터 수집부(100)는 유무선 통신을 통해 외부 서버로부터 텍스트 데이터를 스크래핑 할 수 있다. 또는, 텍스트 데이터 수집부(100)는 사용자 단말로부터 텍스트 데이터를 직접 수신할 수도 있다. The text data collecting unit 100 may collect text data in various ways. For example, the text data collecting unit 100 may scrape text data from an external server through wired/wireless communication. Alternatively, the text data collecting unit 100 may directly receive text data from the user terminal.

텍스트 데이터 수집부(100)은 수집된 텍스트 데이터의 상품(서비스)의 종류별로 분류하여 저장한다.The text data collecting unit 100 classifies and stores the collected text data according to product (service) type.

이하에서는 설명의 편의를 위해 텍스트 데이터 수집부(100)에 수집된 텍스트 데이터는 음식 상품에 대하여 작성된 텍스트인 것으로 가정하여 설명하겠으나, 텍스트 데이터의 종류는 이에 한정되지 않으며 본 발명에 따른 주요 구절 추출을 이용한 관련상품 추천 장치는 텍스트 장치가 적용될 수 있는 다른 다양한 도메인(예컨대 전자제품, 화장품, 여행상품, 인테리어 시공 서비스 등)에 대한 텍스트에도 적용 가능함은 물론이다.Hereinafter, for convenience of description, it will be assumed that the text data collected by the text data collection unit 100 is text written about food products, but the type of text data is not limited thereto, and the main phrase extraction according to the present invention will be described. Of course, the used related product recommendation device can also be applied to texts for various other domains to which the text device can be applied (for example, electronic products, cosmetics, travel products, interior construction services, etc.).

주요 구절 추출부(200)는 수집된 상품별 텍스트 데이터를 분석하여, 각각의 텍스트 데이터의 특징(함축성, 대표성, 독창성)이 잘 반영된 구절인 주요 구절(key phrase)을 추출한다.The key phrase extraction unit 200 analyzes the collected text data for each product and extracts a key phrase, which is a phrase that well reflects the characteristics (implication, representativeness, originality) of each text data.

구체적으로, 주요 구절 추출부(200)는 미리 학습된 개체명 인식(Named Entity Recognition, NER) 모델을 이용하여, 텍스트 데이터를 구성하는 단어별로 개체명 종류를 구분한다.Specifically, the main phrase extractor 200 uses a pre-learned Named Entity Recognition (NER) model to classify entity name types for each word constituting text data.

주요 구절 추출부(200)는 개체명 인식(Named Entity Recognition, NER) 모델을 통해 사용자가 미리 정의한 하위 구절에 해당되는 하나의 단어 또는 연속된 적어도 두 단어를 하위 구절로 추출한다. The main phrase extractor 200 extracts one word or at least two consecutive words corresponding to a sub-phrase previously defined by a user through a named entity recognition (NER) model as a sub-phrase.

이를 위해, 주요 구절 추출부(200)는 개체명 인식 모델을 이용하여, 텍스트 데이터를 구성하는 각각의 단어가 미리 정의된 구절의 시작인지, 중간인지 또는 미리 정의된 구절이 아닌지를 구분하고, 구분 결과에 따라 구절의 시작에 해당되는 단어에 제1 태그를 라벨링하고, 구절의 중간에 해당되는 단어에 제2 태그를 라벨링하며, 구절이 아닌 단어에 제3 태그를 라벨링할 수 있다.To this end, the main phrase extraction unit 200 distinguishes whether each word constituting the text data is the beginning of a predefined phrase, the middle of a predefined phrase, or not a predefined phrase by using an object name recognition model, and distinguishes According to the result, a first tag may be labeled for a word corresponding to the beginning of a phrase, a second tag may be labeled for a word corresponding to the middle of a phrase, and a third tag may be labeled for a word other than a phrase.

즉, 주요 구절 추출부(200)는 텍스트 데이터를 구성하는 문장을 토큰(단어) 단위로 나누고, 이 토큰들에 도메인별로 설정된 태깅 시스템을 적용하여 단어를 구분한다.That is, the main phrase extractor 200 divides sentences constituting text data into token (word) units, and divides words by applying a tagging system set for each domain to the tokens.

태깅 시스템에는 BIESO 시스템과 BIO 시스템이 있는데, BIESO 시스템은 개체명이 시작할 때'B-(begin)'를, 토큰이 개체명 중간에 있을 때는'I-(inside)'를, 개체명의 마지막에 위치할 때는 'E-(end)'를 붙여주며, 하나의 토큰이 곧 하나의 개체명일 때는'S-(singleton)'를, 토큰이 개체명이 아닐 경우에는 'O(outside)'를 붙여준다. BIO 시스템은 BIESO 시스템과 유사하지만 E는 I로 통합되고 S는 B로 통합되는 특징이 있다. The tagging system includes the BIESO system and the BIO system. In the BIESO system, 'B-(begin)' is placed at the beginning of the entity name, 'I-(inside)' is placed at the end of the entity name when the token is in the middle of the entity name. 'E-(end)' is attached when a token is an entity name, 'S-(singleton)' is attached when a token is an entity name, and 'O(outside)' is appended when a token is not an entity name. The BIO system is similar to the BIESO system, but has the characteristic that E is integrated into I and S is integrated into B.

주요 구절 추출부(200)에 적용된 태깅 시스템은 BIO 시스템으로, 개체명이 시작할 때 상술한 제1 태그인 'B-(begin)'를, 토큰이 개체명 중간에 있을 때는 상술한 제2 태그인 'I-(inside)'를, 토큰이 개체명이 아닐 경우에는 상술한 제3 태그인 'O(outside)'를 붙여주게 된다.The tagging system applied to the main phrase extractor 200 is the BIO system. When the entity name starts, the above-mentioned first tag 'B-(begin)' is used, and when the token is in the middle of the entity name, the above-mentioned second tag ' 'I-(inside)' is attached, and 'O(outside)', which is the above-mentioned third tag, is attached when the token is not an entity name.

도 2는 음식 상품에 대한 하나의 텍스트 데이터가 도시된 일 예로, 도시된 바와 같이 주요 구절 추출부(200)는 '어제 샀는데 고기가 맛있네요'라는 텍스트 데이터를 분석하여 '어제/샀는데'에 해당되는 단어에 제3 태그(O, other)를 라벨링하고, '고기가'에 해당되는 단어에 제1 태그(B, begin)를 라벨링하며, '맛있네요'에 해당되는 단어에 제2 태그(I, inside)를 라벨링한다.2 shows an example of text data for a food product. As shown, the main phrase extractor 200 analyzes text data such as 'I bought it yesterday, the meat is delicious' and corresponds to 'I bought it yesterday'. A third tag (O, other) is labeled on the word, a first tag (B, begin) is labeled on the word corresponding to 'meat', and a second tag (I) is labeled on the word corresponding to 'delicious'. , inside).

즉, 음식 도메인에서는 재료의 종류, 맛/식감, 음식의 양, 대상과 환경, 편의성 등을 나타내는 단어를 사용자가 추출하고 싶은 구절로 설정하고자 하면, 사용자는 개체명 인식 모델에 미리 학습된 목수의 속성 중 추출하고자 하는 속성을 설정함에 따라 하위 구절 추출부(200)는 개체명 인식 모델을 통해 상기와 같은 표현을 가지는 개체명을 하위 구절로 추출할 수 있다. That is, in the food domain, if a user wants to set a word that represents the type of material, taste/texture, amount of food, object and environment, convenience, etc. As attributes to be extracted among attributes are set, the sub-phrase extractor 200 may extract the entity name having the above expression as a sub-phrase through the entity name recognition model.

경우에 따라서는 하위 구절 추출부(200)는 사용자가 설정한 도메인에 따라 사용자는 개체명 인식 모델에 미리 학습된 목수의 속성 중 추출하고자 하는 속성을 자동으로 설정할 수도 있다.In some cases, the sub-phrase extractor 200 may automatically set the attributes to be extracted among the carpenter's attributes pre-learned in the object name recognition model according to the domain set by the user.

이를 위해, 주요 구절 추출부(200)는 도메인에 따라 추출하고 싶은 구절을 다르게 정의할 수 있다. 예컨대, 주요 구절 추출부(200)는 텍스트 데이터가 음식 상품에 관한 것인 경우, 맛, 식감, 조리 방법, 양, 대상과 환경, 편의성 등과 같은 속성을 주요속성으로 설정할 수 있다. 다른 예로, 주요 구절 추출부(200)는 전자기기 도메인에서는 가격, 휴대성, 속도 등을 나타내는 단어를 사용자가 추출하고 싶은 구절로 설정하였다면, 개체명 인식 모델을 통해 상기와 같은 표현을 가지는 개체명을 하위 구절로 추출할 수 있다.To this end, the main phrase extractor 200 may define phrases to be extracted differently according to domains. For example, when the text data is about food products, the main phrase extractor 200 may set properties such as taste, texture, cooking method, amount, object and environment, and convenience as main properties. As another example, if the main phrase extractor 200 sets a word representing price, portability, speed, etc. as a phrase that the user wants to extract in the electronic device domain, the entity name having the above expression through the entity name recognition model. can be extracted into sub-phrases.

이와 같이, 주요 구절 추출부(200)는 텍스트 데이터와 관련된 상품 또는 서비스의 특징에 따라 전체 속성 중 상품 또는 서비스의 종류에 구절을 설정함으로써, 음식 텍스트에서 중요할 것으로 판단되는 단어들로만 구성된 하위 구절을 추출할 수 있다. In this way, the main phrase extractor 200 extracts sub-phrases consisting only of words that are determined to be important in the food text by setting phrases in the type of product or service among all attributes according to the characteristics of the product or service related to the text data. can be extracted.

상술한 바와 같이, 주요 구절 추출부(200)는 개체명 인식 모델을 통해 텍스트 데이터를 구성하는 각각의 단어가 미리 정의된 구절의 시작인지, 중간인지 또는 미리 정의된 구절이 아닌지를 구분하여 구절의 시작에 해당되는 단어에 제1 태그(B)를 라벨링하고, 구절의 중간에 해당되는 단어에 제2 태그(I)를 라벨링하며, 구절이 아닌 단어에 제3 태그(O)를 라벨링한 다음, 구절의 시작에 해당되는 단어와 구절의 중간에 해당되는 단어를 묶어 하나의 하위 구절로 추출한다.As described above, the main phrase extractor 200 distinguishes whether each word constituting the text data is the beginning of a predefined phrase, the middle of a predefined phrase, or not a predefined phrase through the entity name recognition model, and determines the meaning of the phrase. After labeling the first tag (B) for the word corresponding to the beginning, labeling the second tag (I) for the word corresponding to the middle of the phrase, and labeling the third tag (O) for the word other than the phrase, A word corresponding to the beginning of a phrase and a word corresponding to the middle of the phrase are grouped together and extracted as one sub-phrase.

구체적으로, 주요 구절 추출부(200)는 아래와 같은 형태로 단어가 나열된 경우 해당 단어 또는 해당 단어들을 하나의 하위 구절로 추출할 수 있다.Specifically, when words are listed in the form below, the main phrase extraction unit 200 may extract the corresponding word or the corresponding words as one sub-phrase.

1) B1) B

2) B-I2) B-I

3) B-I-I3) B-I-I

4) B-I-I-I4) B-I-I-I

1)번의 경우는 제1 태그(B)가 라벨링 라벨링된 하나의 단어를 하나의 하위 구절로 추출하는 것으로, 이때 제1 태그(B)가 라벨링 라벨링된 하나의 단어의 앞뒤로 제2 태그(O)가 라벨링된 단어가 없는 경우 단일 단어를 하나의 하위 구절로 추출한다.In the case of 1), the first tag (B) extracts one labeled word into one sub-phrase. At this time, the first tag (B) is labeled and the second tag (O) If there are no labeled words, single words are extracted as one sub-phrase.

2)번의 경우는 제1 태그(B)가 라벨링 라벨링된 제1 단어와, 제1 단어의 후속단어이면서 제2 태그가 라벨링된 제2 단어가 포함된 텍스트 데이터의 경우, 제1 단어와 제2 단어를 묶어 하나의 하위 구절로 추출한다.In the case of 2), in the case of text data including a first word labeled with the first tag B and a second word following the first word and labeled with the second tag, the first word and the second word are labeled. Group the words and extract them into one sub-phrase.

예컨대, 도 2 및 도 3에 도시된 바와 같이, 주요 구절 추출부(200)는 텍스트 데이터를 구성하는 각각의 단어에 태그를 라벨링한 후, 제1 태그(B)와 제2 태그(I)가 연속적으로 나열된 두 개의 단어인 '고기가 맛있네요'를 하나의 하위 구절로 추출한다.For example, as shown in FIGS. 2 and 3 , after the main phrase extractor 200 labels each word constituting text data with a tag, the first tag (B) and the second tag (I) are Two consecutive words, 'meat is delicious', are extracted as one sub-phrase.

2)번의 경우는 제1 태그(B)가 라벨링 라벨링된 제1 단어와, 제1 단어의 후속단어이면서 제2 태그가 라벨링된 제2 단어와, 제2 단어의 후속단어이면서 제2 태그가 라벨링된 제3 단어와 가 포함된 텍스트 데이터의 경우, 제1 단어, 제2 단어 및 제3 단어를 묶어 하나의 하위 구절로 추출한다. 이와 유사하게, 3)번의 경우는 제1 태그(B)가 라벨링된 제1 단어와, 제2 태그가 라벨링된 3개의 단어들이 제1 단어로부터 연속적으로 나열된 텍스트 데이터의 경우, 네 개의 단어를 묶어 하나의 하위 구절로 추출한다. 도 4는 주요 구절 추출부(200)에 의해 추출된 하위 구절들의 예시들이 도시되어 있다.In the case of No. 2), the first tag (B) is labeled, the labeled first word, the second word subsequent to the first word and labeled with the second tag, and the subsequent word of the second word and labeled with the second tag In the case of text data including the third word and , the first word, the second word, and the third word are grouped and extracted as one sub-phrase. Similarly, in the case of 3), in the case of text data in which the first word labeled with the first tag B and three words labeled with the second tag are consecutively arranged from the first word, four words are grouped together. Extract into one sub-phrase. 4 shows examples of sub-phrases extracted by the main phrase extractor 200 .

이와 같이, 주요 구절 추출부(200)는 개체명 인식모델을 통해 텍스트 데이터를 구성하는 각각의 단어가 미리 정의된 구절의 시작인지, 중간인지 또는 미리 정의된 구절이 아닌지를 구분하여 구절의 시작에 해당되는 단어에 제1 태그를 라벨링하고, 구절의 중간에 해당되는 단어에 제2 태그를 라벨링하며, 구절이 아닌 단어에 제3 태그를 라벨링한 후, 제1 태그가 라벨링된 하나의 단어를 하위 구절로 추출하거나, 제1 태그가 라벨링된 제1 단어와, 상기 제1 단어의 후속단어이면서 제2 태그가 라벨링된 적어도 하나의 제2단어를 묶어 하나의 하위 구절로 추출한다. 하위 구절 추출부(200)는 이와 같은 작업을 텍스트 데이터별로 반복 수행하여 모든 텍스트 데이터들로부터 하위 구절을 추출한다.In this way, the main phrase extractor 200 distinguishes whether each word constituting the text data is the beginning of a predefined phrase, the middle of a predefined phrase, or not a predefined phrase through the entity name recognition model, and determines the beginning of the phrase. After labeling the first tag to the corresponding word, labeling the second tag to the word corresponding to the middle of the phrase, labeling the third tag to the non-phrase word, and then labeling one word labeled with the first tag as a sub-word. A first word labeled with a first tag and at least one second word that is subsequent to the first word and labeled with a second tag are bundled and extracted as one sub-phrase. The sub-phrase extraction unit 200 repeatedly performs this operation for each text data to extract sub-phrases from all text data.

한편, 주요 구절 추출부(200)는 하위 구절 추출 과정에서, 하나의 텍스트 데이터로부터 미리 설정된 최대허용개수 이상의 하위 구절들이 추출되는 것을 막고자, 구절의 예시를 중요도순에 따라 하나의 텍스트 데이터로부터 최대허용개수 미만의 구절만 라벨링하고 추출될 수 있도록 학습시킨다. 예컨대, 하위 구절 추출부(200)는 하나의 텍스트 데이터에 5개의 구절이 있더라도, 중요도순에 따라 최대 3개의 하위 구절만 추출되도록 데이터를 구성하고 학습을 시켰기 때문에 최대허용개수(3개) 이상의 구절이 추출되지 않도록 한다.On the other hand, the main phrase extraction unit 200 selects examples of phrases from one text data in order of importance in order to prevent extraction of sub-phrases equal to or greater than the preset maximum allowable number from one text data in the process of extracting sub-phrases. Only phrases less than the allowable number are labeled and trained to be extracted. For example, even if there are 5 phrases in one text data, the sub-phrase extraction unit 200 configures the data and trains it so that only 3 sub-phrases are extracted according to the order of importance, so that the maximum allowable number of phrases (3) or more. Make sure this is not extracted.

이를 위해, 주요 구절 추출부(200)는 주요 속성의 우선순위를 미리 설정할 수 있으며, 맛, 식감 > 조리 방법 > 양 > 대상과 환경 > 편의성 순서로 우선순위를 설정할 수 있다. 이러한 경우, 주요 구절 추출부(200)는 5개의 하위 구절 중 제1, 2 하위 구절은 맛/식감에 대한 하위구절이고, 제3 하위 구절은 조리 방법에 대한 하위 구절이고, 제4 하위구절은 양에 대한 하위 구절이고, 제5 하위구절은 편의성에 대한 하위 구절인 것으로 확인되면, 우선순위가 낮은 제4,5 하위 구절을 제외한 제1, 2, 3 하위 구절만 해당 텍스트 데이터로부터 추출할 수 있다. 이와 같은 하위 구절 추출 규칙은 상품/서비스의 종류에 따라 다양하게 설정되는 것으로 이해되어야할 것이다.To this end, the main phrase extraction unit 200 may set priorities of main attributes in advance, and may set priorities in the order of taste, texture > cooking method > quantity > object and environment > convenience. In this case, the main phrase extraction unit 200 has the first and second sub-phrases among the 5 sub-phrases for taste/texture, the 3rd sub-phrase for cooking methods, and the 4th sub-phrase for cooking methods. If it is confirmed that it is a sub-phrase for quantity and the 5th sub-phrase is a sub-phrase for convenience, only the 1st, 2nd, and 3rd sub-phrases can be extracted from the text data, excluding the 4th and 5th sub-phrases, which have low priority. there is. It should be understood that such a sub-phrase extraction rule is set in various ways according to the type of product/service.

아래는 주요 구절 추출부(200)에 의해 추출된 하위 구절들의 일 예이다.Below is an example of sub-phrases extracted by the main phrase extractor 200 .

주요속성1: 맛, 식감Key attribute 1: taste, texture

"고기도 부드럽고 생각보다 맛있었어요 ㅎㅎ" -> "고기도 부드럽고""The meat was soft and it tasted better than I expected haha" -> "The meat is soft"

"만두 8개 한봉지에요. 그리 맵지도 않고 피도 쫄깃해요." -> "그리 맵지도 않고", "피도 쫄깃해요.""One bag of 8 dumplings. They are not too spicy and the blood is chewy." -> "It's not too spicy", "The blood is chewy."

"너무 너무 맛있어요 전문점 갈필요 없어요 ㅎ" -> "전문점 갈필요 없어요""It's so delicious, no need to go to a specialty store ha" -> "No need to go to a specialty store"

주요속성2: 조리 방법Key attribute 2: Cooking method

"맛있어서 재구매합니다 에어프라이어에 해먹기 좋아요" -> "에어프라이어에 해먹기 좋아요""It's delicious, so I'll buy it again. Good for air fryer" -> "Good for air fryer"

주요속성3: 양Key Attribute 3: Quantity

"혼자 먹기에 딱 좋은 양이에요. 햄과 김치가 들어있어서 좋아요." -> "혼자 먹기에 딱 좋은""It's just the right amount to eat alone. I like that it has ham and kimchi in it." -> "Perfect for eating alone"

"에어프라이어에 구워 먹으니 맛있네요 둘이 먹기 적당해요" -> "둘이 먹기 적당해요""It's delicious because it's cooked in an air fryer. It's suitable for two." -> "It's suitable for two."

주요속성4: 대상과 환경Key Attribute 4: Target and Environment

"캠핑갈때 가져갔어요. 양도 적당하고 좋네요" -> "캠핑갈때 가져갔어요""I took it when I went camping. The amount is just right and it's nice" -> "I took it when I went camping"

"아이들 간식으로 너무좋아요 다음에 또 주문" -> "아이들 간식으로"It's great as a snack for kids. I'll order it again next time" -> "As a snack for kids

"아주 맛나서 자주 시켜요~ 술안주로도 좋아요." -> "술안주로도 좋아요""It's very delicious, so I order it often~ It's also good as a snack." -> "It's good as a snack"

주요속성5: 편의성Key Attribute 5: Convenience

"조리가 간편해서 좋아요.추가로 소세지를 더넣고 조리했더니 너무 맛있습니다" -> "조리가 간편해서 좋아요.""I like it because it's easy to cook. I added more sausage and cooked it, and it's so delicious" -> "I like it because it's easy to cook."

"바쁜 주부의 일상을 도와주는 정말 좋은 제품" -> "바쁜 주부의 일상을 도와주는""A really good product that helps busy housewives' daily lives" -> "Helps busy housewives' daily lives"

주요 구절 추출부(200)는 복수의 상기 하위 구절들을 복수의 그룹으로 군집화하고, 각 그룹에 포함된 복수의 하위 구절들로부터 하나의 주요 구절을 추출한다.The main phrase extraction unit 200 clusters the plurality of sub-phrases into a plurality of groups and extracts one main phrase from the plurality of sub-phrases included in each group.

도 5는 주요 구절 추출부(200)의 전체 프로세스가 도시된 개념도이다.5 is a conceptual diagram showing the entire process of the main phrase extractor 200.

먼저, 주요 구절 추출부(200)는 BERT(Bidirectional Encoder Representations from Transformers) 모델을 이용하여 상기 하위 구절에 대한 임베딩 벡터를 생성한다. First, the main phrase extraction unit 200 generates an embedding vector for the sub phrase using a BERT (Bidirectional Encoder Representations from Transformers) model.

BERT 모델은 문맥을 이해하는 자연어 처리 모델로, 다양한 작업에 의해 학습된 사전 훈련된(Pre-trained) 언어 모델 중 가장 좋은 성능을 발휘하는 모델이다. BERT 모델은 특별 분류 토큰(CLS)을 이용하며, 특별 분류 토큰(CLS)이란, 문장 또는 어절 단위의 내제된 정보를 이용하여 분류 작업에 사용할 때, 문장 또는 어절의 내제된 정보를 담고 있을 수 있도록 학습된 BERT 고유의 토큰이다. 특별 분류 토큰(CLS)을 이용하는 방식은 다음과 같다. 핵심 문장을 추출하고 싶은 자연어 데이터를 문장 어절 단위로 나눈 뒤, 각 문장(어절)에 특별 분류 토큰(CLS)을 문장 앞에 추가한다. 특별 분류 토큰(CLS)은 '[CLS]'라는 단어를 문장 시작 부분에 추가하면 되기 때문에 다른 추가 제약조건 없이, 어떤 형태의 문장에도 추가가 가능하다. 이후, 모델에 의해 수치화된 특별 분류 토큰(CLS)의 벡터는 각 문장 사이의 유사도를 계산할 때 이용된다. 즉, 해당 특별 분류 토큰(CLS)은 BERT에서 문장 단위로 분류 작업을 실행할 때, 문장의 표현 벡터로 사용되는 토큰이며 특별 분류 토큰(CLS)의 표현 벡터를 문장 토큰의 임베딩 벡터(Embedding Vector)로 사용한다.The BERT model is a natural language processing model that understands context, and is the model that shows the best performance among pre-trained language models learned by various tasks. The BERT model uses a special classification token (CLS), which is a special classification token (CLS) that can contain the information inherent in a sentence or word when used for classification by using the information inherent in a sentence or word unit. It is a learned BERT unique token. The method of using the Special Classification Token (CLS) is as follows. After dividing the natural language data from which you want to extract key sentences into sentence-word units, a special classification token (CLS) is added in front of each sentence (word-word). The special classification token (CLS) can be added to any type of sentence without any additional constraints because the word '[CLS]' can be added to the beginning of the sentence. Then, the vector of special classification tokens (CLS) quantified by the model is used to calculate the degree of similarity between each sentence. That is, the corresponding special classification token (CLS) is a token used as a sentence expression vector when BERT executes a classification task on a sentence-by-sentence basis, and the expression vector of the special classification token (CLS) is used as an embedding vector of sentence tokens. use.

주요 구절 추출부(200)는 이와 같은 BERT 모델을 이용하여 각각의 하위 구절을 임베딩 벡터로 변환할 수 있으며, 이에 따라 단순 단어 정보가 아닌 문맥 정보가 반영된 임베딩 벡터를 활용할 수 있다.The main phrase extractor 200 may convert each sub-phrase into an embedding vector by using the BERT model, and thus may utilize an embedding vector in which context information other than simple word information is reflected.

이후, 주요 구절 추출부(200)는 복수의 하위 구절들 각각에 대하여 생성된 복수의 임베딩 벡터에 기초하여 복수의 상기 하위 구절들을 복수의 그룹으로 군집화한다. 이때 텍스트데이터 특성상 상품별 텍스트 수, 텍스트 내용이 상이하므로 상품별로 클러스터링 개수가 달라지게 된다.Thereafter, the main phrase extractor 200 clusters the plurality of sub-phrases into a plurality of groups based on the plurality of embedding vectors generated for each of the plurality of sub-phrases. At this time, since the number of texts and text content for each product are different due to the nature of text data, the number of clusterings for each product is different.

이때, 주요 구절 추출부(200)는 특정 상품에 대한 텍스트 데이터의 개수가 미리 설정된 기준값 이상으로 수집된 경우, 다시 말해 텍스트 데이터가 충분히 많이 수집된 경우 실루엣 스코어(silhoutte score)를 이용하여 군집화할 그룹의 개수를 최적화한다. At this time, the main phrase extraction unit 200 is a group to be clustered using a silhouette score when the number of text data for a specific product is collected at a preset reference value or more, that is, when a sufficiently large amount of text data is collected. optimize the number of

실루엣 스코어(silhoutte score)는 각 데이터 포인트와 주변 데이터 포인트들과의 거리 계산을 통해 산출된 값이며, 클러스터링된 데이터들이 적절하게 군집화되어있는지를 판단하기 위해 사용되는 기법이다. A silhouette score is a value calculated by calculating the distance between each data point and neighboring data points, and is a technique used to determine whether clustered data are appropriately clustered.

예컨대, 총 10개의 하위 구절에 대한 임베딩 벡터들이 3개의 군집으로 나눠졌다고 가정하면, 주요 구절 추출부(200)는 제1 클러스터에 포함된 제1 임베딩 벡터와, 제1 임베딩 벡터와 동일 클러스터(제1 클러스터)에 포함된 다른 임베딩 벡터들간의 평균 거리와, 제2 클러스터에 포함된 다른 엠베딩 벡터들간의 평균 거리와, 제3 클러스터에 포함된 다른 임베딩 벡터들간의 평균 거리를 각각 산출한다. 이와 같은 방법으로, 주요 구절 추출부(200)는 모든 임베딩 벡터들에 대하여 평균 거리들을 산출하여, 산출된 평균 거리들에 대한 평균값을 산출한 실루엣 스코어를 산출한다. For example, assuming that embedding vectors for a total of 10 sub-phrases are divided into 3 clusters, the main phrase extractor 200 extracts the first embedding vectors included in the first cluster and the same cluster as the first embedding vectors (the second cluster). An average distance between other embedding vectors included in cluster 1), an average distance between other embedding vectors included in the second cluster, and an average distance between other embedding vectors included in the third cluster are calculated, respectively. In this way, the main phrase extraction unit 200 calculates average distances for all embedding vectors, and calculates a silhouette score obtained by calculating an average value for the calculated average distances.

주요 구절 추출부(200)는 하위 구절들을 임의의 그룹 개수로 클러스터링했을때의 실루엣 스코어를 각각 산출하여, 산출된 실루엣 스코어가 가장 높은 클러스터링 개수로 군집화를 수행한다.The main phrase extraction unit 200 calculates silhouette scores when sub-phrases are clustered by an arbitrary number of groups, and performs clustering with the highest clustering number of calculated silhouette scores.

예컨대, 주요 구절 추출부(200)는 하위 구절들을 두 개의 그룹으로 군집화 하였을때, 세 개의 그룹으로 군집화 하였을때, 네 개의 그룹으로 군집화 하였을때, 다섯 개의 그룹으로 군집화 하였을 때 각각에 대한 실루엣 스코어를 산출하여, 다섯 개의 그룹으로 군집화하였을 때 실루엣 스코어가 가장 높게 나온 것으로 확인되면, 하위 구절들을 다섯 개의 그룹으로 군집화하는 클러스터링 작업을 수행한다.For example, when the main phrase extractor 200 clusters the sub-phrases into two groups, three groups, four groups, and five groups, the silhouette score for each When it is determined that the silhouette score is the highest when calculated and clustered into five groups, a clustering operation is performed to cluster sub-phrases into five groups.

몇몇 다른 실시예에서, 주요 구절 추출부는 특정 상품에 대한 클러스터링 작업을 수행함에 있어서, 특정 상품과 유사 상품의 군집화 그룹 개수에 따라 그룹별로 산출된 실루엣 스코어에 서로 다른 가중치를 부여할 수 있다.In some other embodiments, the key phrase extraction unit may assign different weights to silhouette scores calculated for each group according to the number of clustering groups of a specific product and similar products in performing a clustering operation on a specific product.

예를 들어, 주요 구절 추출부는 육개장 상품에 대한 클러스터링 작업을 수행함에 있어서, 다른 국물요리 상품(된장찌개, 김치찌개 등)에 대한 클러스터 개수를 검색하고, 이들의 평균 클러스터 개수를 산출하여 산출된 평균 클러스터 개수와 가장 유사한 클러스터에 대해 산출된 실루엣 스코어에 더 높은 가중치를 부여한다. 이에 따라, 주요 구절 추출부는 이미 검증된 상품에 대한 클러스터링 결과를 새로운 상품에 반영할 수 있어 데이터 분석의 신뢰성이 향상될 수 있다.For example, in performing a clustering task for yukgaejang products, the main phrase extraction unit searches for the number of clusters for other soup products (soybean paste stew, kimchi stew, etc.), calculates the average number of clusters, and calculates the average number of clusters. A higher weight is given to the silhouette score calculated for the cluster most similar to the number of clusters. Accordingly, the main phrase extraction unit can reflect the clustering result for the already verified product to the new product, so that the reliability of data analysis can be improved.

이후, 주요 구절 추출부는 각 클러스터에서 중심점과 가장 가까운 어느 하나의 하위 구절을 해당 클러스터의 대표 구절로 추출하고, 추출된 대표 구절을 주요 구절로 설정한다. 상술한 예시에서는 네 개의 그룹으로 군집화되었으므로, 주요 구절 추출부는 총 4개의 주요 구절을 추출할 수 있다.Thereafter, the main phrase extraction unit extracts a sub-phrase closest to the central point in each cluster as a representative phrase of the corresponding cluster, and sets the extracted representative phrase as the main phrase. In the above example, since four groups are clustered, the main phrase extraction unit can extract a total of four main phrases.

반면, 주요 구절 추출부(200)는 특정 상품에 대한 텍스트 데이터의 개수가 미리 설정된 기준값 미만으로 수집된 경우 미리 설정된 클러스터 개수에 따라 복수의 상기 하위 구절들을 복수의 그룹으로 군집화한다. 예를 들어, 주요 구절 추출부(200)는 특정 상품에 대해 수집된 텍스트 데이터가 100개 미만인 경우, 상술한 실루엣 스코어를 이용한 클러스터링 최적화 작업 없이 일괄적으로 4개의 그룹으로 하위 구절들을 군집화한다.On the other hand, when the number of text data for a specific product is less than a preset reference value, the main phrase extractor 200 clusters the plurality of sub-phrases into a plurality of groups according to the preset number of clusters. For example, when the number of text data collected for a specific product is less than 100, the main phrase extraction unit 200 clusters sub-phrases into 4 groups collectively without clustering optimization using the above-described silhouette score.

도 6은 최종적으로 추출된 주요 구절의 일 예가 도시된 도면으로, 이와 같은 방법으로 주요 구절 추출부는 각 상품에서 사용자 텍스트 내용을 대표하고, 한 상품 내에서의 독창성을 갖는 구절을 주요 구절로 추출할 수 있다.6 is a diagram showing an example of finally extracted main phrases. In this way, the main phrase extraction unit can represent user text contents in each product and extract a phrase having originality within a product as a main phrase. can

연관상품 추천부(300)는 특정 상품에서 추출된 주요 구절을 이용하여 해당 주요 구절과 관련된 다른 상품을 추천한다.The related product recommendation unit 300 recommends other products related to the main phrase using the main phrase extracted from a specific product.

종래에는 사용자의 구매이력이나 메타정보(카테고리)에 기반한 유사상품을 추천하는데 그치고 있으며, 예를 들어 사용자가 군만두 제품에 관심을 가지고 있는 경우, 종래에는 물만두, 찐만두, 김치만두 등과 같은 상품을 추천하는 것에 불과했다.Conventionally, similar products are recommended based on the user's purchase history or meta information (category). it was only

반면, 본 발명에 따른 주요 구절 추출 기술을 이용하면, 사용자가 군만두 제품으로부터 추출된 '에어프라이어로 구우면'이라는 주요 구절을 선택하는 경우, 연관상품 추천부는 유사상품인 다른 만두제품을 추천하는 것이 아니라 에어프라이어로 구울 수 있는 다른 제품(예컨대 핫도그, 너겟 등)을 추천하는 것을 특징으로 한다.On the other hand, when the main phrase extraction technique according to the present invention is used, when the user selects the main phrase 'air fryer' extracted from fried dumpling products, the related product recommendation unit does not recommend other dumpling products that are similar products. It is characterized by recommending other products (eg, hot dogs, nuggets, etc.) that can be baked in an air fryer.

이를 위해, 연관상품 추천부는 특정 상품과 관련된 텍스트 데이터로부터 추출된 주요 구절과 다른 상품에 대한 텍스트 데이터로부터 추출된 하위 구절들간의 임베딩 유사도를 산출한다.To this end, the related product recommendation unit calculates embedding similarity between a main phrase extracted from text data related to a specific product and sub-phrases extracted from text data related to other products.

도 7은 특정 상품에서 추출된 특정 주요 구절과 다른 상품에서 추출된 하위 구절들간의 평균 임베딩 유사도의 일 예가 도시된 도면으로, 연관상품 추천부는 미리 설정된 임계값 이상인 평균 임베딩 유사도를 갖는 상품을 추출하고, 추출된 상품을 특정 상품에 대한 연관상품으로 추천할 수 있다.7 is a diagram showing an example of the average embedding similarity between a specific main phrase extracted from a specific product and sub-phrases extracted from other products, and a related product recommendation unit extracts a product having an average embedding similarity greater than or equal to a preset threshold value; , the extracted product can be recommended as a related product for a specific product.

도 9는 이러한 관련상품 추천부에 의해 추천된 관련상품들의 구체적인 일 예가 도시된 도면으로, 도시된 바와 같이 사용자가 김치치즈 주먹밥로부터 추출된 복수의 주요 구절들 중 '에어프라이어로 구우면'이라는 주요 구절을 선택하면, 선택된 주요 구절과 관련된 다른 상품을 추천상품으로 제공받을 수 있다.FIG. 9 is a diagram showing a specific example of related products recommended by the related product recommendation unit. As shown in the figure, among a plurality of key phrases extracted from kimchi cheese rice balls by a user, the main phrase 'when baked in an air fryer' is shown. If you select , you can receive other products related to the selected main phrase as recommended products.

이와 같이, 연관상품 추천부는 상품과 관련된 상품이 아닌 주요 구절과 관련된 상품 추천으로 신상품, 다른 카테고리 상품 등 보다 다양한 상품 추천할 수 있으며, 텍스트에서 추출한 주요 구절과와 다른 제품들의 하위 구절들을 기반으로하여 실제 소비자의 후기가 반영된 관련 상품을 추천할 수 있다.In this way, the related product recommendation unit can recommend more diverse products such as new products and other category products by recommending products related to main phrases rather than products related to the product, and based on the main phrase extracted from the text and sub-phrases of other products You can recommend related products that reflect actual consumer reviews.

도 9는 본 발명의 일 실시예에 따른 주요 구절 추출을 이용한 관련상품 추천 방법의 개략적인 흐름이 도시된 도면이다.9 is a diagram showing a schematic flow of a related product recommendation method using main phrase extraction according to an embodiment of the present invention.

본 발명에 따른 주요 구절 추출을 이용한 관련상품 추천 방법은, 상술한 본 발명에 따른 주요 구절 추출을 이용한 관련상품 추천 장치에 의해 수행될 수 있다.The related product recommendation method using main phrase extraction according to the present invention may be performed by the above-described related product recommendation device using main phrase extraction according to the present invention.

도시된 바와 같이, 본 발명의 일 실시예에 따른 주요 구절 추출을 이용한 관련상품 추천 방법은 텍스트 데이터를 수집하는 단계(S10), 텍스트 데이터로부터 하위 구절을 추출하는 단계(S20), 추출된 복수의 하위 구절들을 복수의 그룹으로 군집화하고, 각 그룹에 포함된 복수의 하위 구절들로부터 하나의 주요 구절을 추출하는 단계(S30) 및 추출된 주요 구절과 다른 상품의 하위 구절간의 임베딩 유사도에 기초하여 특정 상품에 대한 연관상품을 추천하는 단계(S40)를 포함한다. 이와 같은 본 발명에 따른 주요 구절 추출 방법은 상술한 본 발명에 따른 주요 구절 추출을 이용한 관련상품 추천 장치에서 설명하였으므로, 반복되는 설명은 생략하기로 한다.As shown, the related product recommendation method using main phrase extraction according to an embodiment of the present invention includes collecting text data (S10), extracting sub-phrases from text data (S20), and extracting a plurality of extracted phrases. Clustering the sub-phrases into a plurality of groups, extracting one main phrase from the plurality of sub-phrases included in each group (S30), and specifying a specific phrase based on the embedding similarity between the extracted main phrase and sub-phrases of other products. It includes a step (S40) of recommending a product related to the product. Since the main phrase extraction method according to the present invention has been described in the related product recommendation device using the main phrase extraction according to the present invention, repeated description will be omitted.

상술한 본 발명의 일측면에 따르면, 종래의 키워드 추출 기법과 달리 텍스트 데이터로의 특징(함축성, 대표성, 독창성)이 잘 반영된 구절인 주요 구절(key phrase)을 신뢰성 있게 추출할 수 있으며, 추출된 주요 구절을 이용하여 연관상품을 추천텍스트함으로써, 사용자는 자신에게 유의미한 연관상품을텍스트 손쉽게 확인할 수 있다는 장점이 있다.According to one aspect of the present invention described above, unlike conventional keyword extraction techniques, it is possible to reliably extract a key phrase, which is a phrase in which the characteristics (implication, representativeness, originality) of text data are well reflected, and the extracted By recommending text for related products using key phrases, the user has the advantage of being able to easily check text for related products that are meaningful to him or her.

이와 같은, 본 발명에 따른 기술은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.As described above, the technology according to the present invention may be implemented as an application or implemented in the form of program instructions that can be executed through various computer components and recorded on a computer-readable recording medium. The computer readable recording medium may include program instructions, data files, data structures, etc. alone or in combination.

상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.Program instructions recorded on the computer-readable recording medium may be those specially designed and configured for the present invention, or those known and usable to those skilled in the art of computer software.

컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD 와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and magneto-optical media such as floptical disks. media), and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.

프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter or the like as well as machine language codes such as those produced by a compiler. The hardware device may be configured to act as one or more software modules to perform processing according to the present invention and vice versa.

이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구범위에 기재된 본 발명의 사상 및 공간으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to embodiments, those skilled in the art will understand that the present invention can be variously modified and changed without departing from the spirit and space of the present invention described in the claims below. You will be able to.

100: 텍스트 데이터 수집부
200: 주요 구절 추출부
300: 연관상품 추천부
100: text data collection unit
200: main phrase extraction unit
300: Related product recommendation unit

Claims (15)

상품별 텍스트 데이터를 수집하는 텍스트 데이터 수집부;
미리 학습된 개체명 인식(Named Entity Recognition, NER) 모델을 이용하여, 미리 정의된 구절의 시작에 해당되는 제1 단어와, 제1 단어의 후속단어이면서 구절의 중간에 해당되는 적어도 하나의 제2 단어를 묶어 하나의 하위 구절로 추출하고, 복수의 상기 하위 구절들을 복수의 그룹으로 군집화하고, 각 그룹에 포함된 복수의 하위 구절들로부터 하나의 주요 구절을 추출하는 주요 구절 추출부; 및
특정 상품에 대해 추출된 주요 구절을 다른 상품에 대해 추출된 하위 구절들과 비교한 결과에 따라 특정 상품과 연관된 관련상품을 추천하는 관련상품 추천부를 포함하되,
상기 주요 구절 추출부는,
BERT(Bidirectional Encoder Representations from Transformers) 모델을 이용하여 상기 하위 구절에 대한 임베딩 벡터를 생성하고, 복수의 하위 구절들 각각에 대하여 생성된 복수의 임베딩 벡터에 기초하여 복수의 상기 하위 구절들을 복수의 그룹으로 군집화하되,
수집 대상에 대한 텍스트 데이터의 개수가 미리 설정된 기준값 미만으로 수집된 경우, 미리 설정된 클러스터 개수에 따라 복수의 상기 하위 구절들을 복수의 그룹으로 군집화하고,
수집 대상에 대한 텍스트 데이터의 개수가 미리 설정된 기준값 이상으로 수집된 경우, 실루엣 스코어(silhoutte score)을 이용하여 군집화할 그룹의 개수를 동적으로 결정하며,
상기 관련상품 추천부는,
특정 상품에서 추출된 주요 구절과 다른 상품에서 추출된 하위 구절들간의 평균 임베딩 유사도를 산출하여, 미리 설정된 임계값 이상인 평균 임베딩 유사도를 갖는 하위 구절을 추출하고, 추출된 하위 구절에 대응되는 상품을 특정 상품에 대한 연관상품으로 추천하는, 주요 구절 추출을 이용한 관련상품 추천 장치.
a text data collection unit that collects text data for each product;
Using a pre-trained Named Entity Recognition (NER) model, a first word corresponding to the beginning of a predefined phrase and at least one second word subsequent to the first word and corresponding to the middle of the phrase a main phrase extraction unit which groups words and extracts them into one sub-phrase, clusters a plurality of the sub-phrases into a plurality of groups, and extracts one main phrase from a plurality of sub-phrases included in each group; and
Includes a related product recommendation unit that recommends related products related to a specific product according to the result of comparing the main phrase extracted for a specific product with sub-phrases extracted for other products,
The main phrase extraction part,
An embedding vector for the sub-phrase is generated using a BERT (Bidirectional Encoder Representations from Transformers) model, and a plurality of the sub-phrases are divided into a plurality of groups based on the plurality of embedding vectors generated for each of the plurality of sub-phrases. cluster, but
When the number of text data for the collection target is collected less than a preset reference value, a plurality of the sub-phrases are clustered into a plurality of groups according to the preset number of clusters;
When the number of text data for the collection target is collected more than a preset reference value, the number of groups to be clustered is dynamically determined using a silhouette score,
The related product recommendation unit,
By calculating the average embedding similarity between the main phrase extracted from a specific product and sub-phrases extracted from other products, sub-phrases having an average embedding similarity higher than a preset threshold are extracted, and the product corresponding to the extracted sub-phrase is specified. A related product recommendation device using key phrase extraction that recommends products as related products.
제1항에 있어서,
상기 주요 구절은 추출된 하위 구절들중에서 수집 대상의 특징을 다른 하위 구절들에 비하여 잘 나타낼 수 있는 하위구절이 선정되어 추출되되,
수집 대상별로 수집 데이터의 공통적 특징을 나타내는 대표성과, 수집 대상간에 수집 데이터의 차별성을 보여주는 독창성과, 수집 대상에 대한 수집 데이터의 내용을 요약적으로 나타내는 함축성에 의해 선정되는 것을 특징으로 하는, 주요 구절 추출을 이용한 관련상품 추천 장치.
According to claim 1,
The main phrase is extracted by selecting a sub-phrase that can better represent the characteristics of the collection target from among the extracted sub-phrases compared to other sub-phrases,
Key phrases characterized by being selected by representativeness representing common characteristics of collected data for each collection subject, originality showing differentiation of collected data among collection subjects, and connotation that summarizes the contents of collected data for collection subject A device for recommending related products using extraction.
제1항에 있어서,
상기 주요 구절 추출부는,
하나의 텍스트 데이터로부터 미리 설정된 구절 내 속성 중요도순에 따라 하나의 텍스트 데이터로부터 최대허용개수 미만의 하위 구절들을 추출하는, 주요 구절 추출을 이용한 관련상품 추천 장치.
According to claim 1,
The main phrase extraction part,
An apparatus for recommending related products using main phrase extraction, which extracts sub-phrases of less than the maximum allowable number from text data according to the order of importance of attributes within preset phrases from text data.
제1항에 있어서,
상기 주요 구절 추출부는,
상기 개체명 인식 모델을 통해 구절의 시작에 해당되는 단어에 제1 태그를 라벨링하고, 구절의 중간에 해당되는 단어에 제2 태그를 라벨링하며, 구절이 아닌 단어에 제3 태그를 라벨링한 후,
제1 태그가 라벨링된 하나의 단어를 하위 구절로 추출하거나,
제1 태그가 라벨링된 제1 단어와, 상기 제1 단어의 후속단어이면서 제2 태그가 라벨링된 적어도 하나의 제2단어를 묶어 하나의 하위 구절로 추출하는 것을 특징으로 하는, 주요 구절 추출을 이용한 관련상품 추천 장치.
According to claim 1,
The main phrase extraction part,
After labeling a first tag to a word corresponding to the beginning of a phrase through the entity name recognition model, labeling a second tag to a word corresponding to the middle of a phrase, and labeling a third tag to a word other than a phrase,
Extract one word labeled with the first tag as a sub-phrase,
Using main phrase extraction, characterized in that a first word labeled with a first tag and at least one second word following the first word and labeled with a second tag are bundled and extracted as one sub-phrase. Related product recommendation device.
삭제delete 삭제delete 제4항에 있어서,
상기 주요 구절 추출부는,
각 그룹에 포함된 복수의 임베딩 벡터로부터 어느 하나의 대표값을 추출하고, 추출된 대표값에 대응되는 하위 구절을 주요 구절로 추출하는, 주요 구절 추출을 이용한 관련상품 추천 장치.
According to claim 4,
The main phrase extraction part,
An apparatus for recommending related products using main phrase extraction, which extracts a representative value from a plurality of embedding vectors included in each group and extracts a sub-phrase corresponding to the extracted representative value as a main phrase.
삭제delete 주요 구절 추출을 이용한 관련상품 추천 장치에 의해 수행되는 관련상품 추천 방법으로,
상품별 텍스트 데이터를 수집하는 단계;
미리 학습된 개체명 인식(Named Entity Recognition, NER) 모델을 이용하여, 미리 정의된 구절의 시작에 해당되는 제1 단어와, 제1 단어의 후속단어이면서 구절의 중간에 해당되는 적어도 하나의 제2 단어를 묶어 하나의 하위 구절로 추출하고, 복수의 상기 하위 구절들을 복수의 그룹으로 군집화하고, 각 그룹에 포함된 복수의 하위 구절들로부터 하나의 주요 구절을 추출하는 단계; 및
특정 상품에 대해 추출된 주요 구절을 다른 상품에 대해 추출된 하위 구절들과 비교한 결과에 따라 특정 상품과 연관된 관련상품을 추천하는 단계를 포함하며,
상기 주요 구절을 추출하는 것은,
BERT(Bidirectional Encoder Representations from Transformers) 모델을 이용하여 상기 하위 구절에 대한 임베딩 벡터를 생성하고, 복수의 하위 구절들 각각에 대하여 생성된 복수의 임베딩 벡터에 기초하여 복수의 상기 하위 구절들을 복수의 그룹으로 군집화하되,
수집 대상에 대한 특정 상품에 대한 텍스트 데이터의 개수가 미리 설정된 기준값 미만으로 수집된 경우, 미리 설정된 클러스터 개수에 따라 복수의 상기 하위 구절들을 복수의 그룹으로 군집화하고,
특정 상품에 대한 텍스트 데이터의 개수가 미리 설정된 기준값 이상으로 수집된 경우, 실루엣 스코어(silhoutte score)을 이용하여 군집화할 그룹의 개수를 동적으로 결정하는 것을 특징으로 하고,
상기 관련상품을 추천하는 단계는,
특정 상품에서 추출된 주요 구절과 다른 상품에서 추출된 하위 구절들간의 평균 임베딩 유사도를 산출하여, 미리 설정된 임계값 이상인 평균 임베딩 유사도를 갖는 하위 구절을 추출하고, 추출된 하위 구절에 대응되는 상품을 특정 상품에 대한 연관상품으로 추천하는 것을 특징으로 하는, 주요 구절 추출을 이용한 관련상품 추천 방법.
As a related product recommendation method performed by a related product recommendation device using key phrase extraction,
Collecting text data for each product;
Using a pre-trained Named Entity Recognition (NER) model, a first word corresponding to the beginning of a predefined phrase and at least one second word subsequent to the first word and corresponding to the middle of the phrase grouping words and extracting them into one sub-phrase, clustering a plurality of sub-phrases into a plurality of groups, and extracting one main phrase from a plurality of sub-phrases included in each group; and
Comprising a step of recommending a related product related to a specific product according to a result of comparing the extracted main phrase for a specific product with sub-phrases extracted for other products,
Extracting the main phrase,
An embedding vector for the sub-phrase is generated using a BERT (Bidirectional Encoder Representations from Transformers) model, and a plurality of the sub-phrases are divided into a plurality of groups based on the plurality of embedding vectors generated for each of the plurality of sub-phrases. cluster, but
When the number of text data for a specific product to be collected is less than a preset reference value, a plurality of the sub-phrases are clustered into a plurality of groups according to the preset number of clusters;
Characterized in that, when the number of text data for a specific product is collected more than a preset reference value, the number of groups to be clustered is dynamically determined using a silhouette score,
The step of recommending the related product is,
By calculating the average embedding similarity between the main phrase extracted from a specific product and sub-phrases extracted from other products, sub-phrases having an average embedding similarity higher than a preset threshold are extracted, and the product corresponding to the extracted sub-phrase is specified. A related product recommendation method using main phrase extraction, characterized in that the product is recommended as a related product.
제9항에 있어서,
상기 주요 구절을 추출하는 단계는,
하나의 텍스트 데이터로부터 미리 설정된 구절 내 속성 중요도순에 따라 하나의 텍스트 데이터로부터 최대허용개수 미만의 하위 구절들을 추출하는 것을 특징으로 하는, 주요 구절 추출을 이용한 관련상품 추천 방법.
According to claim 9,
The step of extracting the main phrase,
A method of recommending related products using main phrase extraction, characterized in that sub-phrases less than the maximum allowable number are extracted from one text data according to the order of importance of attributes within preset passages from one text data.
제9항에 있어서,
상기 주요 구절을 추출하는 단계는,
상기 개체명 인식 모델을 통해 구절의 시작에 해당되는 단어에 제1 태그를 라벨링하고, 구절의 중간에 해당되는 단어에 제2 태그를 라벨링하며, 구절이 아닌 단어에 제3 태그를 라벨링한 후,
제1 태그가 라벨링된 하나의 단어를 하위 구절로 추출하거나,
제1 태그가 라벨링된 제1 단어와, 상기 제1 단어의 후속단어이면서 제2 태그가 라벨링된 적어도 하나의 제2단어를 묶어 하나의 하위 구절로 추출하는 것을 특징으로 하는, 주요 구절 추출을 이용한 관련상품 추천 방법.
According to claim 9,
The step of extracting the main phrase,
After labeling a first tag to a word corresponding to the beginning of a phrase through the entity name recognition model, labeling a second tag to a word corresponding to the middle of a phrase, and labeling a third tag to a word other than a phrase,
Extract one word labeled with the first tag as a sub-phrase,
Using main phrase extraction, characterized in that a first word labeled with a first tag and at least one second word following the first word and labeled with a second tag are bundled and extracted as one sub-phrase. How to recommend related products.
삭제delete 삭제delete 제9항에 있어서,
상기 주요 구절을 추출하는 단계는,
각 그룹에 포함된 복수의 임베딩 벡터로부터 어느 하나의 대표값을 추출하고, 추출된 대표값에 대응되는 하위 구절을 주요 구절로 추출하는 것을 특징으로 하는, 주요 구절 추출을 이용한 관련상품 추천 방법.
According to claim 9,
The step of extracting the main phrase,
A method for recommending related products using main phrase extraction, characterized in that a representative value is extracted from a plurality of embedding vectors included in each group, and a sub-phrase corresponding to the extracted representative value is extracted as a main phrase.
삭제delete
KR1020220080330A 2022-06-30 2022-06-30 System and Method for recomending related product using key phrase extraction KR102538519B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220080330A KR102538519B1 (en) 2022-06-30 2022-06-30 System and Method for recomending related product using key phrase extraction

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220080330A KR102538519B1 (en) 2022-06-30 2022-06-30 System and Method for recomending related product using key phrase extraction

Publications (1)

Publication Number Publication Date
KR102538519B1 true KR102538519B1 (en) 2023-05-31

Family

ID=86542661

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220080330A KR102538519B1 (en) 2022-06-30 2022-06-30 System and Method for recomending related product using key phrase extraction

Country Status (1)

Country Link
KR (1) KR102538519B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102146152B1 (en) * 2018-01-03 2020-08-28 세종대학교산학협력단 Sensory evaluation method and apparatus
KR102310487B1 (en) 2019-08-23 2021-10-08 주식회사 컨슈머인텔리전스 Apparatus and method for review analysis per attribute
KR102334404B1 (en) * 2021-04-07 2021-12-03 오브젠 주식회사 Merchandise recommendation server and control method thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102146152B1 (en) * 2018-01-03 2020-08-28 세종대학교산학협력단 Sensory evaluation method and apparatus
KR102310487B1 (en) 2019-08-23 2021-10-08 주식회사 컨슈머인텔리전스 Apparatus and method for review analysis per attribute
KR102334404B1 (en) * 2021-04-07 2021-12-03 오브젠 주식회사 Merchandise recommendation server and control method thereof

Similar Documents

Publication Publication Date Title
Tang et al. Aspect based fine-grained sentiment analysis for online reviews
JP5824532B2 (en) Relevant extraction system and method for surf shopping
CN109299994B (en) Recommendation method, device, equipment and readable storage medium
CN107833082B (en) Commodity picture recommendation method and device
KR102146152B1 (en) Sensory evaluation method and apparatus
CA2655196A1 (en) System and method for generating a display of tags
WO2022095798A1 (en) Copy generation method and apparatus, and electronic device, storage medium and program
WO2018237051A1 (en) Machine learning for marketing of branded consumer products
JP6920136B2 (en) Information processing system
Adnan et al. Sentiment analysis of restaurant review with classification approach in the decision tree-j48 algorithm
Nasim et al. ABSA toolkit: An open source tool for aspect based sentiment analysis
Kim et al. Automated text analysis based on skip‐gram model for food evaluation in predicting consumer acceptance
Rani et al. Study and comparision of vectorization techniques used in text classification
Li et al. Automating tourism online reviews: a neural network based aspect-oriented sentiment classification
CN112989056B (en) False comment identification method and device based on aspect features
KR102538519B1 (en) System and Method for recomending related product using key phrase extraction
KR102520248B1 (en) System and Method for filtering related review using key phrase extraction
Rana et al. Classifying customers’ journey from online reviews of Amazon fresh via sentiment analysis and topic modelling
KR102496212B1 (en) Device and Method for extracting key phrase
Hafez et al. Multi-criteria recommendation systems to foster online grocery
CN109472025B (en) Dish name extraction method and device
JP6178480B1 (en) DATA ANALYSIS SYSTEM, ITS CONTROL METHOD, PROGRAM, AND RECORDING MEDIUM
Abighail et al. Sentiment Analysis E-commerce Review
CN110019983A (en) Extended method, device and the electronic equipment of label construction
CN115618871A (en) Merchant text identification method, device, equipment and storage medium

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant