KR20210115928A - Method and apparatus for recommending content to user - Google Patents
Method and apparatus for recommending content to user Download PDFInfo
- Publication number
- KR20210115928A KR20210115928A KR1020200032373A KR20200032373A KR20210115928A KR 20210115928 A KR20210115928 A KR 20210115928A KR 1020200032373 A KR1020200032373 A KR 1020200032373A KR 20200032373 A KR20200032373 A KR 20200032373A KR 20210115928 A KR20210115928 A KR 20210115928A
- Authority
- KR
- South Korea
- Prior art keywords
- score
- calculating
- content
- viewing
- contents
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000004891 communication Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 11
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/466—Learning process for intelligent management, e.g. learning user preferences for recommending movies
- H04N21/4668—Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies
-
- 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—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44204—Monitoring of content usage, e.g. the number of times a movie has been viewed, copied or the amount which has been watched
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44213—Monitoring of end-user related data
- H04N21/44222—Analytics of user selections, e.g. selection of programs or purchase activity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/4508—Management of client data or end-user data
- H04N21/4532—Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4826—End-user interface for program selection using recommendation lists, e.g. of programs or channels sorted out according to their score
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Tourism & Hospitality (AREA)
- Social Psychology (AREA)
- Primary Health Care (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Description
아래의 실시예들은 사용자에게 컨텐츠를 추천하는 기술에 관한 것으로, 구체적으로 컨텐츠의 시청 횟수에 기초하여 사용자에게 컨텐츠를 추천하는 기술에 관한 것이다.The following embodiments relate to a technology for recommending content to a user, and more specifically, to a technology for recommending content to a user based on the number of views of the content.
현재, 유무선 인터넷을 통하여 사용자 단말로 컨텐츠를 제공하는 서비스가 보편화되어 있으며, 이와 같이 사용자 단말로 제공되는 컨텐츠의 유형으로는 이미지 컨텐츠, 음악 컨텐츠, 동영상 컨텐츠, 게임 컨텐츠, 실시간 정보 컨텐츠 등으로 매우 다양하며, 점차 그 종류의 다양성이 증가하고 있다.Currently, services for providing content to user terminals through wired and wireless Internet are common, and as such, the types of content provided to user terminals include image content, music content, video content, game content, real-time information content, etc. and the variety of its types is gradually increasing.
그런데, 이러한 컨텐츠를 이용하기 위해 사용자는 컨텐츠 제공 서버에 접속하여 자신이 원하는 컨텐츠를 탐색하는데 많은 시간과 통신 비용을 부담하여야 한다. 종래에 사용자가 만족할 만한 컨텐츠를 선별하여 추천하는 다양한 방식이 제시되어 있다. 예를 들어, 컨텐츠의 판매량, 구매자들의 추천 정보 등을 이용하는 단순 추천 방식이 있다. 다른 예로, 사용자가 입력한 선호 장르 정보나 선호 카테고리 정보, 또는 사용자의 구매 이력 등을 이용하는 맞춤형 추천 방식이 있다.However, in order to use such content, the user has to pay a lot of time and communication cost to access the content providing server and search for the content he or she wants. Conventionally, various methods for selecting and recommending content satisfactory to a user have been proposed. For example, there is a simple recommendation method using content sales volume, purchaser's recommendation information, and the like. As another example, there is a customized recommendation method using preference genre information or preference category information input by a user, or a purchase history of the user.
일 실시예는 사용자에게 컨텐츠를 추천하는 방법 및 장치를 제공할 수 있다.An embodiment may provide a method and apparatus for recommending content to a user.
일 실시예는 사용자에게 컨텐츠를 제공하는 방법 및 장치를 제공할 수 있다.An embodiment may provide a method and apparatus for providing content to a user.
일 측면에 따른, 서버에 의해 수행되는, 컨텐츠 추천 방법은, 복수의 컨텐츠들의 각각에 대한 시청 횟수를 갱신하는 단계, 갱신된 시청 횟수에 기초하여 상기 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산하는 단계, 상기 시청 스코어 기초하여 상기 복수의 컨텐츠들 중 미리 설정된 개수의 타겟 컨텐츠를 결정하는 단계, 및 상기 타겟 컨텐츠를 사용자에게 추천하는 단계를 포함한다.According to one aspect, a content recommendation method, performed by a server, includes updating the number of views for each of a plurality of contents, and calculating a viewing score for each of the plurality of contents based on the updated number of views step, determining a preset number of target contents from among the plurality of contents based on the viewing score, and recommending the target contents to a user.
상기 갱신된 시청 횟수에 기초하여 상기 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산하는 단계는, 타겟 컨텐츠의 시청 횟수에 대한 시청 순위에 기초한 제1 스코어를 계산하는 단계, 및 상기 타겟 컨텐츠의 상기 시청 순위에 기초하여 결정된 상기 타겟 컨텐츠의 타겟 그룹에 기초한 제2 스코어를 계산하는 단계를 포함할 수 있다.Calculating the viewing score for each of the plurality of contents based on the updated viewing frequency may include calculating a first score based on a viewing ranking for the viewing frequency of the target content, and the viewing of the target content. It may include calculating a second score based on the target group of the target content determined based on the ranking.
상기 타겟 컨텐츠의 시청 횟수에 대한 시청 순위에 기초한 제1 스코어를 계산하는 단계는, 미리 설정된 기간 중 제1 기간에 대한 상기 제1 스코어의 제1 부분 스코어를 계산하는 단계, 상기 미리 설정된 기간 중 상기 제1 기간과 상이한 제2 기간에 대한 상기 제1 스코어의 제2 부분 스코어를 계산하는 단계, 및 상기 제1 부분 스코어 및 상기 제2 부분 스코어에 기초하여 상기 제1 스코어를 계산하는 단계를 포함할 수 있다.The calculating of the first score based on the viewing rank with respect to the number of views of the target content may include calculating a first partial score of the first score for a first period of a preset period, and the preset period of time. calculating a second partial score of the first score for a second time period different from the first time period, and calculating the first score based on the first partial score and the second partial score. can
상기 타겟 컨텐츠의 상기 시청 순위에 기초하여 결정된 상기 타겟 컨텐츠의 타겟 그룹에 기초한 제2 스코어를 계산하는 단계는, 미리 설정된 기간 중 제1 기간에 대한 상기 제2 스코어의 제1 부분 스코어를 계산하는 단계, 상기 미리 설정된 기간 중 상기 제1 기간과 상이한 제2 기간에 대한 상기 제2 스코어의 제2 부분 스코어를 계산하는 단계, 및 상기 제1 부분 스코어 및 상기 제2 부분 스코어에 기초하여 상기 제2 스코어를 계산하는 단계를 포함할 수 있다.The calculating of a second score based on a target group of the target content determined based on the viewing rank of the target content may include calculating a first partial score of the second score for a first period among a preset period. , calculating a second subscore of the second score for a second time period of the preset time period different from the first time period, and based on the first partial score and the second partial score, the second score It may include the step of calculating
상기 갱신된 시청 횟수에 기초하여 상기 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산하는 단계는, 타겟 컨텐츠의 시청 횟수에 대한 변동율 순위에 기초한 제3 스코어를 계산하는 단계, 및 상기 타겟 컨텐츠의 상기 변동율 순위에 기초하여 결정된 상기 타겟 컨텐츠의 제2 타겟 그룹에 기초한 제4 스코어를 계산하는 단계를 포함할 수 있다.Calculating the viewing score for each of the plurality of contents based on the updated viewing frequency may include calculating a third score based on a ranking of a rate of change with respect to the number of views of the target content, and the rate of change of the target content It may include calculating a fourth score based on the second target group of the target content determined based on the ranking.
상기 타겟 컨텐츠의 시청 횟수에 대한 변동율 순위에 기초한 제3 스코어를 계산하는 단계는, 미리 설정된 기간 중 제1 기간에 대한 상기 제3 스코어의 제1 부분 스코어를 계산하는 단계, 상기 미리 설정된 기간 중 상기 제1 기간과 상이한 제2 기간에 대한 상기 제3 스코어의 제2 부분 스코어를 계산하는 단계, 및 상기 제1 부분 스코어 및 상기 제2 부분 스코어에 기초하여 상기 제3 스코어를 계산하는 단계를 포함할 수 있다.The calculating of the third score based on the ranking of the rate of change with respect to the number of views of the target content may include calculating a first partial score of the third score for a first period of a preset period, and the preset period of time. calculating a second partial score of the third score for a second time period different from the first time period, and calculating the third score based on the first partial score and the second partial score. can
상기 타겟 컨텐츠의 상기 변동율 순위에 기초하여 결정된 상기 타겟 컨텐츠의 제2 타겟 그룹에 기초한 제4 스코어를 계산하는 단계는, 미리 설정된 기간 중 제1 기간에 대한 상기 제4 스코어의 제1 부분 스코어를 계산하는 단계, 상기 미리 설정된 기간 중 상기 제1 기간과 상이한 제2 기간에 대한 상기 제4 스코어의 제2 부분 스코어를 계산하는 단계, 및 상기 제1 부분 스코어 및 상기 제2 부분 스코어에 기초하여 상기 제4 스코어를 계산하는 단계를 포함할 수 있다.The calculating of a fourth score based on a second target group of the target content determined based on the change rate ranking of the target content includes calculating a first partial score of the fourth score for a first period among a preset period. calculating a second partial score of the fourth score for a second period of the preset period different from the first period, and based on the first partial score and the second partial score, the second partial score. 4 calculating the score.
상기 시청 스코어 기초하여 상기 복수의 컨텐츠들 중 미리 설정된 개수의 타겟 컨텐츠를 결정하는 단계는, 상기 복수의 컨텐츠들 중 상기 사용자가 시청한 컨텐츠를 결정하는 단계, 상기 시청 컨텐츠를 제외한 상기 복수의 컨텐츠들을 상기 시청 스코어에 기초하여 정렬하는 단계, 및 상기 정렬된 상기 복수의 컨텐츠들 중 상기 미리 설정된 개수의 타겟 컨텐츠를 결정하는 단계를 포함할 수 있다.The determining of a preset number of target contents among the plurality of contents based on the viewing score may include determining the contents viewed by the user from among the plurality of contents, and selecting the plurality of contents excluding the viewing contents. Sorting based on the viewing score, and determining the preset number of target content among the sorted plurality of content may include.
상기 복수의 컨텐츠들은 VOD(Video on Demand)일 수 있다.The plurality of contents may be video on demand (VOD).
다른 일 측면에 따른, 컨텐츠 추천 방법을 수행하는 서버는, 컨텐츠를 추천하는 프로그램이 기록된 메모리, 및 상기 프로그램을 수행하는 프로세서를 포함하고, 상기 프로그램은, 복수의 컨텐츠들의 각각에 대한 시청 횟수를 갱신하는 단계, 갱신된 시청 횟수에 기초하여 상기 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산하는 단계, 상기 시청 스코어 기초하여 상기 복수의 컨텐츠들 중 미리 설정된 개수의 타겟 컨텐츠를 결정하는 단계, 및 상기 타겟 컨텐츠를 사용자에게 추천하는 단계를 수행한다.According to another aspect, a server for performing a content recommendation method includes a memory in which a program for recommending content is recorded, and a processor for executing the program, wherein the program counts the number of views for each of a plurality of content. updating, calculating a viewing score for each of the plurality of contents based on the updated number of views, determining a preset number of target contents among the plurality of contents based on the viewing score, and the A step of recommending target content to the user is performed.
상기 갱신된 시청 횟수에 기초하여 상기 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산하는 단계는, 타겟 컨텐츠의 시청 횟수에 대한 시청 순위에 기초한 제1 스코어를 계산하는 단계, 및 상기 타겟 컨텐츠의 상기 시청 순위에 기초하여 결정된 상기 타겟 컨텐츠의 타겟 그룹에 기초한 제2 스코어를 계산하는 단계를 포함할 수 있다.Calculating the viewing score for each of the plurality of contents based on the updated viewing frequency may include calculating a first score based on a viewing ranking for the viewing frequency of the target content, and the viewing of the target content. It may include calculating a second score based on the target group of the target content determined based on the ranking.
상기 갱신된 시청 횟수에 기초하여 상기 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산하는 단계는, 타겟 컨텐츠의 시청 횟수에 대한 변동율 순위에 기초한 제3 스코어를 계산하는 단계, 및 상기 타겟 컨텐츠의 상기 변동율 순위에 기초하여 결정된 상기 타겟 컨텐츠의 제2 타겟 그룹에 기초한 제4 스코어를 계산하는 단계를 포함할 수 있다.Calculating the viewing score for each of the plurality of contents based on the updated viewing frequency may include calculating a third score based on a ranking of a rate of change with respect to the number of views of the target content, and the rate of change of the target content It may include calculating a fourth score based on the second target group of the target content determined based on the ranking.
상기 시청 스코어 기초하여 상기 복수의 컨텐츠들 중 미리 설정된 개수의 타겟 컨텐츠를 결정하는 단계는, 상기 복수의 컨텐츠들 중 상기 사용자가 시청한 컨텐츠를 결정하는 단계, 상기 시청 컨텐츠를 제외한 상기 복수의 컨텐츠들을 상기 시청 스코어에 기초하여 정렬하는 단계, 및 상기 정렬된 상기 복수의 컨텐츠들 중 상기 미리 설정된 개수의 타겟 컨텐츠를 결정하는 단계를 포함할 수 있다.The determining of a preset number of target contents among the plurality of contents based on the viewing score may include determining the contents viewed by the user from among the plurality of contents, and selecting the plurality of contents excluding the viewing contents. Sorting based on the viewing score, and determining the preset number of target content among the sorted plurality of content may include.
상기 복수의 컨텐츠들은 VOD(Video on Demand)일 수 있다.The plurality of contents may be video on demand (VOD).
사용자에게 컨텐츠를 추천하는 방법 및 장치가 제공될 수 있다.A method and apparatus for recommending content to a user may be provided.
사용자에게 컨텐츠를 제공하는 방법 및 장치가 제공될 수 있다.A method and apparatus for providing content to a user may be provided.
도 1은 일 예에 따른 사용자에게 컨텐츠를 제공하는 시스템을 도시한다.
도 2는 일 실시예에 따른 서버의 구성도이다.
도 3은 일 실시예에 따른 사용자에게 컨텐츠를 추천하는 방법의 흐름도이다.
도 4는 일 예에 따른 컨텐츠에 대한 시청 스코어를 계산하는 방법의 흐름도이다.
도 5는 일 예에 따른 제1 스코어를 계산하는 방법의 흐름도이다.
도 6은 일 예에 따른 제2 스코어를 계산하는 방법의 흐름도이다.
도 7은 일 예에 따른 제3 스코어를 계산하는 방법의 흐름도이다.
도 8은 일 예에 따른 제4 스코어를 계산하는 방법의 흐름도이다.
도 9는 일 예에 따른 미리 설정된 개수의 타겟 컨텐츠를 결정하는 방법의 흐름도이다.1 illustrates a system for providing content to a user according to an example.
2 is a configuration diagram of a server according to an embodiment.
3 is a flowchart of a method of recommending content to a user according to an exemplary embodiment.
4 is a flowchart of a method of calculating a viewing score for content according to an example.
5 is a flowchart of a method of calculating a first score according to an example.
6 is a flowchart of a method of calculating a second score according to an example.
7 is a flowchart of a method of calculating a third score according to an example.
8 is a flowchart of a method of calculating a fourth score according to an example.
9 is a flowchart of a method of determining a preset number of target contents according to an example.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, the scope of the patent application is not limited or limited by these examples. Like reference numerals in each figure indicate like elements.
아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Various modifications may be made to the embodiments described below. It should be understood that the embodiments described below are not intended to limit the embodiments, and include all modifications, equivalents or substitutes thereto.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Terms used in the examples are only used to describe specific examples, and are not intended to limit the examples. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present specification, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It should be understood that this does not preclude the existence or addition of numbers, steps, operations, components, parts, or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the embodiment belongs. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, in the description with reference to the accompanying drawings, the same components are given the same reference numerals regardless of the reference numerals, and the overlapping description thereof will be omitted. In the description of the embodiment, if it is determined that a detailed description of a related known technology may unnecessarily obscure the gist of the embodiment, the detailed description thereof will be omitted.
도 1은 일 예에 따른 사용자에게 컨텐츠를 제공하는 시스템을 도시한다.1 illustrates a system for providing content to a user according to an example.
일 측면에 따른, 컨텐츠 제공 시스템은 컨텐츠를 제공하는 서버(110) 및 제공된 컨텐츠를 출력하는 사용자 단말(100)을 포함할 수 있다. 사용자 단말(100)이 스마트 폰과 같은 모바일 장치로 도시되었으나, IPTV(Internet Protocol Television)일 수 있고, 기재된 실시예로 한정되지 않는다. According to one aspect, the content providing system may include a
서버(110)는 사용자 단말(100)의 사용자가 선택한 컨텐츠를 사용자 단말(100)을 통해 사용자에게 제공할 수 있고, 추가적으로 사용자에게 하나 이상의 컨텐츠들(101 내지 106)을 추천할 수 있다. 추천된 컨텐츠들(101 내지 106)은 사용자 단말(100)에 출력될 수 있다. 사용자는 출력된 컨텐츠들(101 내지 106) 중 어느 하나를 선택하여 시청할 수 있다.The
서버(110)가 복수의 컨텐츠들 중 컨텐츠들(101 내지 106)을 결정하는 방법들은 다양하다. 예를 들어, 복수의 컨텐츠들 중 사용자들의 시청 횟수가 많은 컨텐츠가 결정될 수 있다. 다른 예로, 복수의 컨텐츠들 중 사용자들의 평가가 좋은 컨텐츠가 결정될 수 있다.There are various methods in which the
다만, 상기의 방법들은 컨텐츠에 대해 누적된 결과(즉, 시청 횟수 또는 평가)에 기초하여 컨텐츠를 결정하고 있으므로, 사용자들의 최근 시청 트렌드를 즉각적으로 반영하지 못한다. 따라서, 최근 시청 트렌드를 함께 반영할 수 있는 방법이 고려될 수 있다.However, since the above methods determine content based on the accumulated result (ie, the number of views or evaluation) of the content, the user's recent viewing trend cannot be immediately reflected. Therefore, a method that can reflect the recent viewing trend together may be considered.
아래에서 도 2 내지 도 6을 참조하여 최근 시청 트렌드를 반영할 수 있는 컨텐츠 추천 방법이 상세히 설명된다.Hereinafter, a content recommendation method that can reflect a recent viewing trend will be described in detail with reference to FIGS. 2 to 6 .
도 2는 일 실시예에 따른 서버의 구성도이다.2 is a configuration diagram of a server according to an embodiment.
서버(200)는 통신부(210), 프로세서(220) 및 메모리(230)를 포함한다. 예를 들어, 서버(200)는 도 1을 참조하여 서버(110)일 수 있다.The
통신부(210)는 프로세서(220) 및 메모리(230)와 연결되어 데이터를 송수신한다. 통신부(210)는 외부의 다른 장치와 연결되어 데이터를 송수신할 수 있다. 이하에서 "A"를 송수신한다라는 표현은 "A를 나타내는 정보(information) 또는 데이터"를 송수신하는 것을 나타낼 수 있다.The
통신부(210)는 서버(200) 내의 회로망(circuitry)으로 구현될 수 있다. 예를 들어, 통신부(210)는 내부 버스(internal bus) 및 외부 버스(external bus)를 포함할 수 있다. 다른 예로, 통신부(210)는 서버(200)와 외부의 장치를 연결하는 요소일 수 있다. 통신부(210)는 인터페이스(interface)일 수 있다. 통신부(210)는 외부의 장치로부터 데이터를 수신하여, 프로세서(220) 및 메모리(230)에 데이터를 전송할 수 있다.The
프로세서(220)는 통신부(210)가 수신한 데이터 및 메모리(230)에 저장된 데이터를 처리한다. "프로세서"는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다. 예를 들어, 하드웨어로 구현된 데이터 처리 장치는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.The
프로세서(220)는 메모리(예를 들어, 메모리(230))에 저장된 컴퓨터로 읽을 수 있는 코드(예를 들어, 소프트웨어) 및 프로세서(220)에 의해 유발된 인스트럭션들을 실행한다.
메모리(230)는 통신부(210)가 수신한 데이터 및 프로세서(220)가 처리한 데이터를 저장한다. 예를 들어, 메모리(230)는 프로그램(또는 어플리케이션, 소프트웨어)을 저장할 수 있다. 저장되는 프로그램은 컨텐츠를 추천할 수 있도록 코딩되어 프로세서(220)에 의해 실행 가능한 신텍스(syntax)들의 집합일 수 있다.The
일 측면에 따르면, 메모리(230)는 하나 이상의 휘발성 메모리, 비휘발성 메모리 및 RAM(Random Access Memory), 플래시 메모리, 하드 디스크 드라이브 및 광학 디스크 드라이브를 포함할 수 있다.According to one aspect,
메모리(230)는 서버(200)를 동작 시키는 명령어 세트(예를 들어, 소프트웨어)를 저장한다. 서버(200)를 동작 시키는 명령어 세트는 프로세서(220)에 의해 실행된다.The
통신부(210), 프로세서(220) 및 메모리(230)에 대해, 아래에서 도 3 내지 도 6을 참조하여 상세히 설명된다.The
도 3은 일 실시예에 따른 사용자에게 컨텐츠를 추천하는 방법의 흐름도이다.3 is a flowchart of a method of recommending content to a user according to an exemplary embodiment.
아래의 단계들(310 내지 360)은 도 2를 참조하여 전술된 서버(200)에 의해 수행될 수 있다.The following
단계(310)에서, 서버(200)는 복수의 컨텐츠들의 각각에 대한 시청 횟수를 갱신한다. 예를 들어, 컨텐츠는 VOD(Video on Demand)일 수 있고, 기재된 실시예로 한정되지 않는다.In
서버(200)를 통해 서비스를 제공받는 사용자들이 시청한 컨텐츠의 시청 횟수가 증가하고, 이에 기초하여 복수의 컨텐츠들의 각각에 대한 시청 횟수가 갱신된다. 컨텐츠의 시청 횟수는 미리 설정된 복수의 시간들 각각에 대해 개별적으로 누적될 수 있다. 예를 들어, 1일 기준으로 컨텐츠의 시청 횟수가 개별적으로 누적될 수 있다.The number of views of content viewed by users provided with a service through the
컨텐츠의 시청 횟수는 컨텐츠의 인지도 또는 보편성을 판단하기 위해 이용될 수 있다.The number of viewing times of the content may be used to determine the recognition or universality of the content.
단계(320)에서, 서버(200)는 갱신된 시청 횟수에 기초하여 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산한다. 예를 들어, 컨텐츠의 인지도에 대한 스코어 및 최근 시청 트렌드에 대한 스코어를 각각 계산하고, 이에 기초하여 시청 스코어가 계산될 수 있다.In
복수의 시간들 각각에 대해 개별적으로 누적된 시청 횟수의 순위에 기초하여 계산된 스코어는 컨텐츠의 인지도에 대한 스코어이고, 복수의 시간들 각각에 대해 개별적으로 누적된 시청 횟수의 변동율의 순위에 기초하여 계산된 스코어는 컨텐츠의 최근 시청 트렌드를 판단하기 위해 이용될 수 있다.The score calculated based on the ranking of the number of viewings individually accumulated for each of the plurality of times is a score for the recognition of the content, and based on the ranking of the rate of change of the number of viewings individually accumulated for each of the plurality of times The calculated score may be used to determine a recent viewing trend of the content.
시청 스코어를 계산하는 방법에 대해, 아래에서 도 4 및 5를 참조하여 상세히 설명된다.A method of calculating the viewing score is described in detail below with reference to FIGS. 4 and 5 .
단계(330)에서, 서버(200)는 시청 스코어에 기초하여 복수의 컨텐츠들 중 미리 설정된 개수의 타겟 컨텐츠를 결정한다. 예를 들어, 복수의 컨텐츠들 중 시청 스코어가 높은 순위의 컨텐츠가 타겟 컨텐츠로 결정될 수 있다. 다른 예로, 사용자의 시청 이력이 고려되어 타겟 컨텐츠가 결정될 수 있다. 사용자의 시청 이력을 고려하여 타겟 컨텐츠를 결정하는 방법에 대해 아래에서 도 6을 참조하여 상세히 설명된다.In
단계(340)에서, 서버(200)는 결정된 타겟 컨텐츠를 사용자에게 추천한다. 추천된 타겟 컨텐츠는 사용자 단말을 통해 사용자에게 제공될 수 있다.In
도 4는 일 예에 따른 컨텐츠에 대한 시청 스코어를 계산하는 방법의 흐름도이다.4 is a flowchart of a method of calculating a viewing score for content according to an example.
일 측면에 따른, 도 3을 참조하여 전술된 단계(320)는 아래의 단계들(410 내지 440)을 포함할 수 있다. 단계들(410 내지 440)은 병렬적이고, 독립적으로 수행될 수 있다.According to one aspect, the
단계(410)에서, 서버(200)는 타겟 컨텐츠의 시청 횟수에 대한 시청 순위에 기초한 제1 스코어를 계산한다. 복수의 컨텐츠들은 미리 설정된 기간(예를 들어, 1일)에 대한 시청 순위에 기초하여 정렬될 수 있고, 타겟 컨텐츠의 시청 순위에 기초하여 타겟 컨텐츠의 제1 스코어가 계산될 수 있다.In
제1 스코어를 계산하는 방법에 대해, 아래에서 도 5를 참조하여 상세히 설명된다.A method of calculating the first score is described in detail below with reference to FIG. 5 .
단계(420)에서, 서버(200)는 타겟 컨텐츠의 시청 순위에 기초하여 결정된 타겟 컨텐츠의 타겟 그룹에 기초한 제2 스코어를 계산한다. 복수의 컨텐츠들은 미리 설정된 기간(예를 들어, 1일)에 대한 시청 순위에 기초하여 정렬될 수 있고, 복수의 그룹들로 나뉠 수 있다. 예를 들어, 복수의 컨텐츠들이 1000개이고, 복수의 그룹들이 50개인 경우, 하나의 그룹에는 20개의 컨텐츠들이 포함될 수 있다. 예를 들어, 제1 그룹은 시청 순위 1위 부터 20위까지의 컨텐츠들이 포함되고, 제50 그룹은 시청 순위 981위 부터 1000위까지의 컨텐츠들이 포함될 수 있다. 제2 스코어는 개별적인 시청 순위에 따른 제1 스코어를 보완하기 위한 스코어일 수 있다.In
제2 스코어를 계산하는 방법에 대해, 아래에서 도 6을 참조하여 상세히 설명된다.A method of calculating the second score is described in detail below with reference to FIG. 6 .
단계(430)에서, 서버(200)는 타겟 컨텐츠의 시청 횟수에 대한 변동율 순위에 기초한 제3 스코어를 계산한다. 시청 횟수에 대한 변동율은 이전의 기간에 대한 컨텐츠의 시청 횟수와 금번의 시간에 대한 컨텐츠의 시청 횟수 간의 차이를 의미하고, 시청 횟수가 증가하는 방향으로 차이가 커질수록 해당 기간에 대한 변동율 순위가 높다.In
제3 스코어를 계산하는 방법에 대해, 아래에서 도 7을 참조하여 상세히 설명된다.A method of calculating the third score is described in detail below with reference to FIG. 7 .
단계(440)에서, 서버(200)는 타겟 컨텐츠의 변동율 순위에 기초하여 결정된 타겟 컨텐츠의 제2 타겟 그룹에 기초한 제4 스코어를 계산한다. 복수의 컨텐츠들은 미리 설정된 기간(예를 들어, 1일)에 대한 변동율 순위에 기초하여 정렬될 수 있고, 복수의 그룹들로 나뉠 수 있다. 복수의 그룹들에 대한 설명은 단계(420)에서 설명된 복수의 그룹들에 대한 설명으로 대체될 수 있다.In
제4 스코어를 계산하는 방법에 대해, 아래에서 도 8을 참조하여 상세히 설명된다.A method of calculating the fourth score is described in detail below with reference to FIG. 8 .
도 5는 일 예에 따른 제1 스코어를 계산하는 방법의 흐름도이다.5 is a flowchart of a method of calculating a first score according to an example.
일 측면에 따른, 도 4를 참조하여 전술된 단계(410)는 아래의 단계들(510내지 530)을 포함할 수 있다.According to one aspect, the
단계(510)에서, 서버(200)는 미리 설정된 기간 중 제1 기간에 대한 제1 스코어의 제1 부분 스코어를 계산한다. 예를 들어, 제1 스코어의 제1 부분 스코어는 아래의 [수학식 1]을 이용하여 계산된다.In
[수학식 1][Equation 1]
[수학식 1]에서, ARXD(1)는 제1 기간에 대한 타겟 컨텐츠의 시청 순위를 나타내고, KXD는 상수일 수 있다. KXD는 서버(200)의 운영자에 의해 적절히 조정될 수 있다. 순위가 높을수록 ARXD(1)의 값이 작아지므로, 제1 스코어의 제1 부분 스코어는 증가한다.In [Equation 1], AR XD(1) represents the viewing order of the target content for the first period, and K XD may be a constant. K XD may be appropriately adjusted by the operator of the
단계(520)에서, 서버(200)는 미리 설정된 기간 중 제1 기간과 상이한 제2 기간에 대한 제1 스코어의 제2 부분 스코어를 계산한다. 예를 들어, 제1 스코어의 제2 부분 스코어는 전술된 [수학식 1]과 유사하게 계산된다. 제2 부분 스코어를 위해 ARXD(1) 대신에 ARXD(2)가 이용된다. ARXD(2)는 제2 기간에 대한 타겟 컨텐츠의 시청 순위를 나타낸다.In
단계(530)에서, 서버(200)는 제1 부분 스코어 및 제2 부분 스코어에 기초하여 제1 스코어를 계산한다. 예를 들어, 제1 스코어는 아래의 [수학식 2]를 이용하여 계산된다.In
[수학식 2][Equation 2]
[수학식 2]에서, WR는 제1 스코어에 대한 가중치일 수 있고, D는 전체 기간의 개수일 수 있다. 예를 들어, D가 일주일이고, 기간이 1일로 설정된 경우 제1 스코어는 총 7개의 부분 스코어들에 기초하여 계산될 수 있다.In [Equation 2], WR may be a weight for the first score, and D may be the number of the entire period. For example, when D is one week and the period is set to one day, the first score may be calculated based on a total of seven partial scores.
도 6은 일 예에 따른 제2 스코어를 계산하는 방법의 흐름도이다.6 is a flowchart of a method of calculating a second score according to an example.
일 측면에 따른, 도 4를 참조하여 전술된 단계(420)는 아래의 단계들(610 내지 630)을 포함할 수 있다.According to one aspect, the
단계(610)에서, 서버(200)는 미리 설정된 기간 중 제1 기간에 대한 제2 스코어의 제1 부분 스코어를 계산한다. 예를 들어, 제2 스코어의 제1 부분 스코어는 아래의 [수학식 3]을 이용하여 계산된다.In
[수학식 3][Equation 3]
[수학식 3]에서, ARTXD(1)는 제1 기간에 대한 타겟 컨텐츠의 시청 순위에 기초하여 결정된 타겟 그룹의 순위를 나타내고, KXD는 상수일 수 있다. 예를 들어, 복수의 컨텐츠들이 1000개이고, 그룹들이 50개이며, 타겟 컨텐츠의 시청 순위가 15위인 경우, 타겟 컨텐츠를 포함하는 타겟 그룹의 그룹 순위는 1위일 수 있다. 타겟 컨텐츠의 시청 순위가 28위인 경우, 타겟 컨텐츠를 포함하는 타겟 그룹의 그룹 순위는 2위일 수 있다. 타겟 그룹의 순위에 기초하여 제2 스코어를 계산하고, 제2 스코어를 전체 스코어에 반영함으로써, 제1 스코어에 의해 나타날 수 있는 정상적이지 않는 스코어를 방지할 수 있다.In [Equation 3], ART XD(1) represents the rank of the target group determined based on the viewing rank of the target content for the first period, and K XD may be a constant. For example, when the plurality of contents is 1000, there are 50 groups, and the viewing order of the target content is 15th, the group ranking of the target group including the target content may be 1st. When the viewing ranking of the target content is 28th, the group ranking of the target group including the target content may be the 2nd. By calculating the second score based on the ranking of the target group and reflecting the second score in the overall score, it is possible to prevent an abnormal score that may be indicated by the first score.
단계(620)에서, 서버(200)는 미리 설정된 기간 중 제1 기간과 상이한 제2 기간에 대한 제2스코어의 제2 부분 스코어를 계산한다. 예를 들어, 제2 스코어의 제2 부분 스코어는 전술된 [수학식 3]과 유사하게 계산된다. 제2 부분 스코어를 위해 ARTXD(1) 대신에 ARTXD(2)가 이용된다. ARTXD(2)는 제2 기간에 대한 타겟 컨텐츠의 타겟 그룹의 순위를 나타낸다.In
단계(630)에서, 서버(200)는 제1 부분 스코어 및 제2 부분 스코어에 기초하여 제2 스코어를 계산한다. 예를 들어, 제2 스코어는 아래의 [수학식 4]를 이용하여 계산된다.In
[수학식 4][Equation 4]
[수학식 4]에서, WRT는 제2 스코어에 대한 가중치일 수 있다.In [Equation 4], WRT may be a weight for the second score.
도 7은 일 예에 따른 제3 스코어를 계산하는 방법의 흐름도이다.7 is a flowchart of a method of calculating a third score according to an example.
일 측면에 따른, 도 4를 참조하여 전술된 단계(430)는 아래의 단계들(710 내지 730)을 포함할 수 있다.According to one aspect, the
단계(710)에서, 서버(200)는 미리 설정된 기간 중 제1 기간에 대한 제3 스코어의 제1 부분 스코어를 계산한다. 예를 들어, 제3 스코어의 제1 부분 스코어는 아래의 [수학식 5]를 이용하여 계산된다.In
[수학식 5][Equation 5]
[수학식 5]에서, FRXD(1)는 제1 기간에 대한 타겟 컨텐츠의 시청 횟수에 대한 변동율 순위를 나타내고, KXD는 상수일 수 있다.In [Equation 5], FR XD(1) represents a rank of change rate with respect to the number of views of the target content for the first period, and K XD may be a constant.
단계(720)에서, 서버(200)는 미리 설정된 기간 중 제1 기간과 상이한 제2 기간에 대한 제3 스코어의 제2 부분 스코어를 계산한다. 예를 들어, 제3 스코어의 제2 부분 스코어는 전술된 [수학식 5]와 유사하게 계산된다. 제2 부분 스코어를 위해 FRXD(1) 대신에 FRXD(2)가 이용된다. FRXD(2)는 제2 기간에 타겟 컨텐츠의 시청 횟수에 대한 변동율 순위를 나타낸다.In
단계(730)에서, 서버(200)는 제1 부분 스코어 및 제2 부분 스코어에 기초하여 제3 스코어를 계산한다. 예를 들어, 제3 스코어는 아래의 [수학식 6]을 이용하여 계산된다.In
[수학식 6][Equation 6]
[수학식 6]에서, WF는 제3 스코어에 대한 가중치일 수 있다.In [Equation 6], WF may be a weight for the third score.
도 8은 일 예에 따른 제4 스코어를 계산하는 방법의 흐름도이다.8 is a flowchart of a method of calculating a fourth score according to an example.
일 측면에 따른, 도 4를 참조하여 전술된 단계(440)는 아래의 단계들(810 내지 830)을 포함할 수 있다.According to one aspect, step 440 described above with reference to FIG. 4 may include
단계(810)에서, 서버(200)는 미리 설정된 기간 중 제1 기간에 대한 제4 스코어의 제1 부분 스코어를 계산한다. 예를 들어, 제4 스코어의 제1 부분 스코어는 아래의 [수학식 7]을 이용하여 계산된다.In
[수학식 7][Equation 7]
[수학식 7]에서, AFTXD(1)는 제1 기간에 대한 타겟 컨텐츠의 변동율 순위에 기초하여 결정된 제2 타겟 그룹의 순위를 나타낸다. 예를 들어, 복수의 컨텐츠들이 1000개이고, 그룹들이 50개이며, 타겟 컨텐츠의 변동율 순위가 15위인 경우, 타겟 컨텐츠를 포함하는 제2 타겟 그룹의 그룹 순위는 1위일 수 있다. 타겟 컨텐츠의 변동율 순위가 28위인 경우, 타겟 컨텐츠를 포함하는 제2 타겟 그룹의 그룹 순위는 2위일 수 있다. 타겟 그룹의 순위에 기초하여 제4 스코어를 계산하고, 제4 스코어를 전체 스코어에 반영함으로써, 제3 스코어에 의해 나타날 수 있는 정상적이지 않는 스코어를 방지할 수 있다.In [Equation 7], AFT XD(1) represents the ranking of the second target group determined based on the ranking of the rate of change of the target content for the first period. For example, when the plurality of contents is 1000, there are 50 groups, and the change rate of the target contents is 15th, the group ranking of the second target group including the target contents may be 1st. When the ranking of the change rate of the target content is 28th, the group ranking of the second target group including the target content may be the 2nd. By calculating the fourth score based on the ranking of the target group and reflecting the fourth score in the overall score, it is possible to prevent an abnormal score that may be indicated by the third score.
단계(820)에서, 서버(200)는 미리 설정된 기간 중 제1 기간과 상이한 제2 기간에 대한 제4스코어의 제2 부분 스코어를 계산한다. 예를 들어, 제4 스코어의 제2 부분 스코어는 전술된 [수학식 7]과 유사하게 계산된다. 제2 부분 스코어를 위해 AFTXD(1) 대신에 AFTXD(2)가 이용된다. AFTXD(2)는 제2 기간에 대한 타겟 컨텐츠의 제2 타겟 그룹의 순위를 나타낸다.In
단계(830)에서, 서버(200)는 제1 부분 스코어 및 제2 부분 스코어에 기초하여 제4 스코어를 계산한다. 예를 들어, 제4 스코어는 아래의 [수학식 8]을 이용하여 계산된다.In
[수학식 8][Equation 8]
[수학식 8]에서, WFT는 제4 스코어에 대한 가중치일 수 있다.In [Equation 8], WFT may be a weight for the fourth score.
최종적으로, 서버(200)는 아래의 [수학식 9]를 이용하여 타겟 컨텐츠에 대한 시청 스코어를 계산한다.Finally, the
[수학식 9][Equation 9]
도 9는 일 예에 따른 미리 설정된 개수의 타겟 컨텐츠를 결정하는 방법의 흐름도이다.9 is a flowchart of a method of determining a preset number of target contents according to an example.
일 측면에 따른, 도 4를 참조하여 전술된 단계(330)는 아래의 단계들(910 내지 930)을 포함할 수 있다.According to one aspect, the
단계(910)에서, 서버(200)는 복수의 컨텐츠들 중 사용자가 시청한 컨텐츠를 결정한다. 예를 들어, 사용자가 사용자 식별자를 통해 서버(200)에 접속한 경우, 서버(200)는 사용자의 시청 히스토리에 기초하여 시청 컨텐츠를 결정할 수 있다.In
단계(920)에서, 서버(200)는 시청 컨텐츠를 제외한 복수의 컨텐츠들을 시청 스코어에 기초하여 정렬한다.In
단계(930)에서, 서버(200)는 정렬된 복수의 컨텐츠들 중 미리 설정된 개수의 타겟 컨텐츠를 결정한다.In
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The device described above may be implemented as a hardware component, a software component, and/or a combination of the hardware component and the software component. For example, devices and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA), It may be implemented using one or more general purpose or special purpose computers, such as a programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, although one processing device is sometimes described as being used, one of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that can include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with reference to the limited embodiments and drawings, various modifications and variations are possible from the above description by those skilled in the art. For example, the described techniques are performed in a different order than the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.
200: 서버
210: 통신부
220: 프로세서
230: 메모리200: server
210: communication unit
220: processor
230: memory
Claims (15)
복수의 컨텐츠들의 각각에 대한 시청 횟수를 갱신하는 단계;
갱신된 시청 횟수에 기초하여 상기 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산하는 단계;
상기 시청 스코어 기초하여 상기 복수의 컨텐츠들 중 미리 설정된 개수의 타겟 컨텐츠를 결정하는 단계; 및
상기 타겟 컨텐츠를 사용자에게 추천하는 단계
를 포함하는,
컨텐츠 추천 방법.
The content recommendation method, performed by the server,
updating the number of views for each of the plurality of contents;
calculating a viewing score for each of the plurality of contents based on the updated viewing frequency;
determining a preset number of target contents from among the plurality of contents based on the viewing score; and
Recommending the target content to a user
containing,
How to recommend content.
상기 갱신된 시청 횟수에 기초하여 상기 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산하는 단계는,
타겟 컨텐츠의 시청 횟수에 대한 시청 순위에 기초한 제1 스코어를 계산하는 단계; 및
상기 타겟 컨텐츠의 상기 시청 순위에 기초하여 결정된 상기 타겟 컨텐츠의 타겟 그룹에 기초한 제2 스코어를 계산하는 단계
를 포함하는,
컨텐츠 추천 방법.
According to claim 1,
Calculating the viewing score for each of the plurality of contents based on the updated viewing frequency includes:
calculating a first score based on a viewing ranking with respect to the number of viewings of the target content; and
calculating a second score based on a target group of the target content determined based on the viewing rank of the target content
containing,
How to recommend content.
상기 타겟 컨텐츠의 시청 횟수에 대한 시청 순위에 기초한 제1 스코어를 계산하는 단계는,
미리 설정된 기간 중 제1 기간에 대한 상기 제1 스코어의 제1 부분 스코어를 계산하는 단계;
상기 미리 설정된 기간 중 상기 제1 기간과 상이한 제2 기간에 대한 상기 제1 스코어의 제2 부분 스코어를 계산하는 단계; 및
상기 제1 부분 스코어 및 상기 제2 부분 스코어에 기초하여 상기 제1 스코어를 계산하는 단계
를 포함하는,
컨텐츠 추천 방법.
3. The method of claim 2,
Calculating a first score based on a viewing ranking for the number of viewing of the target content includes:
calculating a first partial score of the first score for a first period of a preset period;
calculating a second partial score of the first score for a second period of time different from the first period of the preset period; and
calculating the first score based on the first partial score and the second partial score;
containing,
How to recommend content.
상기 타겟 컨텐츠의 상기 시청 순위에 기초하여 결정된 상기 타겟 컨텐츠의 타겟 그룹에 기초한 제2 스코어를 계산하는 단계는,
미리 설정된 기간 중 제1 기간에 대한 상기 제2 스코어의 제1 부분 스코어를 계산하는 단계;
상기 미리 설정된 기간 중 상기 제1 기간과 상이한 제2 기간에 대한 상기 제2 스코어의 제2 부분 스코어를 계산하는 단계; 및
상기 제1 부분 스코어 및 상기 제2 부분 스코어에 기초하여 상기 제2 스코어를 계산하는 단계
를 포함하는,
컨텐츠 추천 방법.
3. The method of claim 2,
Calculating a second score based on a target group of the target content determined based on the viewing rank of the target content,
calculating a first partial score of the second score for a first period of a preset period;
calculating a second partial score of the second score for a second period of the preset period different from the first period; and
calculating the second score based on the first partial score and the second partial score;
containing,
How to recommend content.
상기 갱신된 시청 횟수에 기초하여 상기 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산하는 단계는,
타겟 컨텐츠의 시청 횟수에 대한 변동율 순위에 기초한 제3 스코어를 계산하는 단계; 및
상기 타겟 컨텐츠의 상기 변동율 순위에 기초하여 결정된 상기 타겟 컨텐츠의 제2 타겟 그룹에 기초한 제4 스코어를 계산하는 단계
를 포함하는,
컨텐츠 추천 방법.
According to claim 1,
Calculating the viewing score for each of the plurality of contents based on the updated viewing frequency includes:
calculating a third score based on the ranking of the rate of change with respect to the number of views of the target content; and
calculating a fourth score based on a second target group of the target content determined based on the ranking of the rate of change of the target content
containing,
How to recommend content.
상기 타겟 컨텐츠의 시청 횟수에 대한 변동율 순위에 기초한 제3 스코어를 계산하는 단계는,
미리 설정된 기간 중 제1 기간에 대한 상기 제3 스코어의 제1 부분 스코어를 계산하는 단계;
상기 미리 설정된 기간 중 상기 제1 기간과 상이한 제2 기간에 대한 상기 제3 스코어의 제2 부분 스코어를 계산하는 단계; 및
상기 제1 부분 스코어 및 상기 제2 부분 스코어에 기초하여 상기 제3 스코어를 계산하는 단계
를 포함하는,
컨텐츠 추천 방법.
6. The method of claim 5,
Calculating a third score based on the ranking of the rate of change with respect to the number of views of the target content,
calculating a first partial score of the third score for a first period of a preset period;
calculating a second partial score of the third score for a second period of the preset period different from the first period; and
calculating the third score based on the first partial score and the second partial score;
containing,
How to recommend content.
상기 타겟 컨텐츠의 상기 변동율 순위에 기초하여 결정된 상기 타겟 컨텐츠의 제2 타겟 그룹에 기초한 제4 스코어를 계산하는 단계는,
미리 설정된 기간 중 제1 기간에 대한 상기 제4 스코어의 제1 부분 스코어를 계산하는 단계;
상기 미리 설정된 기간 중 상기 제1 기간과 상이한 제2 기간에 대한 상기 제4 스코어의 제2 부분 스코어를 계산하는 단계; 및
상기 제1 부분 스코어 및 상기 제2 부분 스코어에 기초하여 상기 제4 스코어를 계산하는 단계
를 포함하는,
컨텐츠 추천 방법.
6. The method of claim 5,
Calculating a fourth score based on the second target group of the target content determined based on the ranking of the rate of change of the target content,
calculating a first partial score of the fourth score for a first period of a preset period;
calculating a second partial score of the fourth score for a second period of the preset period different from the first period; and
calculating the fourth score based on the first partial score and the second partial score;
containing,
How to recommend content.
상기 시청 스코어 기초하여 상기 복수의 컨텐츠들 중 미리 설정된 개수의 타겟 컨텐츠를 결정하는 단계는,
상기 복수의 컨텐츠들 중 상기 사용자가 시청한 컨텐츠를 결정하는 단계;
상기 시청 컨텐츠를 제외한 상기 복수의 컨텐츠들을 상기 시청 스코어에 기초하여 정렬하는 단계; 및
상기 정렬된 상기 복수의 컨텐츠들 중 상기 미리 설정된 개수의 타겟 컨텐츠를 결정하는 단계
를 포함하는,
컨텐츠 추천 방법.
According to claim 1,
The step of determining a preset number of target contents among the plurality of contents based on the viewing score includes:
determining the content viewed by the user from among the plurality of contents;
sorting the plurality of contents excluding the viewing contents based on the viewing score; and
Determining the preset number of target contents among the sorted plurality of contents
containing,
How to recommend content.
상기 복수의 컨텐츠들은 VOD(Video on Demand)인,
컨텐츠 추천 방법.
According to claim 1,
The plurality of contents is VOD (Video on Demand),
How to recommend content.
A computer-readable recording medium containing a program for performing the method of any one of claims 1 to 9.
컨텐츠를 추천하는 프로그램이 기록된 메모리; 및
상기 프로그램을 수행하는 프로세서
를 포함하고,
상기 프로그램은,
복수의 컨텐츠들의 각각에 대한 시청 횟수를 갱신하는 단계;
갱신된 시청 횟수에 기초하여 상기 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산하는 단계;
상기 시청 스코어 기초하여 상기 복수의 컨텐츠들 중 미리 설정된 개수의 타겟 컨텐츠를 결정하는 단계; 및
상기 타겟 컨텐츠를 사용자에게 추천하는 단계
를 수행하는,
서버.
The server performing the content recommendation method,
a memory in which a program for recommending content is recorded; and
a processor that executes the program
including,
The program is
updating the number of views for each of the plurality of contents;
calculating a viewing score for each of the plurality of contents based on the updated viewing frequency;
determining a preset number of target contents from among the plurality of contents based on the viewing score; and
Recommending the target content to a user
to do,
server.
상기 갱신된 시청 횟수에 기초하여 상기 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산하는 단계는,
타겟 컨텐츠의 시청 횟수에 대한 시청 순위에 기초한 제1 스코어를 계산하는 단계; 및
상기 타겟 컨텐츠의 상기 시청 순위에 기초하여 결정된 상기 타겟 컨텐츠의 타겟 그룹에 기초한 제2 스코어를 계산하는 단계
를 포함하는,
서버.
12. The method of claim 11,
Calculating the viewing score for each of the plurality of contents based on the updated viewing frequency includes:
calculating a first score based on a viewing ranking with respect to the number of viewings of the target content; and
calculating a second score based on a target group of the target content determined based on the viewing rank of the target content
containing,
server.
상기 갱신된 시청 횟수에 기초하여 상기 복수의 컨텐츠들 각각에 대한 시청 스코어를 계산하는 단계는,
타겟 컨텐츠의 시청 횟수에 대한 변동율 순위에 기초한 제3 스코어를 계산하는 단계; 및
상기 타겟 컨텐츠의 상기 변동율 순위에 기초하여 결정된 상기 타겟 컨텐츠의 제2 타겟 그룹에 기초한 제4 스코어를 계산하는 단계
를 포함하는,
서버.
12. The method of claim 11,
Calculating the viewing score for each of the plurality of contents based on the updated viewing frequency includes:
calculating a third score based on the ranking of the rate of change with respect to the number of views of the target content; and
calculating a fourth score based on a second target group of the target content determined based on the ranking of the rate of change of the target content
containing,
server.
상기 시청 스코어 기초하여 상기 복수의 컨텐츠들 중 미리 설정된 개수의 타겟 컨텐츠를 결정하는 단계는,
상기 복수의 컨텐츠들 중 상기 사용자가 시청한 컨텐츠를 결정하는 단계;
상기 시청 컨텐츠를 제외한 상기 복수의 컨텐츠들을 상기 시청 스코어에 기초하여 정렬하는 단계; 및
상기 정렬된 상기 복수의 컨텐츠들 중 상기 미리 설정된 개수의 타겟 컨텐츠를 결정하는 단계
를 포함하는,
서버.
12. The method of claim 11,
The step of determining a preset number of target contents among the plurality of contents based on the viewing score includes:
determining the content viewed by the user from among the plurality of contents;
sorting the plurality of contents excluding the viewing contents based on the viewing score; and
Determining the preset number of target contents among the sorted plurality of contents
containing,
server.
상기 복수의 컨텐츠들은 VOD(Video on Demand)인,
서버.12. The method of claim 11,
The plurality of contents is VOD (Video on Demand),
server.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200032373A KR102334596B1 (en) | 2020-03-17 | 2020-03-17 | Method and apparatus for recommending content to user |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200032373A KR102334596B1 (en) | 2020-03-17 | 2020-03-17 | Method and apparatus for recommending content to user |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210115928A true KR20210115928A (en) | 2021-09-27 |
KR102334596B1 KR102334596B1 (en) | 2021-12-02 |
Family
ID=77925761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200032373A KR102334596B1 (en) | 2020-03-17 | 2020-03-17 | Method and apparatus for recommending content to user |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102334596B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102692909B1 (en) * | 2023-08-18 | 2024-08-08 | 쿠팡 주식회사 | Electronic apparatus for providing information on content streaming service and method therefor |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006003401A (en) * | 2004-06-15 | 2006-01-05 | Equos Research Co Ltd | On-vehicle terminal device |
KR20070098167A (en) * | 2006-03-31 | 2007-10-05 | 삼성전자주식회사 | Contents receiving apparatus and method for calculating contents usage score thereof |
JP2007324874A (en) * | 2006-05-31 | 2007-12-13 | Canon Inc | Content recommending method and program |
KR20200024427A (en) * | 2018-08-28 | 2020-03-09 | 주식회사 케이티 | Ai assitant voice matching system and operation method thereof |
-
2020
- 2020-03-17 KR KR1020200032373A patent/KR102334596B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006003401A (en) * | 2004-06-15 | 2006-01-05 | Equos Research Co Ltd | On-vehicle terminal device |
KR20070098167A (en) * | 2006-03-31 | 2007-10-05 | 삼성전자주식회사 | Contents receiving apparatus and method for calculating contents usage score thereof |
JP2007324874A (en) * | 2006-05-31 | 2007-12-13 | Canon Inc | Content recommending method and program |
KR20200024427A (en) * | 2018-08-28 | 2020-03-09 | 주식회사 케이티 | Ai assitant voice matching system and operation method thereof |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102692909B1 (en) * | 2023-08-18 | 2024-08-08 | 쿠팡 주식회사 | Electronic apparatus for providing information on content streaming service and method therefor |
Also Published As
Publication number | Publication date |
---|---|
KR102334596B1 (en) | 2021-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8473360B2 (en) | Suggested item category systems and methods | |
US10129596B2 (en) | Adaptive row selection | |
US8868692B1 (en) | Device configuration based content selection | |
US11455672B2 (en) | Systems and methods to adapt search results | |
US20160012406A1 (en) | Recharge Method, Recharge Terminal, and Recharge Server | |
CN110704677B (en) | Program recommendation method and device, readable storage medium and terminal equipment | |
US20120030199A1 (en) | Systems and methods for searching databases by sound input | |
US11256453B1 (en) | Retargeting events service for online advertising | |
US8229794B2 (en) | System and method for providing listing assistance | |
US9684927B2 (en) | Consumer purchase decision scoring tool | |
US20170039578A1 (en) | Ranking of Search Results Based on Customer Intent | |
US11100570B2 (en) | Product configuration recommendation and optimization | |
US20240121486A1 (en) | Systems and methods for displaying interactive content item for a predetermined duration | |
WO2024078325A1 (en) | Information display method and apparatus, device, and storage medium | |
US10853852B2 (en) | System and method for providing listing assistance | |
KR102334596B1 (en) | Method and apparatus for recommending content to user | |
US20180234732A1 (en) | Method and system for re-aggregation and optimization of media | |
US20150220939A1 (en) | Monetization Channel Exchange | |
US20230401250A1 (en) | Systems and methods for generating interactable elements in text strings relating to media assets | |
US20200162774A1 (en) | Method and system for re-aggregation and optimization of media | |
US20230195775A1 (en) | Systems and methods for generating interactable elements in text strings relating to media assets | |
US10402850B2 (en) | Reliability metrics for real-time auctions | |
EP4235555A2 (en) | System and method for recommending a content service to a content consumer | |
KR102334594B1 (en) | Method and apparatus for recommending content based on content viewing history of user | |
EP4408003A1 (en) | Information processing device, information processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |