KR20100070661A - Apparatus and method for offering item recommendation - Google Patents
Apparatus and method for offering item recommendation Download PDFInfo
- Publication number
- KR20100070661A KR20100070661A KR1020080129308A KR20080129308A KR20100070661A KR 20100070661 A KR20100070661 A KR 20100070661A KR 1020080129308 A KR1020080129308 A KR 1020080129308A KR 20080129308 A KR20080129308 A KR 20080129308A KR 20100070661 A KR20100070661 A KR 20100070661A
- Authority
- KR
- South Korea
- Prior art keywords
- item
- user
- preference
- items
- extracting
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0282—Rating or review of business operators or products
Abstract
Description
본 발명은 추천 항목 제공 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and a method for providing a recommendation item.
오늘날 세계는 정보로 넘쳐나고 있으며, 정보의 증가 속도는 점차 증가하여, 전체 정보량이 두 배가 되는 데 걸리는 주기도 점차 빨라지고 있다.Today's world is brimming with information, and the rate of increase of information is increasing, and the cycle to double the total amount of information is getting faster.
이에 따라 오늘날의 사용자는 넘쳐날 정도로 많은 정보 속에서 실제로 자신에게 필요한 정보만을 제공받아야 할 필요성을 필연적으로 가지게 되었다.As a result, today's users inevitably have a necessity to be provided with only the information that is really necessary for them.
사용자에게 필요한 정보를 제공하고자 하는 연구가 학계 및 산업계에서 이루어지고 있으며, 이에 따라 맞춤형 광고 제공이나 쇼핑몰에서의 맞춤형 상품 추천이나, 영화예매 홈페이지에서의 영화 추천, 음악 판매 홈페이지에서의 음악 추천 등 추천 시스템이 실제로 사용되고 있다.Researches are being conducted in academia and industry to provide users with the necessary information, and accordingly, recommendation systems such as providing customized advertisements, recommending customized products at shopping malls, recommending movies at movie ticket homepages, and recommending music at music sales homepages. This is actually used.
그러나 아직까지는 단순히 다른 사용자의 선호도(영화 별 점 등) 정보만을 이용하거나, 단순히 사용자의 신상 정보만을 이용하는 데 그치고 있어, 사용자가 진정으로 유용하다고 느낄 만한 정보를 제공하는 것이 어려운 실정이었다.However, it is still difficult to provide information that the user feels really useful because it is merely using information of other users' preferences (such as movie ratings) or simply using personal information of the user.
특히, 다른 사용자의 선호도 정보만을 이용하는 경우 현재 사용자의 취향이 고려되지 못하는 문제가 있고, 현재 사용자의 신상 정보만을 이용하는 경우 다른 사용자에 대한 선호도 정보, 또는 현재 사용자의 다른 항목에 대한 선호도 정보를 반영할 수 없어 고품질의 추천 시스템을 제공하기 어려웠다.In particular, if only the preference information of another user is used, the current user's taste is not considered. If only the personal information of the current user is used, preference information of another user or preference information of another item of the current user may be reflected. It was difficult to provide a high quality referral system.
또한, 가까운 미래에 유비쿼터스(ubiquitous) 환경이 대중화될 것으로 예상되는 가운데, 사용자의 컨텍스트(Context, 상황) 정보를 보다 용이하고 상세하게 수집, 사용할 수 있어, 컨텍스트 정보를 보다 효과적으로 활용하는 추천 시스템의 제공이 요청되고 있다.In addition, the ubiquitous environment is expected to become popular in the near future, and the user's context information can be collected and used more easily and in detail, thereby providing a recommendation system that utilizes the context information more effectively. Is being requested.
본 발명은 상술한 문제점을 해결하기 위하여 제안된 것으로, 사용자의 선호도 정보 및 컨텍스트 정보를 모두 이용하여 고품질의 추천 항목 제공 장치 및 방법을 제공하는 데 그 목적이 있다.The present invention has been proposed to solve the above-described problem, and an object thereof is to provide an apparatus and method for providing a high quality recommendation item using both user preference information and context information.
또한, 본 발명은 사용자가 실제로 선호하는 항목을 추천 항목으로 제공하여 사용자의 만족도를 높이고, 상품 또는 서비스가 효율적으로 제공될 수 있도록 하는 추천 항목 제공 장치 및 방법을 제공하는 데 그 목적이 있다.In addition, an object of the present invention is to provide a recommendation item providing apparatus and method for enhancing the user's satisfaction by providing an item actually preferred by the user as a recommendation item and efficiently providing a product or a service.
또한, 본 발명은 유비쿼터스 환경에서 사용자의 컨텍스트 정보를 효과적으로 사용하는 추천 항목 제공 장치 및 방법을 제공하는 데 그 목적이 있다.Another object of the present invention is to provide an apparatus and method for providing a recommendation item effectively using context information of a user in a ubiquitous environment.
본 발명의 일 측면에 따르면 추천 항목 제공 장치가 제공된다.According to an aspect of the present invention, there is provided an apparatus for providing a recommendation item.
본 발명의 일 실시 예에 따르는 제1 사용자에게 추천 항목을 제공하는 추천 항목 제공 장치는 상기 제1 사용자의 컨텍스트(Context) 정보를 이용하여 필터링 대상 항목을 추출하는 필터링 대상 항목 추출부, 협업 필터링(Collaborative Filtering) 방식으로 상기 필터링 대상 항목 중 추천 항목 목록을 추출하는 추천 항목 목록 추출부 및 상기 추출된 추천 항목 목록을 제공하는 추천 항목 목록 제공부를 포함할 수 있다.The recommendation item providing apparatus for providing a recommendation item to a first user according to an embodiment of the present invention may include a filtering target item extracting unit and a collaborative filtering method for extracting a filtering target item using context information of the first user. It may include a recommendation item list extraction unit for extracting a list of recommended items of the filtering target item by a collaborative filtering method and a recommendation item list providing unit for providing the extracted recommendation item list.
본 발명의 다른 측면에 따르면 추천 항목 제공 방법이 제공된다.According to another aspect of the present invention, a method for providing a recommendation item is provided.
본 발명의 일 실시 예에 따르는 제1 사용자에게 추천 항목을 제공하는 추천 항목 제공 방법은 상기 제1 사용자의 컨텍스트 정보를 이용하여 필터링 대상 항목을 추출하는 단계, 협업 필터링 방식으로 상기 필터링 대상 항목 중 추천 항목 목록을 추출하는 단계 및 상기 추출된 추천 항목 목록을 제공하는 단계를 포함할 수 있다.In the method of providing a recommendation item for providing a recommendation item to a first user according to an embodiment of the present disclosure, the method may further include extracting a filtering target item using context information of the first user. The method may include extracting a list of items and providing the extracted list of recommended items.
본 발명의 또 다른 측면에 따르면 프로그램을 기록한 기록 매체가 제공된다.According to another aspect of the present invention, a recording medium having a program recorded thereon is provided.
제1 사용자에게 추천 항목을 제공하기 위해 전자장치에 의해 실행될 수 있는 명령어의 프로그램이 유형적으로 구현되어 있으며, 상기 전자장치에 의해 판독될 수 있는 프로그램을 기록한 기록매체는 상기 제1 사용자의 컨텍스트 정보를 이용하여 필터링 대상 항목을 추출하는 단계, 협업 필터링 방식으로 상기 필터링 대상 항목 중 추천 항목 목록을 추출하는 단계 및 상기 추출된 추천 항목 목록을 제공하는 단계를 실행할 수 있다.A program of instructions that can be executed by an electronic device is tangibly implemented to provide a recommendation item to a first user, and a recording medium that records a program that can be read by the electronic device can read context information of the first user. Extracting a filtering target item by using the method, extracting a recommendation item list among the filtering target items by a collaborative filtering method, and providing the extracted recommendation item list.
본 발명에 따르면 사용자의 선호도 정보 및 컨텍스트 정보를 모두 이용하여 고품질의 추천 항목 제공 장치 및 방법을 제공하는 효과가 있다.According to the present invention, there is an effect of providing an apparatus and method for providing a high quality recommendation item using both user preference information and context information.
또한, 본 발명은 사용자가 실제로 선호하는 항목을 추천 항목으로 제공하여 사용자의 만족도를 높이고, 상품 또는 서비스가 효율적으로 제공될 수 있도록 하는 효과가 있다.In addition, the present invention has the effect of increasing the user's satisfaction by providing an item that the user actually prefers as a recommendation item so that the product or service can be efficiently provided.
또한, 본 발명은 유비쿼터스 환경에서 사용자의 컨텍스트 정보를 효과적으로 사용하는 추천 항목 제공 장치 및 방법을 제공하는 효과가 있다.In addition, the present invention has the effect of providing an apparatus and method for providing a recommendation item effectively using context information of a user in a ubiquitous environment.
이하, 본 발명에 따른 추천 항목 제공 장치 및 방법의 실시 예를 첨부도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성 요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, an embodiment of an apparatus and a method for providing a recommended item according to the present invention will be described in detail with reference to the accompanying drawings, and in the following description with reference to the accompanying drawings, the same or corresponding components are given the same reference numbers. Duplicate explanations will be omitted.
도 1a는 본 발명의 일 실시 예에 따르는 추천 항목 제공 장치(100)의 블록구성도이다.1A is a block diagram of an
도 1a를 참조하면, 본 발명의 일 실시 예에 따르는 추천 항목 제공 장 치(100)는 필터링 대상 항목 추출부(110), 추천 항목 목록 추출부(120), 추천 항목 목록 제공부(130) 및 컨텍스트 태그 설정부(140)를 포함할 수 있다.Referring to FIG. 1A, the recommendation
도 1a의 추천 항목 제공 장치(100)는 제1 사용자에게 추천 항목을 제공하기 위한 장치이다. 여기서 추천 항목은 실시 예에 따라 여러 가지 상품, 서비스, 정보 등이 될 수 있다. 예를 들어, 영화 예매를 하려는 이동 단말 사용자에게 영화를 추천할 수 있고, 금융 업무를 보려는 이동 단말 사용자에게 적합한 상품(펀드, 예금, 대출 등)을 추천할 수도 있다. 사용자에게 시간과 장소에 적합한 뉴스 기사를 추천할 수도 있다. RFID(Radio Frequency Identification, 무선 식별) 시스템과 같은 다양한 센서 기술을 활용하여 대형 할인점이나 백화점에서 사용자에게 적당한 상품을 추천할 수도 있을 것이다.The recommendation
편의상 도 1a의 실시 예에서는 도서를 추천하는 것으로 가정한다.For convenience, the embodiment of FIG. 1A assumes that a book is recommended.
도 1a의 실시 예에 대한 설명에서 제1 사용자라 함은, 현재 쇼핑몰이나 은행 홈페이지 등을 방문중인 사용자를 가리키는 것으로, 이 제1 사용자의 컨텍스트 정보를 활용하여 제1 사용자에게 적당한 항목을 추천하게 된다.In the description of the embodiment of FIG. 1A, a first user refers to a user who is currently visiting a shopping mall or a bank homepage, and recommends an appropriate item to the first user by using context information of the first user. .
컨텍스트 태그 설정부(140)는 사용자의 컨텍스트 정보에 따라 상기 제1 사용자에 컨텍스트 태그를 설정한다.The context tag setting
사용자의 컨텍스트 정보는 사용자의 상황에 관한 정보를 말한다. 즉 예를 들면, 사용자의 신상 정보나 현재의 시기 정보, 위치 정보 등 수집이 가능한 모든 정보를 포함할 수 있다.The context information of the user refers to information about the situation of the user. That is, for example, it may include all information that can be collected, such as personal information of the user, current time information, location information, and the like.
사용자의 신상 정보는 예를 들어 성별, 연령, 학력, 직업, 소득, 주거 구분, 취미 등의 정보 중 하나 이상을 포함할 수 있다. 시기 정보는 예를 들어 크리스마스 시즌, 명절, 방학, 계절, 올림픽 등의 정보 중 하나 이상을 포함할 수 있다. 위치 정보는 현재 사용자의 국가, 도시 정보가 될 수도 있고, 대형 할인점 안에서의 구체적인 위치 정보, 예를 들어 1m 범위의 오차를 가지는 위치정보나 가장 근접한 상품 코너 정보 중 하나 이상을 포함할 수 있다.The personal information of the user may include, for example, one or more of information such as gender, age, education, occupation, income, housing classification, hobbies, and the like. The timing information may include, for example, one or more of information such as Christmas season, holiday, vacation, season, Olympics, and the like. The location information may be the current user's country and city information, and may include specific location information in a large discount store, for example, one or more of location information having an error of 1 m range or nearest product corner information.
이 같은 사용자의 컨텍스트 정보는 사용자의 직접 입력에 의하여 수집될 수도 있고 (인터넷 홈페이지 가입 등) 관리자에 의하여 수집될 수도 있으며(올림픽 시즌 입력 등), 자동화된 프로그램으로 수집될 수도 있다. 예를 들어, 현재 날짜가 12월 1일부터 12월 25일 사이의 날짜인 경우 사용자의 컨텍스트 정보에 '크리스마스 시즌' 정보를 포함할 수 있다.Such user's context information may be collected by a user's direct input, may be collected by an administrator (such as subscription to an Internet homepage), or may be collected by an automated program. For example, when the current date is a date between December 1 and December 25, the user's context information may include 'Christmas season' information.
유비쿼터스 환경의 적용이 확산되면, RFID 시스템 등을 이용해 보다 용이하게 사용자의 컨텍스트 정보를 자동으로 수집할 수 있다.When the application of the ubiquitous environment spreads, context information of a user may be automatically collected using an RFID system.
이렇게 수집된 사용자의 컨텍스트 정보는 제1 사용자에 태그로 설정된다.The collected context information of the user is set as a tag to the first user.
예를 들어 A사용자가 35세, 여성이고 현재 크리스마스 시즌이라는 컨텍스트 정보가 수집된 경우 A 사용자에 (30대 중반, 남성, 크리스마스)의 세 개의 태그를 설정할 수 있다. 후에 A 사용자에 대한 태그를 추출하고자 하면 위의 세 태그가 제공될 수 있다.For example, if user A is 35 years old and female and the context information of the current Christmas season has been collected, three tags can be set for user A (mid-30s, men, Christmas). If you later want to extract the tags for user A, the above three tags can be provided.
컨텍스트 태그 설정부(140)는 각 항목에도 태그를 설정할 수 있다. 예를 들어 도서에 설정되는 태그는 제목을 분석하여 설정하거나, 출판사 담당자 또는 도서 쇼핑몰 관리자에 의하여 설정될 수 있다.The context
다른 실시 예에 따르면, 사용자의 특정 항목에 대한 접근시의 사용자 컨텍스트에 따라 그 항목에 컨텍스트를 설정할 수 있다. 일종의 폭소노미(folksonomy)를 사용하는 것이다.According to another embodiment, a context may be set for an item according to a user context when a user accesses a specific item. It is using a kind of folksonomy.
즉, 그 항목에 관심을 가진(구입 또는 조회) 사용자의 컨텍스트 정보를 분석하여 그 항목에 컨텍스트 태그를 설정할 수 있다. 예를 들어 A 항목을 구입한 사용자 중 98%의 연령이 23~26세라면 A 항목에 '20대 중반' 태그를 설정할 수 있을 것이다. 또는 제목에 '크리스마스'가 포함된 도서에 '크리스마스' 태그를 설정할 수 있을 것이다. 서울 강남구 역삼동 소재의 부동산 항목에는 '서울 강남구 역삼동' 태그를 설정할 수 있고, 제주도 소재 사용자가 주로 열람한 신문기사에는 '제주도' 태그를 설정할 수 있을 것이다.That is, the context tag of the user who is interested in the item (purchase or inquiry) may be analyzed to set a context tag on the item. For example, if 98% of the users who purchased item A are 23-26 years old, you can set a tag of 'mid 20's for item A. Or, you could set a 'Christmas' tag on a book that contains 'Christmas' in the title. The real estate item in Yeoksam-dong, Gangnam-gu, Seoul can be tagged 'Yeoksam-dong, Gangnam-gu, Seoul', and the 'Jeju-do' tag can be set for newspaper articles mainly read by users in Jeju.
이와 같이 폭소노미를 이용한 상황(컨텍스트) 태그 설정은 사용자의 상황(컨텍스트) 정보를 다른 사용자를 위한 항목 추천을 위해 공유할 수 있으며, 콘텐츠로의 접근과 검색이 용이하고, 사용자의 불편 없이 자동 추천 시스템의 신뢰도를 향상시킬 수 있는 장점이 있다.In this way, context tag setting using folksonomy can share the user's context (context) information for recommending items for other users, easily access and search contents, and automatically recommend system without inconvenience. There is an advantage to improve the reliability of.
필터링 대상 항목 추출부(110)는 제1 사용자의 컨텍스트(Context) 정보를 이용하여 필터링 대상 항목을 추출한다.The filtering
예를 들어 인터넷 도서 쇼핑몰의 경우 수십만~수억여 권의 도서 상품이 데이터베이스에 존재할 수 있는데, 이들 중 사용자의 컨텍스트 정보에 맞는 도서를 필터링 대상 항목으로서 추출할 수 있다.For example, in the case of an internet book shopping mall, hundreds of thousands to hundreds of millions of book products may exist in a database. Among them, books that match user context information may be extracted as items to be filtered.
이를 위하여 컨텍스트 태그 설정부(140)가 제1 사용자에 설정한 태그를 활용 할 수 있다. 제1 사용자에 (35세, 남성, 크리스마스)의 태그가 설정되어 있다면, 이 태그를 활용할 수 있다. 태그 설정의 방식을 취하지 않더라도, 제1 사용자의 컨텍스트 정보를 수집하여 활용할 수 있다.To this end, the context
필터링 대상 항목 추출부(110)는 제1 사용자에 설정된 컨텍스트 태그 중 제2 제한개수 이상의 태그와 일치하는 태그가 설정된 항목을 필터링 대상 항목으로서 추출할 수 있다.The filtering
제2 제한개수는 사용자 또는 관리자에 의하여 설정될 수 있다.The second limit number may be set by a user or an administrator.
예를 들어 제1 사용자가 30대 중반, 여성이고 시기가 크리스마스 시즌이라고 가정한다. 제2 제한개수가 3이면 데이터베이스에 존재하는 도서 항목 중 '30대 중반', '여성', '크리스마스'에 해당하는 태그가 모두 설정된 도서 항목을 필터링 대상 항목으로서 추출할 수 있다.For example, suppose that the first user is a woman in her mid 30s and the season is Christmas season. If the second limit number is 3, the book items in which all the tags corresponding to 'mid-30s', 'women', and 'Christmas' are set among the book items existing in the database may be extracted as the filtering target items.
제2 제한개수가 1이면 데이터베이스에 존재하는 도서 항목 중 '30대 중반', '여성', '크리스마스'에 해당하는 태그 중 어느 하나 이상이 설정된 도서 항목을 필터링 대상 항목으로서 추출할 수 있다.When the second limit number is 1, a book item in which at least one of tags corresponding to 'mid-30s', 'women', and 'Christmas' among book items existing in the database is set may be extracted as a filtering target item.
실시 예에 따라 태그가 기계적으로 동일한 경우뿐 아니라 논리적으로 동일한 경우, 즉 유의어, 동의어(예를 들어 달걀과 계란)나 같은 뜻을 가지는 다른 언어로의 표현(예를 들어 달걀, 계란과 egg), 또는 서로 상하관계에 있는 표현(수상 스포츠와 윈드 서핑)에 해당하는 경우에도 태그가 일치한다고 할 수 있다.In some embodiments, the tags are not only mechanically identical but also logically identical, i.e. synonyms, synonyms (eg eggs and eggs), or expressions in other languages with the same meaning (eg eggs, eggs and egg), Alternatively, the tags may correspond to the expressions (water sports and wind surfing) that are in a vertical relationship with each other.
예를 들어 제1 사용자에 '수상 스포츠' 태그가 설정되고, 제1 항목에 '윈드 서핑' 태그가 설정된 경우 '수상 스포츠' 태그와 '윈드 서핑' 태그는 일치한다고 할 수 있다.For example, when the 'water sports' tag is set for the first user and the 'wind surfing' tag is set for the first item, the 'water sports' tag and the 'wind surfing' tag may correspond.
추천 항목 목록 추출부(120)는 협업 필터링(Collaborative Filtering) 방식으로 상기 필터링 대상 항목 중 추천 항목 목록을 추출한다.The recommended
협업 필터링(collaborative filtering)은 많은 사용자로부터 얻은 기호정보(taste information)에 따라 사용자들의 관심사들을 자동으로 예측하게 해주는 방법이다. 협업 필터링 접근법의 근본적인 가정은 사용자들의 과거의 경향이 미래에서도 그대로 유지될 것이라는 전제에 있다. 예를 들어, 음악에 관한 협업 필터링 혹은 추천시스템(recommendation system)은 사용자들의 기호(좋음, 싫음)에 대한 부분적인 목록(partial list)을 이용하여 그 사용자의 음악에 대한 기호를 예측하게 된다. 이 시스템은 특정 사용자의 정보에만 국한된 것이 아니라 많은 사용자로부터 수집한 정보를 사용한다는 것이 특징이다. 이것이 단순히 투표를 한 수를 기반으로 각 아이템의 관심사에 대한 평균적인 평가로 처리하는 방법과 차별화된 것이다. 즉 고객들의 선호도와 관심 표현을 바탕으로 선호도, 관심에서 비슷한 패턴을 가진 고객들을 식별해 내는 기법이다. 비슷한 취향을 가진 고객들에게 서로 아직 구매하지 않은 상품들은 교차 추천하거나 분류된 고객의 취향이나 생활 형태에 따라 관련 상품을 추천하는 형태의 서비스를 제공하기 위해 사용된다.Collaborative filtering is a method that automatically predicts users' interests based on taste information obtained from many users. The fundamental assumption of the collaborative filtering approach is the premise that users' past trends will remain the same in the future. For example, a collaborative filtering or recommendation system for music uses a partial list of users' likes (likes or dislikes) to predict their preferences for the music. The system is not limited to specific user information, but uses information collected from many users. This is different from simply treating the average rating of each item's interest based on the number of votes. In other words, it is a technique to identify customers with similar patterns in preference and interest based on their preferences and expressions of interest. Products that have not yet purchased each other to customers with similar tastes are used to provide services in the form of cross-recommending or recommending related products according to the tastes or lifestyles of the classified customers.
협업 필터링의 종류는 아이템 기반 필터링(Item based filtering) 및 사용자 기반 필터링(User based filtering)을 포함한다.Types of collaborative filtering include item based filtering and user based filtering.
협업 필터링에 대해서는 도 2a 및 도 2b를 참조하여 상세하게 후술한다.Cooperative filtering will be described later in detail with reference to FIGS. 2A and 2B.
추천 항목 목록 제공부(130)는 제1 사용자에게 추천 항목 목록을 제공한다. The recommended item
예를 들어, 서점에서 책을 구입하려는 이동 단말 사용자의 단말기 화면 일부에 추천 도서의 구입 페이지로 연결되는 링크의 리스트를 표시할 수 있다.For example, a list of links to a purchase page of a recommended book may be displayed on a portion of a terminal screen of a mobile terminal user who wants to purchase a book in a bookstore.
도 1b는 본 발명의 일 실시 예에 따르는 추천 항목 목록 제공 인터페이스이다.1B is an interface for providing a recommendation item list according to an embodiment of the present invention.
사용자란(150)에 현재 사용자의 식별자가 기재되어 있으며, 현재 컨텍스트 정보란(160)에는 현재 사용자의 컨텍스트로서 35세, 여성, 크리스마스가 기재되어 있다. 이 정보에 따라 추천 도서 목록(170)이 제공된다. 도 1b의 실시 예에서 단순히 도서의 제목만이 제시되었으나, 도서의 표지 사진, 저자, ISBN, 출판사, 가격 등의 정보도 함께 제공될 수 있다.In the
도 2a는 본 발명의 일 실시 예에 따르는 추천 항목 목록 추출부(120)의 블록 구성도이다.2A is a block diagram of a recommendation
도 2a의 실시 예에서 추천 항목 목록 추출부(120)는 협업 필터링 기법 중 아이템 기반 필터링 기법을 사용한다. 즉, 제1 사용자(현재 사용자)의 다른 항목(대상 항목을 제외한 항목)에 대한 선호도를 기초로 제1 사용자의 대상 항목에 대한 예상 선호도를 추출한다.In the embodiment of FIG. 2A, the recommendation
도 2a의 실시 예에 따르는 추천 항목 목록 추출부(120)는 항목 간 유사도 테이블 생성부(210a), 선호도 추출부(220a), 예상 선호도 추출부(230a), 목록 추출부(240) 및 정렬부(250)를 포함할 수 있다.The recommendation
항목 간 유사도 테이블 생성부(210a)는 각 항목 간의 유사도를 계산한 데이터베이스를 생성한다.The similarity
표 1은 본 발명의 일 실시 예에 따르는 항목 간 유사도 테이블이다.Table 1 is a similarity table between items according to an embodiment of the present invention.
완전히 동일한 항목 간의 유사도를 1이라고 하고 전혀 관련 없는 항목 간의 유사도를 0으로 가정하여 산출된 값을 나타낸다.The value calculated by assuming that the similarity between items that are completely identical is 1 and the similarity between items that are not related at all is 0.
표 1을 참조하면 A와 D는 0.128의 유사도를 가지고, B와 F는 0.4의 유사도를 가진다. B는 F와는 비교적 유사하고(0.4) E(유사도 0.091)나 D(0.222)와는 덜 유사한 것을 알 수 있다.Referring to Table 1, A and D have a similarity of 0.128, and B and F have a similarity of 0.4. It can be seen that B is relatively similar to F (0.4) and less similar to E (similarity 0.091) or D (0.222).
이와 같은 유사도 테이블 생성을 위해 항목의 정보를 이용할 수 있다. 도서의 예를 들면, 출판사, 저자 등의 정보가 동일하면 유사도가 높아질 것이고, 또한 페이지 수, 장르, 제목의 유사성도 유사도 산출의 기준이 될 것이다. 유사도 추출을 위해 여러 기법이 사용될 수 있으나, 이는 공지기술이므로 상세한 설명을 생략한다.Item information may be used to generate the similarity table. For example, if the information of the publisher, author, etc. is the same, the similarity will be increased, and the similarity of the number of pages, the genre, and the title will be the basis for calculating the similarity. Several techniques may be used for the similarity extraction, but since this is a known technique, a detailed description thereof will be omitted.
선호도 추출부(220a)는 제1 사용자의 기 평가 항목에 대한 선호도를 추출한다. 즉 제1 사용자가 이미 구매하였거나 열람하고 평가(도서 별 점 등)를 내린 항목에 대한 선호도를 추출한다.The
제1 사용자는 상기 표 1에서 D, E, F 항목을 이미 평가하였다고 가정한다.It is assumed that the first user has already evaluated items D, E, and F in Table 1 above.
제1 사용자는 D, E, F에 대해 각각 4.5, 4.0, 1.0의 선호도를 가진다고 가정한다.It is assumed that the first user has a preference of 4.5, 4.0, and 1.0 for D, E, and F, respectively.
이와 같은 선호도는 사용자의 입력이나 관리자의 입력, 사용자의 행동 패턴 분석으로 측정될 수 있다.Such a preference may be measured by user input, administrator input, or user behavior pattern analysis.
즉, 제1 사용자가 D, E, F 항목에 대해서 직접 선호도를 입력할 수도 있고, 관리자가 사용자의 평가 의견을 들어 입력할 수도 있다. 또는 사용자가 자주 접근한 항목, 오래 열람한 항목에 높은 선호도를 줄 수도 있다.That is, the first user may directly input the preferences for the D, E, and F items, or the administrator may input the user's evaluation opinion. Alternatively, the user may give high preference to items that are frequently accessed or items that have been viewed for a long time.
예상 선호도 추출부(230a)는 제1 사용자의 상기 기 평가 항목에 대한 선호도 및 상기 항목 간 유사도 테이블을 기초로 상기 제1 사용자의 상기 필터링 항목에 대한 예상 선호도를 추출한다.The expected
예상 선호도 추출부(230a)는 가중치 선호도 추출부(231a) 및 정규 선호도 추출부(232a)를 포함할 수 있다.The expected
가중치 선호도 추출부(231a)는 각 기 평가 항목에 대한 상기 제1 사용자의 선호도에 각 기 평가 항목과 제1 필터링 항목의 유사도를 곱한 값의 제1 총합을 추출한다.The
표 2는 본 발명의 일 실시 예에 따르는 예상 선호도 추출 과정을 설명한 표이다.Table 2 is a table for explaining an expected preference extraction process according to an embodiment of the present invention.
필터링 대상 항목 추출부(110)에서 D, E, F를 포함하는 항목을 필터링 대상 항목으로 추출하였고, A, B, C에 대해서는 제1 사용자가 선호도를 입력해 둔 것으로 가정하고, 항목간 유사도는 표 1을 참조하였다.The filtering
'선호도' 컬럼은 제1 사용자의 각 기 평가 항목에 대한 선호도를 나타낸다. 제1 사용자는 D, E, F 항목에 대해서 각각 4.5, 4.0, 1의 선호도를 가지는 것을 알 수 있다.The 'Preferences' column indicates a preference for each evaluation item of the first user. The first user may know that the items D, E, and F have a preference of 4.5, 4.0, and 1, respectively.
'A와의 유사도' 컬럼은 각 항목과 A 항목과의 유사도를 나타낸다. A와 D는 0.128의 유사도를 가지고, A와 E는 0.103의 유사도를 가지며, A와 F는 0.148의 유사도를 가진다.The column Similarity to A shows the similarity between each item and item A. A and D have a similarity of 0.128, A and E have a similarity of 0.103, and A and F have a similarity of 0.148.
(A유사도) x (선호도) 컬럼에는 제1 사용자의 각 항목에 대한 선호도와 각 항목과 A와의 유사도를 곱한 값이 기재된다.In the (A similarity) x (preference) column, the value of the first user's preference for each item multiplied by the similarity between each item and A is described.
D의 경우 4.5*0.128=0.576이 기재되고, E의 경우 4.0*0.103=0.312, F의 경우 1.0* 0.148=0.148이 기재된다. 이는 유사도에 따른 가중치를 고려한 값이다.4.5 * 0.128 = 0.576 for D, 4.0 * 0.103 = 0.312 for E, 1.0 * 0.148 = 0.148 for F. This is a value considering the weight according to the similarity.
이에 따라 (A유사도) x (선호도) 컬럼의 D, E, F 항목에 대한 값의 총합(제1 총합)은 1.036이 된다.Accordingly, the sum (first sum) of the values for the D, E, and F items of the (A similarity) x (preference) column becomes 1.036.
정규 선호도 추출부(232a)는 제1 총합을 유사도의 총합으로 나누어 예상 선호도를 추출한다. 즉 제1 총합(1.036)을 A의 각 아이템에 대한 유사도의 총합 (0.379)로 나누어 정규 선호도 2.734를 추출해 낼 수 있다.The
제1 총합을 유사도의 총합으로 나누는 이유는 가중치를 고려한 값이 유사도가 곱하여져 있으므로, 상대적으로 많은 수의 기 평가 항목과 유사한 항목이 상대적으로 높은 선호도 평가를 받을 수 있기 때문에 기 평가 항목과의 유사성과 무관하게 사용자의 예상 선호도를 추정하기 위함이다.The reason for dividing the first total by the sum of the similarities is that the weighted values are multiplied by the similarities. This is for estimating the user's expected preference regardless.
이와 같은 방식으로 A, B, C 항목에 대해서 2.784, 2.473, 2.599의 예상 선호도를 추출할 수 있다.In this way, the expected preferences of 2.784, 2.473, and 2.599 can be extracted for the A, B, and C items.
상기 예에서는 세 개의 항목에 대해서만 예상 선호도를 추출하였으나, 실제 적용에는 더욱 많은 수의 항목에 대해 예상 선호도를 추출할 수 있다.In the above example, the expected preference is extracted for only three items, but the expected preference may be extracted for a larger number of items in actual application.
목록 추출부(240)는 예상 선호도를 기초로 상기 필터링 항목 중 제1 제한개수의 항목을 포함하는 추천 항목 목록을 추출한다.The
제1 제한개수는 사용자 또는 관리자에 의하여 설정되거나, 사용자 인터페이스(웹 브라우저 또는 단말의 화면 크기 등)에 의하여 결정될 수 있다.The first limit number may be set by a user or an administrator, or determined by a user interface (such as a screen size of a web browser or a terminal).
예를 들어 제1 제한개수가 2로 설정됐다면, 표 2의 A, B, C 항목 중 예상 선호도가 높은 A, C 항목이 추천 항목 목록에 포함될 수 있다.For example, if the first limit number is set to 2, items A and C having high expected preference among items A, B, and C of Table 2 may be included in the recommendation item list.
다른 실시 예에 따르면 제1 제한선호도 이상의 예상 선호도를 가지는 항목만이 추천 항목 목록에 포함될 수도 있다. 예를 들어 2.5 이상의 선호도를 가지는 항목만이 추천 항목 목록에 포함될 수도 있으며, 이 경우 A, C만이 추천 항목 목록에 포함된다.According to another embodiment, only an item having an expected preference above the first limited preference may be included in the recommended item list. For example, only items having a preference of 2.5 or more may be included in the recommendation item list. In this case, only A and C are included in the recommendation item list.
정렬부(250)는 추천 항목 목록을 상기 예상 선호도를 기준으로 정렬한다. 표 2의 A, B, C 항목이 모두 추천 항목 목록에 포함된다면, 예상 선호도가 높은 순서인 A, C, B의 순서로 정렬하여 사용자에게 제공할 수 있다.The
도 2b는 본 발명의 다른 실시 예에 따르는 추천 항목 목록 추출부(120)의 블록 구성도이다.2B is a block diagram of a recommendation
도 2b의 실시 예에서 추천 항목 목록 추출부(120)는 협업 필터링 기법 중 사용자 기반 필터링 기법을 사용한다. 죽 다른 사용자(제1 사용자를 제외한 사용자)의 대상 항목에 대한 선호도를 기초로 제1 사용자(현재 사용자)의 대상 항목의 예상 선호도를 추출한다.In the embodiment of FIG. 2B, the recommendation
사용자 기반 필터링 기법은 아이템 기반 필터링 기법과 매우 유사하지만, 예상 선호도를 추출하는 기반은 현재 사용자가 아닌 다른 사용자의 선호도 정보 및 사용자 간 유사도라는 점에서 차이가 있다.The user-based filtering technique is very similar to the item-based filtering technique, but differs in that the basis for extracting the expected preference is similarity between user preference information and users other than the current user.
도 2b의 실시 예에 따르는 추천 항목 목록 추출부(120)는 사용자 간 유사도 테이블 생성부(210b), 선호도 추출부(220b), 예상 선호도 추출부(230b), 목록 추출부(240) 및 정렬부(250)를 포함할 수 있다.Referring to FIG. 2B, the recommendation
사용자 간 유사도 테이블 생성부(210b)는 각 사용자 간의 유사도를 계산한 데이터베이스를 생성한다.The similarity
표 3은 본 발명의 일 실시 예에 따르는 사용자 간 유사도 테이블이다.Table 3 is a similarity table between users according to an embodiment of the present invention.
완전히 동일한 사용자 간의 유사도를 1이라고 하고 전혀 비유사한 사용자 간의 유사도를 0으로 가정하여 산출된 값을 나타낸다.The value calculated by assuming that the similarity between completely identical users is 1 and that the similarity between completely dissimilar users is 0.
표 3을 참조하면 사용자 P와 사용자 S는 0.128의 유사도를 가지고, 사용자 Q와 사용자 U는 0.4의 유사도를 가진다. Q는 U와는 비교적 유사하고(0.4) T(유사도 0.091)나 S(0.222)와는 덜 유사한 것을 알 수 있다.Referring to Table 3, user P and user S have a similarity of 0.128, and user Q and user U have a similarity of 0.4. It can be seen that Q is relatively similar to U (0.4) and less similar to T (similarity 0.091) or S (0.222).
이와 같은 유사도 테이블 생성을 위해 사용자의 정보를 이용할 수 있다. 예를 들어, 성별이 같은 경우 유사도가 높아지고, 연령 차이가 클수록 유사도가 낮아질 수 있다. 또한, 직업군이 유사한 경우 유사도가 높아지고, 취미가 같은 경우 유사도가 높아질 수 있다. 유사도 추출을 위해 여러 기법이 사용될 수 있으나, 이는 공지기술이므로 상세한 설명을 생략한다.User information may be used to generate the similarity table. For example, if the genders are the same, the similarity may be increased, and the greater the age difference, the lower the similarity. In addition, similarity may be increased when occupation groups are similar, and similarity may be increased when hobbies are the same. Several techniques may be used for the similarity extraction, but since this is a known technique, a detailed description thereof will be omitted.
선호도 추출부(220b)는 기 평가 사용자의 필터링 대상 항목에 대한 선호도를 추출한다.The
필터링 대상 항목이 A라고 가정한다. A항목에 대해서 S, T, U 사용자(기 평가 사용자)가 평가를 하여 선호도 정보가 저장되어 있다고 가정한다.Assume that the item to be filtered is A. It is assumed that preference information is stored by S, T, and U users (previous evaluation users) for item A.
즉 S, T, U 사용자는 A 항목을 이미 구매하였거나 열람하고 평가(도서 별 점 등)를 내렸으며, 이에 대한 선호도를 추출하게 된다.In other words, S, T, and U users have already purchased or viewed items A and rated them (such as book ratings), and extract their preferences.
예를 들면, A항목에 대해서 S 사용자는 4.5의 선호도를 가지고, T 사용자는 4.0, U 사용자는 1.0의 선호도를 가진다고 가정한다.For example, assume that S user has a preference of 4.5, T user has 4.0, and U user has a preference of 1.0.
이와 같은 선호도는 사용자의 입력이나 관리자의 입력, 사용자의 행동 패턴 분석으로 측정될 수 있다.Such a preference may be measured by user input, administrator input, or user behavior pattern analysis.
즉, S, T, U 사용자가 A 항목에 대해서 직접 선호도를 입력할 수도 있고, 관리자가 사용자의 평가 의견을 들어 입력할 수도 있다. 또는 당해 사용자가 자주 접근한 항목, 오래 열람한 항목에 높은 선호도를 줄 수도 있다.That is, the S, T, and U users may directly input the preference for the item A, or the administrator may input the user's evaluation opinion. Alternatively, the user may give high preference to items that are frequently accessed or items that have been viewed for a long time.
예상 선호도 추출부(230b)는 상기 기 평가 사용자의 상기 제1 항목에 대한 선호도 및 상기 사용자 간 유사도 테이블을 기초로 상기 제1 사용자의 상기 필터링 항목에 대한 예상 선호도를 추출한다.An expected
예상 선호도 추출부(230b)는 가중치 선호도 추출부(231b) 및 정규 선호도 추출부(232b)를 포함할 수 있다.The predicted
가중치 선호도 추출부(231b)는 각 기 평가 사용자의 상기 제1 항목에 대한 선호도에 상기 각 기 평가 사용자와 제1 사용자의 유사도를 곱한 값의 제1 총합을 추출한다.The weight
표 4는 본 발명의 다른 실시 예에 따르는 예상 선호도 추출 과정을 설명한 표이다.Table 4 is a table for explaining an expected preference extraction process according to another embodiment of the present invention.
필터링 대상 항목 추출부(110)에서 A 항목을 포함하는 항목을 필터링 대상 항목으로 추출하였고, A 항목에 대해 S, T, U 사용자가 선호도를 입력해 둔 것으로 가정하고, 사용자 간 유사도는 표 3을 참조하였다.It is assumed that the filtering target
'선호도' 컬럼은 S, T, U 사용자의 A 항목에 대한 선호도를 나타낸다. A 항목에 대해서 S, T, U 사용자는 각각 4.5, 4.0, 1의 선호도를 가지는 것을 알 수 있다.The 'Preferences' column shows the preferences for items A, S, T, and U. For items A, S, T, and U users can see that they have a preference of 4.5, 4.0, and 1, respectively.
'P와의 유사도' 컬럼은 각 사용자와 P 사용자와의 유사도를 나타낸다. 사용자 S와 사용자 P는 0.128의 유사도를 가지고, 사용자 P와 사용자 T는 0.103의 유사도를 가지며, 사용자 P와 사용자 U는 0.148의 유사도를 가진다.The similarity with P column indicates the similarity between each user and the P user. User S and user P have a similarity of 0.128, user P and user T have a similarity of 0.103, and user P and user U have a similarity of 0.148.
(P유사도) x (선호도) 컬럼에는 제1 사용자의 각 항목에 대한 선호도와 각 항목과 A와의 유사도를 곱한 값이 기재된다.The (P Similarity) x (Preference) column describes a value obtained by multiplying the preference for each item of the first user by the similarity between A and each item.
S의 경우 4.5*0.128=0.576이 기재되고, T의 경우 4.0*0.103=0.312, U의 경우 1.0* 0.148=0.148이 기재된다. 이는 유사도에 따른 가중치를 고려한 값이다.4.5 * 0.128 = 0.576 for S, 4.0 * 0.103 = 0.312 for T, 1.0 * 0.148 = 0.148 for U. This is a value considering the weight according to the similarity.
이에 따라 (P유사도) x (선호도) 컬럼의 S, T, U 사용자에 대한 값의 총합(제1 총합)은 1.036이 된다.Accordingly, the sum (first sum) of the values for the S, T, and U users of the (P similarity) x (preference) column is 1.036.
정규 선호도 추출부(232b)는 제1 총합을 유사도의 총합으로 나누어 예상 선호도를 추출한다. 즉 제1 총합(1.036)을 P의 각 사용자에 대한 유사도의 총합 (0.379)로 나누어 정규 선호도 2.734를 추출해 낼 수 있다.The
제1 총합을 유사도의 총합으로 나누는 이유는 가중치를 고려한 값이 유사도가 곱하여져 있으므로, 상대적으로 제1 사용자와 유사한 사용자에게 선호도 평가를 받은 항목이 상대적으로 높은 선호도 평가를 받을 수 있기 때문에 선호도 평가를 누구에게 받았는가와 무관하게 사용자의 예상 선호도를 추정하기 위함이다.The reason for dividing the first total by the sum of the similarities is that since the weighted value is multiplied by the similarity, the items that have received the preference ratings from users who are similar to the first user may receive a relatively high preference rating. This is to estimate the expected preference of the user regardless of who received it.
이와 같은 방식으로 P, Q, R 사용자에 대해서 2.784, 2.473, 2.599의 예상 선호도를 추출할 수 있다. 즉, A항목에 대해 P사용자는 2.784, Q 사용자는 2.478, R 사용자는 2.599의 선호도를 가질 것으로 예상할 수 있다.In this way, the expected preferences of 2.784, 2.473, and 2.599 can be extracted for P, Q, and R users. That is, it can be expected that the P user has a preference of 2.784, the Q user of 2.478, and the R user of 2.599.
위와 같은 방식으로 모든 필터링 대상 항목에 대한 P의 예상 선호도를 추출할 수 있다.In the same way as above, it is possible to extract the expected preference of P for all the filtering target items.
목록 추출부(240)와 정렬부(250)에서는 예상 선호도 추출부(230b)에서 추출한 각 항목에 대한 예상 선호도를 기준으로 추천 항목 목록을 정렬하여 제공한다. 이에 대해서는 도 2a를 참조하여 상술하였다.The
도 3은 본 발명의 일 실시 예에 따르는 추천 항목 제공 과정의 순서도이다.3 is a flowchart illustrating a recommendation item providing process according to an embodiment of the present invention.
단계 S310에서 추천 항목 제공 장치(100)는 제1 사용자(현재 사용자)의 컨텍스트 정보에 따라 상기 제1 사용자에 컨텍스트 태그를 설정한다. 이에 대해서는 도 1a의 컨텍스트 태그 설정부(140)에 대한 설명에서 상세히 설명하였으므로, 여기서는 자세한 설명을 생략한다.In operation S310, the recommendation
단계 S320에서 추천 항목 제공 장치(100)는 제1 항목에 대한 제2 사용자의 접근시의 컨텍스트에 따라 상기 제1 항목에 컨텍스트 태그를 설정한다. 여기서 제2 사용자는 제1 사용자(현재 사용자)를 제외한 사용자를 말한다.In operation S320, the recommendation
이에 대해서는 도 1의 컨텍스트 태그 설정부(140)에 대한 설명에서 상세히 설명하였으므로, 여기서는 자세한 설명을 생략한다.Since this has been described in detail in the description of the context
단계 S330에서 제1 사용자의 컨텍스트 정보를 이용하여 필터링 대상 항목을 추출한다. 즉 현재 사용자의 성별, 연령, 시기 등 컨텍스트 정보를 이용하여 이에 맞는 항목을 필터링 대상 항목으로서 추출한다. 이에 대해서는 도 1a의 필터링 대상 항목 추출부(110)에 대한 설명에서 상세히 설명하였으므로, 여기서는 자세한 설명을 생략한다.In operation S330, the filtering target item is extracted using the context information of the first user. In other words, an item suitable for this is extracted as the filtering target item using context information such as the gender, age, and time of the current user. Since this has been described in detail in the description of the filtering
단계 S340에서 협업 필터링 방식으로 필터링 대상 항목 중 추천 항목 목록을 추출한다. 이에 대해서는 도 1a의 추천 항목 목록 추출부(120)에 대한 설명 및 도 2a, 도 2b를 참조하여 상세히 설명하였다. 또한, 추천 항목 목록 추출 과정에 대해서 도 4a내지 도 4d를 참조하여 보충설명 할 것이다.In step S340, a list of recommended items from the filtering target items is extracted by the collaborative filtering method. This has been described in detail with reference to the recommendation
단계 S350에서 추출된 추천 항목 목록을 제공한다. 이에 대해서는 도 1a의 추천 항목 목록 제공부(130)에 대한 설명 및 도 1b에 대한 설명에서 상세히 설명하였으므로, 여기서는 자세한 설명을 생략한다.A list of recommended items extracted in step S350 is provided. Since it has been described in detail in the description of the recommendation item
도 4a는 본 발명의 일 실시 예에 따르는 도 3의 단계 S340의 상세 순서도이다.4A is a detailed flowchart of step S340 of FIG. 3 according to an embodiment of the present invention.
도 4a의 과정에서는 아이템 기반 협업 필터링 기법을 사용한다.The process of FIG. 4A uses an item-based collaborative filtering technique.
단계 S410a에서 추천 항목 목록 추출부(120)는 항목 간 유사도 테이블을 생성한다. 이에 대해서는 도 2a의 항목 간 유사도 테이블 생성부(210a)에 대한 설명에서 상세히 설명하였다.In step S410a, the recommended
단계 S420a에서 추천 항목 목록 추출부(120)는 제1 사용자의 기 평가 항목에 대한 선호도를 추출한다. 이에 대해서는 도 2a의 선호도 추출부(220a)에 대한 설명에서 상세히 설명하였다.In operation S420a, the recommended
단계 S430a에서 추천 항목 목록 추출부(120)는 제1 사용자의 기 평가 항목에 대한 선호도 및 상기 항목 간 유사도 테이블을 기초로 제1 사용자의 상기 필터링 항목에 대한 예상 선호도를 추출한다.In operation S430a, the recommendation
도 4b는 도 4a의 단계 S430a의 상세 순서도이다.4B is a detailed flowchart of step S430a of FIG. 4A.
단계 S431a에서 추천 항목 목록 추출부(120)는 각 기 평가 항목에 대한 제1 사용자의 선호도에 각 기 평가 항목과 제1 필터링 항목의 유사도를 곱한 값의 제1 총합을 추출한다. 이에 대해서는 도 2a의 가중치 선호도 추출부(231a)에 대한 설명에서 상세히 설명하였다.In operation S431a, the recommendation
단계 S432a에서 추천 항목 목록 추출부(120)는 제1 총합을 상기 유사도의 총합으로 나누어 예상 선호도를 추출한다. 이에 대해서는 도 2a의 정규 선호도 추출부(232a)에 대한 설명에서 상세히 설명하였다.In step S432a, the recommended
단계 S440에서 추천 항목 목록 추출부(120)는 예상 선호도를 기초로 필터링 항목 중 제1 제한개수의 항목을 포함하는 추천 항목 목록을 추출한다. 이에 대해서는 도 2a의 목록 추출부(240)에 대한 설명에서 상세히 설명하였다.In operation S440, the recommendation
단계 S450에서 추천 항목 목록 추출부(120)는 상기 추천 항목 목록을 상기 예상 선호도를 기준으로 정렬한다. 이에 대해서는 도 2a의 정렬부(250)에 대한 설명에서 상세히 설명하였다.In operation S450, the recommended
이와 같은 과정을 통해 추출된 추천 항목 목록이 도 1b와 같은 인터페이스를 통해 사용자에게 제공되게 된다.The list of recommended items extracted through the above process is provided to the user through the interface as shown in FIG. 1B.
도 4c는 본 발명의 일 실시 예에 따르는 도 3의 단계 S340의 상세 순서도이다.4C is a detailed flowchart of step S340 of FIG. 3 according to an embodiment of the present invention.
도 4c의 과정에서는 사용자 기반 협업 필터링 기법을 사용한다.The process of Figure 4c uses a user-based collaborative filtering technique.
단계 S410b에서 추천 항목 목록 추출부(120)는 사용자 간 유사도 테이블을 생성한다. 이에 대해서는 도 2b의 사용자 간 유사도 테이블 생성부(210b)에 대한 설명에서 상세히 설명하였다.In step S410b, the recommended
단계 S420b에서 추천 항목 목록 추출부(120)는 기 평가 사용자의 상기 필터링 대상 항목에 대한 선호도를 추출한다. 이에 대해서는 도 2b의 선호도 추출부(220b)에 대한 설명에서 상세히 설명하였다.In operation S420b, the recommended
단계 S430b에서 추천 항목 목록 추출부(120)는 상기 기 평가 사용자의 상기 제1 항목에 대한 선호도 및 상기 사용자 간 유사도 테이블을 기초로 상기 제1 사용자의 상기 필터링 항목에 대한 예상 선호도를 추출한다.In operation S430b, the recommendation
도 4d는 도 4c의 단계 S430b의 상세 순서도이다.4D is a detailed flowchart of step S430b of FIG. 4C.
단계 S431b에서 추천 항목 목록 추출부(120) 각 기 평가 사용자의 상기 제1 항목에 대한 선호도에 상기 각 기 평가 사용자와 제1 사용자의 유사도를 곱한 값의 제1 총합을 추출한다. 이에 대해서는 도 2b의 가중치 선호도 추출부(231b)에 대한 설명에서 상세히 설명하였다.In operation S431b, the recommendation
단계 S432b에서 추천 항목 목록 추출부(120)는 제1 총합을 상기 유사도의 총합으로 나누어 예상 선호도를 추출한다. 이에 대해서는 도 2b의 정규 선호도 추출부(232b)에 대한 설명에서 상세히 설명하였다.In operation S432b, the recommended
단계 S440에서 추천 항목 목록 추출부(120)는 예상 선호도를 기초로 필터링 항목 중 제1 제한개수의 항목을 포함하는 추천 항목 목록을 추출한다. 이에 대해서는 도 2a의 목록 추출부(240)에 대한 설명에서 상세히 설명하였다.In operation S440, the recommendation
단계 S450에서 추천 항목 목록 추출부(120)는 상기 추천 항목 목록을 상기 예상 선호도를 기준으로 정렬한다. 이에 대해서는 도 2a의 정렬부(250)에 대한 설명에서 상세히 설명하였다.In operation S450, the recommended
이와 같은 과정을 통해 추출된 추천 항목 목록이 도 1b와 같은 인터페이스를 통해 사용자에게 제공되게 된다.The list of recommended items extracted through the above process is provided to the user through the interface as shown in FIG. 1B.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the invention. Singular expressions include plural expressions unless the context clearly indicates otherwise.
본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
본 발명의 실시 예는 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터 판독 가능 매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. An embodiment of the present invention may include a computer readable medium including program instructions for performing various computer-implemented operations. The computer readable medium may include program instructions, local data files, local data structures, or the like, alone or in combination. The media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts.
또한, 도 1a, 2a, 2b에 도시된 구성요소들은 반드시 하드웨어 구성을 가질 필요는 없으며, 일부 구성요소는 동일 또는 유사한 기능을 수행하는 응용 프로그램의 형태로 구현될 수 있다. 또한, 각 구성요소들은 발명의 사상 범위 내에서 결합되거나 분리될 수도 있음은 물론이다. In addition, the components illustrated in FIGS. 1A, 2A, and 2B do not necessarily have a hardware configuration, and some components may be implemented in the form of an application program that performs the same or similar functions. In addition, each component may be combined or separated within the scope of the invention.
이제까지 본 발명에 대하여 그 실시 예를 중심으로 살펴보았다. 전술한 실시 예 외의 많은 실시 예들이 본 발명의 특허청구범위 내에 존재한다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예는 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far I looked at the center of the embodiment for the present invention. Many embodiments other than the above-described embodiments are within the claims of the present invention. Those skilled in the art will appreciate that the present invention can be implemented in a modified form without departing from the essential features of the present invention. The disclosed embodiments should, therefore, be considered in an illustrative rather than a restrictive sense. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.
도 1a는 본 발명의 일 실시 예에 따르는 추천 항목 제공 장치(100)의 블록구성도이다.1A is a block diagram of an
도 1b는 본 발명의 일 실시 예에 따르는 추천 항목 목록 제공 인터페이스이다.1B is an interface for providing a recommendation item list according to an embodiment of the present invention.
도 2a는 본 발명의 일 실시 예에 따르는 추천 항목 목록 추출부(120)의 블록 구성도이다.2A is a block diagram of a recommendation
도 2b는 본 발명의 다른 실시 예에 따르는 추천 항목 목록 추출부(120)의 블록 구성도이다.2B is a block diagram of a recommendation
도 3은 본 발명의 일 실시 예에 따르는 추천 항목 제공 과정의 순서도이다.3 is a flowchart illustrating a recommendation item providing process according to an embodiment of the present invention.
도 4a는 본 발명의 일 실시 예에 따르는 도 3의 단계 S340의 상세 순서도이다.4A is a detailed flowchart of step S340 of FIG. 3 according to an embodiment of the present invention.
도 4b는 도 4a의 단계 S430a의 상세 순서도이다.4B is a detailed flowchart of step S430a of FIG. 4A.
도 4c는 본 발명의 일 실시 예에 따르는 도 3의 단계 S340의 상세 순서도이다.4C is a detailed flowchart of step S340 of FIG. 3 according to an embodiment of the present invention.
도 4d는 도 4c의 단계 S430b의 상세 순서도이다.4D is a detailed flowchart of step S430b of FIG. 4C.
Claims (17)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080129308A KR101013942B1 (en) | 2008-12-18 | 2008-12-18 | Apparatus and Method for Offering Item Recommendation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080129308A KR101013942B1 (en) | 2008-12-18 | 2008-12-18 | Apparatus and Method for Offering Item Recommendation |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100070661A true KR20100070661A (en) | 2010-06-28 |
KR101013942B1 KR101013942B1 (en) | 2011-02-14 |
Family
ID=42368379
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080129308A KR101013942B1 (en) | 2008-12-18 | 2008-12-18 | Apparatus and Method for Offering Item Recommendation |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101013942B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160004615A (en) * | 2014-07-03 | 2016-01-13 | 공주대학교 산학협력단 | Product satisfaction inference system based on fuzzy integral considering subjective decision-making tendencies |
KR20180029509A (en) * | 2016-09-12 | 2018-03-21 | 고려대학교 산학협력단 | Apparatus and method of item recommedation for user |
KR20220042582A (en) * | 2020-09-28 | 2022-04-05 | 연세대학교 산학협력단 | Recommendation System and Recommendation Method for Repeat-purchase Products using Modified Self Similarity |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101216692B1 (en) | 2011-09-06 | 2012-12-31 | (주)코리아센터닷컴 | Shopping management system and management method for the same |
KR101663359B1 (en) * | 2014-03-31 | 2016-10-07 | 한양대학교 산학협력단 | Method and apparatus for providing updated news contents |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001033839A1 (en) * | 1999-11-05 | 2001-05-10 | Koninklijke Philips Electronics N.V. | Fusion of media for information sources |
US20030233655A1 (en) * | 2002-06-18 | 2003-12-18 | Koninklijke Philips Electronics N.V. | Method and apparatus for an adaptive stereotypical profile for recommending items representing a user's interests |
KR100578357B1 (en) | 2004-10-27 | 2006-05-11 | 주식회사 케이티프리텔 | Method and system for providing contents recommendation service using network |
-
2008
- 2008-12-18 KR KR1020080129308A patent/KR101013942B1/en not_active IP Right Cessation
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160004615A (en) * | 2014-07-03 | 2016-01-13 | 공주대학교 산학협력단 | Product satisfaction inference system based on fuzzy integral considering subjective decision-making tendencies |
KR20180029509A (en) * | 2016-09-12 | 2018-03-21 | 고려대학교 산학협력단 | Apparatus and method of item recommedation for user |
KR20220042582A (en) * | 2020-09-28 | 2022-04-05 | 연세대학교 산학협력단 | Recommendation System and Recommendation Method for Repeat-purchase Products using Modified Self Similarity |
US11948180B2 (en) | 2020-09-28 | 2024-04-02 | Uif (University Industry Foundation), Yonsei University | System and method for recommending repeat-purchase products using modified self-similarity |
Also Published As
Publication number | Publication date |
---|---|
KR101013942B1 (en) | 2011-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | Developing recommender systems with the consideration of product profitability for sellers | |
Kim et al. | Development of a recommender system based on navigational and behavioral patterns of customers in e-commerce sites | |
Jooa et al. | Implementation of a recommendation system using association rules and collaborative filtering | |
Hsu | A personalized English learning recommender system for ESL students | |
Wang et al. | A personalized recommender system for the cosmetic business | |
US8407104B2 (en) | Catalog based price search | |
US20090248496A1 (en) | System and method for automating market analysis from anonymous behavior profiles | |
US20160063547A1 (en) | Method and system for making targeted offers | |
KR20140026932A (en) | System and method providing a suited shopping information by analyzing the propensity of an user | |
Badriyah et al. | Recommendation system for property search using content based filtering method | |
US20160275553A1 (en) | Methods and systems for comparing merchants, and predicting the compatibility of a merchant with a potential customer | |
KR101013942B1 (en) | Apparatus and Method for Offering Item Recommendation | |
KR20030058660A (en) | The method of Collaborative Filtering using content references of users in Personalization System | |
KR20110114071A (en) | Method of advertising based on internet contents related to products and system performing the same | |
Bogers | Recommender systems for social bookmarking | |
US20070276720A1 (en) | Indexing of a focused data set through a comparison technique method and apparatus | |
Markellou et al. | Personalized e-commerce recommendations | |
Engel et al. | Fuzzy multi attribute decision making–simple additive weighting (MADM-SAW) for information retrieval (IR) in e-commerce recommendation | |
Dixit et al. | A propound hybrid approach for personalized online product recommendations | |
KR102429104B1 (en) | Product catalog automatic classification system based on artificial intelligence | |
WO2021181900A1 (en) | Target user feature extraction method, target user feature extraction system, and target user feature extraction server | |
Diwandari et al. | Analysis of customer purchase behavior using association rules in e-shop | |
Wang et al. | A literature review and classification of book recommendation research | |
Shiu et al. | Identifying price sensitive customers in e-commerce platforms for recommender systems | |
Chen et al. | Location-based hotel recommendation system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |