KR20210085770A - Apparatus for recommending product based log - Google Patents

Apparatus for recommending product based log Download PDF

Info

Publication number
KR20210085770A
KR20210085770A KR1020190179201A KR20190179201A KR20210085770A KR 20210085770 A KR20210085770 A KR 20210085770A KR 1020190179201 A KR1020190179201 A KR 1020190179201A KR 20190179201 A KR20190179201 A KR 20190179201A KR 20210085770 A KR20210085770 A KR 20210085770A
Authority
KR
South Korea
Prior art keywords
product
log
information
recommendation
purchase
Prior art date
Application number
KR1020190179201A
Other languages
Korean (ko)
Other versions
KR102427254B1 (en
Inventor
문지영
송병운
신재용
고원혁
Original Assignee
문송컴퍼니(주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 문송컴퍼니(주) filed Critical 문송컴퍼니(주)
Priority to KR1020190179201A priority Critical patent/KR102427254B1/en
Publication of KR20210085770A publication Critical patent/KR20210085770A/en
Application granted granted Critical
Publication of KR102427254B1 publication Critical patent/KR102427254B1/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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

According to the present invention, a log-based product recommendation device includes: a user terminal for transmitting a log including event information of product inquiry and product purchase; and a recommendation server configured to: collect a log for a preset sampling period; refine the log based on preset cleaning conditions; generate a product log for product purchase and product inquiry from the refined log; extract second product search information from the log received along with a product recommendation request signal, when the log is received along with the recommendation request signal; calculate a similarity between the second product search information and the product log; and generate recommended product information based on the similarity. Accordingly, by reflecting a product purchase propensity according to the product search pattern to recommend the product, it is possible to promote user's purchase of the product.

Description

로그 기반 상품 추천 장치{Apparatus for recommending product based log}Log-based product recommendation device {Apparatus for recommending product based log}

본 발명은 로그 기반 상품 추천 장치에 관한 것으로, 보다 구체적으로 사용자의 로그를 기반하여 상품을 추천할 수 있는 로그 기반 상품 추천 장치에 관한 것이다.The present invention relates to a log-based product recommendation apparatus, and more particularly, to a log-based product recommendation apparatus capable of recommending a product based on a user's log.

이동통신망의 발달과 단말기 사양의 발전에 따라 종래의 단순한 통신장치 또는 정보 제공 장치의 범주를 벗어나 이동통신단말기는 현대인의 필수 소지품이 되었고, 토탈 엔터테인먼트 기기로 진화해 가고 있는 추세에 있다.With the development of mobile communication networks and the development of terminal specifications, mobile communication terminals have become essential belongings of modern people, out of the scope of conventional simple communication devices or information providing devices, and are evolving into total entertainment devices.

일반적으로 이동통신단말기 또는 PC를 이용한 전자상거래 서비스는 온라인 쇼핑몰 사이트에서 판매하는 상품 정보를 고객들에게 제공하고, 고객들이 상품 정보를 확인한 후 자신이 원하는 상품을 구매하는 방식으로 이루어진다. 하지만 고객들은 방대한 양의 상품 정보가 존재하는 대형 쇼핑몰 사이트에서 자신이 선호하는 상품을 검색하는데 어려움을 겪게 된다.In general, an e-commerce service using a mobile communication terminal or a PC is performed by providing product information sold on an online shopping mall site to customers, and purchasing a desired product after the customer confirms the product information. However, customers have difficulty in searching for their preferred products on large shopping mall sites where there is a vast amount of product information.

이러한 상품 검색에 대한 어려움은 고객의 만족도와 재방문의 의지를 저하시키는 요인이 된다. 이에 따라, 전자상거래 서비스에서는 고객들에게 자신이 선호하는 상품들을 추천해주는 서비스를 제공한다.Difficulty in product search is a factor that lowers customer satisfaction and willingness to revisit. Accordingly, the e-commerce service provides a service for recommending products that they prefer to customers.

하지만, 종래 상품 추천 방법은 협업 필터링(Collaborative Filtering)을 이용하여 해당 고객의 선호도와 비슷한 선호도를 가진 고객들의 정보를 기반으로 해당 고객이 선호하는 상품을 추천하기 때문에 사용자와 상품의 정보량이 많아질수록 계산의 복잡도가 증가하고, 새로운 사용자에 대한 추천이 불가능하다.However, the conventional product recommendation method uses collaborative filtering to recommend a product preferred by the customer based on information of customers who have a similar preference to the customer’s preference. Calculation complexity increases, and recommendations for new users are impossible.

또한, 전자상거래 서비스를 사용하는 고객들을 나이와 성별에 따른 그룹으로 분류하고, 분류된 그룹 내에서 유사한 선호도를 가지는 고객들의 상품 유사도를 측정하고, 측정된 상품 유사도에 따라 대상 고객에게 상품을 추천하는 방식이 제공되고 있으나, 이는 단지 고객의 선호도를 바탕으로 이루어지는 것으로 추천 상품의 정확도 및 신뢰성이 떨어지는 문제가 있다.In addition, it classifies customers using e-commerce services into groups according to age and gender, measures the product similarity of customers with similar preferences within the classified group, and recommends products to target customers according to the measured product similarity. Although the method is provided, this is only done based on the customer's preference, and there is a problem in that the accuracy and reliability of the recommended product are lowered.

따라서, 사용자들에게 보다 양질의 추천 상품을 제공하기 위한 방안이 필요하다.Therefore, there is a need for a method for providing users with higher quality recommended products.

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

본 발명은 기존 로그의 상품 검색 정보 및 상품 추천 신호와 함께 수신된 로그의 상품 검색 정보 간의 유사도를 산출하여 상품을 추천할 수 있는 로그 기반 상품 추천 장치를 제공하는 것이다.An object of the present invention is to provide a log-based product recommendation apparatus capable of recommending a product by calculating a similarity between product search information in an existing log and product search information in a log received along with a product recommendation signal.

본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시 예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects and advantages of the present invention not mentioned may be understood by the following description, and will be more clearly understood by the embodiments of the present invention. Moreover, it will be readily apparent that the objects and advantages of the present invention may be realized by the means and combinations thereof indicated in the claims.

상기 기술적 과제를 해결하기 위한 본 발명에 따른 로그 기반 상품 추천 장치는 상품 조회 및 상품 구매의 이벤트 정보를 포함하는 로그를 송신하는 사용자 단말; 상기 로그를 미리 설정된 샘플링 기간 동안 수집하고, 미리 설정된 정제 조건에 기초하여 상기 로그를 정제하고, 상기 정제된 로그로부터 상품 구매 및 상품 조회에 대한 상품 로그를 생성하고, 상기 사용자 단말로부터 상품 추천 요청 신호와 함께 로그가 수신되면 상기 상품 추천 요청 신호와 함께 수신된 로그로부터 제2 상품 검색 정보를 추출하고, 제2 상품 검색 정보와 상기 상품 로그 간의 유사도를 산출하고, 상기 유사도에 기초하여 추천 상품 정보를 생성하는 추천 서버를 포함할 수 있다.A log-based product recommendation apparatus according to the present invention for solving the above technical problem includes: a user terminal for transmitting a log including event information of product inquiry and product purchase; The log is collected for a preset sampling period, the log is refined based on a preset refining condition, a product log for product purchase and product inquiry is generated from the refined log, and a product recommendation request signal from the user terminal When a log is received with the product recommendation request signal, second product search information is extracted from the log received along with the product recommendation request signal, a degree of similarity between the second product search information and the product log is calculated, and recommended product information is obtained based on the similarity degree. It may include a recommendation server to generate.

바람직하게, 상기 추천 서버는 상기 로그 각각에 포함된 상품 조회 횟수 정보를 이용하여 기준 횟수 정보를 설정하고, 설정된 기순 횟수 정보와 상기 로그 중 어느 하나의 로그에 포함된 상품 조회 횟수 정보를 비교하여 상기 미리 설정된 정제 조건을 상기 어느 하나의 로그가 만족하는지 여부를 판단할 수 있다.Preferably, the recommendation server sets reference number information by using the product inquiry number information included in each log, and compares the set number of times information with the product inquiry number information included in any one of the logs. It may be determined whether any one log satisfies a preset refining condition.

바람직하게, 상기 추천 서버는 상기 로그 각각에 포함된 상품 조회 횟수 정보 간의 평균 조회 횟수 정보를 산출하고, 상기 평균 조회 횟수 정보를 증폭하여 상기 기준 횟수 정보로 설정하고, 상기 로그 중 어느 하나의 로그에 포함된 상품 조회 횟수 정보가 상기 기준 횟수 정보를 초과하는 경우, 상기 어느 하나의 로그가 미리 설정된 정제 조건을 만족하는 것으로 판단하여 상기 어느 하나의 로그를 소거할 수 있다.Preferably, the recommendation server calculates the average number of inquiry information among the product inquiry number information included in each of the logs, amplifies the average inquiry number information and sets it as the reference number information, and stores the information in any one of the logs. When the included product inquiry count information exceeds the reference count information, it is determined that any one of the logs satisfies a preset refining condition, and the one of the logs may be deleted.

바람직하게, 상기 추천 서버는 상기 정제된 로그로부터 구매된 상품을 나타내는 상품 구매 정보와 상기 구매된 상품을 구매하는데까지 검색된 상품을 나타내는 제1 상품 검색 정보를 추출하고, 상기 추출된 상품 구매 정보와 상기 제1 상품 검색 정보를 매핑시켜 상기 상품 로그로 생성할 수 있다. Preferably, the recommendation server extracts product purchase information indicating a purchased product and first product search information indicating a product searched until purchasing the purchased product from the refined log, and extracts the extracted product purchase information and the The first product search information may be mapped to generate the product log.

바람직하게, 상기 추천 서버는 상기 상품 로그에 포함된 상기 제1 상품 검색 정보와 상기 제2 상품 검색 정보 각각이 나타내는 상품에 기초하여 상기 제1 상품 검색 정보와 상기 제2 상품 검색 정보 간의 유사도를 산출할 수 있다.Preferably, the recommendation server calculates a similarity between the first product search information and the second product search information based on products indicated by each of the first product search information and the second product search information included in the product log. can do.

바람직하게, 상기 추천 서버는 상기 제2 상품 검색 정보가 나타내는 상품을 모두 포함하는 제1 상품 검색 정보와 매핑된 상기 상품 구매 정보의 중복 개수를 상품 구매 정보가 나타내는 상품 별로 산출하고, 산출된 상품별 중복 개수를 유사도로 산출할 수 있다.Preferably, the recommendation server calculates the number of duplicates of the product purchase information mapped with the first product search information including all products indicated by the second product search information for each product indicated by the product purchase information, and the calculated duplicates for each product The number can be calculated as similarity.

바람직하게, 상기 추천 서버는 상기 유사도가 큰 순으로 미리 설정된 추천 상품 개수만큼의 상기 상품 구매 정보를 상기 추천 상품 정보로 생성 할 수 있다. Preferably, the recommendation server may generate, as the recommended product information, the product purchase information corresponding to the preset number of recommended products in the order of increasing the similarity.

본 발명에 따르면, 상품 검색 패턴에 따른 상품 구매 성향을 반영하여 상품을 추천함으로써, 사용자의 상품 구매를 촉진시킬 수 있다.According to the present invention, by reflecting the product purchase propensity according to the product search pattern and recommending the product, it is possible to promote the user's product purchase.

도 1은 본 발명의 실시 예에 따른 로그 기반 상품 추천 시스템에 대한 구성을 나타내는 도면이다.
도 2는 본 발명에 따른 사용자 단말의 구성을 나타내는 블록도이다.
도 3은 본 발명에 따른 추천 서버의 구성을 나타내는 블록도이다.
도 4는 본 발명에 따른 추천 서버가 추천 상품 정보를 생성하는 과정을 설명하기 위한 도면이다.
1 is a diagram showing the configuration of a log-based product recommendation system according to an embodiment of the present invention.
2 is a block diagram showing the configuration of a user terminal according to the present invention.
3 is a block diagram showing the configuration of a recommendation server according to the present invention.
4 is a diagram for explaining a process in which the recommendation server generates recommended product information according to the present invention.

이하, 본 발명의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 발명을 특정한 실시 형 태에 대해 한정하려는 것이 아니며, 본 발명의 실시 예의 다양한 변경(modification), 균등물(equivalent), 및/ 또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대 해서는 유사한 참조 부호가 사용될 수 있다. Hereinafter, various embodiments of the present invention will be described with reference to the accompanying drawings. However, this is not intended to limit the present invention to specific embodiments, and it should be understood that various modifications, equivalents, and/or alternatives of the embodiments of the present invention are included. In connection with the description of the drawings, like reference numerals may be used for like elements.

본 문서에서, "가진다", "가질 수 있다", "포함한다", 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다. In this document, expressions such as "have", "may have", "includes", or "may include" refer to the presence of a corresponding characteristic (eg, a numerical value, function, operation, or component such as a part). and does not exclude the presence of additional features.

본 문서에서, "A 또는 B", "A 또는/및 B 중 적어도 하나", 또는 "A 또는/및 B 중 하나 또는 그 이상" 등의 표현 은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B", "A 및 B 중 적어도 하나", 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는(3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다. In this document, expressions such as “A or B”, “at least one of A or/and B”, or “one or more of A or/and B” may include all possible combinations of the items listed together. . For example, "A or B", "at least one of A and B", or "at least one of A or B" means (1) includes at least one A, (2) includes at least one B; Or (3) it may refer to all cases including both at least one A and at least one B.

본 문서에서 사용된 "제1", "제2", "첫째", 또는 "둘째" 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중 요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제1 사용자 기기와 제2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 문서에 기재된 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 바꾸어 명명될 수 있다.Expressions such as "first", "second", "first", or "second" used in this document may modify various elements, regardless of order and/or importance, and may modify one element. It is used only to distinguish it from other components, and does not limit the components. For example, the first user equipment and the second user equipment may represent different user equipment regardless of order or importance. For example, without departing from the scope of the rights described in this document, a first component may be referred to as a second component, and similarly, the second component may also be renamed as a first component.

어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성 요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제3 구성요소)가 존재하지 않는 것으로 이해될 수 있다. A component (eg, a first component) is "coupled with/to (operatively or communicatively)" to another component (eg, a second component) When referring to "connected to", it will be understood that the certain element may be directly connected to the other element or may be connected through another element (eg, a third element). On the other hand, when it is said that a component (eg, a first component) is "directly connected" or "directly connected" to another component (eg, a second component), the component and the It may be understood that other components (eg, a third component) do not exist between other components.

본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합 한(suitable for)", "~하는 능력을 가지는(having the capacity to)", "~하도록 설계된(designed to)", "~하도록 변경된(adapted to)", "~하도록 만들어진(made to)", 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성(또는 설정)된"은 하드웨어적으로 "특별히 설계된(specifically designed to)"것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성 (또는 설정)된 제어부"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다. The expression “configured to (or configured to)” as used in this document, depending on the context, for example, “suitable for”, “having the capacity to )", "designed to", "adapted to", "made to", or "capable of" . The term “configured (or set up to)” may not necessarily mean only “specifically designed to” hardware. Instead, in some contexts, the expression “a device configured to” may mean that the device is “capable of” with other devices or parts. For example, the phrase "controller configured (or configured to perform) A, B, and C" may refer to a dedicated processor (eg, an embedded processor) for performing the corresponding operation, or by executing one or more software programs stored in memory. , may mean a generic-purpose processor (eg, a CPU or an application processor) capable of performing corresponding operations.

명세서에서 사용되는 “~부”라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, “~부”는 어떤 역할들을 수행한다. 그렇지만 “~부”는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. “~부”는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수 있다. 따라서, 일 예로서 “~부”는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세서들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 “~부”를 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 “~부”들로 결합되거나 추가적인 구성요소들과 “~부”들로 더 분리될 수 있다.As used herein, the term “unit” refers to a hardware component such as software, FPGA, or ASIC, and “unit” performs certain roles. However, “a” is not meant to be limited to software or hardware. "~" may be configured to be in an addressable storage medium. Thus, as an example, “a” refers to components such as software components, object-oriented software components, class components, and task components, and processors, functions, properties, and procedures. , subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays and variables. The functions provided within the components and “units” may be combined into a smaller number of components and “units” or further separated into additional components and “units”.

특히, 본 명세서에서, “제어부”는 중앙처리장치(Central Processing Unit (CPU)), 애플리케이션 프로세서(Application Processor (AP)) 및 커뮤니케이션 프로세서(Communication Processor (CP)) 중 하나 이상을 포함할 수 있다. In particular, in the present specification, the “control unit” may include one or more of a central processing unit (CPU), an application processor (AP), and a communication processor (CP).

본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.In this specification, a computer means all types of hardware devices including at least one processor, and may be understood as encompassing software configurations operating in the corresponding hardware device according to embodiments. For example, a computer may be understood to include, but is not limited to, smart phones, tablet PCs, desktops, notebooks, and user clients and applications running on each device.

본 문서에서 사용된 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한 정하려는 의도가 아닐 수 있다. 단수의 표현은 컨텍스트 상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 문서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 문서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은 관련 기술의 컨텍스트 상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 문서의 실시 예들을 배제하도록 해석될 수 없다. Terms used in this document are only used to describe specific embodiments, and may not be intended to limit the scope of other embodiments. The singular expression may include the plural expression unless the context clearly dictates otherwise. Terms used herein, including technical or scientific terms, may have the same meanings as commonly understood by one of ordinary skill in the art described in this document. Among the terms used in this document, terms defined in general dictionary may be interpreted with the same or similar meaning to the meaning in the context of the related art, and unless explicitly defined in this document, have an ideal or excessively formal meaning. not interpreted In some cases, even terms defined in this document cannot be construed to exclude embodiments of this document.

도 1은 본 발명의 실시 예에 따른 로그 기반 상품 추천 시스템에 대한 구성을 나타내는 도면이다.1 is a diagram showing the configuration of a log-based product recommendation system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명에 따른 로그 기반 상품 추천 시스템(10)은 사용자 단말(100) 및 추천 서버(200)를 포함할 수 있다.Referring to FIG. 1 , a log-based product recommendation system 10 according to the present invention may include a user terminal 100 and a recommendation server 200 .

사용자 단말(100)은 통신망을 통해 추천 서버(200)와 연결되어 로그 기반으로 추천 상품을 제공하기 위한 모든 데이터를 포함하는 로그를 송수신할 수 있다. 특히, 본 발명에 따른 사용자 단말(100)은 추천 서버(200)로부터 추천 상품에 대한 정보를 수신할 수 있다. 그리고, 사용자 단말(100)은 상품과 관련된 상품 조회, 장바구니 담기 또는 구매하기 등의 선택 이벤트에 대한 입력 신호를 감지하고, 입력 신호에 따라 해당되는 상품에 대한 정보를 포함하는 로그를 추천 서버(200)로 전송할 수 있다. 한편, 사용자 단말(100)은 어느 하나의 사용자로부터 사용되는 장치일 수도 있으나, 서로 다른 복수의 사용자로부터 사용되는 서로 다른 장치일 수 있다. 즉, 사용자 단말(100)의 복수일 수 있다.The user terminal 100 may be connected to the recommendation server 200 through a communication network to transmit/receive a log including all data for providing a recommended product based on the log. In particular, the user terminal 100 according to the present invention may receive information about a recommended product from the recommendation server 200 . Then, the user terminal 100 detects an input signal for a selection event such as a product inquiry related to a product, adding to a shopping cart, or purchasing a product, and according to the input signal, a log including information on the corresponding product is stored in the recommendation server 200 ) can be transmitted. Meanwhile, the user terminal 100 may be a device used by any one user, but may be a different device used by a plurality of different users. That is, there may be a plurality of user terminals 100 .

추천 서버(200)는 통신망을 통해 사용자 단말(100)과 연결되어 로그 기반으로 추천 상품을 제공하기 위한 모든 데이터를 포함하는 로그를 송수신할 수 있다. 특히, 본 발명에 따른 추천 서버(200)는 특정 상품과 관련성이 있는 추천 상품을 제공하기 위하여, 사용자 단말(100)로부터 다수의 상품에 대한 선택 이벤트 발생과 관련된 데이터를 로그로부터 추출하고, 추출된 데이터를 정제할 수 있다. 여기서, 데이터는 특정 상품을 선택하거나 구매와 관련된 정보를 포함하며, 미리 설정된 정제 조건에 의해 일부 데이터가 소거될 수 있다. 또한, 이벤트는 특정 상품에 대한 상품 조회, 장바구니 담기 또는 구매하기 등의 사용자 행동이 될 수 있다. 이러한, 추천 서버(200)는 미리 설정된 샘플링 기간 동안 로그를 사용자 단말(100)로부터 수신하여 로그를 수집할 수 있다. 예를 들어, 샘플링 기간은 1년일 수 있다.The recommendation server 200 may be connected to the user terminal 100 through a communication network to transmit/receive a log including all data for providing a recommended product based on the log. In particular, the recommendation server 200 according to the present invention extracts data related to the occurrence of a selection event for a plurality of products from the user terminal 100 from the log, and extracts the extracted data from the log in order to provide a recommended product related to a specific product. Data can be purified. Here, the data includes information related to selection or purchase of a specific product, and some data may be erased by preset refining conditions. In addition, the event may be a user action such as inquiring a product for a specific product, adding it to a shopping cart, or making a purchase. The recommendation server 200 may collect the log by receiving the log from the user terminal 100 during a preset sampling period. For example, the sampling period may be one year.

추천 서버(200)는 정제된 데이터를 분석하여 상품 추천 참조 데이터를 생성하고, 사용자 단말(100)로부터 상품 추천 신호와 함께 수신된 로그와 생성된 상품 추천 참조 데이터에 기초하여 추천 상품 정보를 생성할 수 있다.The recommendation server 200 analyzes the refined data to generate product recommendation reference data, and generates recommended product information based on the log received along with the product recommendation signal from the user terminal 100 and the generated product recommendation reference data. can

한편, 추천 서버(200)는 정렬된 데이터를 이용하여 각각의 사용자 별로 관련된 상품들 간의 연관 점수를 계산할 수 있다. 즉, 추천 서버(200)는 정렬된 데이터를 이용하여 각각의 사용자 별로 특정 상품의 이전 유알엘(URL, Uniform Resource Locator) 정보와 관련된 제1 점수, 상품들 간의 선택 이벤트 발생 시간차와 관련된 제2 점수, 상품과 관련된 이벤트 종류에 따라 정해지는 제3 점수를 연산하여 연관 점수를 계산할 수 있다. 그리고, 추천 서버(200)는 연관 점수를 동일한 상품 별로 구분하여 취합할 수 있다. 이후, 추천 서버(200)는 취합된 상품 간 연관 점수와 해당 상품을 이용한 사용자 수를 연산하여 최종 점수를 결정하고, 최종 점수를 적용하여 다른 상품에 대한 추천 기능을 제공할 수 있다.Meanwhile, the recommendation server 200 may calculate an association score between related products for each user by using the sorted data. That is, the recommendation server 200 uses the sorted data for each user, a first score related to previous Uniform Resource Locator (URL) information of a specific product, a second score related to a time difference between occurrence of a selection event between products, A third score determined according to the type of event related to the product may be calculated to calculate a related score. In addition, the recommendation server 200 may collect the related scores by classifying them for the same product. Thereafter, the recommendation server 200 may calculate a related score between the collected products and the number of users using the product to determine a final score, and apply the final score to provide a recommendation function for other products.

이를 통해, 본 발명은 상품 구매와 관련된 데이터를 이용하여 각각의 사용자 별로 관련된 상품들 간의 연관 점수를 계산하고, 연관 점수를 동일한 상품 페어에 따라 구분하여 취합하고, 취합된 상품 페어 간 연관 점수와 해당 상품을 이용한 사용자 수를 연산하여 결정되는 최종 점수를 적용하여 다른 상품에 대한 추천 기능을 제공하기 때문에 신뢰성 있고, 정확한 상품 추천이 가능하다. 또한, 사용자의 로그 기록들을 바탕으로 상품 추천을 제공하기 때문에, 사용자들의 의미 없는 로그에 대한 가중치를 낮추고, 추천 서비스의 품질을 높일 수 있다.Through this, the present invention calculates a correlation score between products related to each user by using data related to product purchase, divides the correlation score according to the same product pair, and collects the correlation score between the collected product pairs and the corresponding product pair. Since the final score determined by calculating the number of users using the product is applied to provide a recommendation function for other products, reliable and accurate product recommendation is possible. In addition, since a product recommendation is provided based on the user's log records, the weight of the meaningless log of users can be lowered and the quality of the recommendation service can be improved.

도 2는 본 발명에 따른 사용자 단말의 구성을 나타내는 블록도이다.2 is a block diagram showing the configuration of a user terminal according to the present invention.

도 2를 참조하면, 본 발명에 따른 사용자 단말(100)은 제어부(110), 입력부(120), 표시부(130), 저장부(140) 및 통신부(150)로 구성될 수 있다.Referring to FIG. 2 , the user terminal 100 according to the present invention may include a control unit 110 , an input unit 120 , a display unit 130 , a storage unit 140 , and a communication unit 150 .

입력부(120)는 숫자 및 문자 정보 등의 다양한 정보를 입력 받고, 각종 기능을 설정 및 사용자 단말(100)의 기능 제어와 관련하여 입력되는 신호를 제어부(110)로 전달할 수 있다. 또한, 입력부(120)는 사용자의 터치 또는 조작에 따른 입력 신호를 발생하는 키패드와 터치패드 중 적어도 하나를 포함하여 구성될 수 있다. 이때, 입력부(120)는 표시부(130)와 함께 하나의 터치패널(또는 터치스크린(touch screen)의 형태로 구성되어 입력과 표시 기능을 동시에 수행할 수 있다. 또한, 입력부(120)는 키보드, 키패드, 마우스, 조이스틱 등과 같은 입력 장치 외에도 향후 개발될 수 있는 모든 형태의 입력 수단이 사용될 수 있다. 특히, 본 발명에 따른 입력부(120)는 상품을 조회 또는 구매하기 위한 입력 신호를 감지하여 제어부(110)로 전달할 수 있다.The input unit 120 may receive various information such as number and character information, and transmit signals input in connection with setting various functions and controlling functions of the user terminal 100 to the control unit 110 . In addition, the input unit 120 may be configured to include at least one of a keypad and a touchpad that generate an input signal according to a user's touch or manipulation. In this case, the input unit 120 may be configured in the form of a single touch panel (or touch screen) together with the display unit 130 to simultaneously perform input and display functions. In addition, the input unit 120 includes a keyboard, All types of input means that can be developed in the future may be used in addition to input devices such as a keypad, mouse, joystick, etc. In particular, the input unit 120 according to the present invention detects an input signal for inquiring or purchasing a product, and the control unit ( 110) can be forwarded.

표시부(130)는 사용자 단말(100)의 기능 수행 중에 발생하는 일련의 동작상태 및 동작결과 등에 대한 정보를 표시할 수 있다. 또한, 표시부(130)는 사용자 단말(100)의 메뉴 및 사용자가 입력한 사용자 데이터 등을 표시할 수 있다. 이때, 표시부(130)가 터치스크린(Touch screen) 형태로 구성된 경우, 표시부(130)는 입력부(120)의 기능 중 일부 또는 전부를 수행할 수 있다. 특히, 본 발명에 따른 표시부(130)는 상품 조회 또는 구매와 관련된 상품 정보를 출력할 수 있다. 또한, 표시부(130)는 추천 서버(200)로부터 제공되는 추천 상품에 대한 정보를 표시할 수 있다.The display unit 130 may display information about a series of operation states and operation results that occur while the function of the user terminal 100 is performed. Also, the display unit 130 may display a menu of the user terminal 100 and user data input by the user. In this case, when the display unit 130 is configured in the form of a touch screen, the display unit 130 may perform some or all of the functions of the input unit 120 . In particular, the display unit 130 according to the present invention may output product information related to product inquiry or purchase. Also, the display unit 130 may display information on a recommended product provided from the recommendation server 200 .

저장부(140)는 데이터를 저장하기 위한 장치로, 주 기억 장치 및 보조 기억 장치를 포함하고, 사용자 단말(100)의 기능 동작에 필요한 응용 프로그램을 저장할 수 있다. 이러한 저장부(140)는 크게 프로그램 영역과 데이터 영역을 포함할 수 있다. 여기서, 사용자 단말(100)은 사용자의 요청에 상응하여 각 기능을 활성화하는 경우, 제어부(110)의 제어 하에 해당 응용 프로그램들을 실행하여 각 기능을 제공하게 될 수 있다. 특히, 본 발명에 따른 저장부(140)는 사용자 단말(100)을 부팅시키는 운영체제, 상품 선택 또는 구매를 위한 전자상거래 서비스를 제공하는 프로그램 등을 저장할 수 있다. 또한, 저장부(140)는 추천 상품에 대한 정보 및 상품 선택 또는 구매와 관련된 로그를 저장할 수 있다.The storage unit 140 is a device for storing data, includes a main storage device and an auxiliary storage device, and may store an application program required for a functional operation of the user terminal 100 . The storage unit 140 may largely include a program area and a data area. Here, when activating each function in response to a user's request, the user terminal 100 may provide each function by executing corresponding application programs under the control of the controller 110 . In particular, the storage unit 140 according to the present invention may store an operating system for booting the user terminal 100 , a program for providing an e-commerce service for product selection or purchase, and the like. Also, the storage unit 140 may store information on recommended products and logs related to product selection or purchase.

통신부(150)는 추천 서버(200)와 통신망을 통해 데이터를 송수신하기 위한 기능을 수행할 수 있다. 이러한 통신부(150)는 무선통신 모듈(미도시) 및 유선통신 모듈(미도시) 중 적어도 하나를 포함할 수 있다. 그리고, 무선통신 모듈은 무선 통신 방법에 따라 데이터를 송수신하기 위한 구성이며, 사용자 단말(100)이 무선 통신을 이용하는 경우, 무선망 통신 모듈, 무선랜 통신 모듈 및 무선팬 통신 모듈 중 어느 하나를 이용하여 데이터를 추천 서버(200)로 송수신할 수 있다. 또한, 유선통신 모듈은 유선으로 데이터를 송수신하기 위한 것이다. 유선통신 모듈은 유선을 통해 통신망에 접속하여, 추천 서버(200)에 데이터를 송수신할 수 있다. 특히, 본 발명에 따른 통신부(150)는 추천 서버(200)와 통신하여 로그 기반으로 추천 상품을 제공하기 위한 데이터를 포함하는 로그를 송수신할 수 있다.The communication unit 150 may perform a function for transmitting and receiving data through a communication network with the recommendation server 200 . The communication unit 150 may include at least one of a wireless communication module (not shown) and a wired communication module (not shown). In addition, the wireless communication module is a configuration for transmitting and receiving data according to a wireless communication method, and when the user terminal 100 uses wireless communication, any one of a wireless network communication module, a wireless LAN communication module, and a wireless fan communication module is used. Thus, data may be transmitted/received to and from the recommendation server 200 . In addition, the wired communication module is for transmitting and receiving data by wire. The wired communication module may connect to a communication network through a wire and transmit/receive data to and from the recommendation server 200 . In particular, the communication unit 150 according to the present invention may communicate with the recommendation server 200 to transmit/receive a log including data for providing a recommended product based on the log.

제어부(110)는 운영 체제(OS, Operation System) 및 각 구성을 구동시키는 프로세스 장치가 될 수 있다. 특히, 본 발명의 실시 예에 따른 제어부(110)는 추천 서버(200)로부터 특정 상품과 관련된 추천 상품에 대한 정보를 수신할 수 있다. 그리고, 제어부(110)는 상품과 관련된 상품 조회, 장바구니 담기 또는 구매하기 중 적어도 하나의 선택 이벤트에 대한 입력 신호를 감지하고, 입력 신호에 따라 해당되는 상품에 대한 정보를 포함하는 로그를 추천 서버(200)로 전송할 수 있다.The control unit 110 may be a process device for driving an operating system (OS) and each component. In particular, the controller 110 according to an embodiment of the present invention may receive information on a recommended product related to a specific product from the recommendation server 200 . Then, the control unit 110 detects an input signal for at least one selection event among product inquiry, shopping cart addition, or purchase related to the product, and according to the input signal, a log including information on the corresponding product is sent to the recommendation server ( 200) can be transmitted.

도 3은 본 발명에 따른 추천 서버의 구성을 나타내는 블록도이고, 도 4는 본 발명에 따른 추천 서버가 추천 상품 정보를 생성하는 과정을 설명하기 위한 도면이다.3 is a block diagram showing the configuration of a recommendation server according to the present invention, and FIG. 4 is a diagram for explaining a process in which the recommendation server according to the present invention generates recommended product information.

도 3 및 도 4를 참조하면, 본 발명의 실시 예에 따른 추천 서버(200)는 제어부(210), 저장부(220) 및 통신부(230)를 포함할 수 있다.3 and 4 , the recommendation server 200 according to an embodiment of the present invention may include a control unit 210 , a storage unit 220 , and a communication unit 230 .

통신부(230)는 통신망을 통해 사용자 단말(100)과 통신하여 로그 기반으로 추천 상품을 제공하기 위한 데이터를 포함하는 로그를 송수신할 수 있다.The communication unit 230 may communicate with the user terminal 100 through a communication network to transmit/receive a log including data for providing a recommended product based on the log.

저장부(220)는 추천 서버(200)의 기능 실행에 따른 모든 프로그램을 저장할 수 있다. 특히, 본 발명에 따른 저장부(220)는 사용자 별로 상품 선택 또는 구매와 관련된 데이터를 포함하는 로그를 수집하는 프로그램, 수집된 데이터를 정렬하거나 정제하는 프로그램, 정렬된 데이터를 기반으로 상품 간의 연관 점수를 계산하는 프로그램, 각각의 사용자 별로 동일한 상품에 대한 연관 점수를 취합하는 프로그램, 취합된 연관 점수를 연산하여 최종 점수를 결정하는 프로그램, 최종 점수를 적용하여 추천 상품을 제공하는 프로그램 등을 저장할 수 있다. 또한, 저장부(220)는 연관 점수, 최종 점수 및 상품 선택 또는 구매와 관련된 로그를 저장할 수 있다.The storage unit 220 may store all programs according to the function execution of the recommendation server 200 . In particular, the storage unit 220 according to the present invention includes a program for collecting a log including data related to product selection or purchase for each user, a program for sorting or refining the collected data, and a correlation score between products based on the sorted data. It is possible to store a program that calculates , a program that collects related scores for the same product for each user, a program that calculates the collected related scores to determine the final score, and a program that provides recommended products by applying the final score. . In addition, the storage 220 may store the related score, the final score, and a log related to product selection or purchase.

제어부(210)는 운영 체제 및 각 구성을 구동시키는 프로세스 장치가 될 수 있다. 특히, 본 발명의 실시 예에 따른 제어부(210)는 특정 상품과 관련된 추천 상품을 제공하기 위하여 사용자 단말(100)로부터 상품 구매와 관련된 데이터를 수집하고, 수집된 데이터를 정렬할 수 있다. 여기서, 제어부(210)는 수집된 데이터를 정렬함에 있어 상품을 선택하거나, 상품 구매를 요청한 시간 및 날짜 순으로 정렬할 수 있다. 한편, 제어부(210)는 수집된 데이터 중에서 사용자 기준으로 일정 상품 수 이하의 선택 이벤트를 수행한 사용자의 데이터와, 상품 기준으로 일정 수 이하의 사용자에게 선택 이벤트를 받은 상품의 데이터를 무의미한 데이터로 간주하여 삭제할 수 있다. 이때, 선택 이벤트는 특정 상품에 대한 상품 조회, 장바구니 담기 또는 구매하기 등의 사용자 행동이 될 수 있다.The control unit 210 may be a process device that drives an operating system and each component. In particular, the control unit 210 according to an embodiment of the present invention may collect data related to product purchase from the user terminal 100 and sort the collected data in order to provide a recommended product related to a specific product. Here, in sorting the collected data, the controller 210 may select a product or sort the product in the order of time and date at which the product purchase is requested. On the other hand, the controller 210 considers data of a user who has performed a selection event of less than a certain number of products from among the collected data and data of a product that has received a selection event from a user less than a certain number of products on a product basis as meaningless data. can be deleted. In this case, the selection event may be a user action such as inquiring a product for a specific product, adding it to a shopping cart, or making a purchase.

제어부(210)는 복수의 로그 중에서 미리 설정된 정제 조건을 만족하는 로그를 소거할 수 있다. 구체적으로, 제어부(210)는 저장된 모든 로그에 포함된 상품 조회 횟수 정보를 확인하고 확인된 상품 조회 횟수 정보의 평균 조회 횟수 정보를 산출하며, 복수의 로그 중에서 어느 로그에 포함된 상품 조회 횟수 정보가 평균 조회 횟수 정보를 기준으로 설정된 기준 횟수 정보를 초과하는 경우, 해당 로그가 미리 설정된 정제 조건을 만족하는 것으로 판단하여 해당 로그를 소거할 수 있다.The controller 210 may delete a log that satisfies a preset refining condition from among the plurality of logs. Specifically, the control unit 210 checks the product inquiry number information included in all stored logs, calculates the average inquiry number information of the checked product inquiry number information, and the product inquiry number information included in any log among a plurality of logs is When the reference number information set based on the average number of inquiry information is exceeded, it is determined that the log satisfies the preset refining condition, and the log may be deleted.

이를 위해, 제어부(210)는 평균 조회 횟수 정보를 150% 증폭하여 기준 횟수 정보를 설정할 수 있다.To this end, the controller 210 may set the reference number information by amplifying the average number of inquiry information by 150%.

이를 통해, 제어부(210)는 상품 추천 정보를 생성하는데 있어서 비정상적인 로그를 소거할 수 있다.Through this, the controller 210 may delete an abnormal log in generating product recommendation information.

제어부(210)는 정제된 로그로부터 제1 상품 검색 정보 및 상품 구매 정보를 추출하고, 추출된 제1상품 검색 정보와 상품 구매 정보를 매핑시켜 상품 로그를 생성할 수 있다.The controller 210 may extract first product search information and product purchase information from the refined log, and may generate a product log by mapping the extracted first product search information and product purchase information.

예를 들어, 제어부(210)는 도 4에 도시된 바와 같이, 정제된 어느 하나의 로그로부터 사용자로부터 구매된 상품 A를 나타내는 상품 구매 정보와 상품 A를 구매하기까지 검색된 상품 B, C 및 D를 나타내는 제1 상품 검색 정보를 매핑시킬 수 있다. 제어부(210)는 정제된 모든 로그를 대상으로 제1 상품 검색 정보 및 상품 구매 정보를 추출하고, 추출된 제1 상품 검색 정보와 상품 구매 정보를 매핑시킬 수 있다.For example, as shown in FIG. 4 , the controller 210 controls product purchase information indicating product A purchased from the user from any one of the refined logs and products B, C, and D searched until purchasing product A. The indicated first product search information may be mapped. The controller 210 may extract first product search information and product purchase information from all the refined logs, and map the extracted first product search information and product purchase information.

이후, 제어부(210)는 상품 추천 요청 신호와 함께 수신된 로그로부터 제2 상품 검색 정보를 추출할 수 있다. 제어부(210)는 상품 로그와 제2 상품 정보 간의 유사도를 산출할 수 있다. 구체적으로, 제어부는 모든 상품 로그에 포함된 제1 상품 검색 정보와 제2 상품 검색 정보 간의 유사한 정도를 나타내는 유사도를 산출하고, 유사도에 기초하여 추천 상품 정보를 생성할 수 있다.Thereafter, the controller 210 may extract the second product search information from the log received together with the product recommendation request signal. The controller 210 may calculate a similarity between the product log and the second product information. Specifically, the controller may calculate a similarity indicating a similarity between the first product search information and the second product search information included in all product logs, and generate recommended product information based on the similarity.

여기서, 제2 상품 검색 정보는 상품 추천의 대상이 되는 사용자가 사용자 단말(100)을 통해 상품 구매를 위해 검색한 상품을 나타내는 정보일 수 있다.Here, the second product search information may be information indicating a product searched by a user who is a target of product recommendation to purchase a product through the user terminal 100 .

또한, 제1 상품 검색 정보는 상품 추천의 대상이 되는 사용자 또는 상품 추천의 대상이 되는 사용자 외에 다른 사용자들이 과거에 상품 구매 정보의 상품을 구매하는데까지 검색한 상품을 나타내는 정보일 수 있다.In addition, the first product search information may be information indicating a product searched by a user who is a target of product recommendation or a user other than a user who is a target of product recommendation until purchasing a product of product purchase information in the past.

구체적으로, 제어부(210)는 제2 상품 검색 정보의 상품을 모두 포함하는 제1 상품 검색 정보와 매핑된 상품 구매 정보의 중복 개수를 상품 구매 정보의 상품 별로 산출하고, 산출된 상품별 중복 개수를 유사도로 산출할 수 있다.Specifically, the control unit 210 calculates the duplicate number of product purchase information mapped with the first product search information including all products of the second product search information for each product of the product purchase information, and calculates the number of duplicates for each product as a degree of similarity can be calculated as

예를 들어, 제2 상품 검색 정보가 나타내는 상품이 C, D이고, 정제된 로그들로부터 추천된 제1 상품 검색 정보와 구매 상품 정보 각각이 나타내는 상품이 하기 표 1과 같은 경우, 제어부(210)는 제1 로그, 제3 로그 및 제4 로그에 포함된 제1 상품 검색 정보가 나타내는 상품이 제2 검색 정보가 나타내는 상품을 모두 포함하고 있으므로, 제1 로그의 구매 상품 정보가 나타내는 상품 A의 중복 개수를 “1”로 산출하고, 제3 로그 및 제4 로그 각각의 구매 상품 정보가 나타내는 상품 B의 중복 개수를 “2”로 산출할 수 있다.For example, when the products indicated by the second product search information are C and D, and the products indicated by each of the first product search information recommended from the refined logs and the purchased product information are the same as in Table 1 below, the controller 210 Since the products indicated by the first product search information included in the first log, the third log, and the fourth log include all the products indicated by the second search information, duplicate product A indicated by the purchased product information in the first log. The number may be calculated as “1”, and the duplicate number of product B indicated by the purchased product information of each of the third log and the fourth log may be calculated as “2”.

로그Log 제1 상품 검색 정보1st product search information 구매 상품 정보Purchase product information 제1 로그first log B, C, DB, C, D AA 제2 로그2nd log B, CB, C AA 제3 로그3rd log B, C, DB, C, D BB 제4 로그4th log C, D, EC, D, E BB

이때, 제어부(210)는 아프리오리 알고리즘을 이용하여 유사도를 산출할 수 있다.In this case, the controller 210 may calculate the similarity by using the apriori algorithm.

제어부(210)는 산출된 유사도가 큰 순으로 제1 상품 검색 정보와 제1 상품 검색 정보가 매핑된 상품 구매 정보를 정렬하고, 유사도가 큰 순으로 미리 설정된 추천 상품 개수만큼의 상품 구매 정보를 추천 상품 정보로 생성할 수 있다.The controller 210 sorts the product purchase information to which the first product search information and the first product search information are mapped in the order of the calculated similarity, and recommends product purchase information corresponding to the preset number of recommended products in the order of the highest similarity. It can be created with product information.

한편, 다른 실시 예에 따른 제어부(210)는 제2 상품 검색 정보의 상품을 모두 포함하는 제1 상품 검색 정보에 관심 상품 정보가 포함되어 있는지 여부를 판단하고, 제2 상품 검색 정보의 상품을 모두 포함하는 제1 상품 검색 정보에 관심 상품 정보가 포함되어 있는 경우, 관심 상품 정보의 개수에 기초하여 상기 중복 개수를 보정하여 산출할 수 있다.Meanwhile, the control unit 210 according to another embodiment determines whether interest product information is included in the first product search information including all products of the second product search information, and selects all products of the second product search information. When the product of interest information is included in the included first product search information, the number of duplicates may be corrected and calculated based on the number of product information of interest.

여기서, 관심 상품 정보는 사용자가 검색한 상품 중에서 즐겨찾기를 설정하거나 장바구니 기능을 이용하여 별도로 분류한 상품을 나타내는 정보일 수 있다.Here, the interest product information may be information indicating a product that the user sets a favorite among the products searched for by the user or is separately classified using a shopping cart function.

상술된 표 1을 다시 참조하면, 제4 로그의 제1 상품 검색 정보가 나타내는 상품 중 E 상품이 관심 상품 정보인 경우, 제어부(210)는 제3 로그의 제1 상품 검색 정보에 관심 상품 정보가 1개인 것으로 판단하고, 제3 로그에 의한 상품 B의 중복 개수 1에 관심 상품 정보 1을 가산하는 보정을 수행하여 중복 개수를 산출할 수 있다. Referring back to Table 1 above, when product E among the products indicated by the first product search information of the fourth log is the product of interest, the controller 210 includes the product of interest information in the first product search information of the third log. It is determined that there is one, and the number of duplicates may be calculated by performing correction by adding 1 of product information of interest to 1 of duplicates of product B according to the third log.

한편, 또 다른 실시 예에 따른 제어부(210)는 정렬된 데이터를 이용하여 각각의 사용자 별로 관련된 상품들 간의 연관 점수를 계산할 수 있다. 이때, 제어부(210)는 특정 상품의 이전 유알엘 정보와 관련된 제1 점수(ref_score), 상품들 간의 선택 이벤트 발생 시간차와 관련된 제2 점수(time_diff_score), 상품과 관련된 이벤트 종류에 따라 정해지는 제3 점수(action_score)를 연산하여 연관 점수에 대한 로그(Log) 점수를 계산할 수 있다.Meanwhile, the controller 210 according to another embodiment may calculate a correlation score between related products for each user by using the sorted data. At this time, the control unit 210 controls a first score (ref_score) related to previous UR information of a specific product, a second score (time_diff_score) related to a time difference between occurrence of a selection event between products, and a third score determined according to the type of event related to the product (action_score) can be calculated to calculate a log score for the associated score.

여기서, 제어부(210)는 제1 점수를 계산하기 위하여, 특정 상품에 대한 이전 유알엘 정보를 확인하는데, 이전 유알엘 정보는 판매 사이트의 메인 페이지, 서브(Sub) 카테고리 페이지, 검색 페이지, 외부 검색 엔진, 블로그 사이트, 뉴스 사이트, 각종 커뮤니티 사이트, 소셜 네트워크 서비스 사이트 등이 포함될 수 있다. 하지만, 본 발명의 실시 예에 따른 이전 유알엘 정보는 상기에 제시된 유알엘 정보에 한정되는 것이 아니고, 특정 상품을 검색하거나 확인할 수 있는 다양한 종류의 유알엘 정보가 포함될 수 있다. 즉, 제어부(210)는 특정 상품을 확인할 수 있는 다수의 이전 유알엘 정보를 이용하여 사용자의 의도를 파악하고, 만약 사용자가 큰 의미 없이 상품을 클릭한 경우라면, 가중치를 낮게 적용하여 제1 점수를 계산할 수 있다. 예를 들어, 제어부(210)는 이전 유알엘 정보가 판매 사이트의 메인 페이지인 경우에는 사용자가 무의미하게 또는 별 다른 생각 없이 또는 상품을 클릭할 수 있으므로, 이럴 경우에는 사용자 행동에 대한 가중치를 낮게 설정할 수 있다. 한편, 제어부(210)는 이전 유알엘 정보가 판매 사이트의 서브 카테고리 페이지나 검색 페이지인 경우, 사용자가 특정 의도를 가지고 상품을 클릭하고 확인한 경우이므로, 이럴 경우에는 사용자 행동에 대한 가중치를 높게 설정할 수 있다.Here, in order to calculate the first score, the controller 210 checks previous URL information for a specific product, which includes the main page of the sales site, the sub category page, the search page, the external search engine, It may include a blog site, a news site, various community sites, a social network service site, and the like. However, the previous URL information according to an embodiment of the present invention is not limited to the URL information presented above, and may include various types of URL information for searching or checking a specific product. That is, the control unit 210 identifies the user's intention by using a plurality of previous URL information that can confirm a specific product, and if the user clicks on the product without much meaning, the first score is obtained by applying a low weight. can be calculated For example, the control unit 210 may set a low weight for user actions in this case, since the user may click on a product meaninglessly or without thinking about it or if the previous URL information is the main page of the sales site. have. On the other hand, if the previous UR information is a sub-category page or a search page of the sales site, the user clicks and confirms the product with a specific intention. In this case, the weight for the user action may be set high. .

또한, 제어부(210)는 특정 상품에 대한 선택 이벤트 발생 시간과, 특정 상품에 대한 선택 이벤트 발생 이후의 다음 상품에 대한 선택 이벤트 발생 시간차를 연산하여 제2 점수를 계산할 수 있다. 즉, 제어부(210)는 복수의 상품들에 대한 선택 이벤트 발생 시간차를 순차적으로 확인할 수 있다. 그리고, 제어부(210)는 확인된 시간차가 큰 경우 상품들 간의 연관도가 낮은 것으로 판단하며, 시간차가 작은 경우의 상품들 보다 낮은 가중치를 부여하여 제2 점수를 계산할 수 있다.Also, the controller 210 may calculate a second score by calculating a time difference between the occurrence time of the selection event for the specific product and the occurrence time of the selection event for the next product after the occurrence of the selection event for the specific product. That is, the controller 210 may sequentially check the selection event occurrence time difference for a plurality of products. In addition, the controller 210 determines that the correlation between products is low when the confirmed time difference is large, and can calculate the second score by giving a weight lower than that of the products when the time difference is small.

또한, 제어부(210)는 상품에 대한 이벤트 종류와 관련된 제3 점수를 계산할 수 있다. 즉, 제어부(210)는 상품과 관련된 이벤트 중 구매하기 이벤트가 발생하면, 제3 점수에 대한 가중치를 다른 이벤트(상품 보기 또는 장바구니 담기) 보다 높게 계산할 수 있다.Also, the controller 210 may calculate a third score related to the event type for the product. That is, when a purchase event occurs among product-related events, the control unit 210 may calculate a weight for the third score to be higher than that of other events (eg, viewing product or adding to shopping cart).

이후, 제어부(210)는 각각의 상품 별로 계산된 로그 점수를 연산하여 복수의 상품에 대한 페어(Pair) 점수를 계산할 수 있다. 그리고, 제어부(210)는 상품 간 페어 점수를 정규화하여 정규화(Normalized) 점수를 계산하고, 중복되는 상품 간 정규화 점수를 삭제할 수 있다.Thereafter, the controller 210 may calculate a pair score for a plurality of products by calculating a log score calculated for each product. In addition, the controller 210 may calculate a normalized score by normalizing the pair score between products, and delete the overlapping normalized score between the products.

제어부(210)는 연관 점수를 동일한 상품 별로 구분하여 취합할 수 있다. 그리고, 제어부(210)는 취합된 연관 점수와 해당 상품을 이용한 사용자 수를 연산하여 최종 점수를 결정할 수 있다. 이때, 제어부(210) 사용자 별 연관 점수의 합을 각각의 상품을 선택 또는 구매한 사용자의 수로 나누어 상품 간 최종 점수를 계산할 수 있다. 그리고 나서, 제어부(210)는 최종 점수를 적용하여 다른 상품에 대한 추천 기능을 제공할 수 있다.The control unit 210 may classify and collect the related scores for the same product. Then, the control unit 210 may determine the final score by calculating the number of users using the collected related scores and the product. In this case, the controller 210 may calculate the final score between the products by dividing the sum of the associated scores for each user by the number of users who have selected or purchased each product. Then, the controller 210 may provide a recommendation function for other products by applying the final score.

특히, 본 발명에 따른 제어부(210)는 사용자 단말(100)로부터 수집되는 상품 구매와 관련된 데이터를 시간 및 날짜 순으로 정렬하는 기능을 할 수 있다. 또한, 제어부(210)는 정렬된 데이터를 이용하여 각각의 사용자 별로 관련된 상품들 간의 연관 점수를 계산하는 기능을 할 수 있다. 또한, 제어부(210)는 계산된 연관 점수를 동일한 상품 별로 구분하여 취합하는 기능을 할 수 있다. 또한, 제어부(210)는 취합된 연관 점수와 해당 상품을 이용한 사용자 수를 연산하여 최종 점수를 결정하는 기능을 할 수 있다. 또한, 제어부(210)는 결정된 최종 점수를 적용하여 다른 상품에 대한 추천 기능을 수행할 수 있다. In particular, the control unit 210 according to the present invention may function to sort the data related to the purchase of goods collected from the user terminal 100 in the order of time and date. Also, the controller 210 may function to calculate a correlation score between products related to each user by using the sorted data. Also, the control unit 210 may function to classify and collect the calculated related scores for the same product. In addition, the control unit 210 may function to determine the final score by calculating the collected related scores and the number of users using the corresponding product. In addition, the controller 210 may perform a recommendation function for other products by applying the determined final score.

이제까지 본 발명에 대하여 바람직한 실시 예를 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 본 발명을 구현할 수 있음을 이해할 것이다. 그러므로 상기 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 한다.So far, the present invention has been focused on preferred embodiments. Those of ordinary skill in the art to which the present invention pertains will understand that the present invention can be implemented in modified forms without departing from the essential characteristics of the present invention. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive point of view. The scope of the present invention is indicated in the claims rather than the foregoing description, and all differences within the scope equivalent thereto should be construed as being included in the present invention.

이상과 같이, 본 발명은 비록 한정된 실시 예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술사상과 아래에 기재될 특허청구범위의 균등범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.As described above, although the present invention has been described with reference to limited embodiments and drawings, the present invention is not limited thereto, and the technical idea of the present invention and the following by those of ordinary skill in the art to which the present invention pertains. Of course, various modifications and variations are possible within the scope of equivalents of the claims to be described.

10: 로그 기반 상품 추천 장치
100: 사용자 단말
200: 추천 서버
10: Log-based product recommendation device
100: user terminal
200: recommendation server

Claims (7)

상품 조회 및 상품 구매의 이벤트 정보를 포함하는 로그를 송신하는 사용자 단말; 및
상기 로그를 미리 설정된 샘플링 기간 동안 수집하고, 미리 설정된 정제 조건에 기초하여 상기 로그를 정제하고, 상기 정제된 로그로부터 상품 구매 및 상품 조회에 대한 상품 로그를 생성하고, 상기 사용자 단말로부터 상품 추천 요청 신호와 함께 로그가 수신되면 상기 상품 추천 요청 신호와 함께 수신된 로그로부터 제2 상품 검색 정보를 추출하고, 제2 상품 검색 정보와 상기 상품 로그 간의 유사도를 산출하고, 상기 유사도에 기초하여 추천 상품 정보를 생성하는 추천 서버;를 포함하는 것을 특징으로 하는 로그 기반 상품 추천 시스템.
a user terminal for transmitting a log including event information of product inquiry and product purchase; and
The log is collected for a preset sampling period, the log is refined based on a preset refining condition, a product log for product purchase and product inquiry is generated from the refined log, and a product recommendation request signal from the user terminal When the log is received with the product recommendation request signal, the second product search information is extracted from the log received along with the product recommendation request signal, the similarity between the second product search information and the product log is calculated, and recommended product information is obtained based on the similarity level. A log-based product recommendation system comprising a; a recommendation server for generating.
제1항에 있어서,
상기 추천 서버는
상기 로그 각각에 포함된 상품 조회 횟수 정보를 이용하여 기준 횟수 정보를 설정하고, 설정된 기순 횟수 정보와 상기 로그 중 어느 하나의 로그에 포함된 상품 조회 횟수 정보를 비교하여 상기 미리 설정된 정제 조건을 상기 어느 하나의 로그가 만족하는지 여부를 판단하는 것을 특징으로 하는 로그 기반 상품 추천 시스템.
According to claim 1,
The recommendation server is
The reference number information is set using the product inquiry number information included in each log, and the preset refining condition is determined by comparing the product inquiry number information included in any one of the logs with the set reference number information. A log-based product recommendation system, characterized in that it is determined whether one log is satisfied.
제2항에 있어서,
상기 추천 서버는
상기 로그 각각에 포함된 상품 조회 횟수 정보 간의 평균 조회 횟수 정보를 산출하고, 상기 평균 조회 횟수 정보를 증폭하여 상기 기준 횟수 정보로 설정하고, 상기 로그 중 어느 하나의 로그에 포함된 상품 조회 횟수 정보가 상기 기준 횟수 정보를 초과하는 경우, 상기 어느 하나의 로그가 미리 설정된 정제 조건을 만족하는 것으로 판단하여 상기 어느 하나의 로그를 소거하는 것을 특징으로 하는 로그 기반 상품 추천 시스템.
3. The method of claim 2,
The recommendation server is
Calculate the average number of inquiry information among the product inquiry number information included in each log, amplify the average inquiry number information and set it as the reference number information, and the product inquiry number information included in any one of the logs When the reference number information is exceeded, it is determined that the one log satisfies a preset refining condition, and the one log is deleted.
제1항에 있어서,
상기 추천 서버는
상기 정제된 로그로부터 구매된 상품을 나타내는 상품 구매 정보와 상기 구매된 상품을 구매하는데까지 검색된 상품을 나타내는 제1 상품 검색 정보를 추출하고, 상기 추출된 상품 구매 정보와 상기 제1 상품 검색 정보를 매핑시켜 상기 상품 로그로 생성하는 것을 특징으로 하는 로그 기반 상품 추천 시스템.
According to claim 1,
The recommendation server is
From the refined log, product purchase information indicating a purchased product and first product search information indicating a product searched until purchasing the purchased product are extracted, and the extracted product purchase information and the first product search information are mapped A log-based product recommendation system, characterized in that it is generated as the product log.
제4항에 있어서,
상기 추천 서버는
상기 상품 로그에 포함된 상기 제1 상품 검색 정보와 상기 제2 상품 검색 정보 각각이 나타내는 상품에 기초하여 상기 제1 상품 검색 정보와 상기 제2 상품 검색 정보 간의 유사도를 산출하는 것을 특징으로 하는 로그 기반 상품 추천 시스템.
5. The method of claim 4,
The recommendation server is
Log-based, characterized in that the similarity between the first product search information and the second product search information is calculated based on the products indicated by each of the first product search information and the second product search information included in the product log Product recommendation system.
제5항에 있어서,
상기 추천 서버는
상기 제2 상품 검색 정보가 나타내는 상품을 모두 포함하는 제1 상품 검색 정보와 매핑된 상기 상품 구매 정보의 중복 개수를 상품 구매 정보가 나타내는 상품 별로 산출하고, 산출된 상품별 중복 개수를 유사도로 산출하는 것을 특징으로 하는 로그 기반 상품 추천 시스템.
6. The method of claim 5,
The recommendation server is
Calculating the duplicate number of the product purchase information mapped with the first product search information including all products indicated by the second product search information for each product indicated by the product purchase information, and calculating the calculated number of duplicates for each product as a degree of similarity A log-based product recommendation system that features.
제5항에 있어서,
상기 추천 서버는
상기 유사도가 큰 순으로 미리 설정된 추천 상품 개수만큼의 상기 상품 구매 정보를 상기 추천 상품 정보로 생성 하는 것을 특징으로 하는 로그 기반 상품 추천 시스템.
6. The method of claim 5,
The recommendation server is
The log-based product recommendation system, characterized in that the product purchase information corresponding to the preset number of recommended products in the order of the greatest similarity is generated as the recommended product information.
KR1020190179201A 2019-12-31 2019-12-31 Apparatus for recommending product based log KR102427254B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190179201A KR102427254B1 (en) 2019-12-31 2019-12-31 Apparatus for recommending product based log

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190179201A KR102427254B1 (en) 2019-12-31 2019-12-31 Apparatus for recommending product based log

Publications (2)

Publication Number Publication Date
KR20210085770A true KR20210085770A (en) 2021-07-08
KR102427254B1 KR102427254B1 (en) 2022-08-25

Family

ID=76893799

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190179201A KR102427254B1 (en) 2019-12-31 2019-12-31 Apparatus for recommending product based log

Country Status (1)

Country Link
KR (1) KR102427254B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010272015A (en) * 2009-05-22 2010-12-02 Yahoo Japan Corp Net shopping management apparatus
KR20150081383A (en) * 2014-01-03 2015-07-14 에스케이플래닛 주식회사 Method for recommend goods based user log data, system and apparatus thereof
KR101567217B1 (en) 2014-05-29 2015-11-17 연세대학교 산학협력단 Method and system for recommendation with collaborative filtering using social network analysis

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010272015A (en) * 2009-05-22 2010-12-02 Yahoo Japan Corp Net shopping management apparatus
KR20150081383A (en) * 2014-01-03 2015-07-14 에스케이플래닛 주식회사 Method for recommend goods based user log data, system and apparatus thereof
KR101567217B1 (en) 2014-05-29 2015-11-17 연세대학교 산학협력단 Method and system for recommendation with collaborative filtering using social network analysis

Also Published As

Publication number Publication date
KR102427254B1 (en) 2022-08-25

Similar Documents

Publication Publication Date Title
US8775324B2 (en) Compatibility scoring of users in a social network
US10140455B2 (en) Distributed system for discovery of vulnerabilities in applications including detecting and/or filtering out vulnerability duplicates
US20190012683A1 (en) Method for predicting purchase probability based on behavior sequence of user and apparatus for the same
US20210406685A1 (en) Artificial intelligence for keyword recommendation
US20090216639A1 (en) Advertising selection and display based on electronic profile information
US20120316970A1 (en) System and method for providing targeted content
US11599548B2 (en) Utilize high performing trained machine learning models for information retrieval in a web store
US20130073618A1 (en) Information Providing System, Information Providing method, Information Providing Device, Program, And Information Storage Medium
US10853866B2 (en) Search method, medium, and device for providing a results interface for both single and multiple sellers
KR101834480B1 (en) Providing system for goods recommending using goods review of customer
KR20140096412A (en) Method to recommend digital contents based on search log and apparatus therefor
US20150248720A1 (en) Recommendation engine
US20210406933A1 (en) Artificial intelligence for next best action
TWI461942B (en) An ad management apparatus, an advertisement selecting apparatus, an advertisement management method, an advertisement management program, and a recording medium on which an advertisement management program is recorded
KR101678660B1 (en) Method for recommend goods based user log data, system and apparatus thereof
JP2012234340A (en) Article keyword management system
JP6285284B2 (en) Opinion utilization support device and opinion utilization support method
KR102427254B1 (en) Apparatus for recommending product based log
KR20190074830A (en) System and method for determining landing page and computer readable record medium thereof
TWI447662B (en) An ad management apparatus, an advertisement selecting apparatus, an advertisement management method, an advertisement management program, and a recording medium on which an advertisement management program is recorded
JP6568284B1 (en) Providing device, providing method, and providing program
CN111091416A (en) Method and device for predicting probability of hotel purchase robot
KR20190061317A (en) Method of providing stock information
JP6585998B2 (en) Content determination device
JP3674427B2 (en) Information providing server and information providing method

Legal Events

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