KR102404511B1 - Method, device and system for recommending customized product information based on artificial intelligence - Google Patents

Method, device and system for recommending customized product information based on artificial intelligence Download PDF

Info

Publication number
KR102404511B1
KR102404511B1 KR1020220020999A KR20220020999A KR102404511B1 KR 102404511 B1 KR102404511 B1 KR 102404511B1 KR 1020220020999 A KR1020220020999 A KR 1020220020999A KR 20220020999 A KR20220020999 A KR 20220020999A KR 102404511 B1 KR102404511 B1 KR 102404511B1
Authority
KR
South Korea
Prior art keywords
user
product
content
information
list
Prior art date
Application number
KR1020220020999A
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 KR1020220020999A priority Critical patent/KR102404511B1/en
Application granted granted Critical
Publication of KR102404511B1 publication Critical patent/KR102404511B1/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/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/0641Shopping interfaces
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Development Economics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Tourism & Hospitality (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

일실시예에 따르면, 장치에 의해 수행되는, 인공지능을 기반으로 사용자 맞춤형의 상품 정보를 추천하는 방법에 있어서, 제1 사용자의 SNS 계정에 업로드된 게시 자료를 수집하는 단계; 상기 게시 자료를 기반으로, 상기 제1 사용자에 대한 키워드 정보를 추출하는 단계; 상기 제1 사용자의 키워드 정보를 제1 인공 신경망에 적용하여, 상기 제1 인공 신경망의 출력을 기초로, 상기 제1 사용자에게 적합한 상품을 선정하는 단계; 상기 제1 사용자에게 적합한 상품으로 제1 상품이 선정되면, 상기 제1 사용자의 상품 구매 이력에 기초하여, 상기 제1 사용자가 상기 제1 상품을 구매한 적이 있는지 여부를 확인하는 단계; 및 상기 제1 사용자가 상기 제1 상품을 구매한 적이 없는 것으로 확인되면, 상기 제1 상품에 대한 추천 정보를 제1 사용자 단말로 제공하는 단계를 포함하는, 인공지능 기반 사용자 맞춤형 상품 정보 추천 방법이 제공된다.According to one embodiment, there is provided a method for recommending user-customized product information based on artificial intelligence performed by a device, the method comprising: collecting posted data uploaded to an SNS account of a first user; extracting keyword information about the first user based on the posted data; selecting a product suitable for the first user by applying the keyword information of the first user to a first artificial neural network and based on the output of the first artificial neural network; when a first product is selected as a product suitable for the first user, determining whether the first user has purchased the first product based on the product purchase history of the first user; and when it is confirmed that the first user has never purchased the first product, providing recommendation information on the first product to a first user terminal, an artificial intelligence-based user-customized product information recommendation method comprising the steps of: provided

Description

인공지능 기반 사용자 맞춤형 상품 정보 추천 방법, 장치 및 시스템 {METHOD, DEVICE AND SYSTEM FOR RECOMMENDING CUSTOMIZED PRODUCT INFORMATION BASED ON ARTIFICIAL INTELLIGENCE}Artificial intelligence-based user-customized product information recommendation method, device and system {METHOD, DEVICE AND SYSTEM FOR RECOMMENDING CUSTOMIZED PRODUCT INFORMATION BASED ON ARTIFICIAL INTELLIGENCE}

아래 실시예들은 인공지능을 기반으로 사용자 맞춤형의 상품 정보를 추천하기 위한 기술에 관한 것이다.The following embodiments relate to a technology for recommending user-customized product information based on artificial intelligence.

최근 들어, 모든 인터넷 공간이 개인의 취향과 성격을 고려한 맞춤형 서비스들로 채워지고 있다. 이는 더 많은 사용자들로부터 주목을 받고 소비가 이뤄져야 결국 수익으로 연결될 수 있기 때문이다.Recently, all Internet spaces are being filled with customized services considering individual tastes and characteristics. This is because it can eventually lead to profits only when it receives attention from more users and consumes it.

이에 따라, 광고와 마찬가지로 더 많이 노출되고 구매가 이뤄져야 하는 쇼핑 영역의 경우도 개인에게 최적화된 상품 추천이 매우 중요해지고 있다.Accordingly, in the case of a shopping area where more exposure and purchases must be made, similar to advertisements, product recommendations optimized for individuals are becoming very important.

하지만, 검색 키워드나 구매 이력을 이용한 기존의 개인화 추천은 정확도가 떨어지는 한계를 지닌다. 전통적인 개인화 추천 방법으로는 유사한 사용자들이 선호한 다른 아이템을 추천해주거나(Collaborative Filtering), 과거에 선호한 아이템과 내용이 유사한 다른 아이템을 추천해주는(Content-based Filtering) 방식 등이 주로 쓰였다.However, the existing personalized recommendation using search keywords or purchase history has a limit in which the accuracy is lowered. As a traditional personalized recommendation method, a method of recommending other items preferred by similar users (Collaborative Filtering) or recommending other items having similar contents to previously preferred items (Content-based Filtering) has been mainly used.

이때, 구매 이력이 없는 사용자나 소비된 적이 없는 아이템은 추천이 불가능하고, 정확도가 낮은 한계를 지닌다.In this case, it is impossible to recommend a user without a purchase history or an item that has never been consumed, and has a low accuracy limit.

따라서, 상술한 문제점들을 해결하면서, 사용자 맞춤형의 상품을 추천하는 기술에 대한 요구가 증대되고 있어, 이와 관련된 기술에 대한 연구가 요구된다.Therefore, while solving the above-mentioned problems, the demand for a technology for recommending a user-customized product is increasing, and research on the related technology is required.

한국등록특허 제10-2075038호Korean Patent Registration No. 10-2075038 한국등록특허 제10-2264258호Korean Patent No. 10-2264258 한국등록특허 제10-2135674호Korean Patent No. 10-2135674 한국등록특허 제10-2213768호Korean Patent Registration No. 10-2213768

일실시예에 따르면, 제1 사용자의 SNS 계정에 업로드된 게시 자료를 수집하고, 게시 자료를 기반으로, 제1 사용자에 대한 키워드 정보를 추출하고, 제1 사용자의 키워드 정보를 제1 인공 신경망에 적용하여, 제1 인공 신경망의 출력을 기초로, 제1 사용자에게 적합한 상품을 선정하고, 제1 사용자에게 적합한 상품으로 제1 상품이 선정되면, 제1 사용자의 상품 구매 이력에 기초하여, 제1 사용자가 제1 상품을 구매한 적이 있는지 여부를 확인하고, 제1 사용자가 제1 상품을 구매한 적이 없는 것으로 확인되면, 제1 상품에 대한 추천 정보를 제1 사용자 단말로 제공하는, 인공지능 기반 사용자 맞춤형 상품 정보 추천 방법, 장치 및 시스템을 제공하기 위한 것을 그 목적으로 한다.According to an embodiment, the posting data uploaded to the SNS account of the first user is collected, keyword information about the first user is extracted based on the posting data, and the keyword information of the first user is transferred to the first artificial neural network. By applying, based on the output of the first artificial neural network, a product suitable for the first user is selected, and when the first product is selected as a product suitable for the first user, based on the product purchase history of the first user, the first AI-based, which checks whether the user has ever purchased the first product, and provides recommendation information on the first product to the first user terminal when it is confirmed that the first user has never purchased the first product An object of the present invention is to provide a user-customized product information recommendation method, apparatus and system.

본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 명확하게 이해될 수 있을 것이다.The object of the present invention is not limited to the object mentioned above, and other objects not mentioned will be clearly understood from the description below.

일실시예에 따르면, 장치에 의해 수행되는, 인공지능을 기반으로 사용자 맞춤형의 상품 정보를 추천하는 방법에 있어서, 제1 사용자의 SNS 계정에 업로드된 게시 자료를 수집하는 단계; 상기 게시 자료를 기반으로, 상기 제1 사용자에 대한 키워드 정보를 추출하는 단계; 상기 제1 사용자의 키워드 정보를 제1 인공 신경망에 적용하여, 상기 제1 인공 신경망의 출력을 기초로, 상기 제1 사용자에게 적합한 상품을 선정하는 단계; 상기 제1 사용자에게 적합한 상품으로 제1 상품이 선정되면, 상기 제1 사용자의 상품 구매 이력에 기초하여, 상기 제1 사용자가 상기 제1 상품을 구매한 적이 있는지 여부를 확인하는 단계; 및 상기 제1 사용자가 상기 제1 상품을 구매한 적이 없는 것으로 확인되면, 상기 제1 상품에 대한 추천 정보를 제1 사용자 단말로 제공하는 단계를 포함하는, 인공지능 기반 사용자 맞춤형 상품 정보 추천 방법이 제공된다.According to one embodiment, there is provided a method for recommending user-customized product information based on artificial intelligence performed by a device, the method comprising: collecting posted data uploaded to an SNS account of a first user; extracting keyword information about the first user based on the posted data; selecting a product suitable for the first user by applying the keyword information of the first user to a first artificial neural network and based on the output of the first artificial neural network; when a first product is selected as a product suitable for the first user, determining whether the first user has purchased the first product based on the product purchase history of the first user; and when it is confirmed that the first user has never purchased the first product, providing recommendation information on the first product to a first user terminal, an artificial intelligence-based user-customized product information recommendation method comprising the steps of: provided

상기 인공지능 기반 사용자 맞춤형 상품 정보 추천 방법은, 상기 제1 사용자가 상기 제1 상품을 구매한 적이 있는 것으로 확인되면, 상기 제1 사용자의 상품 구매 이력에 기초하여, 상기 제1 상품의 구매 횟수를 확인하는 단계; 상기 제1 상품의 구매 횟수가 미리 설정된 기준 횟수 보다 많은지 여부를 확인하는 단계; 상기 제1 상품의 구매 횟수가 상기 기준 횟수 보다 많은 것으로 확인되면, 상기 제1 상품을 상기 제1 사용자의 선호 상품으로 설정하고, 상기 제1 상품에 대한 구매 패턴을 분석하는 단계; 상기 제1 상품의 구매 패턴에 기초하여, 상기 제1 상품에 대한 예상 구매일 및 예상 구매량을 예측하는 단계; 상기 제1 상품의 예상 구매일까지 상기 제1 사용자가 상기 제1 상품을 상기 예상 구매량 만큼 추가로 구매하지 않은 것으로 확인되면, 상기 제1 상품에 대한 추가 구매가 필요한 것으로 판단하는 단계; 및 상기 제1 상품에 대한 추가 구매가 필요한 경우, 상기 제1 상품에 대한 추가 구매 필요 알림 메시지를 상기 제1 사용자 단말로 전송하는 단계를 더 포함할 수 있다.In the artificial intelligence-based user-customized product information recommendation method, when it is confirmed that the first user has purchased the first product, the number of purchases of the first product is determined based on the product purchase history of the first user. checking; checking whether the number of purchases of the first product is greater than a preset reference number; when it is confirmed that the number of purchases of the first product is greater than the reference number, setting the first product as a preferred product of the first user and analyzing a purchase pattern for the first product; estimating an expected purchase date and an expected purchase amount for the first product, based on the purchase pattern of the first product; determining that additional purchase of the first product is necessary when it is confirmed that the first user has not additionally purchased the first product by the expected purchase amount by the expected purchase date of the first product; and when an additional purchase of the first product is required, transmitting a notification message of the need for additional purchase of the first product to the first user terminal.

상기 인공지능 기반 사용자 맞춤형 상품 정보 추천 방법은, 상기 제1 사용자에게 적합한 상품으로 복수의 상품이 선정되면, 상기 선정된 복수의 상품들로 추천 상품 목록을 생성하는 단계; 상기 추천 상품 목록에 상기 제1 사용자가 구매한 적이 있는 상품이 포함되어 있는지 여부를 확인하는 단계; 상기 추천 상품 목록에 포함된 상품들 중 제2 상품을 상기 제1 사용자가 구매한 적이 있는 것으로 확인되면, 상기 추천 상품 목록에서 상기 제2 상품을 삭제하는 단계; 상기 추천 상품 목록에 포함된 상품들의 수인 제1 수치가 미리 설정된 기준치 보다 작은지 여부를 확인하는 단계; 상기 제1 수치가 상기 기준치 보다 작은 것으로 확인되면, 상기 추천 상품 목록에 포함된 상품들 각각에 대한 추천 정보를 상기 제1 사용자 단말로 제공하는 단계; 및 상기 제1 수치가 상기 기준치 보다 작지 않은 것으로 확인되면, 상기 추천 상품 목록을 상기 제1 사용자 단말로 제공하는 단계를 더 포함할 수 있다.The artificial intelligence-based user-customized product information recommendation method may include, when a plurality of products are selected as suitable products for the first user, generating a list of recommended products using the selected plurality of products; checking whether a product that has been previously purchased by the first user is included in the recommended product list; deleting the second product from the recommended product list when it is confirmed that the first user has purchased a second product from among the products included in the recommended product list; checking whether a first value, which is the number of products included in the recommended product list, is smaller than a preset reference value; providing recommendation information for each of the products included in the recommended product list to the first user terminal when it is confirmed that the first value is smaller than the reference value; and if it is confirmed that the first value is not smaller than the reference value, providing the list of recommended products to the first user terminal.

일실시예에 따르면, 제1 사용자의 SNS 계정에 업로드된 게시 자료를 수집하고, 게시 자료를 기반으로, 제1 사용자에 대한 키워드 정보를 추출하고, 제1 사용자의 키워드 정보를 제1 인공 신경망에 적용하여, 제1 인공 신경망의 출력을 기초로, 제1 사용자에게 적합한 상품을 선정하고, 제1 사용자에게 적합한 상품으로 제1 상품이 선정되면, 제1 사용자의 상품 구매 이력에 기초하여, 제1 사용자가 제1 상품을 구매한 적이 있는지 여부를 확인하고, 제1 사용자가 제1 상품을 구매한 적이 없는 것으로 확인되면, 제1 상품에 대한 추천 정보를 제1 사용자 단말로 제공함으로써, 사용자 맞춤형의 상품을 추천할 수 있는 효과가 있다.According to an embodiment, the posting data uploaded to the SNS account of the first user is collected, keyword information about the first user is extracted based on the posting data, and the keyword information of the first user is transferred to the first artificial neural network. By applying, based on the output of the first artificial neural network, a product suitable for the first user is selected, and when the first product is selected as a product suitable for the first user, based on the product purchase history of the first user, the first It is checked whether the user has ever purchased the first product, and when it is confirmed that the first user has never purchased the first product, by providing recommendation information on the first product to the first user terminal, the user-customized It has the effect of recommending a product.

한편, 실시예들에 따른 효과들은 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 해당 기술 분야의 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.On the other hand, the effects according to the embodiments are not limited to those mentioned above, and other effects not mentioned will be clearly understood by those of ordinary skill in the art from the following description.

도 1은 일실시예에 따른 시스템의 구성을 개략적으로 나타낸 도면이다.
도 2는 일실시예에 따른 인공지능을 기반으로 사용자 맞춤형의 상품 정보를 추천하는 과정을 설명하기 위한 순서도이다.
도 3은 일실시예에 따른 구매 패턴을 통해 추가 구매 필요 여부를 판단하는 과정을 설명하기 위한 순서도이다.
도 4는 일실시예에 따른 추천 상품 목록을 제공하는 과정을 설명하기 위한 순서도이다.
도 5는 일실시예에 따른 우선순위에 따라 추천 상품 목록을 정렬하는 과정을 설명하기 위한 순서도이다.
도 6은 일실시예에 따른 콘텐츠 정독 시간을 산출하여 사용자의 허용 범위를 설정하는 과정을 설명하기 위한 순서도이다.
도 7은 일실시예에 따른 콘텐츠 정독 시간을 예측하여 콘텐츠 추천 정보를 제공하는 과정을 설명하기 위한 순서도이다.
도 8은 일실시예에 따른 제1 인공 신경망의 학습을 설명하기 위한 도면이다.
도 9는 일실시예에 따른 장치의 구성의 예시도이다.
1 is a diagram schematically showing the configuration of a system according to an embodiment.
2 is a flowchart illustrating a process of recommending user-customized product information based on artificial intelligence according to an embodiment.
3 is a flowchart illustrating a process of determining whether an additional purchase is necessary through a purchase pattern according to an exemplary embodiment.
4 is a flowchart illustrating a process of providing a list of recommended products according to an exemplary embodiment.
5 is a flowchart illustrating a process of sorting a list of recommended products according to priorities according to an exemplary embodiment.
6 is a flowchart illustrating a process of calculating a content reading time and setting a user's allowable range according to an exemplary embodiment.
7 is a flowchart illustrating a process of providing content recommendation information by predicting a content reading time according to an exemplary embodiment.
8 is a diagram for explaining learning of a first artificial neural network according to an embodiment.
9 is an exemplary diagram of a configuration of an apparatus according to an embodiment.

이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, since various changes may be made to the embodiments, the scope of the patent application is not limited or limited by these embodiments. It should be understood that all modifications, equivalents and substitutes for the embodiments are included in the scope of the rights.

실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Specific structural or functional descriptions of the embodiments are disclosed for purposes of illustration only, and may be changed and implemented in various forms. Accordingly, the embodiments are not limited to the specific disclosure form, and the scope of the present specification includes changes, equivalents, or substitutes included in the technical spirit.

제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Although terms such as first or second may be used to describe various elements, these terms should be interpreted only for the purpose of distinguishing one element from another. For example, a first component may be termed a second component, and similarly, a second component may also be termed a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.When a component is referred to as being “connected to” another component, it may be directly connected or connected to the other component, but it should be understood that another component may exist in between.

실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the examples are used for the purpose of description only, and should not be construed as limiting. The singular expression includes the plural expression unless the context clearly dictates otherwise. In this specification, terms such as "comprise" or "have" are intended to designate that a feature, number, step, operation, component, part, or a combination thereof described in the specification exists, but one or more other features It should be understood that this does not preclude the existence or addition of numbers, steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the embodiment belongs. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, in the description with reference to the accompanying drawings, the same components are given the same reference numerals regardless of the reference numerals, and the overlapping description thereof will be omitted. In describing the embodiment, if it is determined that a detailed description of a related known technology may unnecessarily obscure the gist of the embodiment, the detailed description thereof will be omitted.

실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다.The embodiments may be implemented in various types of products, such as personal computers, laptop computers, tablet computers, smart phones, televisions, smart home appliances, intelligent cars, kiosks, wearable devices, and the like.

인공지능(Artificial Intelligence, AI) 시스템은 인간 수준의 지능을 구현하는 컴퓨터 시스템이며, 기존 규칙(Rule) 기반의 스마트 시스템과 달리 기계가 스스로 학습하고 판단하는 시스템이다. 인공지능 시스템은 사용할수록 인식률이 향상되고 사용자 취향을 보다 정확하게 이해할 수 있게 되어, 기존 규칙 기반의 스마트 시스템은 점차 심층 학습(Deep Learning) 기반 인공지능 시스템으로 대체되고 있다.An artificial intelligence (AI) system is a computer system that implements human-level intelligence, and unlike the existing rule-based smart system, the machine learns and judges by itself. The more the AI system is used, the better the recognition rate and the more accurate understanding of user preferences, and the existing rule-based smart systems are gradually being replaced by deep learning-based AI systems.

인공지능 기술은 기계 학습 및 기계 학습을 활용한 요소기술들로 구성된다. 기계 학습은 입력 데이터들의 특징을 스스로 분류/학습하는 알고리즘 기술이며, 요소기술은 심층 학습 등의 기계 학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 기술로서, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야로 구성된다.Artificial intelligence technology consists of machine learning and element technologies using machine learning. Machine learning is an algorithm technology that categorizes/learns characteristics of input data by itself, and element technology uses machine learning algorithms such as deep learning to simulate functions such as cognition and judgment of the human brain. It consists of technical fields such as understanding, reasoning/prediction, knowledge expression, and motion control.

인공지능 기술이 응용되는 다양한 분야는 다음과 같다. 언어적 이해는 인간의 언어/문자를 인식하고 응용/처리하는 기술로서, 자연어 처리, 기계 번역, 대화시스템, 질의 응답, 음성 인식/합성 등을 포함한다. 시각적 이해는 사물을 인간의 시각처럼 인식하여 처리하는 기술로서, 객체 인식, 객체 추적, 영상 검색, 사람 인식, 장면 이해, 공간 이해, 영상 개선 등을 포함한다. 추론 예측은 정보를 판단하여 논리적으로 추론하고 예측하는 기술로서, 지식/확률 기반 추론, 최적화 예측, 선호 기반 계획, 추천 등을 포함한다. 지식 표현은 인간의 경험정보를 지식데이터로 자동화 처리하는 기술로서, 지식 구축(데이터 생성/분류), 지식 관리(데이터 활용) 등을 포함한다. 동작 제어는 차량의 자율 주행, 로봇의 움직임을 제어하는 기술로서, 움직임 제어(항법, 충돌, 주행), 조작 제어(행동 제어) 등을 포함한다.The various fields where artificial intelligence technology is applied are as follows. Linguistic understanding is a technology for recognizing and applying/processing human language/text, and includes natural language processing, machine translation, dialogue system, question and answer, and speech recognition/synthesis. Visual understanding is a technology for recognizing and processing objects like human vision, and includes object recognition, object tracking, image search, human recognition, scene understanding, spatial understanding, image improvement, and the like. Inferential prediction is a technology for logically reasoning and predicting by judging information, and includes knowledge/probability-based reasoning, optimization prediction, preference-based planning, and recommendation. Knowledge expression is a technology that automatically processes human experience information into knowledge data, and includes knowledge construction (data generation/classification) and knowledge management (data utilization). Motion control is a technology for controlling autonomous driving of a vehicle and movement of a robot, and includes motion control (navigation, collision, driving), manipulation control (action control), and the like.

일반적으로 기계 학습 알고리즘을 실생활에 적용하기 위해서는 기계 학습의 기본 방법론의 특성상 Trial and Error 방식으로 학습을 수행하게 된다. 특히, 심층 학습의 경우 수십만 번의 반복 실행을 필요로 한다. 이를 실제 물리적인 외부 환경에서 실행하기는 불가능하여 대신 실제 물리적인 외부 환경을 컴퓨터상에서 가상으로 구현하여 시뮬레이션을 통해 학습을 수행한다.In general, in order to apply a machine learning algorithm to real life, learning is performed in a trial and error method due to the characteristics of the basic methodology of machine learning. In particular, deep learning requires hundreds of thousands of iterations. It is impossible to execute this in the actual physical external environment, so instead, the actual physical external environment is implemented in a virtual computer on the computer, and learning is performed through simulation.

도 1은 일실시예에 따른 시스템의 구성을 개략적으로 나타낸 도면이다.1 is a diagram schematically showing the configuration of a system according to an embodiment.

도 1을 참조하면, 일실시예에 따른 시스템은 통신망을 통해 서로 통신 가능한 복수의 사용자 단말(100) 및 장치(200)를 포함할 수 있다.Referring to FIG. 1 , a system according to an embodiment may include a plurality of user terminals 100 and devices 200 capable of communicating with each other through a communication network.

먼저, 통신망은 유선 및 무선 등과 같이 그 통신 양태를 가리지 않고 구성될 수 있으며, 서버와 서버 간의 통신과 서버와 단말 간의 통신이 수행되도록 다양한 형태로 구현될 수 있다.First, the communication network may be configured regardless of its communication mode, such as wired and wireless, and may be implemented in various forms so that communication between a server and a server and communication between a server and a terminal are performed.

복수의 사용자 단말(100) 각각은 데스크탑 컴퓨터, 노트북, 태블릿, 스마트폰 등일 수 있다. 바람직하게, 도 1에 도시된 바와 같이, 제1 사용자 단말(110), 제2 사용자 단말(120), 제3 사용자 단말(130) 등은 스마트폰일 수 있으며, 실시예에 따라 달리 채용될 수도 있다. Each of the plurality of user terminals 100 may be a desktop computer, a notebook computer, a tablet, a smart phone, or the like. Preferably, as shown in FIG. 1 , the first user terminal 110 , the second user terminal 120 , the third user terminal 130 , etc. may be smartphones, and may be employed differently depending on the embodiment. .

복수의 사용자 단말(100) 각각은 통상의 컴퓨터가 가지는 연산 기능, 저장/참조 기능, 입출력 기능 및 제어 기능을 전부 또는 일부 수행하도록 구성될 수 있다. 복수의 사용자 단말(100)은 장치(200)와 유무선으로 통신하도록 구성될 수 있다.Each of the plurality of user terminals 100 may be configured to perform all or part of an arithmetic function, a storage/referencing function, an input/output function, and a control function of a typical computer. The plurality of user terminals 100 may be configured to communicate with the device 200 by wire or wireless.

복수의 사용자 단말(100) 각각은 장치(200)를 이용하여 서비스를 제공하는 자 내지 단체가 운영하는 웹 페이지에 접속되거나, 장치(200)를 이용하여 서비스를 제공하는 자 내지 단체가 개발·배포한 애플리케이션이 설치될 수 있다. 복수의 사용자 단말(100) 각각은 웹 페이지 또는 애플리케이션을 통해 장치(200)와 연동될 수 있다.Each of the plurality of user terminals 100 is connected to a web page operated by a person or group that provides a service using the device 200 , or is developed and distributed by a person or group that provides a service using the device 200 . One application can be installed. Each of the plurality of user terminals 100 may be linked with the device 200 through a web page or an application.

복수의 사용자 단말(100) 각각은 장치(200)에서 제공하는 웹 페이지, 애플리케이션을 등을 통해 장치(200)에 접속할 수 있다.Each of the plurality of user terminals 100 may access the device 200 through a web page or an application provided by the device 200 .

이하에서는 설명의 편의상, 제1 사용자 단말(110)의 동작을 위주로 설명하지만, 제2 사용자 단말(120) 등의 다른 사용자 단말에서 제1 사용자 단말(110)의 동작을 대신 수행할 수 있는 것은 물론이다.Hereinafter, for convenience of description, the operation of the first user terminal 110 will be mainly described, but other user terminals such as the second user terminal 120 may perform the operation of the first user terminal 110 instead. to be.

장치(200)는 장치(200)를 이용하여 서비스를 제공하는 자 내지 단체가 보유한 자체 서버일수도 있고, 클라우드 서버일 수도 있고, 분산된 노드(node)들의 p2p(peer-to-peer) 집합일 수도 있다. 장치(200)는 통상의 컴퓨터가 가지는 연산 기능, 저장/참조 기능, 입출력 기능 및 제어 기능을 전부 또는 일부 수행하도록 구성될 수 있다. 장치(200)는 추론 기능을 수행하는 적어도 하나 이상의 인공 신경망을 구비할 수 있다.The device 200 may be its own server owned by a person or organization that provides services using the device 200, may be a cloud server, or may be a peer-to-peer (p2p) set of distributed nodes. may be The device 200 may be configured to perform all or part of an arithmetic function, a storage/referencing function, an input/output function, and a control function of a typical computer. The device 200 may include at least one artificial neural network that performs an inference function.

장치(200)는 복수의 사용자 단말(100)과 유무선으로 통신하도록 구성될 수 있으며, 복수의 사용자 단말(100) 각각의 동작을 제어하고, 복수의 사용자 단말(100) 각각의 화면에 어느 정보를 표시할 것인지에 대해 제어할 수 있다.The device 200 may be configured to communicate with a plurality of user terminals 100 by wire or wirelessly, control an operation of each of the plurality of user terminals 100 , and display which information on each screen of the plurality of user terminals 100 . You can control what is displayed.

한편, 설명의 편의를 위해 도 1에서는 복수의 사용자 단말(100) 중 제1 사용자 단말(110), 제2 사용자 단말(120) 및 제3 사용자 단말(130)만을 도시하였으나, 단말들의 수는 실시예에 따라 얼마든지 달라질 수 있다. 장치(200)의 처리 용량이 허용하는 한, 단말들의 수는 특별한 제한이 없다.Meanwhile, for convenience of explanation, only the first user terminal 110 , the second user terminal 120 , and the third user terminal 130 are shown in FIG. 1 among the plurality of user terminals 100 , but the number of terminals is not It may vary depending on the example. As long as the processing capacity of the apparatus 200 allows, the number of terminals is not particularly limited.

일실시예에 따르면, 장치(200)는 인공지능을 기반으로 사용자 맞춤형의 상품을 선정하여, 선정된 상품에 대한 추천 정보를 사용자에게 제공할 수 있다.According to an embodiment, the device 200 may select a user-customized product based on artificial intelligence and provide recommendation information on the selected product to the user.

본 발명에서, 인공지능(Artificial Intelligence, AI)은 인간의 학습능력, 추론능력, 지각능력 등을 모방하고, 이를 컴퓨터로 구현하는 기술을 의미하고, 기계 학습, 심볼릭 로직(Symbolic Logic) 등의 개념을 포함할 수 있다. 기계 학습(Machine Learning, ML)은 입력 데이터들의 특징을 스스로 분류 또는 학습하는 알고리즘 기술이다. 인공지능의 기술은 기계 학습의 알고리즘으로써 입력 데이터를 분석하고, 그 분석의 결과를 학습하며, 그 학습의 결과에 기초하여 판단이나 예측을 할 수 있다. 또한, 기계 학습의 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 기술들 역시 인공지능의 범주로 이해될 수 있다. 예를 들어, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야가 포함될 수 있다.In the present invention, artificial intelligence (AI) refers to a technology that imitates human learning ability, reasoning ability, perceptual ability, etc., and implements it with a computer, and concepts such as machine learning and symbolic logic may include Machine Learning (ML) is an algorithm technology that classifies or learns characteristics of input data by itself. Artificial intelligence technology is an algorithm of machine learning that can analyze input data, learn the results of the analysis, and make judgments or predictions based on the results of the learning. In addition, technologies that use machine learning algorithms to simulate functions such as cognition and judgment of the human brain can also be understood as a category of artificial intelligence. For example, technical fields such as verbal comprehension, visual comprehension, reasoning/prediction, knowledge expression, and motion control may be included.

기계 학습은 데이터를 처리한 경험을 이용해 신경망 모델을 훈련시키는 처리를 의미할 수 있다. 기계 학습을 통해 컴퓨터 소프트웨어는 스스로 데이터 처리 능력을 향상시키는 것을 의미할 수 있다. 신경망 모델은 데이터 사이의 상관 관계를 모델링하여 구축된 것으로서, 그 상관 관계는 복수의 파라미터에 의해 표현될 수 있다. 신경망 모델은 주어진 데이터로부터 특징들을 추출하고 분석하여 데이터 간의 상관 관계를 도출하는데, 이러한 과정을 반복하여 신경망 모델의 파라미터를 최적화해 나가는 것이 기계 학습이라고 할 수 있다. 예를 들어, 신경망 모델은 입출력 쌍으로 주어지는 데이터에 대하여, 입력과 출력 사이의 매핑(상관 관계)을 학습할 수 있다. 또는, 신경망 모델은 입력 데이터만 주어지는 경우에도 주어진 데이터 사이의 규칙성을 도출하여 그 관계를 학습할 수도 있다.Machine learning may refer to the processing of training a neural network model using the experience of processing data. With machine learning, computer software could mean improving its own data processing capabilities. The neural network model is constructed by modeling the correlation between data, and the correlation may be expressed by a plurality of parameters. A neural network model extracts and analyzes features from given data to derive correlations between data, and repeating this process to optimize parameters of a neural network model can be called machine learning. For example, the neural network model may learn a mapping (correlation) between an input and an output with respect to data given as an input/output pair. Alternatively, the neural network model may learn the relationship by deriving regularity between the given data even when only input data is given.

인공지능 학습모델 또는 신경망 모델은 인간의 뇌 구조를 컴퓨터 상에서 구현하도록 설계될 수 있으며, 인간의 신경망의 뉴런(neuron)을 모의하며 가중치를 가지는 복수의 네트워크 노드들을 포함할 수 있다. 복수의 네트워크 노드들은 뉴런이 시냅스(synapse)를 통하여 신호를 주고받는 뉴런의 시냅틱(synaptic) 활동을 모의하여, 서로 간의 연결 관계를 가질 수 있다. 인공지능 학습모델에서 복수의 네트워크 노드들은 서로 다른 깊이의 레이어에 위치하면서 컨볼루션(convolution) 연결 관계에 따라 데이터를 주고받을 수 있다. 인공지능 학습모델은, 예를 들어, 인공 신경망 모델(Artificial Neural Network), 컨볼루션 신경망 모델(Convolution Neural Network: CNN) 등일 수 있다. 일 실시예로서, 인공지능 학습모델은, 지도학습(Supervised Learning), 비지도 학습(Unsupervised Learning), 강화 학습(Reinforcement Learning) 등의 방식에 따라 기계 학습될 수 있다. 기계 학습을 수행하기 위한 기계 학습 알고리즘에는, 의사결정트리(Decision Tree), 베이지안 망(Bayesian Network), 서포트 벡터 머신(Support Vector Machine), 인공 신경망(Artificial Neural Network), 에이다부스트(Ada-boost), 퍼셉트론(Perceptron), 유전자 프로그래밍(Genetic Programming), 군집화(Clustering) 등이 사용될 수 있다.The artificial intelligence learning model or neural network model may be designed to implement a human brain structure on a computer, and may include a plurality of network nodes that simulate neurons of a human neural network and have weights. A plurality of network nodes may have a connection relationship with each other by simulating a synaptic activity of a neuron through which a neuron sends and receives a signal through a synapse. In the AI learning model, a plurality of network nodes can exchange data according to a convolutional connection relationship while being located in layers of different depths. The artificial intelligence learning model may be, for example, an artificial neural network model, a convolutional neural network model, or the like. As an embodiment, the AI learning model may be machine-learned according to a method such as supervised learning, unsupervised learning, reinforcement learning, or the like. Machine learning algorithms for performing machine learning include decision trees, Bayesian networks, support vector machines, artificial neural networks, and Ada-boost. , Perceptron, Genetic Programming, Clustering, etc. may be used.

이중, CNN은 최소한의 전처리(preprocess)를 사용하도록 설계된 다계층 퍼셉트론(multilayer perceptrons)의 한 종류이다. CNN은 하나 또는 여러 개의 합성곱 계층과 그 위에 올려진 일반적인 인공 신경망 계층들로 이루어져 있으며, 가중치와 통합 계층(pooling layer)들을 추가로 활용한다. 이러한 구조 덕분에 CNN은 2차원 구조의 입력 데이터를 충분히 활용할 수 있다. 다른 딥러닝 구조들과 비교해서, CNN은 영상, 음성 분야 모두에서 좋은 성능을 보여준다. CNN은 또한 표준 역전달을 통해 훈련될 수 있다. CNN은 다른 피드포워드 인공신경망 기법들보다 쉽게 훈련되는 편이고 적은 수의 매개변수를 사용한다는 이점이 있다.Among them, CNN is a type of multilayer perceptrons designed to use minimal preprocessing. CNN consists of one or several convolutional layers and general artificial neural network layers on top of it, and additionally utilizes weights and pooling layers. Thanks to this structure, CNN can fully utilize the input data of the two-dimensional structure. Compared with other deep learning structures, CNN shows good performance in both video and audio fields. CNNs can also be trained through standard back-passing. CNNs are easier to train than other feed-forward neural network techniques and have the advantage of using fewer parameters.

컨볼루션 네트워크는 묶인 파라미터들을 가지는 노드들의 집합들을 포함하는 신경 네트워크들이다. 사용 가능한 트레이닝 데이터의 크기 증가와 연산 능력의 가용성이, 구분적 선형 단위 및 드롭아웃 트레이닝과 같은 알고리즘 발전과 결합되어, 많은 컴퓨터 비전 작업들이 크게 개선되었다. 오늘날 많은 작업에 사용할 수 있는 데이터 세트들과 같은 엄청난 양의 데이터 세트에서는 초과 맞춤(outfitting)이 중요하지 않으며, 네트워크의 크기를 늘리면 테스트 정확도가 향상된다. 컴퓨팅 리소스들의 최적 사용은 제한 요소가 된다. 이를 위해, 심층 신경 네트워크들의 분산된, 확장 가능한 구현예가 사용될 수 있다.Convolutional networks are neural networks that contain sets of nodes with bound parameters. The increasing size of available training data and the availability of computational power, coupled with advances in algorithms such as piecewise linear units and dropout training, have greatly improved many computer vision tasks. For huge data sets, such as those available for many tasks today, overfitting is not important, and increasing the size of the network improves test accuracy. Optimal use of computing resources becomes a limiting factor. To this end, a distributed, scalable implementation of deep neural networks may be used.

도 2는 일실시예에 따른 인공지능을 기반으로 사용자 맞춤형의 상품 정보를 추천하는 과정을 설명하기 위한 순서도이다.2 is a flowchart illustrating a process of recommending user-customized product information based on artificial intelligence according to an embodiment.

도 2를 참조하면, 먼저, S201 단계에서, 장치(200)는 제1 사용자의 SNS 계정에 업로드된 게시 자료를 수집할 수 있다.Referring to FIG. 2 , first, in step S201 , the device 200 may collect posting data uploaded to the SNS account of the first user.

구체적으로, 장치(200)는 제1 사용자 단말(110)로부터 사용자 맞춤형 상품에 대한 추천 요청을 수신할 수 있으며, 사용자 맞춤형 상품의 추천 요청에 따라, 제1 사용자의 회원 정보를 통해 제1 사용자의 SNS 계정을 확인하여, 제1 사용자의 SNS 계정에 업로드된 게시 자료를 수집할 수 있다. 여기서, 제1 사용자의 회원 정보는 제1 사용자가 서비스 이용을 위한 회원 가입 시 등록한 사용자 정보로, 연락처, SNS 계정, 이메일 등에 대한 정보를 포함할 수 있다. 장치(200)의 데이터베이스에는 사용자 별로 구분된 회원 정보가 저장되어 있어, 장치(200)는 데이터베이스에 저장된 정보를 조회하여 제1 사용자의 회원 정보를 획득할 수 있다.Specifically, the device 200 may receive a recommendation request for a user-customized product from the first user terminal 110, and according to the recommendation request for a user-customized product, the first user's member information By checking the SNS account, posting data uploaded to the SNS account of the first user may be collected. Here, the member information of the first user is user information registered when the first user signs up for a service to use the service, and may include information on contact information, SNS account, e-mail, and the like. Since member information classified for each user is stored in the database of the device 200 , the device 200 may obtain member information of the first user by inquiring information stored in the database.

장치(200)는 제1 사용자의 SNS 계정에 업로드된 게시 자료를 수집하는데 있어, 크롤링(Crawling) 등 다양한 기법을 통해, 제1 사용자의 SNS 계정에 업로드된 게시 자료를 수집할 수 있다.In collecting the posting data uploaded to the SNS account of the first user, the device 200 may collect the posting data uploaded to the SNS account of the first user through various techniques such as crawling.

S202 단계에서, 장치(200)는 제1 사용자의 SNS 계정에 업로드된 게시 자료를 기반으로, 제1 사용자에 대한 키워드 정보를 추출할 수 있다. 이때, 장치(200)는 게시 자료에 포함된 동영상, 이미지, 글자 등을 분석하여, 제1 사용자에 대한 키워드 정보를 추출할 수 있다.In step S202 , the device 200 may extract keyword information about the first user based on the posted data uploaded to the SNS account of the first user. In this case, the device 200 may extract keyword information about the first user by analyzing the moving picture, image, text, etc. included in the posted material.

예를 들어, 장치(200)는 제1 사용자의 SNS 계정에 업로드된 이미지의 해시 태그를 분석하여, “가로수길”, “카페”, “겨울” 등을 제1 사용자에 대한 키워드 정보로 추출할 수 있다.For example, the device 200 analyzes the hash tag of the image uploaded to the SNS account of the first user, and extracts “garosu-gil”, “cafe”, “winter”, etc. as keyword information for the first user. can

일실시예에 따르면, 장치(200)는 게시 자료 각각에서 추출된 키워드를 취합하여, 일정 횟수 보다 많이 추출된 키워드만을 선별한 후, 선별된 키워드를 제1 사용자의 키워드 정보로 추출할 수 있다.According to an embodiment, the device 200 may collect keywords extracted from each of the posted materials, select only keywords extracted more than a predetermined number of times, and then extract the selected keywords as keyword information of the first user.

예를 들어, 제1 사용자의 SNS 계정에 제1 이미지 및 제2 이미지가 게시되어 있는 경우, 장치(200)는 제1 이미지를 기반으로, “A”, “B” 키워드를 추출하고, 제2 이미지를 기반으로 “B”, “C 키워드를 추출할 수 있으며, 추출된 키워드를 취합하여 확인한 결과, “B” 키워드만 2회 이상 추출되었으므로, “B” 키워드를 제1 사용자의 키워드 정보로 추출할 수 있다.For example, if the first image and the second image are posted on the SNS account of the first user, the device 200 extracts the keywords “A” and “B” based on the first image, and the second “B” and “C keywords can be extracted based on the image. As a result of collecting and checking the extracted keywords, only the “B” keyword was extracted more than twice, so the “B” keyword was extracted as the keyword information of the first user. can do.

S203 단계에서, 장치(200)는 제1 사용자의 키워드 정보를 장치(200) 내에서 미리 학습된 제1 인공 신경망에 적용할 수 있다. 여기서, 제1 인공 신경망은 사용자의 키워드 정보를 입력 받은 후, 사용자에게 적합한 상품을 분석하여 출력하는 알고리즘일 수 있다.In step S203 , the device 200 may apply the keyword information of the first user to the first artificial neural network previously learned in the device 200 . Here, the first artificial neural network may be an algorithm that receives keyword information of a user and then analyzes and outputs a product suitable for the user.

S204 단계에서, 장치(200)는 제1 인공 신경망의 출력을 기초로, 제1 사용자에게 적합한 상품을 선정할 수 있다.In step S204 , the device 200 may select a product suitable for the first user based on the output of the first artificial neural network.

예를 들어, 장치(200)는 제1 사용자의 키워드 정보를 제1 인공 신경망에 적용하여, 제1 인공 신경망의 출력을 확인한 결과, 출력값이 “”으로 확인되면, 제1 사용자에게 적합한 상품을 제1 상품으로 선정하고, 출력값이 “1”로 확인되면, 제1 사용자에게 적합한 상품을 제2 상품으로 선정할 수 있다.For example, the device 200 applies the keyword information of the first user to the first artificial neural network, and as a result of checking the output of the first artificial neural network, if the output value is “”, it provides a product suitable for the first user When the first product is selected and the output value is “1”, a product suitable for the first user may be selected as the second product.

일실시예에 따르면, 제1 인공 신경망은 사용자의 키워드 정보를 통해 사용자에게 적합한 상품을 분석하도록 학습될 수 있다. 제1 인공 신경망은 도 8을 참조하여 후술되는 방법을 통해 학습될 수 있다. 이를 통해, 제1 인공 신경망은 사용자의 취향, 선호 분야, 관심 분야 등이 반영된 키워드 정보를 통해, 사용자의 특성을 고려하여 사용자에게 적합한 상품을 분석하여 출력할 수 있다.According to an embodiment, the first artificial neural network may be trained to analyze a product suitable for the user through the user's keyword information. The first artificial neural network may be learned through a method described later with reference to FIG. 8 . Through this, the first artificial neural network may analyze and output a product suitable for the user in consideration of the user's characteristics through keyword information reflecting the user's taste, preference field, interest field, and the like.

S205 단계에서, 장치(200)는 제1 사용자에게 적합한 상품으로 제1 상품이 선정되면, 제1 사용자의 상품 구매 이력에 기초하여, 제1 상품에 대한 구매 이력이 존재하는지 확인할 수 있다. 이를 위해, 장치(200)의 데이터베이스에는 사용자 별로 구분된 상품 구매 이력에 대한 정보가 저장되어 있으며, 장치(200)는 데이터베이스에 저장된 정보를 조회하여, 제1 사용자의 상품 구매 이력을 획득한 후, 제1 사용자의 상품 구매 이력에서 제1 상품에 대한 구매 이력이 존재하는지 확인할 수 있다. 여기서, 제1 사용자의 상품 구매 이력은 상품 별로 상품명, 구매일, 구매량 등의 정보를 포함할 수 있으며, 구매일 순으로 정렬되어 가장 최근에 구매된 내역이 먼저 확인될 수 있다.In step S205 , when the first product is selected as a product suitable for the first user, the device 200 may check whether a purchase history for the first product exists based on the product purchase history of the first user. To this end, the database of the device 200 stores information on product purchase histories classified for each user, and the device 200 obtains the product purchase history of the first user by inquiring the information stored in the database, It may be checked whether a purchase history for the first product exists in the product purchase history of the first user. Here, the product purchase history of the first user may include information such as product name, purchase date, and purchase amount for each product, and may be sorted in order of purchase date, and the most recent purchase history may be confirmed first.

S206 단계에서, 장치(200)는 제1 사용자의 상품 구매 이력에 제1 상품에 대한 구매 이력이 존재하는지를 확인하여, 제1 사용자가 제1 상품을 구매한 적이 있는지 여부를 확인할 수 있다.In step S206 , the device 200 may determine whether the first user has purchased the first product by checking whether a purchase history for the first product exists in the product purchase history of the first user.

S206 단계에서 제1 사용자의 상품 구매 이력에 제1 상품에 대한 구매 이력이 존재하는 것으로 확인되어, 제1 사용자가 제1 상품을 구매한 적이 있는 것으로 확인되면, S301 단계가 수행될 수 있으며, 이와 관련된 자세한 설명은 도 3을 참조하여 후술하기로 한다.If it is confirmed that the purchase history for the first product exists in the product purchase history of the first user in step S206 and it is confirmed that the first user has purchased the first product, step S301 may be performed, and A related detailed description will be described later with reference to FIG. 3 .

S206 단계에서 제1 사용자의 상품 구매 이력에 제1 상품에 대한 구매 이력이 존재하지 않는 것으로 확인되어, 제1 사용자가 제1 상품을 구매한 적이 없는 것으로 확인되면, S207 단계에서, 장치(200)는 제1 상품에 대한 추천 정보를 제1 사용자 단말(110)로 제공할 수 있다. 여기서, 추천 정보는 제1 상품의 주요 특징, 가격, 구매 페이지 연결 링크 등에 대한 정보를 포함할 수 있다.If it is confirmed that the purchase history for the first product does not exist in the product purchase history of the first user in step S206 and it is confirmed that the first user has never purchased the first product, in step S207, the device 200 may provide recommendation information on the first product to the first user terminal 110 . Here, the recommendation information may include information on main features of the first product, a price, a link to a purchase page, and the like.

도 3은 일실시예에 따른 구매 패턴을 통해 추가 구매 필요 여부를 판단하는 과정을 설명하기 위한 순서도이다.3 is a flowchart illustrating a process of determining whether an additional purchase is necessary through a purchase pattern according to an exemplary embodiment.

도 3을 참조하면, 먼저, S301 단계에서, 장치(200)는 제1 사용자가 제1 상품을 구매한 적이 있는 것으로 확인되면, 제1 사용자의 상품 구매 이력에 기초하여, 제1 상품의 구매 횟수를 확인할 수 있다. 이때, 장치(200)는 제1 사용자의 상품 구매 이력을 기반으로, 미리 설정된 기간(예를 들면, 최근 1개월) 이내에 제1 상품을 구매한 횟수를 산출하여, 제1 상품의 구매 횟수를 확인할 수 있다.Referring to FIG. 3 , first, in step S301 , when it is confirmed that the first user has purchased the first product, the device 200 purchases the first product based on the product purchase history of the first user. can be checked. In this case, the device 200 calculates the number of purchases of the first product within a preset period (eg, the last month) based on the product purchase history of the first user, and checks the number of purchases of the first product. can

S302 단계에서, 장치(200)는 제1 상품의 구매 횟수가 기준 횟수 보다 많은지 여부를 확인할 수 있다. 여기서, 기준 횟수는 실시예에 따라 상이하게 설정될 수 있다.In step S302 , the device 200 may determine whether the number of purchases of the first product is greater than the reference number. Here, the reference number may be set differently according to embodiments.

S302 단계에서 제1 상품의 구매 횟수가 기준 횟수 보다 많지 않은 것으로 확인되면, S301 단계로 되돌아가, 장치(200)는 일정 기간이 지난 후, 제1 사용자의 상품 구매 이력을 다시 획득하고, 새로 획득된 제1 사용자의 상품 구매 이력에 기초하여, 제1 상품의 구매 횟수를 다시 확인할 수 있다.If it is confirmed in step S302 that the number of purchases of the first product is not greater than the reference number, the process returns to step S301, and after a certain period of time has elapsed, the device 200 acquires the product purchase history of the first user again and acquires a new one Based on the product purchase history of the first user, the number of purchases of the first product may be checked again.

S302 단계에서 제1 상품의 구매 횟수가 기준 횟수 보다 많은 것으로 확인되면, S303 단계에서, 장치(200)는 제1 상품을 제1 사용자의 선호 상품으로 설정할 수 있다. 여기서, 제1 사용자의 선호 상품은 제1 사용자가 정기적으로 자주 사용하는 상품을 의미할 수 있다.If it is determined in step S302 that the number of purchases of the first product is greater than the reference number, in step S303 , the device 200 may set the first product as a preferred product of the first user. Here, the first user's preferred product may mean a product that the first user regularly uses frequently.

S304 단계에서, 장치(200)는 제1 상품이 제1 사용자의 선호 상품으로 설정되면, 제1 상품에 대한 구매 패턴을 분석할 수 있다. 이때, 장치(200)는 제1 사용자의 상품 구매 이력에 기초하여, 제1 상품의 구매 패턴을 분석할 수 있다.In step S304 , when the first product is set as a preferred product of the first user, the device 200 may analyze a purchase pattern for the first product. In this case, the device 200 may analyze the purchase pattern of the first product based on the product purchase history of the first user.

예를 들어, 제1 사용자의 상품 구매 이력을 통해, 제1 상품이 1월 1일에 20개, 1월 11일에 15개, 1월 21일에 25개 구매된 것이 확인되면, 장치(200)는 10일 간격으로 평균 10개씩 제1 상품의 구매가 이루어지는 것을 파악하여, 제1 상품의 구매 패턴을 분석할 수 있다.For example, if it is confirmed that 20 first products were purchased on January 1st, 15 pieces were purchased on January 11th, and 25 pieces were purchased on January 21st through the product purchase history of the first user, the device 200 ) can analyze the purchase pattern of the first product by understanding that an average of 10 purchases of the first product are made at 10-day intervals.

S305 단계에서, 장치(200)는 제1 상품의 구매 패턴에 기초하여, 제1 상품에 대한 예상 구매일 및 예상 구매량을 예측할 수 있다.In step S305 , the device 200 may predict an expected purchase date and an expected purchase amount for the first product based on the purchase pattern of the first product.

예를 들어, 제1 상품의 구매 패턴이 10일 간격으로 평균 10개씩 구매가 이루어지는 패턴으로 분석되고, 가장 최근에 제1 상품의 구매가 이루어진 날짜가 1월 21일인 경우, 장치(200)는 제1 상품에 대한 예상 구매일을 1월 31일로 예측하고, 예상 구매량을 10개로 예측할 수 있다.For example, if the purchase pattern of the first product is analyzed as a pattern in which an average of 10 purchases are made at 10-day intervals, and the most recent purchase of the first product is January 21, the device 200 It is possible to predict the expected purchase date of 1 product as January 31 and the expected purchase amount as 10.

S306 단계에서, 장치(200)는 제1 상품의 예상 구매일까지 제1 사용자가 제1 상품을 예상 구매량 만큼 추가로 구매하였는지 여부를 확인할 수 있다. 이때, 장치(200)는 제1 상품에 대한 예상 구매일 및 예상 구매량을 예측한 시점부터 제1 상품의 예상 구매일까지, 제1 사용자가 제1 상품을 예상 구매량 만큼 추가로 구매하였는지 여부를 확인할 수 있다.In step S306 , the device 200 may check whether the first user additionally purchases the first product by the expected purchase amount by the expected purchase date of the first product. In this case, the device 200 determines whether the first user additionally purchases the first product by the expected purchase amount from the time when the expected purchase date and the expected purchase amount for the first product are predicted to the expected purchase date of the first product can

예를 들어, 가장 최근에 제1 상품의 구매가 이루어진 날짜가 1월 21일이고, 제1 상품에 대한 예상 구매일이 1월 31일로 예측되고, 예상 구매량이 10개로 예측된 경우, 장치(200)는 1월 22일부터 1월 31일까지 제1 사용자가 제1 상품을 10개 추가로 구매하였는지 여부를 확인할 수 있다. 이때, 장치(200)는 주기적으로 제1 사용자의 상품 구매 이력을 획득하고, 주기적으로 획득된 제1 사용자의 상품 구매 이력에 기초하여, 제1 사용자가 제1 상품을 얼마나 많이 추가로 구매하였는지 여부를 확인할 수 있다.For example, when the most recent purchase of the first product is January 21, the expected purchase date of the first product is predicted as January 31, and the expected purchase amount is predicted to be 10, the device 200 ) may check whether the first user purchased 10 additional first products from January 22 to January 31. In this case, the device 200 periodically acquires the product purchase history of the first user, and based on the periodically obtained product purchase history of the first user, whether the first user additionally purchased the first product can be checked.

S306 단계에서 제1 상품의 예상 구매일까지 제1 사용자가 제1 상품을 예상 구매량 만큼 추가로 구매한 것으로 확인되면, S304 단계로 되돌아가, 장치(200)는 일정 기간이 지난 후, 제1 사용자의 상품 구매 이력을 다시 획득하고, 새로 획득된 제1 사용자의 상품 구매 이력에 기초하여, 제1 상품의 구매 패턴을 다시 분석할 수 있다.If it is confirmed in step S306 that the first user has additionally purchased the first product by the expected purchase amount of the first product by the expected purchase date of the first product in step S306, the process returns to step S304, and after a certain period of time, the device 200 returns to the first user may re-acquire a product purchase history of , and re-analyze a purchase pattern of the first product based on the newly acquired product purchase history of the first user.

S306 단계에서 제1 상품의 예상 구매일까지 제1 사용자가 제1 상품을 예상 구매량 만큼 추가로 구매하지 않은 것으로 확인되면, S307 단계에서, 장치(200)는 제1 상품에 대한 추가 구매가 필요한 것으로 판단할 수 있다.If it is determined in step S306 that the first user has not additionally purchased the first product by the expected purchase amount by the expected purchase date of the first product, in step S307, the device 200 determines that additional purchase of the first product is required. can judge

S308 단계에서, 장치(200)는 제1 상품에 대한 추가 구매가 필요한 경우, 제1 상품에 대한 추가 구매 필요 알림 메시지를 제1 사용자 단말(110)로 전송할 수 있다. 여기서, 제1 상품에 대한 추가 구매 필요 알림 메시지는 제1 상품에 대해 추가적인 구매가 필요한 것을 알려주는 알림 메시지로, 예상 구매일까지 남은 일자, 예상 구매량을 채우기 위해 필요한 구매량 등에 대한 정보를 포함할 수 있다In step S308 , when additional purchase of the first product is required, the device 200 may transmit an additional purchase required notification message for the first product to the first user terminal 110 . Here, the additional purchase required notification message for the first product is a notification message notifying that additional purchase is required for the first product, and may include information on the remaining days until the expected purchase date, the amount of purchase required to fill the expected purchase amount, etc. have

도 4는 일실시예에 따른 추천 상품 목록을 제공하는 과정을 설명하기 위한 순서도이다.4 is a flowchart illustrating a process of providing a list of recommended products according to an exemplary embodiment.

도 4를 참조하면, 먼저 S401 단계에서, 장치(200)는 제1 인공 신경망의 출력을 기초로, 제1 사용자에게 적합한 상품을 선정한 결과, 제1 사용자에게 적합한 상품으로 복수의 상품이 선정되면, 선정된 복수의 상품들로 추천 상품 목록을 생성할 수 있다.Referring to FIG. 4 , first, in step S401 , the device 200 selects a product suitable for the first user based on the output of the first artificial neural network. As a result, when a plurality of products are selected as products suitable for the first user, A list of recommended products may be created using a plurality of selected products.

예를 들어, 제1 인공 신경망은 제1 사용자의 키워드 정보를 고려하여, 제1 사용자에게 적합한 상품을 분석한 결과, 제1 상품, 제2 상품 및 제3 상품을 제1 사용자에게 적합한 상품으로 선정할 수 있으며, 장치(200)는 제1 상품, 제2 상품 및 제3 상품으로 추천 상품 목록을 생성할 수 있다.For example, as a result of analyzing a product suitable for the first user in consideration of the keyword information of the first user, the first artificial neural network selects the first product, the second product, and the third product as the product suitable for the first user , and the device 200 may generate a list of recommended products as the first product, the second product, and the third product.

S402 단계에서, 장치(200)는 추천 상품 목록에 제1 사용자가 구매한 적이 있는 상품이 포함되어 있는지 여부를 확인할 수 있다In step S402 , the device 200 may check whether a product that has been purchased by the first user is included in the recommended product list.

구체적으로, 장치(200)는 제1 사용자의 상품 구매 이력을 기반으로, 추천 상품 목록에 포함된 상품들 각각에 대한 구매 이력이 존재하는지를 확인하여, 추천 상품 목록에 제1 사용자가 구매한 적이 있는 상품이 포함되어 있는지 여부를 확인할 수 있다.Specifically, the device 200 determines whether there is a purchase history for each of the products included in the recommended product list based on the product purchase history of the first user, and the first user has purchased the product in the recommended product list. You can check whether the product is included or not.

예를 들어, 추천 상품 목록에는 제1 상품 및 제2 상품이 포함되어 있고, 제1 사용자의 상품 구매 이력에는 제2 상품에 대한 구매 이력이 포함되어 있는 경우, 장치(200)는 추천 상품 목록에 제1 사용자가 구매한 적이 있는 제2 상품이 포함되어 있는 것으로 확인할 수 있다.For example, when the recommended product list includes a first product and a second product, and the first user's product purchase history includes a purchase history for the second product, the device 200 is added to the recommended product list. It may be confirmed that the second product that the first user has purchased is included.

S402 단계에서 추천 상품 목록에 제1 사용자가 구매한 적이 있는 상품이 포함되어 있는 것으로 확인되면, S403 단계에서, 장치(200)는 추천 상품 목록에 포함된 상품들 중 제2 상품을 제1 사용자가 구매한 적이 있는 것으로 확인할 수 있다.If it is confirmed in step S402 that the product that the first user has purchased is included in the recommended product list, in step S403 , the device 200 allows the first user to select a second product from among the products included in the recommended product list You can confirm that you have purchased it.

S404 단계에서, 장치(200)는 추천 상품 목록에 포함된 상품들 중 제2 상품을 제1 사용자가 구매한 적이 있는 것으로 확인되면, 추천 상품 목록에서 제2 상품을 삭제할 수 있다.In step S404 , when it is confirmed that the first user has purchased the second product from among the products included in the recommended product list, the device 200 may delete the second product from the recommended product list.

한편, S402 단계에서 추천 상품 목록에 제1 사용자가 구매한 적이 있는 상품이 포함되어 있지 않은 것으로 확인되면, S405 단계에서, 장치(200)는 추천 상품 목록에 포함된 상품들의 수를 제1 수치로 설정할 수 있다.On the other hand, if it is confirmed in step S402 that the product that the first user has purchased is not included in the recommended product list, in step S405, the device 200 sets the number of products included in the recommended product list to the first value. can be set.

또한, S404 단계 이후, S405 단계에서, 장치(200)는 추천 상품 목록에서 제2 상품을 삭제한 후, 추천 상품 목록에 포함된 상품들의 수를 제1 수치로 설정할 수 있다.Also, after step S404, in step S405, the device 200 may set the number of products included in the recommended product list to the first value after deleting the second product from the recommended product list.

S406 단계에서, 장치(200)는 제1 수치가 기준치 보다 작은지 여부를 확인할 수 있다. 여기서, 기준치는 실시예에 따라 상이하게 설정될 수 있다.In step S406 , the device 200 may determine whether the first value is smaller than the reference value. Here, the reference value may be set differently depending on the embodiment.

S406 단계에서 제1 수치가 기준치 보다 작은 것으로 확인되면, S407 단계에서, 장치(200)는 추천 상품 목록에 포함된 상품들 각각에 대한 추천 정보를 제1 사용자 단말(110)로 제공할 수 있다.If it is determined in step S406 that the first value is smaller than the reference value, in step S407 , the device 200 may provide recommendation information for each of the products included in the recommended product list to the first user terminal 110 .

예를 들어, 추천 상품 목록에는 제1 상품 및 제2 상품이 포함되어 있어, 제1 수치가 2로 설정되고, 기준치가 3으로 설정되어 있는 경우, 장치(200)는 제1 수치가 기준치 보다 작기 때문에, 제1 상품에 대한 추천 정보와 제2 상품에 대한 추천 정보를 제1 사용자 단말(110)로 제공할 수 있다.For example, since the first product and the second product are included in the recommended product list, when the first value is set to 2 and the reference value is set to 3, the device 200 determines that the first value is less than the reference value Therefore, it is possible to provide the recommendation information for the first product and the recommendation information for the second product to the first user terminal 110 .

S406 단계에서 제1 수치가 기준치 보다 작지 않은 것으로 확인되면, S408 단계에서, 장치(200)는 추천 상품 목록을 제1 사용자 단말(110)로 제공할 수 있다.If it is confirmed in step S406 that the first value is not smaller than the reference value, in step S408 , the device 200 may provide a list of recommended products to the first user terminal 110 .

예를 들어, 추천 상품 목록에는 제1 상품, 제2 상품, 제3 상품 및 제4 상품이 포함되어 있어, 제1 수치가 4로 설정되고, 기준치가 3으로 설정되어 있는 경우, 장치(200)는 제1 수치가 기준치 보다 크기 때문에, 추천 상품 목록을 제1 사용자 단말(110)로 제공할 수 있다. 이때, 제1 사용자 단말(110)로 제공된 추천 상품 목록은 우선순위에 따라 정렬된 상태일 수 있으며, 이와 관련된 자세한 설명은 도 5를 참조하여 후술하기로 한다.For example, when the recommended product list includes a first product, a second product, a third product, and a fourth product, the first value is set to 4 and the reference value is set to 3, the device 200 Since the first value is greater than the reference value, it is possible to provide a list of recommended products to the first user terminal 110 . In this case, the list of recommended products provided to the first user terminal 110 may be in an ordered state according to priority, and a detailed description thereof will be described later with reference to FIG. 5 .

도 5는 일실시예에 따른 우선순위에 따라 추천 상품 목록을 정렬하는 과정을 설명하기 위한 순서도이다.5 is a flowchart illustrating a process of sorting a list of recommended products according to priorities according to an exemplary embodiment.

도 5를 참조하면, 먼저, S501 단계에서, 장치(200)는 제1 사용자의 카드 결제 내역 자료를 수집할 수 있다. 여기서, 제1 사용자의 카드 결제 내역 자료는 제1 사용자가 카드를 이용하여 가맹점에서 결제한 내역에 대한 자료로, 사용자 식별번호, 가맹점 식별번호, 가맹점 업종코드, 결제일자, 승인금액 정보 등을 포함할 수 있다. 이를 위해, 장치(200)는 복수의 사용자 단말(100) 각각으로부터 카드 결제 내역 자료를 개별적으로 수집할 수 있으며, 카드사 서버로부터 사용자 별 카드 결제 내역 자료를 통합하여 수집할 수도 있다.Referring to FIG. 5 , first, in step S501 , the device 200 may collect card payment history data of the first user. Here, the first user's card payment history data is data on the details of the first user's payment at the affiliated store using the card, and includes user identification number, affiliated store identification number, affiliated store industry code, payment date, approved amount information, etc. can do. To this end, the device 200 may individually collect card payment history data from each of the plurality of user terminals 100 , and may also collect card payment history data for each user from a card company server by integrating.

S502 단계에서, 장치(200)는 제1 사용자의 카드 결제 내역 자료를 기반으로, 제1 사용자의 소비 패턴을 분석할 수 있다.In step S502 , the device 200 may analyze the consumption pattern of the first user based on the card payment history data of the first user.

구체적으로, 장치(200)는 제1 사용자의 카드 결제 내역 자료를 기반으로, 카드 사용 가맹점의 위치가 어디인지 확인한 후, 제1 사용자가 주로 어느 지역에서 카드를 많이 사용하였는지를 파악하여, 제1 사용자의 소비 패턴을 분석할 수 있다.Specifically, the device 200 determines where the card-using affiliate store is located based on the card payment history data of the first user, and then determines in which region the first user mainly used the card, and the first user consumption patterns can be analyzed.

또한, 장치(200)는 제1 사용자의 카드 결제 내역 자료를 기반으로, 편의점, 병원, 약국, 쇼핑몰, 커피 등의 카드 사용 가맹점의 업종을 확인하여, 제1 사용자가 주로 어느 업종의 가맹점에서 카드를 많이 사용하였는지를 파악하여, 제1 사용자의 소비 패턴을 분석할 수 있다.In addition, the device 200, based on the card payment history data of the first user, by confirming the type of merchant using the card, such as convenience stores, hospitals, pharmacies, shopping malls, coffee, etc., the first user mainly in the merchant card in a certain industry It is possible to analyze the consumption pattern of the first user by determining whether the user has used a lot.

S503 단계에서, 장치(200)는 제1 사용자의 소비 패턴을 기초로, 제1 사용자와 유사한 소비 패턴을 가지는 사용자들을 그룹화하여, 제1 사용자 그룹으로 분류할 수 있다.In operation S503 , the device 200 may group users having a consumption pattern similar to that of the first user based on the consumption pattern of the first user and classify the group into a first user group.

예를 들어, 장치(200)는 제1 사용자의 소비 패턴을 분석한 결과, A 커피전문점에서 카드를 많이 사용한 것으로 파악되면, A 커피전문점에서 카드를 자주 사용하는 사용자들을 그룹화하여, 제1 사용자 그룹으로 분류할 수 있다.For example, when the device 200 analyzes the consumption pattern of the first user, and it is determined that the card is used a lot at the coffee shop A, the first user group is grouped by users who frequently use the card at the coffee shop A can be classified as

S504 단계에서, 장치(200)는 제1 사용자 그룹에 속하는 사용자들 각각의 상품 구매 이력을 획득할 수 있다.In step S504 , the device 200 may obtain a product purchase history of each of the users belonging to the first user group.

예를 들어, 제1 사용자, 제2 사용자 및 제3 사용자가 제1 사용자 그룹으로 분류된 경우, 장치(200)는 제1 사용자 그룹에 속하는 사용자들 중 제1 사용자를 제외한 나머지 사용자인 제2 사용자 및 제3 사용자를 확인한 후, 제2 사용자의 상품 구매 이력과 제3 사용자의 상품 구매 이력을 획득할 수 있다.For example, when the first user, the second user, and the third user are classified into the first user group, the device 200 sets the second user, which is the remaining users other than the first user, among users belonging to the first user group. and after checking the third user, the second user's product purchase history and the third user's product purchase history may be acquired.

S505 단계에서, 장치(200)는 제1 사용자 그룹에 속하는 사용자들이 추천 상품 목록에 포함된 상품들을 구매한 적이 있는지 확인하여, 추천 상품 목록에 포함된 상품 별로 구매 인원 수를 산출할 수 있다.In step S505 , the device 200 may determine whether users belonging to the first user group have purchased products included in the recommended product list, and may calculate the number of purchasers for each product included in the recommended product list.

예를 들어, 제1 사용자, 제2 사용자 및 제3 사용자가 제1 사용자 그룹으로 분류되어 있고, 추천 상품 목록에는 제1 상품, 제2 상품 및 제3 상품이 포함되어 있고, 제1 사용자의 상품 구매 이력에는 제1 상품 및 제2 상품에 대한 구매 이력이 포함되어 있고, 제2 사용자의 상품 구매 이력에는 제1 상품 및 제2 상품에 대한 구매 이력이 포함되어 있고, 제3 사용자의 상품 구매 이력에는 제1 상품 및 제3 상품에 대한 구매 이력이 포함되어 있는 경우, 장치(200)는 제1 사용자, 제2 사용자 및 제3 사용자가 제1 상품을 구매한 적이 있으므로, 제1 상품의 구매 인원 수를 3으로 산출할 수 있고, 제1 사용자 및 제2 사용자가 제2 상품을 구매한 적이 있으므로, 제2 상품의 구매 인원 수를 2로 산출할 수 있고, 제3 사용자가 제3 상품을 구매한 적이 있으므로, 제3 상품의 구매 인원 수를 1로 산출할 수 있다.For example, the first user, the second user, and the third user are classified into the first user group, the list of recommended products includes the first product, the second product, and the third product, and the product of the first user The purchase history includes a purchase history for the first product and the second product, the second user's product purchase history includes a purchase history for the first product and the second product, and the third user's product purchase history includes purchase histories for the first product and the third product, the device 200 includes the number of purchases of the first product because the first user, the second user, and the third user have purchased the first product. The number can be calculated as 3, and since the first user and the second user have purchased the second product, the number of purchasers of the second product can be calculated as 2, and the third user purchases the third product Since it has been done before, the number of purchasers of the third product can be calculated as 1.

S506 단계에서, 장치(200)는 추천 상품 목록에 포함된 상품들 각각의 구매 인원 수를 기준으로, 구매 인원 수가 많을수록 높은 점수를 부여하여, 추천 상품 목록에 포함된 상품들 각각에 대한 추천 점수를 산정할 수 있다.In step S506, the device 200 gives a higher score as the number of purchasers increases, based on the number of purchases of each of the products included in the recommended product list, and provides a recommendation score for each of the products included in the recommended product list. can be calculated

예를 들어, 제1 상품의 구매 인원 수가 3으로 산출되고, 제2 상품의 구매 인원 수가 2로 산출되고, 제3 상품의 구매 인원 수가 1로 산출된 경우, 장치(200)는 제1 상품의 추천 점수를 30점으로 산정하고, 제2 상품의 추천 점수를 20점으로 산정하고, 제3 상품의 추천 점수를 10점으로 산정할 수 있다.For example, when the number of people purchasing the first product is calculated as 3, the number of people purchasing the second product is calculated as 2, and the number of people purchasing the third product is calculated as 1, the device 200 may The recommendation score may be calculated as 30 points, the recommendation score of the second product may be calculated as 20 points, and the recommendation score of the third product may be calculated as 10 points.

S507 단계에서, 장치(200)는 추천 점수를 이용하여 추천 상품 목록에 포함된 상품들 각각의 우선순위를 설정할 수 있다.In step S507, the device 200 may set the priority of each of the products included in the recommended product list by using the recommendation score.

예를 들어, 제1 상품의 추천 점수가 30점이고, 제2 상품의 추천 점수가 20점이고, 제3 상품의 추천 점수가 10점인 경우, 장치(200)는 제1 상품의 우선순위를 1순위로 설정하고, 제2 상품의 우선순위를 2순위로 설정하고, 제3 상품의 우선순위를 3순위로 설정할 수 있다.For example, when the recommendation score of the first product is 30 points, the recommendation score of the second product is 20 points, and the recommendation score of the third product is 10 points, the device 200 sets the priority of the first product as the first priority. may be set, the priority of the second product may be set as the second priority, and the priority of the third product may be set as the third priority.

S508 단계에서, 장치(200)는 추천 상품 목록에 포함된 상품들 각각에 설정된 우선순위를 기반으로, 우선순위가 높은 순으로 추천 상품 목록을 정렬할 수 있다.In step S508, the device 200 may sort the list of recommended products in the order of priority, based on the priority set for each of the products included in the list of recommended products.

S509 단계에서, 장치(200)는 정렬된 추천 상품 목록을 제1 사용자 단말(110)로 제공할 수 있다.In step S509 , the device 200 may provide the sorted list of recommended products to the first user terminal 110 .

도 6은 일실시예에 따른 콘텐츠 정독 시간을 산출하여 사용자의 허용 범위를 설정하는 과정을 설명하기 위한 순서도이다.6 is a flowchart illustrating a process of calculating a content reading time and setting a user's allowable range according to an exemplary embodiment.

도 6을 참조하면, 먼저, S601 단계에서, 장치(200)는 제1 사용자 단말(110)로부터 상품 정보를 제공하는 웹 사이트에 대한 접속 요청을 수신할 수 있다.Referring to FIG. 6 , first, in step S601 , the device 200 may receive a request for access to a website providing product information from the first user terminal 110 .

S602 단계에서, 장치(200)는 상품 정보를 제공하는 웹 사이트에 대한 접속 요청에 따라, 해당 웹 사이트에 접속되도록 처리하여, 웹 사이트의 홈 페이지를 제1 사용자 단말(110)로 제공하고, 홈 페이지가 제1 사용자 단말(110)의 화면에 표시되도록, 제1 사용자 단말(110)의 동작을 제어할 수 있다.In step S602, the device 200 processes to access the web site according to the request for access to the web site providing product information, and provides the home page of the web site to the first user terminal 110, The operation of the first user terminal 110 may be controlled so that the page is displayed on the screen of the first user terminal 110 .

S603 단계에서, 장치(200)는 제1 사용자 계정을 확인하여, 제1 사용자 정보를 획득할 수 있다. 이때, 장치(200)는 제1 사용자 단말(110)에 로그인 되어 있는 제1 사용자 계정을 확인하고, 제1 사용자 계정을 통해 데이터베이스에 저장된 사용자 정보를 조회하여, 데이터베이스로부터 제1 사용자 정보를 획득할 수 있다. 여기서, 제1 사용자 정보는 제1 사용자에 대한 사용자 정보로, 제1 사용자의 프로필 정보, 콘텐츠 이용 내역 등을 포함할 수 있다.In step S603 , the device 200 may obtain the first user information by checking the first user account. At this time, the device 200 checks the first user account logged in to the first user terminal 110, inquires the user information stored in the database through the first user account, and obtains the first user information from the database. can Here, the first user information is user information about the first user, and may include profile information of the first user, content use history, and the like.

S604 단계에서, 장치(200)는 제1 사용자 단말(110)로부터 제1 콘텐츠에 대한 조회 요청을 수신할 수 있다. 여기서, 제1 콘텐츠는 제1 상품의 사용법에 대한 설명을 주제로 하여 제작된 콘텐츠를 의미할 수 있다.In step S604 , the device 200 may receive a query request for the first content from the first user terminal 110 . Here, the first content may mean content produced with the subject of a description of how to use the first product.

구체적으로, 장치(200)는 제1 사용자 단말(110)의 화면에 표시된 홈 페이지 상에서 제1 콘텐츠의 대표 이미지가 클릭되면, 제1 사용자 단말(110)로부터 제1 콘텐츠에 대한 조회 요청을 수신할 수 있다. 이때, 제1 콘텐츠가 제1 상품의 사용법을 설명하는 콘텐츠인 경우, 제1 콘텐츠의 대표 이미지는 제1 상품의 이미지이고, 제1 콘텐츠에 대한 조회 요청은 제1 상품의 사용법에 관한 상세 정보를 조회하는 요청일 수 있다.Specifically, when the representative image of the first content is clicked on the home page displayed on the screen of the first user terminal 110 , the device 200 receives a query request for the first content from the first user terminal 110 . can At this time, if the first content is content that explains how to use the first product, the representative image of the first content is the image of the first product, and the inquiry request for the first content includes detailed information on how to use the first product It can be a request to query.

S605 단계에서, 장치(200)는 제1 콘텐츠를 확인하여, 제1 콘텐츠 정보를 획득할 수 있다. 이때, 장치(200)는 제1 콘텐츠에 대한 조회 요청을 통해 제1 콘텐츠를 확인하고, 데이터베이스에 저장된 콘텐츠 정보를 조회하여, 데이터베이스로부터 제1 콘텐츠 정보를 획득할 수 있다. 여기서, 제1 콘텐츠 정보는 제1 콘텐츠에 대한 콘텐츠 정보로, 제1 콘텐츠의 속성 정보, 사용자 이용 내역 등을 포함할 수 있다.In step S605 , the device 200 may obtain first content information by checking the first content. In this case, the device 200 may obtain the first content information from the database by checking the first content through the inquiry request for the first content, inquiring the content information stored in the database. Here, the first content information is content information about the first content, and may include attribute information of the first content, user usage history, and the like.

S606 단계에서, 장치(200)는 제1 콘텐츠 정보를 통해 제1 콘텐츠의 사용자 조회 내역을 획득할 수 있다. 여기서, 제1 콘텐츠 정보는 제1 콘텐츠를 정독한 사용자의 조회 내역을 포함할 수 있으며, 제1 콘텐츠의 사용자 조회 내역은 어느 사용자가 제1 콘텐츠를 얼마나 오래 정독하였는지에 대한 내역을 포함할 수 있다.In step S606 , the device 200 may obtain the user inquiry details of the first content through the first content information. Here, the first content information may include the inquiry details of the user who perusively read the first content, and the user inquiry details of the first content may include the details of which user perusively read the first content for how long.

예를 들어, 제1 사용자 단말(110)의 화면에 제1 콘텐츠가 표시된 경우, 제1 콘텐츠에 대한 웹 페이지가 표시된 시점부터, 제1 콘텐츠에 대한 웹 페이지에서 다른 페이지로 이동한 시점까지, 제1 콘텐츠의 정독 시간으로 측정되어, 제1 사용자 및 제1 콘텐츠의 정독 시간이 제1 콘텐츠의 사용자 조회 내역에 추가될 수 있다.For example, when the first content is displayed on the screen of the first user terminal 110, from the time the web page for the first content is displayed to the time when the web page for the first content moves to another page, the second Measured as the perusal time of one content, the first user and the perusal time of the first content may be added to the user inquiry history of the first content.

S607 단계에서, 장치(200)는 제1 콘텐츠의 사용자 조회 내역을 기초로, 사용자 별로 정독 시간을 확인할 수 있다.In step S607 , the device 200 may check the reading time for each user based on the user inquiry details of the first content.

예를 들어, 제1 콘텐츠의 사용자 조회 내역에 제1 사용자, 제2 사용자 및 제3 사용자가 조회한 사용자로 등록되어 있는 경우, 장치(200)는 제1 사용자의 정독 시간, 제2 사용자의 정독 시간 및 제3 사용자의 정독 시간을 각각 확인할 수 있다.For example, when the first user, the second user, and the third user are registered as the inquired users in the user inquiry history of the first content, the device 200 determines the reading time of the first user and the reading of the second user You can check the time and the third user's perusal time, respectively.

S608 단계에서, 장치(200)는 사용자 별로 확인된 정독 시간의 평균값을 통해, 제1 콘텐츠의 평균 정독 시간을 산출할 수 있다.In step S608 , the device 200 may calculate the average reading time of the first content through the average value of the reading times checked for each user.

예를 들어, 제1 사용자가 제1 콘텐츠를 정독한 시간이 10초, 제2 사용자가 제1 콘텐츠를 정독한 시간이 30초, 제3 사용자가 제1 콘텐츠를 정독한 시간이 50초인 경우, 장치(200)는 제1 콘텐츠의 평균 정독 시간을 30초로 산출할 수 있다.For example, if the time that the first user peruses the first content is 10 seconds, the time that the second user peruses the first content is 30 seconds, and the time that the third user peruses the first content is 50 seconds, The device 200 may calculate the average reading time of the first content as 30 seconds.

S609 단계에서, 장치(200)는 제1 콘텐츠의 평균 정독 시간의 길이에 따라, 기준 시간을 설정할 수 있다.In step S609 , the device 200 may set a reference time according to the length of the average reading time of the first content.

예를 들어, 장치(200)는 제1 콘텐츠의 평균 정독 시간이 1분인 경우, 기준 시간을 15초로 설정하고, 제1 콘텐츠의 평균 정독 시간이 2분인 경우, 기준 시간을 30초로 설정할 수 있다. 기준 시간을 설정하는 기준은 실시예에 따라 상이하게 설정될 수 있다.For example, the device 200 may set the reference time to 15 seconds when the average perusing time of the first content is 1 minute, and set the reference time to 30 seconds when the average perusing time of the first content is 2 minutes. The criterion for setting the reference time may be set differently depending on the embodiment.

S610 단계에서, 장치(200)는 제1 콘텐츠의 평균 정독 시간에서 기준 시간을 차감한 값으로, 사용자 허용 범위의 최소 시간을 산출할 수 있다.In operation S610 , the device 200 may calculate the minimum time within the user permissible range as a value obtained by subtracting the reference time from the average reading time of the first content.

예를 들어, 장치(200)는 제1 콘텐츠의 평균 정독 시간이 1분이고, 기준 시간이 15초인 경우, 사용자 허용 범위의 최소 시간을 45초로 산출할 수 있다.For example, when the average reading time of the first content is 1 minute and the reference time is 15 seconds, the device 200 may calculate the minimum time of the user permissible range as 45 seconds.

S611 단계에서, 장치(200)는 제1 콘텐츠의 평균 정독 시간에 기준 시간을 가산한 값으로, 사용자 허용 범위의 최대 시간을 산출할 수 있다.In step S611 , the device 200 may calculate the maximum time of the user permissible range as a value obtained by adding the reference time to the average reading time of the first content.

예를 들어, 장치(200)는 제1 콘텐츠의 평균 정독 시간이 1분이고, 기준 시간이 15초인 경우, 사용자 허용 범위의 최대 시간을 75초로 산출할 수 있다.For example, when the average reading time of the first content is 1 minute and the reference time is 15 seconds, the device 200 may calculate the maximum time of the user permissible range as 75 seconds.

S612 단계에서, 장치(200)는 사용자 허용 범위의 최소 시간 및 사용자 허용 범위의 최대 시간을 기초로, 사용자 허용 범위를 설정할 수 있다.In operation S612 , the device 200 may set the user permissible range based on the minimum time of the user permissible range and the maximum time of the user permissible range.

예를 들어, 장치(200)는 제1 콘텐츠의 평균 정독 시간이 1분인 경우, 사용자 허용 범위를 45초 내지 75초의 범위로 설정할 수 있다.For example, when the average reading time of the first content is 1 minute, the device 200 may set the user permissible range to a range of 45 seconds to 75 seconds.

도 7은 일실시예에 따른 콘텐츠 정독 시간을 예측하여 콘텐츠 추천 정보를 제공하는 과정을 설명하기 위한 순서도이다.7 is a flowchart illustrating a process of providing content recommendation information by predicting a content reading time according to an exemplary embodiment.

도 7을 참조하면, 먼저, S701 단계에서, 장치(200)는 제1 사용자 계정을 확인하여 제1 사용자 정보를 획득할 수 있다.Referring to FIG. 7 , first, in step S701 , the device 200 may obtain the first user information by checking the first user account.

S702 단계에서, 장치(200)는 제1 콘텐츠를 확인하여 제1 콘텐츠 정보를 획득할 수 있다.In step S702 , the device 200 may obtain first content information by checking the first content.

S703 단계에서, 제1 사용자 정보 및 제1 콘텐츠 정보를 기초로, 제1 콘텐츠에 대한 제1 사용자의 정독 시간을 예측할 수 있다. 여기서, 제1 사용자의 정독 시간은 제1 사용자가 제1 콘텐츠를 정독하는데 소요되는 시간을 의미할 수 있다.In step S703, based on the first user information and the first content information, the reading time of the first user for the first content may be predicted. Here, the first user's perusal reading time may mean a time required for the first user to peruse the first content.

S704 단계에서, 장치(200)는 제1 사용자의 정독 시간이 사용자 허용 범위 내에 포함되는지 여부를 확인할 수 있다. 여기서, 사용자 허용 범위는 상술한 바와 같이, 제1 콘텐츠의 평균 정독 시간에 따라 상이하게 설정될 수 있다.In step S704 , the device 200 may determine whether the reading time of the first user is within the user tolerance range. Here, as described above, the user tolerance range may be set differently according to the average reading time of the first content.

S704 단계에서 제1 사용자의 정독 시간이 사용자 허용 범위 내에 포함되는 것으로 확인되면, S705 단계에서, 장치(200)는 제1 콘텐츠를 제1 사용자 단말(110)로 제공하고, 제1 사용자 단말(110)의 화면에 제1 콘텐츠에 대한 웹 페이지가 표시되도록, 제1 사용자 단말(110)의 동작을 제어할 수 있다. If it is confirmed in step S704 that the perusal time of the first user is within the user tolerance range, in step S705 , the device 200 provides the first content to the first user terminal 110 , and the first user terminal 110 ) may control the operation of the first user terminal 110 so that a web page for the first content is displayed on the screen.

여기서, 제1 콘텐츠에 대한 웹 페이지는 제1 콘텐츠의 대표 이미지에 대한 클릭으로 연결되는 웹 페이지로, 제1 콘텐츠에 대한 상세 정보를 포함할 수 있다. 예를 들어, 제1 콘텐츠의 대표 이미지가 제1 상품의 이미지인 경우, 제1 콘텐츠에 대한 웹 페이지는 제1 상품의 상세 정보가 표시되는 페이지이다.Here, the web page for the first content is a web page connected by clicking on the representative image of the first content, and may include detailed information about the first content. For example, when the representative image of the first content is the image of the first product, the web page for the first content is a page on which detailed information of the first product is displayed.

즉, 장치(200)는 제1 사용자 단말(110)로부터 제1 콘텐츠에 대한 조회 요청이 수신된 경우, 제1 콘텐츠에 대한 제1 사용자의 정독 시간을 예측한 결과, 제1 사용자의 정독 시간이 사용자 허용 범위 내에 포함되는 것으로 확인되면, 제1 콘텐츠가 제1 사용자에게 적합한 콘텐츠로 판단하여, 제1 콘텐츠를 제1 사용자 단말(110)로 제공할 수 있다.That is, when the inquiry request for the first content is received from the first user terminal 110 , the device 200 predicts the reading time of the first user for the first content. As a result, the reading time of the first user is If it is confirmed that the content is within the user permissible range, it is determined that the first content is suitable for the first user, and the first content may be provided to the first user terminal 110 .

S704 단계에서 제1 사용자의 정독 시간이 사용자 허용 범위 내에 포함되지 않고 사용자 허용 범위를 벗어나는 것으로 확인되면, S706 단계에서, 장치(200)는 제1 사용자의 정독 시간이 사용자 허용 범위의 최소 시간 보다 짧은지 여부를 확인할 수 있다.If it is determined in step S704 that the first user's perusal time is not within the user permissible range and is out of the user permissible range, in step S706 , the device 200 determines that the perusal time of the first user is shorter than the minimum time of the user permissible range. You can check whether

S706 단계에서 제1 사용자의 정독 시간이 사용자 허용 범위의 최소 시간 보다 짧은 것으로 확인되면, S707 단계에서, 장치(200)는 제2 콘텐츠에 대한 추천 정보를 제1 사용자 단말(110)로 제공하고, 제1 사용자 단말(110)의 화면에 제2 콘텐츠에 대한 추천 정보가 표시되도록, 제1 사용자 단말(110)의 동작을 제어할 수 있다. 여기서, 제2 콘텐츠는 제1 콘텐츠와 주제가 동일하면서 제1 콘텐츠 보다 적은 글자 수로 구성된 콘텐츠를 의미할 수 있다.If it is confirmed in step S706 that the first user's perusal time is shorter than the minimum time of the user permissible range, in step S707, the device 200 provides recommendation information for the second content to the first user terminal 110, The operation of the first user terminal 110 may be controlled so that the recommendation information for the second content is displayed on the screen of the first user terminal 110 . Here, the second content may refer to content having the same subject as the first content and having fewer characters than the first content.

예를 들어, 제1 콘텐츠는 제1 상품의 사용법을 설명하는 콘텐츠로 100개의 글자와 20개의 이미지로 구성된 콘텐츠이고, 제2 콘텐츠는 제1 상품의 사용법을 설명하는 콘텐츠로 80개의 글자와 30개의 이미지로 구성된 콘텐츠인 경우, 장치(200)는 제1 사용자의 정독 시간이 사용자 허용 범위의 최소 시간 보다 짧은 것으로 확인되면, 데이터베이스에 저장된 콘텐츠 정보를 조회하여, 제1 콘텐츠 보다 적은 글자 수로 구성된 제2 콘텐츠를 확인할 수 있으며, 제2 콘텐츠에 대한 추천 정보를 제1 사용자 단말(110)로 제공할 수 있다.For example, the first content is content that explains how to use the first product and is composed of 100 characters and 20 images, and the second content is content that explains how to use the first product with 80 characters and 30 images. In the case of content consisting of images, if it is confirmed that the first user's perusal time is shorter than the minimum time of the user permissible range, the device 200 inquires the content information stored in the database, and the second content is composed of fewer characters than the first content The content may be checked, and recommendation information on the second content may be provided to the first user terminal 110 .

즉, 장치(200)는 제1 사용자 단말(110)로부터 제1 콘텐츠에 대한 조회 요청이 수신된 경우, 제1 콘텐츠에 대한 제1 사용자의 정독 시간을 예측한 결과, 제1 사용자의 정독 시간이 사용자 허용 범위를 벗어나는 것으로 확인되면, 제1 콘텐츠가 제1 사용자에게 적합하지 않은 콘텐츠로 판단하고, 제1 사용자의 정독 시간이 사용자 허용 범위의 최소 시간 보다 짧은 것으로 확인되면, 제1 콘텐츠 보다 적은 글자 수로 구성된 제2 콘텐츠가 제1 사용자에게 적합한 콘텐츠로 판단하여, 제2 콘텐츠에 대한 추천 정보를 제1 사용자 단말(110)로 제공할 수 있다. 이때, 장치(200)는 제1 콘텐츠 및 제2 콘텐츠에 대한 추천 정보를 함께 제1 사용자 단말(110)로 제공할 수 있다.That is, when the inquiry request for the first content is received from the first user terminal 110 , the device 200 predicts the reading time of the first user for the first content. As a result, the reading time of the first user is If it is determined that the first content is out of the user tolerance range, it is determined that the first content is not suitable for the first user, and if it is confirmed that the first user's perusal time is shorter than the minimum time of the user tolerance range, fewer characters than the first content It is determined that the second content composed of a number is suitable for the first user, and thus recommendation information on the second content may be provided to the first user terminal 110 . In this case, the device 200 may provide the recommendation information for the first content and the second content together to the first user terminal 110 .

S706 단계에서 제1 사용자의 정독 시간이 사용자 허용 범위의 최소 시간 보다 긴 것으로 확인되면, 제1 사용자의 정독 시간이 사용자 허용 범위를 벗어난 것으로 확인되어, 제1 사용자의 정독 시간이 사용자 허용 범위의 최대 시간 보다 긴 것으로 확인될 수 있으며, 제1 사용자의 정독 시간이 사용자 허용 범위의 최대 시간 보다 긴 것으로 확인되면, S708 단계에서, 장치(200)는 제3 콘텐츠에 대한 추천 정보를 제1 사용자 단말(110)로 제공하고, 제1 사용자 단말(110)의 화면에 제3 콘텐츠에 대한 추천 정보가 표시되도록, 제1 사용자 단말(110)의 동작을 제어할 수 있다. 여기서, 제3 콘텐츠는 제1 콘텐츠와 주제가 동일하면서 제1 콘텐츠 보다 많은 글자 수로 구성된 콘텐츠를 의미할 수 있다.If it is confirmed in step S706 that the perusal time of the first user is longer than the minimum time of the user permissible range, it is confirmed that the perusive time of the first user is out of the user permissible range, so that the perusing time of the first user is the maximum of the user permissible range It can be confirmed that it is longer than the time, and if it is confirmed that the perusal time of the first user is longer than the maximum time of the user permissible range, in step S708 , the device 200 transmits the recommended information for the third content to the first user terminal ( 110) and control the operation of the first user terminal 110 so that recommendation information on the third content is displayed on the screen of the first user terminal 110 . Here, the third content may refer to content having the same subject as the first content and having a greater number of characters than the first content.

예를 들어, 제1 콘텐츠는 제1 상품의 사용법을 설명하는 콘텐츠로 100개의 글자와 20개의 이미지로 구성된 콘텐츠이고, 제3 콘텐츠는 제1 상품의 사용법을 설명하는 콘텐츠로 120개의 글자와 10개의 이미지로 구성된 콘텐츠인 경우, 장치(200)는 제1 사용자의 정독 시간이 사용자 허용 범위의 최대 시간 보다 긴 것으로 확인되면, 데이터베이스에 저장된 콘텐츠 정보를 조회하여, 제1 콘텐츠 보다 많은 글자 수로 구성된 제3 콘텐츠를 확인할 수 있으며, 제3 콘텐츠에 대한 추천 정보를 제1 사용자 단말(110)로 제공할 수 있다.For example, the first content is content that explains how to use the first product and is composed of 100 characters and 20 images, and the third content is content that explains how to use the first product and contains 120 characters and 10 images. In the case of content composed of images, when it is confirmed that the first user's perusal time is longer than the maximum time of the user permissible range, the device 200 queries the content information stored in the database, and the third content is composed of more characters than the first content. The content may be checked, and recommendation information on the third content may be provided to the first user terminal 110 .

즉, 장치(200)는 제1 사용자 단말(110)로부터 제1 콘텐츠에 대한 조회 요청이 수신된 경우, 제1 콘텐츠에 대한 제1 사용자의 정독 시간을 예측한 결과, 제1 사용자의 정독 시간이 사용자 허용 범위를 벗어나는 것으로 확인되면, 제1 콘텐츠가 제1 사용자에게 적합하지 않은 콘텐츠로 판단하고, 제1 사용자의 정독 시간이 사용자 허용 범위의 최대 시간 보다 긴 것으로 확인되면, 제1 콘텐츠 보다 많은 글자 수로 구성된 제3 콘텐츠가 제1 사용자에게 적합한 콘텐츠로 판단하여, 제3 콘텐츠에 대한 추천 정보를 제1 사용자 단말(110)로 제공할 수 있다. 이때, 장치(200)는 제1 콘텐츠 및 제3 콘텐츠에 대한 추천 정보를 함께 제1 사용자 단말(110)로 제공할 수 있다.That is, when the inquiry request for the first content is received from the first user terminal 110 , the device 200 predicts the reading time of the first user for the first content. As a result, the reading time of the first user is If it is determined that the first content is out of the user permissible range, it is determined that the first content is not suitable for the first user, and when it is confirmed that the first user's perusal time is longer than the maximum time of the user permissible range, more characters than the first content It is determined that the number of third contents is suitable for the first user, and the recommendation information on the third content may be provided to the first user terminal 110 . In this case, the device 200 may provide the recommendation information for the first content and the third content together to the first user terminal 110 .

도 8은 일실시예에 따른 제1 인공 신경망의 학습을 설명하기 위한 도면이다.8 is a diagram for explaining learning of a first artificial neural network according to an embodiment.

일실시예에 따르면, 제1 인공 신경망은 사용자의 키워드 정보를 입력 받은 후, 사용자에게 적합한 상품을 분석하여 출력하는 알고리즘일 수 있다.According to an embodiment, the first artificial neural network may be an algorithm that receives user's keyword information and then analyzes and outputs a product suitable for the user.

제1 인공 신경망의 학습이 이루어지는 학습 장치는 인공지능 기반 사용자 맞춤형 상품 정보 추천 방법을 제공하는 장치(200)와 동일한 장치일 수도 있고, 별개의 장치일 수도 있다. 이하에서는 제1 인공 신경망이 학습되는 과정을 설명한다.The learning device in which the first artificial neural network is learned may be the same device as the device 200 for providing the artificial intelligence-based user-customized product information recommendation method, or may be a separate device. Hereinafter, a process in which the first artificial neural network is trained will be described.

먼저, S801 단계에서, 장치(200)는 제1 인공 신경망에 입력할 입력을 생성할 수 있다. 이때, 장치(200)는 제1 인공 신경망에 입력하기 위해, 사용자의 키워드 정보를 기초로 입력을 생성할 수 있다.First, in step S801 , the device 200 may generate an input to be input to the first artificial neural network. In this case, in order to input to the first artificial neural network, the device 200 may generate an input based on the user's keyword information.

구체적으로, 장치(200)는 사용자의 키워드 정보에 대해 전처리하는 과정을 수행할 수 있다. 전처리가 수행된 사용자의 키워드 정보를 제1 인공 신경망의 입력으로 그대로 사용하거나, 불필요한 정보를 제거하는 통상의 처리를 거쳐 제1 인공 신경망의 입력을 생성할 수 있다.Specifically, the device 200 may perform a process of pre-processing the user's keyword information. The preprocessed user's keyword information may be directly used as an input to the first artificial neural network, or an input of the first artificial neural network may be generated through a normal process of removing unnecessary information.

S802 단계에서, 장치(200)는 제1 인공 신경망에 입력을 적용할 수 있다.In step S802 , the device 200 may apply an input to the first artificial neural network.

제1 인공 신경망은 강화 학습(reinforcement learning)에 따라 학습되는 인공 신경망일 수 있다. 제1 인공 신경망은 강화 학습을 통해 추상적 추론을 출력하는데 적합한 Q-Network, DQN(Depp Q-Network), 또는 관계형 네트워크(relation network, RL) 구조일 수 있다.The first artificial neural network may be an artificial neural network trained according to reinforcement learning. The first artificial neural network may be a Q-Network, a Depp Q-Network (DQN), or a relational network (RL) structure suitable for outputting abstract reasoning through reinforcement learning.

강화 학습에 따라 학습되는 제1 인공 신경망은 다양한 보상에 평가를 반영하여 갱신 및 최적화될 수 있다. 예를 들어, 제1 인공 신경망은 제1 내지 제2 보상을 통해 갱신 및 최적화될 수 있다.The first artificial neural network trained according to reinforcement learning may be updated and optimized by reflecting the evaluation in various rewards. For example, the first artificial neural network may be updated and optimized through first to second compensation.

예를 들어, 제1 보상은 키워드와 관련이 있는 상품을 사용자에게 적합한 상품으로 선정할수록 높아질 수 있으며, 제2 보상은 키워드와 관련이 없는 상품을 사용자에게 적합한 상품으로 선정하지 않을수록 높아질 수 있다.For example, the first reward may increase as a product related to a keyword is selected as a product suitable for the user, and the second reward may increase as a product not related to the keyword is selected as a product suitable for the user.

S803 단계에서, 장치(200)는 제1 인공 신경망으로부터 출력을 획득할 수 있다.In step S803 , the device 200 may obtain an output from the first artificial neural network.

제1 인공 신경망의 출력은, 사용자에게 적합한 상품에 대한 정보일 수 있다. 이때, 제1 인공 신경망은 사용자의 키워드 정보를 통해 사용자에게 적합한 상품을 하나 또는 복수로 선정할 수 있다.The output of the first artificial neural network may be information about a product suitable for the user. In this case, the first artificial neural network may select one or a plurality of products suitable for the user through the user's keyword information.

S804 단계에서, 장치(200)는 제1 인공 신경망의 출력을 평가하여 보상을 지급할 수 있다. 이때, 출력의 평가는 제1 보상, 제2 보상 등으로 나뉠 수 있다.In step S804 , the device 200 may evaluate the output of the first artificial neural network and provide a reward. In this case, the evaluation of the output may be divided into a first compensation, a second compensation, and the like.

예를 들어, 장치(200)는 키워드와 관련이 있는 상품을 사용자에게 적합한 상품으로 선정할수록 제1 보상을 많이 수여하고, 키워드와 관련이 없는 상품을 사용자에게 적합한 상품으로 선정하지 않을수록 제2 보상을 많이 수여할 수 있다.For example, the device 200 grants a larger amount of the first reward as a product related to the keyword is selected as a product suitable for the user, and the second reward is provided when a product not related to the keyword is selected as a product suitable for the user can be awarded a lot.

S805 단계에서, 장치(200)는 평가를 기초로 제1 인공 신경망을 갱신할 수 있다.In step S805 , the device 200 may update the first artificial neural network based on the evaluation.

구체적으로, 장치(200)는 제1 인공 신경망이, 사용자에게 가장 적합한 상품을 분석하는 환경(environment)에서, 보상값(reward)들의 합의 기대값(expectation)이 최대화되도록, 특정한 상태(state)들에서 취할 행동(action)들을 결정하는 정책(policy)을 최적화하는 과정을 통해 제1 인공 신경망을 갱신할 수 있다.Specifically, the device 200 sets specific states so that the first artificial neural network analyzes the product most suitable for the user, so that the expected value of the sum of the rewards is maximized. The first artificial neural network can be updated through the process of optimizing a policy that determines actions to be taken in .

예를 들어, 장치(200)는 제1 사용자에게 적합한 상품으로 제1 상품을 선정한 것에 대해 문제가 있는 경우, 제1 상품을 선정한 것에 대해 문제가 있음을 나타내는 정보를 포함하는 제1 학습 데이터를 생성하고, 제1 학습 데이터를 제1 인공 신경망에 적용하여, 제1 사용자의 키워드 정보와 유사한 키워드가 추출된 사용자에게 적합한 상품으로 제1 상품이 선정되지 않도록, 제1 인공 신경망을 학습시키는 과정을 통해, 제1 인공 신경망을 갱신할 수 있다.For example, when there is a problem in selecting the first product as a product suitable for the first user, the device 200 generates first learning data including information indicating that there is a problem in selecting the first product and applying the first learning data to the first artificial neural network, through the process of learning the first artificial neural network so that the first product is not selected as a product suitable for the user from which a keyword similar to the keyword information of the first user is extracted , the first artificial neural network may be updated.

한편, 정책을 최적화하는 과정은 보상들의 합의 기대값의 최대값 또는 Q-함수의 최대값을 추정하거나, Q-함수의 손실 함수(loss function)의 최소값을 추정하는 과정을 통해 이루어질 수 있다. 손실함수의 최소값의 추정은 확률적 경사하강법(stochastic gradient descent, SGD) 등을 통해 이루어질 수 있다. 정책을 최적화하는 과정은 이에 제한되는 것은 아니며, 강화 학습에서 사용하는 다양한 최적화 알고리즘들이 이용될 수 있다.Meanwhile, the process of optimizing the policy may be performed through the process of estimating the maximum value of the expected value of the sum of rewards or the maximum value of the Q-function, or estimating the minimum value of the loss function of the Q-function. Estimation of the minimum value of the loss function may be performed through stochastic gradient descent (SGD) or the like. The process of optimizing the policy is not limited thereto, and various optimization algorithms used in reinforcement learning may be used.

장치(200)는 상기와 같은 제1 인공 신경망의 학습 과정을 반복함으로써, 제1 인공 신경망을 점진적으로 갱신시킬 수 있다.The apparatus 200 may gradually update the first artificial neural network by repeating the learning process of the first artificial neural network as described above.

구체적으로, 장치(200)는 사용자에게 적합한 상품을 선정하는데 있어, 사용자의 키워드를 고려하여, 사용자에게 가장 적합한 상품을 선정한 후, 선정된 상품에 대한 정보를 출력하는 제1 인공 신경망을 학습시킬 수 있다.Specifically, in selecting a product suitable for the user, the device 200 may select a product most suitable for the user in consideration of the user's keyword, and then train the first artificial neural network to output information about the selected product. have.

이를 통해, 장치(200)는 사용자의 키워드 정보를 입력 받은 후, 사용자에게 적합한 상품을 분석하여 출력하는 제1 인공 신경망을 학습시킬 수 있다.Through this, the device 200 may learn the first artificial neural network to analyze and output a product suitable for the user after receiving the user's keyword information.

즉, 장치(200)는 사용자의 키워드 정보를 통해, 사용자에게 적합한 상품을 분석할 때, 제1 보상, 제2 보상 등을 통한 강화 학습을 반영하여, 분석 기준을 조정함으로써, 제1 인공 신경망을 학습시킬 수 있다.That is, when analyzing a product suitable for the user through the user's keyword information, the device 200 reflects reinforcement learning through the first reward, the second reward, etc., and adjusts the analysis criteria, thereby creating the first artificial neural network. can learn

도 9는 일실시예에 따른 장치의 구성의 예시도이다.9 is an exemplary diagram of a configuration of an apparatus according to an embodiment.

일실시예에 따른 장치(200)는 프로세서(210) 및 메모리(220)를 포함한다. 프로세서(210)는 도 1 내지 도 8을 참조하여 전술된 적어도 하나의 장치들을 포함하거나, 도 1 내지 도 8을 참조하여 전술된 적어도 하나의 방법을 수행할 수 있다. 장치(200)를 이용하는 자 또는 단체는 도 1 내지 도 8을 참조하여 전술된 방법들 일부 또는 전부와 관련된 서비스를 제공할 수 있다.The device 200 according to an embodiment includes a processor 210 and a memory 220 . The processor 210 may include at least one of the devices described above with reference to FIGS. 1 to 8 , or perform at least one method described above with reference to FIGS. 1 to 8 . A person or organization using the apparatus 200 may provide a service related to some or all of the methods described above with reference to FIGS. 1 to 8 .

메모리(220)는 전술된 방법들과 관련된 정보를 저장하거나 후술되는 방법들이 구현된 프로그램을 저장할 수 있다. 메모리(220)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.The memory 220 may store information related to the above-described methods or a program in which methods to be described below are implemented. The memory 220 may be a volatile memory or a non-volatile memory.

프로세서(210)는 프로그램을 실행하고, 장치(200)를 제어할 수 있다. 프로세서(210)에 의하여 실행되는 프로그램의 코드는 메모리(220)에 저장될 수 있다. 장치(200)는 입출력 장치(도면 미 표시)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 유무선 통신을 통해 데이터를 교환할 수 있다.The processor 210 may execute a program and control the device 200 . The code of the program executed by the processor 210 may be stored in the memory 220 . The device 200 may be connected to an external device (eg, a personal computer or a network) through an input/output device (not shown), and may exchange data through wired/wireless communication.

장치(200)는 인공 신경망을 학습시키거나, 학습된 인공 신경망을 이용하는데 사용될 수 있다. 메모리(220)는 학습 중인 또는 학습된 인공 신경망을 포함할 수 있다. 프로세서(210)는 메모리(220)에 저장된 인공 신경망 알고리즘을 학습시키거나 실행시킬 수 있다. 인공 신경망을 학습시키는 장치(200)와 학습된 인공 신경망을 이용하는 장치(200)는 동일할 수도 있고 개별적일 수도 있다.The device 200 may be used to train an artificial neural network or to use a learned artificial neural network. The memory 220 may include a learning or learned artificial neural network. The processor 210 may learn or execute an artificial neural network algorithm stored in the memory 220 . The apparatus 200 for learning an artificial neural network and the apparatus 200 for using the learned artificial neural network may be the same or may be separate.

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

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, 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, etc. 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 available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical 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 not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

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

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with reference to the limited drawings, those skilled in the art may apply various technical modifications and variations based on the above. For example, the described techniques are performed in an order different from the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.

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

Claims (3)

장치에 의해 수행되는, 인공지능을 기반으로 사용자 맞춤형의 상품 정보를 추천하는 방법에 있어서,
제1 사용자의 SNS 계정에 업로드된 게시 자료를 수집하는 단계;
상기 게시 자료를 기반으로, 상기 제1 사용자에 대한 키워드 정보를 추출하는 단계;
상기 제1 사용자의 키워드 정보를 제1 인공 신경망에 적용하여, 상기 제1 인공 신경망의 출력을 기초로, 상기 제1 사용자에게 적합한 상품을 선정하는 단계;
상기 제1 사용자에게 적합한 상품으로 제1 상품이 선정되면, 상기 제1 사용자의 상품 구매 이력에 기초하여, 상기 제1 사용자가 상기 제1 상품을 구매한 적이 있는지 여부를 확인하는 단계;
상기 제1 사용자가 상기 제1 상품을 구매한 적이 없는 것으로 확인되면, 상기 제1 상품에 대한 추천 정보를 제1 사용자 단말로 제공하는 단계;
상기 제1 사용자에게 적합한 상품으로 복수의 상품이 선정되면, 상기 선정된 복수의 상품들로 추천 상품 목록을 생성하는 단계;
상기 추천 상품 목록에 상기 제1 사용자가 구매한 적이 있는 상품이 포함되어 있는지 여부를 확인하는 단계;
상기 추천 상품 목록에 포함된 상품들 중 제2 상품을 상기 제1 사용자가 구매한 적이 있는 것으로 확인되면, 상기 추천 상품 목록에서 상기 제2 상품을 삭제하는 단계;
상기 추천 상품 목록에 포함된 상품들의 수인 제1 수치가 미리 설정된 기준치 보다 작은지 여부를 확인하는 단계;
상기 제1 수치가 상기 기준치 보다 작은 것으로 확인되면, 상기 추천 상품 목록에 포함된 상품들 각각에 대한 추천 정보를 상기 제1 사용자 단말로 제공하는 단계;
상기 제1 수치가 상기 기준치 보다 작지 않은 것으로 확인되면, 상기 추천 상품 목록을 상기 제1 사용자 단말로 제공하는 단계;
상기 제1 사용자 단말이 상품 정보를 제공하는 웹 사이트에 접속하면, 상기 웹 사이트의 홈 페이지를 상기 제1 사용자 단말로 제공하고, 상기 제1 사용자 계정을 확인하여 제1 사용자 정보를 획득하는 단계;
상기 홈 페이지 상에서 제1 콘텐츠-상기 제1 콘텐츠는 상기 제1 상품의 사용법에 대한 설명을 주제로 하여 제작된 콘텐츠-의 대표 이미지가 클릭되면, 상기 제1 사용자 단말로부터 상기 제1 콘텐츠에 대한 조회 요청을 수신하고, 상기 제1 콘텐츠를 확인하여 제1 콘텐츠 정보를 획득하는 단계;
상기 제1 콘텐츠 정보를 통해 상기 제1 콘텐츠의 사용자 조회 내역을 획득하는 단계;
상기 제1 콘텐츠의 사용자 조회 내역을 기초로, 사용자 별로 정독 시간을 확인하여, 상기 제1 콘텐츠의 평균 정독 시간을 산출하는 단계;
상기 제1 콘텐츠의 평균 정독 시간의 길이에 따라, 기준 시간을 설정하는 단계;
상기 제1 콘텐츠의 평균 정독 시간에서 상기 기준 시간을 차감한 값으로, 사용자 허용 범위의 최소 시간을 산출하는 단계;
상기 제1 콘텐츠의 평균 정독 시간에 상기 기준 시간을 가산한 값으로, 상기 사용자 허용 범위의 최대 시간을 산출하는 단계;
상기 사용자 허용 범위의 최소 시간 및 상기 사용자 허용 범위의 최대 시간을 기초로, 상기 사용자 허용 범위를 설정하는 단계;
상기 제1 사용자 정보 및 상기 제1 콘텐츠 정보를 기초로, 상기 제1 콘텐츠에 대한 제1 사용자의 정독 시간을 예측하는 단계;
상기 제1 사용자의 정독 시간이 상기 사용자 허용 범위 내에 포함되는 것으로 확인되면, 상기 제1 콘텐츠를 상기 제1 사용자 단말로 제공하는 단계;
상기 제1 사용자의 정독 시간이 상기 사용자 허용 범위를 벗어나는 것으로 확인되고, 상기 제1 사용자의 정독 시간이 상기 사용자 허용 범위의 최소 시간 보다 짧은 것으로 확인되면, 제2 콘텐츠-상기 제2 콘텐츠는 상기 제1 콘텐츠와 주제가 동일하면서 상기 제1 콘텐츠 보다 적은 글자 수로 구성된 콘텐츠-에 대한 추천 정보를 상기 제1 사용자 단말로 제공하는 단계; 및
상기 제1 사용자의 정독 시간이 상기 사용자 허용 범위를 벗어나는 것으로 확인되고, 상기 제1 사용자의 정독 시간이 상기 사용자 허용 범위의 최대 시간 보다 긴 것으로 확인되면, 제3 콘텐츠-상기 제3 콘텐츠는 상기 제1 콘텐츠와 주제가 동일하면서 상기 제1 콘텐츠 보다 많은 글자 수로 구성된 콘텐츠-에 대한 추천 정보를 상기 제1 사용자 단말로 제공하는 단계를 포함하며,
상기 추천 상품 목록을 상기 제1 사용자 단말로 제공하는 단계는,
상기 제1 사용자의 카드 결제 내역 자료를 수집하는 단계;
상기 카드 결제 내역 자료를 기반으로, 상기 제1 사용자의 소비 패턴을 분석하는 단계;
상기 제1 사용자의 소비 패턴을 기초로, 상기 제1 사용자와 유사한 소비 패턴을 가지는 사용자들을 그룹화하여, 제1 사용자 그룹으로 분류하는 단계;
상기 제1 사용자 그룹에 속하는 사용자들 각각의 상품 구매 이력에 기초하여, 상기 제1 사용자 그룹에 속하는 사용자들이 상기 추천 상품 목록에 포함된 상품들을 구매한 적이 있는지 확인하여, 상기 추천 상품 목록에 포함된 상품 별로 구매 인원 수를 산출하는 단계;
상기 추천 상품 목록에 포함된 상품들 각각의 구매 인원 수를 기준으로, 구매 인원 수가 많을수록 높은 점수를 부여하여, 상기 추천 상품 목록에 포함된 상품들 각각에 대한 추천 점수를 산정하는 단계;
상기 추천 점수를 이용하여 상기 추천 상품 목록에 포함된 상품들 각각의 우선순위를 설정하는 단계;
상기 추천 상품 목록에 포함된 상품들 각각에 설정된 우선순위를 기반으로, 우선순위가 높은 순으로 상기 추천 상품 목록을 정렬하는 단계; 및
상기 정렬된 추천 상품 목록을 상기 제1 사용자 단말로 제공하는 단계를 포함하는,
인공지능 기반 사용자 맞춤형 상품 정보 추천 방법.
A method for recommending user-customized product information based on artificial intelligence performed by a device, the method comprising:
collecting the posting data uploaded to the SNS account of the first user;
extracting keyword information about the first user based on the posted data;
selecting a product suitable for the first user by applying the keyword information of the first user to a first artificial neural network and based on the output of the first artificial neural network;
when a first product is selected as a product suitable for the first user, determining whether the first user has purchased the first product based on the product purchase history of the first user;
providing recommendation information on the first product to a first user terminal when it is confirmed that the first user has never purchased the first product;
generating a list of recommended products using the plurality of selected products when a plurality of products are selected as products suitable for the first user;
checking whether a product that has been previously purchased by the first user is included in the recommended product list;
deleting the second product from the recommended product list when it is confirmed that the first user has purchased a second product from among the products included in the recommended product list;
checking whether a first value, which is the number of products included in the recommended product list, is smaller than a preset reference value;
providing recommendation information for each of the products included in the recommended product list to the first user terminal when it is confirmed that the first value is smaller than the reference value;
If it is confirmed that the first value is not smaller than the reference value, providing the list of recommended products to the first user terminal;
when the first user terminal accesses a website providing product information, providing a home page of the website to the first user terminal, and confirming the first user account to obtain first user information;
When a representative image of the first content-the first content is content produced with the subject of the description of how to use the first product is clicked on the home page, the first content is inquired from the first user terminal receiving a request, and confirming the first content to obtain first content information;
obtaining user inquiry details of the first content through the first content information;
calculating an average reading time of the first content by checking the reading time for each user based on the user inquiry details of the first content;
setting a reference time according to the length of the average reading time of the first content;
calculating a minimum time within a user permissible range as a value obtained by subtracting the reference time from the average reading time of the first content;
calculating a maximum time of the user permissible range as a value obtained by adding the reference time to the average reading time of the first content;
setting the user permissible range based on the minimum time of the user permissible range and the maximum time of the user permissible range;
estimating a reading time of a first user for the first content based on the first user information and the first content information;
providing the first content to the first user terminal when it is confirmed that the reading time of the first user is within the user allowable range;
If it is confirmed that the perusal time of the first user is out of the user permissible range, and it is confirmed that the perusive time of the first user is shorter than the minimum time of the user permissible range, the second content-the second content is providing, to the first user terminal, recommendation information on content- which has the same subject as the first content and consists of fewer characters than the first content; and
If it is confirmed that the perusal time of the first user is outside the user permissible range, and it is confirmed that the perusal time of the first user is longer than the maximum time of the user permissible range, the third content-the third content is 1 comprising the step of providing, to the first user terminal, recommendation information about content that has the same subject as the first content and consists of a greater number of characters than the first content,
The step of providing the list of recommended products to the first user terminal,
collecting card payment history data of the first user;
analyzing the consumption pattern of the first user based on the card payment history data;
grouping users having a consumption pattern similar to that of the first user based on the consumption pattern of the first user and classifying it into a first user group;
Based on the product purchase history of each user belonging to the first user group, it is checked whether users belonging to the first user group have purchased products included in the recommended product list, calculating the number of purchasers for each product;
calculating a recommendation score for each of the products included in the recommended product list by giving a higher score as the number of purchasers increases based on the number of purchasers of each of the products included in the recommended product list;
setting a priority of each of the products included in the recommended product list by using the recommendation score;
sorting the list of recommended products in the order of priority based on the priority set for each of the products included in the list of recommended products; and
Comprising the step of providing the sorted list of recommended products to the first user terminal,
An artificial intelligence-based user-customized product information recommendation method.
제1항에 있어서,
상기 제1 사용자가 상기 제1 상품을 구매한 적이 있는 것으로 확인되면, 상기 제1 사용자의 상품 구매 이력에 기초하여, 상기 제1 상품의 구매 횟수를 확인하는 단계;
상기 제1 상품의 구매 횟수가 미리 설정된 기준 횟수 보다 많은지 여부를 확인하는 단계;
상기 제1 상품의 구매 횟수가 상기 기준 횟수 보다 많은 것으로 확인되면, 상기 제1 상품을 상기 제1 사용자의 선호 상품으로 설정하고, 상기 제1 상품에 대한 구매 패턴을 분석하는 단계;
상기 제1 상품의 구매 패턴에 기초하여, 상기 제1 상품에 대한 예상 구매일 및 예상 구매량을 예측하는 단계;
상기 제1 상품의 예상 구매일까지 상기 제1 사용자가 상기 제1 상품을 상기 예상 구매량 만큼 추가로 구매하지 않은 것으로 확인되면, 상기 제1 상품에 대한 추가 구매가 필요한 것으로 판단하는 단계; 및
상기 제1 상품에 대한 추가 구매가 필요한 경우, 상기 제1 상품에 대한 추가 구매 필요 알림 메시지를 상기 제1 사용자 단말로 전송하는 단계를 더 포함하는,
인공지능 기반 사용자 맞춤형 상품 정보 추천 방법.
The method of claim 1,
when it is confirmed that the first user has purchased the first product, checking the number of purchases of the first product based on the product purchase history of the first user;
checking whether the number of purchases of the first product is greater than a preset reference number;
when it is confirmed that the number of purchases of the first product is greater than the reference number, setting the first product as a preferred product of the first user and analyzing a purchase pattern for the first product;
estimating an expected purchase date and an expected purchase amount for the first product, based on the purchase pattern of the first product;
determining that additional purchase of the first product is necessary when it is confirmed that the first user has not additionally purchased the first product by the expected purchase amount by the expected purchase date of the first product; and
When additional purchase of the first product is required, further comprising the step of transmitting a notification message of the need for additional purchase of the first product to the first user terminal,
An artificial intelligence-based user-customized product information recommendation method.
삭제delete
KR1020220020999A 2022-02-17 2022-02-17 Method, device and system for recommending customized product information based on artificial intelligence KR102404511B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220020999A KR102404511B1 (en) 2022-02-17 2022-02-17 Method, device and system for recommending customized product information based on artificial intelligence

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220020999A KR102404511B1 (en) 2022-02-17 2022-02-17 Method, device and system for recommending customized product information based on artificial intelligence

Publications (1)

Publication Number Publication Date
KR102404511B1 true KR102404511B1 (en) 2022-06-07

Family

ID=81986886

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220020999A KR102404511B1 (en) 2022-02-17 2022-02-17 Method, device and system for recommending customized product information based on artificial intelligence

Country Status (1)

Country Link
KR (1) KR102404511B1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102492058B1 (en) * 2022-07-12 2023-01-26 주식회사 한걸음컴퍼니 Apparatus and method for providing cpa advertising platform service tailored to the non-commerce industry
KR102497016B1 (en) * 2022-10-27 2023-02-07 강나영 Method and apparatus for recommending agriculural products
KR102547033B1 (en) * 2023-03-10 2023-06-22 김제은 Method for providing information in the way user selected using keyword recognition function
KR102552856B1 (en) * 2023-03-31 2023-07-06 이나나 Method, device and system for automating creation of content template and extracting keyword for platform service that provide content related to commerce
KR102564996B1 (en) * 2023-01-11 2023-08-09 주식회사 케이디이노베이션 Method, device and system for providing user customized health functional food curation service based on artificial intelligence
KR102596352B1 (en) * 2023-03-29 2023-11-01 주식회사 리버트리 AI-based product recommendation system based on user psychology
KR102601775B1 (en) * 2023-08-14 2023-11-14 비마이펫주식회사 Companion animal content providing system based on artificial intelligence model
KR20240076323A (en) 2022-11-23 2024-05-30 (주) 네오포스 Reverse direct purchase sales products by country and method of recommending sales price

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130092310A (en) * 2012-02-10 2013-08-20 (주)워터빈 Recommendation system for goods
KR101656055B1 (en) * 2015-03-30 2016-09-08 주식회사 포워드벤처스 Method and apparatus for providing a list of products which is viewed by a user
KR102075038B1 (en) 2017-10-31 2020-02-07 (주)이노티브아이엔씨 Goods Recommendation Method Conisdering User's Chracter Using User's Big Data in Network, and Managing Server Used Therein
KR20200046586A (en) * 2018-10-25 2020-05-07 (주)플로우 smart product registration system and online e-commerce system using the same
KR102135674B1 (en) 2019-10-10 2020-08-26 주식회사 펫키지 Apparatus, method and recording medium for recomending customized products based on keyword extraction neural network model of product review
KR102213768B1 (en) 2020-05-19 2021-02-08 주식회사 스타일씨코퍼레이션 Customer-specific product recommendation system that exposes products with high purchase conversion rate based on customer information by artificial intelligence based on big data
KR20210036184A (en) * 2019-09-25 2021-04-02 이미진 Item recommendation module based on user taste information and method for identifying user taste information
KR102264258B1 (en) 2020-11-19 2021-06-14 주식회사 자란다 Method for recommedning products

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130092310A (en) * 2012-02-10 2013-08-20 (주)워터빈 Recommendation system for goods
KR101656055B1 (en) * 2015-03-30 2016-09-08 주식회사 포워드벤처스 Method and apparatus for providing a list of products which is viewed by a user
KR102075038B1 (en) 2017-10-31 2020-02-07 (주)이노티브아이엔씨 Goods Recommendation Method Conisdering User's Chracter Using User's Big Data in Network, and Managing Server Used Therein
KR20200046586A (en) * 2018-10-25 2020-05-07 (주)플로우 smart product registration system and online e-commerce system using the same
KR20210036184A (en) * 2019-09-25 2021-04-02 이미진 Item recommendation module based on user taste information and method for identifying user taste information
KR102135674B1 (en) 2019-10-10 2020-08-26 주식회사 펫키지 Apparatus, method and recording medium for recomending customized products based on keyword extraction neural network model of product review
KR102213768B1 (en) 2020-05-19 2021-02-08 주식회사 스타일씨코퍼레이션 Customer-specific product recommendation system that exposes products with high purchase conversion rate based on customer information by artificial intelligence based on big data
KR102264258B1 (en) 2020-11-19 2021-06-14 주식회사 자란다 Method for recommedning products

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102492058B1 (en) * 2022-07-12 2023-01-26 주식회사 한걸음컴퍼니 Apparatus and method for providing cpa advertising platform service tailored to the non-commerce industry
KR102497016B1 (en) * 2022-10-27 2023-02-07 강나영 Method and apparatus for recommending agriculural products
KR20240076323A (en) 2022-11-23 2024-05-30 (주) 네오포스 Reverse direct purchase sales products by country and method of recommending sales price
KR102564996B1 (en) * 2023-01-11 2023-08-09 주식회사 케이디이노베이션 Method, device and system for providing user customized health functional food curation service based on artificial intelligence
KR102547033B1 (en) * 2023-03-10 2023-06-22 김제은 Method for providing information in the way user selected using keyword recognition function
KR102596352B1 (en) * 2023-03-29 2023-11-01 주식회사 리버트리 AI-based product recommendation system based on user psychology
KR102552856B1 (en) * 2023-03-31 2023-07-06 이나나 Method, device and system for automating creation of content template and extracting keyword for platform service that provide content related to commerce
KR102601775B1 (en) * 2023-08-14 2023-11-14 비마이펫주식회사 Companion animal content providing system based on artificial intelligence model

Similar Documents

Publication Publication Date Title
KR102404511B1 (en) Method, device and system for recommending customized product information based on artificial intelligence
KR102468827B1 (en) Method, device and system for sourcing products based on artificial intelligence and providing category-customized review analysis service
KR102490009B1 (en) Method, device and system for providing platform service for purchasing and selling product linked to influencer based on artificial intelligence
KR102551997B1 (en) Method, device and system for providing commerce platform service and automation of advertising content planning based on analysis of content watching propensity
KR102546871B1 (en) Method, device and system for recommending order information through pattern analysis of order history regarding distribustion of food materials and subsidiary materials for business to business based on artificial intelligence model
KR102553041B1 (en) Method, device and system for providing matching platform service between user and interior supplier based on artificial intelligence model
KR102533442B1 (en) Product planning and marketing strategy derivation method, device and system for online sales based on artificial intelligence model
KR102554580B1 (en) Method, device and system for providing order alarm serveice and estimating safety inventory in warehouse through pattern analysis of order history regarding distribustion of food materials and subsidiary materials based on artificial intelligence model
KR102508232B1 (en) Method, device and system for managing distribution of inventory for mart operation based on artificial intelligence
KR102531879B1 (en) Method, device and system for predicting and monitoring occurrence of event for maintenance of enterprise electronic equipment based on artificial intelligence
KR102414937B1 (en) Artificial intelligence-based influencer and brand matching method, device and system
KR102552856B1 (en) Method, device and system for automating creation of content template and extracting keyword for platform service that provide content related to commerce
KR102601446B1 (en) Method, device and system for providing sales product matching platform service based on influencer using artificial intelligence model
KR102536063B1 (en) Method, device and system for providing sales and purchases settlement solution for business based on artificial intelligence
KR102463875B1 (en) Method, device and system for providing personalized psychotherapy content using big data
KR102530527B1 (en) Method, device and system for providing restaurant recommendation service based on health information
KR102447426B1 (en) Method, device and system for recommending lifestyle guide information analyzing personal color and timeline based behavioral data for hyper personalization
KR102485355B1 (en) Method, device and system for providing online and offline sales event mediation platform service based on artificial intelligence
KR102474974B1 (en) Method, device and system for analyzing brand based on artificial intelligence
KR102426803B1 (en) Method, device and system for automatically uploading overseas sales page of product based on artificial intelligence
KR20240082118A (en) Manpower management method, device and system for disinfection and disinfection of buildings
KR102321408B1 (en) Method, apparatus and system for providing personalized memo pad service
Omidvar et al. Tackling cold-start with deep personalized transfer of user preferences for cross-domain recommendation
KR102669470B1 (en) Method, device and system for inventory management and demand forecasting for food material distribution processing
KR102612805B1 (en) Method, device and system for providing media curation service based on artificial intelligence model according to company information

Legal Events

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