KR101423690B1 - 커뮤니티 서비스 기반의 컨텐츠 추천 시스템 및 컨텐츠 추천 방법 - Google Patents
커뮤니티 서비스 기반의 컨텐츠 추천 시스템 및 컨텐츠 추천 방법 Download PDFInfo
- Publication number
- KR101423690B1 KR101423690B1 KR1020120034568A KR20120034568A KR101423690B1 KR 101423690 B1 KR101423690 B1 KR 101423690B1 KR 1020120034568 A KR1020120034568 A KR 1020120034568A KR 20120034568 A KR20120034568 A KR 20120034568A KR 101423690 B1 KR101423690 B1 KR 101423690B1
- Authority
- KR
- South Korea
- Prior art keywords
- graph
- user
- tag
- nodes
- community service
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 239000011159 matrix material Substances 0.000 claims description 46
- 239000000284 extract Substances 0.000 claims description 3
- OAICVXFJPJFONN-UHFFFAOYSA-N Phosphorus Chemical compound [P] OAICVXFJPJFONN-UHFFFAOYSA-N 0.000 claims 2
- 229910052698 phosphorus Inorganic materials 0.000 claims 2
- 239000011574 phosphorus Substances 0.000 claims 2
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 claims 1
- 238000011156 evaluation Methods 0.000 abstract 2
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000003012 network analysis Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
-
- 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/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Pure & Applied Mathematics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Algebra (AREA)
- Mathematical Optimization (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
소셜 네트워크 기반의 컨텐츠 추천 방법 및 시스템이 개시된다. 본 발명의 일 측면에 따른 소셜 네트워크 기반의 컨텐츠 추천 방법은 (a) 상기 소셜 네트워크의 구성원이 컨텐츠를 액세스하는 경우, 액세스 당시의 상황을 기술하는 적어도 하나의 상황 태그를 상기 컨텐츠에 부여하고, 액세스된 상기 컨텐츠, 부여된 상기 적어도 하나의 상황 태그 및 상기 컨텐츠를 액세스한 구성원을 저장하는 단계, (b) 상기 소셜 네트워크의 구성원 중 적어도 일부로 구성된 구성원 집합(크기는 N)을 대상으로 하여, 상기 소셜 네트워크에 속해 있는 한 명의 사용자와 상기 구성원 집합에 포함된 각 구성원 간의 상황 유사도를 산출하는 단계, (c) 상기 구성원 집합을 구성하는 구성원 중 상기 상황 유사도가 높은 K명(K<=N)의 구성원을 유사 구성원 집합으로 추출하는 단계, (d) 상기 유사 구성원 집합에 포함된 구성원이 일정 기간 동안 액세스한 컨텐츠의 집합을 대상으로 하여, 상기 사용자의 상기 컨텐츠의 집합에 포함된 각 컨텐츠에 대한 평가 점수를 산출하는 단계 및 (e) 산출된 상기 평가 점수를 이용하여, 상기 컨텐츠 집합에 포함된 컨텐츠 중 적어도 일부를 추천 컨텐츠로 출력하는 단계를 포함할 수 있다.
Description
본 발명은 커뮤니티 서비스 기반의 컨텐츠 추천 시스템 및 컨텐츠 추천 방법에 관한 것으로, 보다 상세하게는 사용자의 상황 정보 및 소셜 네트워크를 이용하여 사용자의 상황에 가장 적합한 컨텐츠를 사용자에 제공하는 컨텐츠 추천 시스템 및 컨텐츠 추천 방법에 관한 것이다.
최근에 들어 웹 2.0은 인터넷에 있어서 중요한 역할을 수행하고 있으며 빠르게 보급되고 있다. 그리고 웹 2.0의 보급으로 인하여 사용자의 참여와 자원의 공유가 중요한 이슈로 대두되었다. 이로 인하여 페이스북(Facebook), 트위터(Twitter), 딜리셔스(Del.icio.us), 플리커(Flickr) 등과 같은 커뮤니티 기반의 웹 사이트들이 빠르게 보급되고 있다. 사용자들은 인터넷을 통해 관계를 맺고 즐겨찾기, 블로그, 사진, 음악, 비디오 등의 인터넷 자원(즉, 컨텐츠)을 커뮤니티 기반 서비스를 제공하는 웹사이트에서 생성하거나 서로 공유한다.
많은 커뮤니티 기반 웹 사이트가 성공을 하고 더 많은 사람들이 웹을 통해 콘텐츠를 생성 및 공유하는 최근의 경향에도 불구하고 각 웹 사이트들에서 제공하고 있는 자원 추천은 사용자의 특징이 완벽하게 반영되지 못하고 있다. 여기서 기존의 인터넷 자원을 추천하는 방법에는 협업적 인터넷 자원 추천 방법, 콘텐츠 기반 추천 방법, 하이브리드 추천 방법 등이 있다.
협업적 인터넷 자원 추천 방법은 다수의 사용자들이 직접 콘텐츠를 생성하고 공유하도록 하기 때문에 웹 서버의 계산 량이 적고 구현이 간단한 장점이 있다. 하지만 사용자 특징을 동적으로 생성하는 것을 지원하지 못하고, 참여자의 수가 적을 때 협업적 인터넷 자원 추천 방법을 활용하기 어렵다. 또한 사용자간의 관계와 자원의 내용이 추천에 반영되기가 쉽지 않은 문제를 가지고 있다.
콘텐츠의 내용을 기반으로 하는 콘텐츠 기반 추천 방법 또한 사용자의 프로파일이 좋은 품질을 가지고 있지 않으면 인터넷 자원의 추천 품질 또한 잠재적으로 좋지 않을 수 있고, 아이템의 유사도만을 측정하여 사용자의 관심사와 다른 사용자와의 관계를 이용한 추천이 어려우며, 사용자의 관심사와 콘텐츠의 정보를 모두 반영한 추천이 어렵다는 문제점이 있다.
하이브리드 콘텐츠 추천 방법은 협업적 추천 방법과 콘텐츠 기반 추천 방법을 조합하여 각각의 단점을 보완하는데 그 목적이 있다. 그러나 아주 특수한 분야의 자원을 추천하는 것으로써 다른 분야에 적응하기 어려운 문제를 가지고 있다.
본 발명은 기존 추천 기법들의 문제점을 해결하고 보다 발전된 형태의 추천 시스템 및 추천 방법을 제공한다. 보다 상세하게는, 본 발명은 소셜 네트워크 분석 방법(Social Network Analysis; SNA) 중에서 중심성 측정(Measure of degree centrality)를 이용하여 사용자들이 인터넷 자원을 생성하거나 공유할 때 사용하는 태그 중에 핫태그를 선별해내고 사용자들의 프로필에서 일반특징을 선별하여 효과적으로 콘텐츠를 추천하는데 있다.
본 발명의 일 측면에 따르면, 커뮤니티 서비스 기반의 컨텐츠 추천 시스템의 컨텐츠 추천 방법으로서,
상기 커뮤니티 서비스에는,
상기 커뮤니티 서비스의 각 사용자 별로 그에 상응하는 적어도 하나의 특징이 저장되고, 상기 커뮤니티 서비스에 의해 관리되는 각 컨텐츠 별로 그에 부여되는 적어도 하나의 태그가 저장되고-여기서, 상기 태그는 컨텐츠를 생성하거나 공유하는 사용자에 의해 상기 생성되거나 공유되는 컨텐츠에 부여됨,
상기 컨텐츠 추천 방법은,
(a) 상기 커뮤니티 서비스에 의해 관리되는 컨텐츠들에 부여된 태그들 중 소정의 제1 기준을 만족하는 적어도 하나의 핫태그(hot tag)를 선정하는 단계;
(b) 상기 커뮤니티 서비스의 사용자들이 가지는 특징들 중 소정의 제2 기준을 만족하는 적어도 하나의 일반 특징(common characteristic)을 선정하는 단계; 및
(c) 상기 적어도 하나의 일반 특성 중 어느 하나를 상기 적어도 하나의 핫태그 중 어느 하나인 추천 핫태그를 이용하고 있는 제1 사용자와 공유하되 상기 추천 핫태그를 이용하지 않는 제2 사용자에게 상기 추천 핫태그가 부여된 컨텐츠 중 적어도 일부를 추천하는 단계를 포함하는 컨텐츠 추천 방법이 제공된다.
본 발명의 다른 측면에 따르면, 커뮤니티 서비스 기반의 컨텐츠 추천 시스템으로서,
상기 커뮤니티 서비스에는,
상기 커뮤니티 서비스의 각 사용자 별로 그에 상응하는 적어도 하나의 특징이 저장되고, 상기 커뮤니티 서비스에 의해 관리되는 각 컨텐츠 별로 그에 부여되는 적어도 하나의 태그가 저장되고-여기서, 상기 태그는 컨텐츠를 생성하거나 공유하는 사용자에 의해 상기 생성되거나 공유되는 컨텐츠에 부여됨,
상기 컨텐츠 추천 시스템은,
하나 이상의 프로세서; 및
상기 하나 이상의 프로세서에 의해 실행되는 프로그램을 저장하는 메모리를 포함하며,
상기 프로그램은, 상기 하나 이상의 프로세서에 의해 실행되는 경우, 상기 컨텐츠 추천 시스템으로 하여금,
(a) 상기 커뮤니티 서비스에 의해 관리되는 컨텐츠들에 부여된 태그들 중 소정의 제1 기준을 만족하는 적어도 하나의 핫태그를 선정하는 단계;
(b) 상기 커뮤니티 서비스의 사용자들이 가지는 특징들 중 소정의 제2 기준을 만족하는 적어도 하나의 일반 특징을 선정하는 단계; 및
(c) 상기 적어도 하나의 일반 특성 중 어느 하나를 상기 적어도 하나의 핫태그 중 어느 하나인 추천 핫태그를 이용하고 있는 제1 사용자와 공유하되 상기 추천 핫태그를 이용하지 않는 제2 사용자에게 상기 추천 핫태그가 부여된 컨텐츠 중 적어도 일부를 추천하는 단계를 포함하는 컨텐츠 추천 방법을 수행하도록 하는 컨텐츠 추천 시스템이 제공된다.
본 발명의 일 실시예에 따르면 기존의 단순한 키워드 매칭에서 벗어나 인터넷 자원의 태그와 사용자의 특징을 선별하여 사용자들에게 보다 적합한 인터넷 자원을 추천할 수 있다.
본 발명의 일 실시예에 따르면 서비스 사용자의 수가 더 많아질수록 더 훌륭한 콘텐츠의 추천 품질이 좋아지는 특징을 가지는 추천 시스템 및 추천 방법을 제공할 수 있다. 따라서 본 발명에서 제안하는 시스템 및 방법을 활용하면 서비스 제공자는 사용자들에게 보다 적합한 자원을 추천해 줄 수 있으며 사용자의 수가 많아질수록 서비스의 신뢰도를 높일 수 있다.
본 발명의 일 실시예에 따른 컨텐츠 추천 시스템 및 방법을 커뮤니티 기반 웹 사이트 및 각종 서비스에 적용하면 개인화된 추천과 보다 파급력이 있는 자원 공유가 가능하다. 뿐만 아니라 e-비즈니스, 정치, 사회분야에서 전문가 추천, 정보 검색, 이슈 분석, 상품추천 등에 적용이 가능하다.
도 1은 본 발명의 일 실시예에 따른 커뮤니티 기반의 컨텐츠 추천 방법을 개략적으로 설명하기 위한 블록도.
도 2 내지 도 7은 본 발명의 일 실시예에 따른 컨텐츠 추천 방법을 설명하기 위한 도면들.
도 8은 본 발명의 일 실시예에 따른 컨텐츠 추천 시스템을 설명하기 위한 블록도.
도 2 내지 도 7은 본 발명의 일 실시예에 따른 컨텐츠 추천 방법을 설명하기 위한 도면들.
도 8은 본 발명의 일 실시예에 따른 컨텐츠 추천 시스템을 설명하기 위한 블록도.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예들을 중심으로 본 발명을 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 커뮤니티 기반의 컨텐츠 추천 방법을 개략적으로 설명하기 위한 블록도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 컨텐츠 추천 시스템(10)은 먼저 SNS레포지토리(20)에서 커뮤니티를 구성하고 있는 각 사용자 별 특징(C)과 각 사용자 별 태그(T)를 수집할 수 있다.
본 명세서에서, 사용자(actor)라 함은 커뮤니티 서비스, 소셜 네트워크 서비스에 가입하여 컨텐츠를 생성(예를 들어, 블로그, 게시물을 작성하거나, 타 사용자가 작성한 게시물에 코멘트를 게시함)하거나, 타 사용자가 작성한 게시물 등을 공유하는 등의 활동을 하는 사용자를 의미할 수 있다.
또한, 본 명세서에서, 특징(characteristic)은 사용자의 국가, 나이(혹은 연령대), 성별, 관심사, 취미, 직업, 학교, 거주지 등 사용자의 특징을 의미하며, 일반적으로 사용자 프로필이라고 일컬어지는 것도 본 발명에서의 특징의 일부가 될 수 있다.
태그(tag)는 디지털 자원(즉, 컨텐츠)과 관련된 메타데이터의 한가지인 태그는 사용자들이 디지털 자원을 키워드를 표현할 때 사용되거나 웹 자원의 분류를 위한 어휘로 사용될 수 있다. 태그는 전자 문서나 컨텐츠가 사용자에 의해 생성되거나 또는 공유될 때 해당 사용자에 의해 부여될 수도 있고, 시스템이 전자 문서나 컨텐츠를 분석하여 자동으로 태그를 생성하여 부여할 수도 있다. 후자의 경우, 예를 들면, 전자 문서나 컨텐츠에 가장 많이 혹은 일정 회수 이상 나타난 키워드가 태그로 선정되어 부여될 수도 있다.
하나의 컨텐츠에 부여되는 태그는 하나 이상일 수 있고, 사용자가 가지는 특징 역시도 하나 이상일 수 있다.
본 발명의 일 실시예에 따르면, 커뮤니티 서비스 시스템은 태그 또는 특징을 FOAF(Friend of a Friend) 형식으로 저장/관리할 수 있다. FOAF는 사용자나 사용자와 관련된 리소스 및 활동, 타 사용자와의 관계 등을 기술하는 컴퓨터 판독가능한 온톨로지의 일종으로서, RDF(Resource Description Framework)와 OWL(Web Ontology Language)를 사용하여 표현되며, 자세한 내용은 http:// http://www.foaf-project.org/ 에서 참조할 수 있다.
커뮤니티 서비스 시스템이 FOAF를 이용하는 경우, 일 실시예에서, 특징은FOAF 안에 포함된 foaf:interests, foaf:age, foaf:gender, foaf:country 등의 항목 등일 수 있으며, 태그는 FOAF 안에 포함된 foaf:interests, foaf:age, foaf:gender, foaf:country 등의 항목 등일 수 있다.
핫태그(hot tag) 는 소정의 기준을 만족하는 태그로서, 예를 들면 전체 태그들 중에서 많은 사용자들에 의해 사용되고 있는 태그를 의미할 수 있다. 사용자들이 입력한 태그 중에서 핫태그를 선정하는 일 예에 대하여는 추후 상세히 설명하기로 한다.
일반 특징(common characteristic)은 소정의 기준을 만족하는 특징으로서, 예를 들어 사용자들의 특징 항목들 중에서 많은 사용자들에 의해 사용되고 있는 특징을 의미할 수 있다. 일반 특징의 선정 과정의 일 예에 대하여도 역시 추후 상세히 설명하기로 한다.
다시 도 1을 참조하면, 본 발명의 일 실시예에 따른 컨텐츠 추천 시스템(10)은 SNS레포지토리(20)에서 커뮤니티를 구성하고 있는 각 사용자 별 특징(C)과 각 사용자 별 태그(T)를 수집한 후, 후술하는 바와 같이 3개의 행렬 (N ac , M at , Q act )에 통합할 수 있다(S10). 이 행렬들은 각각 2차원 행렬이며 노드(꼭지점)와 에지(간선)으로 구성된 그래프로 변환될 수 있다.
이후, 구성된 그래프를 이용하여 SNA(social network analysis)과정을 통해 각 노드의 중심성이 산출될 수 있다(S20). 그러면 컨텐츠 추천 시스템(10)은 산출된 중심성을 이용하여 핫태그 및 일반 특징을 추출하고, 핫태그를 포함하고 있는 추천 컨텐츠를 선정하여 사용자에게 추천할 수 있다(S30).
상술한 통합과정(S10), SNA 과정(S20) 및 컨텐츠 추천 과정(S30)은 추후 상세히 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 컨텐츠 추천 방법을 설명하기 위한 흐름도이다. 이하 도 2를 중심으로 도 3 내지 도 7을 참조하여 본 발명의 일 실시예에 따른 컨텐츠 추천 방법을 상세히 설명하기로 한다. 도 2를 참조하면, 먼저 컨텐츠 추천 시스템(10)은 커뮤니티 서비스의 각 사용자 별 특징(특징 데이터) 및 각 사용자 별 태그(태그 데이터)를 취득할 수 있다(S200). 많은 커뮤니티 기반 웹 사이트는 개방형 API를 제공하고 있으므로, 일 실시예에서, 컨텐츠 추천 시스템(10)은 특징 데이터와 태그 데이터를 FOAF 프로파일을 제공하는 개방형 API를 통해 취득할 수 있다.
이후, 컨텐츠 추천 시스템(10)은 태그 데이터와 사용자의 특징 데이터를 이용하여 2차원 행렬인 특징 행렬(Nac) 및 태그 행렬(Mat)을 생성하고(S210), 이를 병합하여 병합 행렬(Qact)를 생성할 수 있다(S230). Nac 행렬은 사용자(a)와 사용자의 특징(c)을 각각 한 개 차원으로 설정하여 생성한 2차원 행렬이다. Mat 행렬은 사용자(a)와 태그(t)를 각각 한 개의 차원으로 설정하여 생성한 2차원 행렬이다. 그리고 Qact 행렬은 Nac 행렬과 Mat 행렬을 하나로 합친 2차원 행렬이다.
이를 보다 상세하게 설명하면 다음과 같다.
먼저, 모든 사용자를 집합 A라고 정의한다. 그리고 집합 A에서 i 번째 원소를 ai로 표현한다. 따라서 n명의 사용자가 있다고 했을 때 사용자 집합 A는 A = {a1, a2, …, ai, … an} (1 ≤ i ≤ n)으로 표현된다. 예를 들어, 예제 소셜 네트워크에 5명의 사용자(John, Amy, Mike, Lucy, Mary)가 있다고 할 때 집합 A는 A = {John, Amy, Mike, Lucy, Mary}로 표현된다.
한편, 사용자 특징들의 집합을 C로 정의한다. 그리고 우리는 집합 C에서 j 번째 원소를 cj로 표현한다. 따라서 집합 C는 전체 원소의 개수가 p개라고 했을 때 C = {c1, c2, …, cj, …, cp} (1 ≤ j ≤ p)로 표현된다. 예를 들어, 예제 소셜 네트워크에 4개의 특징(USA, UK, Male, 20대)이 있다고 했을 때 C는 C = {USA, UK, Male, 20대}으로 표현된다.
한편, 수집한 태그들의 집합을 T로 정의하며 집합 T에서 k번째 원소를 tk로 표현한다. 따라서 집합 T에 총 q개의 원소가 있다고 할 때 집합 T는 T = {t1, t2, … , tk, …, tq} (1 ≤ k ≤ q)로 표현된다. 예를 들어, 예제 소셜 네트워크에 6개의 태그(google, music, movie, photo, tv, web)가 있다면 집합 T는 T = {google, music, movie, photo, tv, web}로 표현된다.
도 3은 본 발명의 일 실시예에 따른 컨텐츠 추천 방법에서 위와 같은 예제에 따라 생성하는 2차원 행렬의 일 예를 도시한 도면이다. 도 3에 도시된 바와 같은 행렬의 구성 방법은 일 예일 뿐이며 이에 한정되지 않는다.
태그 행렬 Mat는 사용자 a와 태그 t로 구성된 행렬이며 Mat={mij }으로 표현된다. 만약 i번째 사용자 ai와 j번째 태그 tj가 있다고 할 때 ai와 tj의 관계 m은 mij로 표현하며 mij 는 행렬 Mat의 원소가 된다. mij는 0과 1을 그 값으로 가질 수 있는데 만약 ai와 tj 사이에 연결이 있다면 mij는 mij = 1로 표현되며 그렇지 않은 경우에는 mij = 0으로 표현될 수 있다. 예를 들어 소셜 네트워크 SN안의 'John'이라는 사용자가 3개의 태그(music, photo, tv)를 사용하고 있고 'Amy'사용자가 'movie', 'tv'를 'Mike'사용자가 'music', 'movie', 'photo'를 사용하고 있다면 Mat는 도 3에서 좌측 하단과 같이 표현될 수 있다.
한편, 특징 행렬 Nac는 사용자 a와 특징 c로 구성된 행렬이며 Nac={nxy}으로 표현된다. 만약 x번째 사용자 ax와 y번째 특징 cy가 있다고 할 때 ax와 cy의 관계 n은 nxy로 표현하며 nxy는 행렬 Nac의 원소가 된다. 그리고 ax와 cy의 연결이 있을 때 nxy = 1이 되며 아닐 경우 nxy = 0이 될 수 있다. 만약, 예제 소셜 네트워크 SN에 'John'이라는 사용자가 'USA', 'Male'을 가지고 있고 'Amy' 사용자가 'UK'를, 'Mike'사용자가 'USA', 'Male', '25'를, 'Lucy' 사용자가 'USA'를 각각 가지고 있다면 행렬 Nac는 도 3에서 좌측 상단과 같이 표현될 수 있다.
병합 행렬 Qact는 Mat와 Nac의 특징을 모두 가지고 있는 통합적 형태의 행렬이다. 그리고 이 행렬 Qact는 소셜 네트워크 그래프를 생성하는데 기초적인 자료로 활용이 될 수 있다. 일 실시예에서, 행렬 Qact는 위에서 보인 Mat와 Nac를 이용하여 다음과 같이 표현될 수 있으며 그 형태는 도3 의 중앙부에서 보이는 바와 같다.
행렬 Qact는 위에서 정의되었듯이 Nac, Mat, NT ac, MT at 및 기타 0들로 구성이 될 수 있다.
그리고 Qact는 대칭행렬이므로 본 발명에서 제안한 방법을 이용하여 연산할 때 실질적으로 사용되는 것은 Nac, Mat 뿐이다. 다시 말해, 데이터의 크기가 커짐으로 인하여 Qact의 크기 또한 급격히 커지지만 실제로 연산에 참여하는 부분은 Nac 및 Mat 뿐이므로 연산 시간이 지수적으로 증가하지는 않는다.
다시 도 2를 참조하면, 컨텐츠 추천 시스템(10)은 생성된 행렬을 이용하여 그래프를 구성할 수 있다(S230).
도 4는 위의 예시에 따라 생성한 행렬의 그래프 표현을 도시한 도면이다. 이하 도 4를 참조하여, 구성되는 그래프에 대해 상세히 설명한다.
위에서 보인 Mat, Nac, Qact 모두 2차원 행렬이고 연결이 있을 때 1로, 연결이 없을 때 0으로 그 값을 넣었으므로 그래프로 표현이 가능하다. 그리고 Qact는 Mat, Nac의 연결 관계를 모두 통합한 행렬이므로 Qact를 그래프로 생성하면 Mat와 Nac로 생성한 그래프는 모두 Qact의 서브 그래프가 된다. 따라서 우리는 먼저 두 그래프 AT와 AC에 대하여 설명한다.
그래프 AT는 행렬Mat에 의해 구성되는 그래프로, NodeAT와 EdgeAT로 구성될 수 있다. NodeAT는 사용자 집합 A와 태그 집합 T로 구성되며 EdgeAT는 집합 A의 어느 원소 a와 집합 T의 어느 원소 t가 서로 연결되어있을 때 그 연결들의 집합으로 구성된다. NodeAT, EdgeAT, 그래프 AT의 표현은 다음과 같다.
그리고 그래프 AC는 행렬 Nac에 의해 구성되는 그래프로, NodeAC와 EdgeAC로 구성될 수 있다. NodeAC는 사용자 집합 A와 특징 집합 C로 구성되며 EdgeAC는 집합 A의 어느 원소 a와 집합 C의 어느 원소 c가 서로 연결이 되어있다면 그 연결들의 집합으로 구성된다. NodeAC, EdgeAC 그리고 그래프 AC의 표현은 다음과 같다.
사용자, 특징, 태그를 모두 포함한 그래프 ACT는 그래프 AT와 그래프 AC의 꼭지점들과 간선들의 합집합으로 정의한다.
도 4는 위의 예시에서 그래프 AT와 그래프 AC가 소셜 네트워크 그래프 ACT로 표현된 것을 나타내는 도면이다. 도 4에서 좌측은 그래프 AC의 예이며 우측은 그래프 AT의 예제이다. 그리고 도 4의 중앙 부분은 두 그래프 AC와 AT의 합집합인 그래프 ACT의 예제이다. 도 4에서 보이는 바와 같이 그래프 ACT는 모든 사용자, 태그, 특징들을 꼭지점으로 갖는 그래프이며 사용자, 태그, 특징을 구별하기 위하여 그래프에서는 사용자를 ○ 모양으로, 태그를 △ 모양으로, 특징을 □ 모양으로 표현하였다. 이하, 사용자에 관한 노드(○ 모양의 노드)를 사용자 노드라 하고, 태그에 관한 노드를 태그 노드라 하고, 특징에 관한 노드를 특징 노드라고 한다.
다시 도 2를 참조하면, 본 발명의 일 실시예에 따른 컨텐츠 추천 시스템(10)은 소셜 네트워크 분석을 통해 그래프의 각 특징 노드 및 각 태그 노드 별로 중심성을 측정할 수 있다(S240).
본 발명에 따른 실시예들은 소셜 네트워크 분석인 중심성 측정(Measure of degree centrality), 매개 중심성 측정(Betweenness centrality), 근접 중심성 측정(Closeness centrality), 아이겐 밸류 중심성 측정(Eigen-value centrality)등 을 활용할 수 있다. 이 중에서 중심성 측정은 그래프에서 어떤 꼭지점이 얼마나 중심적인 역할을 하는지 측정하는 지표로 활용된다. 매개 중심성 측정은 그래프 안의 여러 꼭지점들 중에서 정보의 유통이나 자료의 흐름에 있어 매개자적 역할을 하는 정도를 측정하는 지표이다. 그리고 근접 중심성은 그래프 안에 위치한 두 꼭지점들이 서로 가까운 정도를 측정하는데 사용된다. 아이겐 밸류 중심성 측정은 그래프가 점차 확대되고 안정화 될 때 꼭지점이 가질 수 있는 잠재적 영향력을 측정하는데 사용한다. 이하에서는 특히, 여러 소셜 네트워크 분석 기법들 중에서 중심성 측정을 활용하는 실시예에 대해 설명한다.
중심성은 0에서 1사이의 실수로 그 값이 계산될 수 있으며, 중심성의 크기가 크면 클수록 전체 그래프에서 크다는 것을 의미할 수 있다. 이 경우 중심성이 큰 꼭지점은 다른 꼭지점들과의 연결에 있어 허브(Hub)역할을 담당한다고 볼 수 있다. 아래 (식 1)은 중심성을 분석하기 위한 기초 단계로서 전체 꼭지점의 집합이 V라고 할 때 주어진 꼭지점 i와 연결된 꼭지점들의 개수를 구한다. 그리고 (식 2)에서 보이는 바와 같이 전체 꼭지점의 수가 n이라고 할 때 어떤 꼭지점의 중심성 값(CD(i))를 계산한다.
이후, 컨텐츠 추천 시스템(10)은 핫태그 및 일반 특징을 선정할 수 있다(S250, S260).
일 실시예에서, 핫태그는 전체 태그들 중에서 많은 사용자들에 의해 사용되고 있는 태그를 의미할 수 있다. 핫태그는 소셜 네트워크의 크기에 따라 상대적인 중심성을 가질 수 있으므로 본 실시예에서는 태그 t의 반영률 변수 를 정의하여 사용할 수 있다. 는 0에서 1사이의 값을 설정할 수 있는데 0에 가까울수록 더 많은 수의 핫태그가 선정되게 되며 이 때 선정된 핫태그의 중심성은 상대적으로 더 작다. 그리고 가 1에 가까울수록 더 적은 수의 핫태그가 선정되게 되며 이 때 선정되는 핫태그는 더 큰 중심성을 갖는다. 를 계산한 다음에는 태그 t의 임계값 θt 을 계산하는데 θt 는 전체 사용자의 숫자에 를 곱한 값으로 계산하며 θt 보다 큰 중심성을 갖는 태그를 핫태그로 선정한다. θt 의 계산은 다음 (식 3)과 같다.
Hot_Tag = {t | CD(t) ≥ θt } (식 4)
삭제
Hot_Tag = { music }
태그들 중에서 CD(t)이 임계값 θt 보다 큰 값을 가지는 태그를 핫태그로 정의하였으므로 (식 4)에 의해 'music’태그를 핫태그로 선정한다. 도 5는 그림 4에서 보인 그래프 ACT의 일부분이며 선정된 핫태그의 결과를 보인다.
핫태그의 선정과 마찬가지로 소셜 네트워크의 크기에 따라 일반 특징 역시 상대적인 중심성을 가질 수 있으므로 일 실시예에서는 특징 c의 반영률 변수 를 정의하여 사용할 수 있다. 는 0에서 1사이의 값을 설정할 수 있는데 0에 가까울수록 더 많은 수의 일반 특징이 선정되게 되며 이 때 선정된 일반 특징의 중심성은 상대적으로 더 작다. 그리고 가 1에 가까울수록 그 반대의 경우가 된다. 를 계산한 후에는 특징 c의 임계값 을 계산하는데 이 는 전체 사용자의 숫자에 를 곱한 값으로써 보다 큰 중심성 값을 갖는 특징을 일반 특징으로 선정한다. 의 계산은 다음 (식 5)와 같다.
Common_Characteristic = { USA, UK, Male }
위와 같이 (식 5)와 (식 6)을 이용해 계산하면 도 6에서 보이는 바와 같이 3개의 일반특징을 선정할 수 있다.
다시 도 2를 참조하면, 이후 컨텐츠 추천 시스템(10)은 추천을 받을 대상자와 추천 항목을 찾아 컨텐츠를 추천할 수 있다(S270). 추천을 받을 대상자는 선정한 일반 특징 중 어느 하나를 가지고 있는 사용자 중에서 핫태그를 이용하고 있지 않은 사용자를 의미할 수 있다. 그리고 추천 항목은 시스템이 사용자에게 추천할 자원을 의미하며 핫태그가 부여된 컨텐츠 일 수 있다. (식 4)에서 선정한 핫태그는 여러 사용자가 사용하고 있는 태그이므로 많은 컨텐츠와 연결이 되어있다.
도 7은 도 4에서 보인 그래프 ACT의 일부분이며 핫태그와 일반 특징 그리고 사용자를 보인다. 일 실시예에서, 컨텐츠 추천 시스템(10) 같은 일반 특징을 가진 사용자들에게 연결된 핫태그를 연결하여 자원을 추천한다. 예를 들어 도 7에서 일반 특징 UK에 연결된 사용자는 {John, Amy, Mary}인데 이 중에서 'John'과 'Mary'는 'Music'이라는 핫태그와 연결이 되어있으나 'Amy'는 'Music'과 연결이 있지 않으므로 'Amy'에게 핫태그 'Music'를 추천할 수 있다.
도 2에서 설명하는 핫태그 및 일반 특징 선정 과정은 일 예일 뿐이며, 도 2와 관련된 이하의 설명과는 다른 선정 방법이 적용될 수 있음은 물론이다.
예를 들어, 별도의 그래프 변동과정 없이, 생성된 각 행렬을 그래프 표현으로 간주하여 중심성 산출, 핫태그 및 일반 특징 선정 과정을 수행할 수 있다.
또한, 그래프 ACT로의 통합 없이, 그래프 AC 및 그래프 AT에서 특징 노드 및 태그 노드의 중심성을 산출할 수도 있다. 이 경우 중심성 산출 식(2)에서 n은 그래프 AC 및 그래프 AT 각각에서의 전체 노드 수일 수 있다.
또한, 상술한 식(3) 내지 식(6)과는 다른 방법으로 중심성을 산출할 수도 있다. 예를 들면 임계값을 아래의 식으로 산출할 수도 있다.
도 8은 본 발명의 일 실시예에 따른 컨텐츠 추천 시스템을 설명하기 위한 블록도이다.
도 8을 참조하면, 본 발명의 일 실시예에 따른 컨텐츠 추천 시스템(10)은 일반적으로 하나 이상의 프로세서(12) 및 프로세서(12)에 의해 실행되는 프로그램을 저장하는 메모리(11)를 포함할 수 있다. 다만, 도 18에 도시된 컨텐츠 추천 시스템(10)은 다기능 장치의 일 예에 불과하며, 도 18에 도시된 것 보다 더 많거나 더 적은 요소를 포함하거나, 다른 구성 또는 배치를 가질 수 있다.
메모리(11)는 고속 랜덤 액세스 메모리를 포함할 수 있고 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치, 또는 기타 비휘발성 고체상태 메모리 장치와 같은 비휘발성 메모리를 포함할 수도 있다. 프로세서(12) 및 기타 구성 요소에 의한 메모리(11)로의 액세스는 메모리 컨트롤러(미도시)에 의해 제어될 수 있다.
여기서, 상기 프로그램은, 프로세서(12)에 의해 실행되는 경우, 본 실시예에 따른 컨텐츠 추천 시스템으로 하여금, 상술한 컨텐츠 추천 방법을 수행하도록 할 수 있다.
예를 들어, 상기 프로그램은 프로세서(12)에 의해 실행되는 경우, 본 실시예에 따른 컨텐츠 추천 시스템(10)으로 상기 프로그램은, 상기 하나 이상의 프로세서에 의해 실행되는 경우, 상기 컨텐츠 추천 시스템으로 하여금, SNS 레포지토리로부터 상기 커뮤니티를 구성하는 각 사용자에 연관된 적어도 하나의 특징 및 태그 정보 -상기 태그 정보는 상기 사용자에 의해 상기 커뮤니티 서비스에 의해 관리되는 컨텐츠에 부여된 태그 정보임-를 수집하는 단계;상기 컨텐츠들에 부여된 태그중 소정의 제1 기준을 만족하는 적어도 하나의 핫태그(hot tag)를 선정하는 단계; 상기 커뮤니티 서비스의 사용자 특징 중 소정의 제2 기준을 만족하는 적어도 하나의 일반 특징(common characteristic)을 선정하는 단계; 및 상기 선정된 일반 특징중 적어도 하나에 연관된 사용자중 상기 핫태그에 연관되지 않은 사용자를 추천 대상자로 결정하는 단계; 및 상기 결정된 추천 대상자에게 상기 핫태그가 부여된 컨텐츠중 적어도 일부를 추천하는 단계를 포함하는 컨텐츠 추천 방법을 수행하도록 할 수 있으나 이에 한정되는 것은 아니다. 전술한 바와 같이, 상기 프로그램은 컨텐츠 추천 시스템(10)으로 하여금 도 1 내지 도 7을 참조하여 상술한 컨텐츠 추천 방법을 수행하도록 할 수 있다.
한편, 본 실시예에 따른 컨텐츠 추천 시스템(10)은 인터페이스부(13)를 더 포함할 수 있으며, 인터페이스부(13)를 통해 통신 장치(30), 각종 입력장치(40) 및/또는 출력장치(50)와 연결될 수 있다. 컨텐츠 추천 시스템(10)에 연결되는 통신 장치(30)는 유선/무선을 불문하며, 이를 통해 사용자 단말과 통신할 수 있다.
한편, 본 발명의 실시예에 따른 컨텐츠 추천 방법은 다양한 전자적으로 정보를 처리하는 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 저장 매체에 기록될 수 있다. 저장 매체는 프로그램 명령, 데이터 파일, 데이터 구조등을 단독으로 또는 조합하여 포함할 수 있다.
저장 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다. 저장 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 상술한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다.
그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타나며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10: 컨텐츠 추천 시스템
20: SNS레포지토리
20: SNS레포지토리
Claims (15)
- 커뮤니티 서비스 기반의 컨텐츠 추천 시스템의 컨텐츠 추천 방법으로서,
상기 컨텐츠 추천 시스템이 SNS 레포지토리로부터 상기 커뮤니티 서비스의 각 사용자에 연관된 적어도 하나의 특징 및 태그 정보 -상기 태그 정보는 상기 사용자에 의해 상기 커뮤니티 서비스에 의해 관리되는 컨텐츠에 부여된 태그 정보임-를 수집하는 단계;
상기 컨텐츠 추천 시스템이 상기 커뮤니티 서비스의 각 사용자 별로 그가 부여한 적이 있는 태그를 추출하여 각 사용자 및 상기 추출된 태그를 노드로 표현하고 상기 사용자 및 태그간 연관관계를 에지로 표현한 제1 그래프를 생성하는 단계;
상기 컨텐츠 추천 시스템이 상기 커뮤니티 서비스의 각 사용자 별로 그에 상응하는 특징을 추출하여 각 사용자 및 상기 추출된 특징을 노드로 표현하고 상기 사용자 및 특징간 연관관계를 에지로 표현한 제2 그래프를 생성하는 단계;
상기 컨텐츠 추천 시스템이 상기 제1 그래프 및 상기 제2 그래프를 병합하여 제3 그래프를 생성하는 단계;
상기 컨텐츠 추천 시스템이 상기 컨텐츠들에 부여된 태그중 소정의 제1 기준을 만족하는 적어도 하나의 핫태그(hot tag)를 선정하는 단계;
상기 컨텐츠 추천 시스템이 상기 커뮤니티 서비스의 사용자 특징 중 소정의 제2 기준을 만족하는 적어도 하나의 일반 특징(common characteristic)을 선정하는 단계;
상기 컨텐츠 추천 시스템이 상기 선정된 일반 특징중 적어도 하나에 연관된 사용자중 상기 핫태그에 연관되지 않은 사용자를 추천 대상자로 결정하는 단계; 및
상기 컨텐츠 추천 시스템이 상기 결정된 추천 대상자에게 상기 핫태그가 부여된 컨텐츠중 적어도 일부를 추천하는 단계
를 포함하되,
상기 핫태그를 선정하는 단계는,
제1 임계치를 산출하는 단계-여기서, 상기 제1 임계치 는
에 의해 산출됨(Number of tags는 상기 제3 그래프의 태그 노드의 총 수, Number of actors는 상기 제3 그래프의 사용자 노드의 총 수, Number of nodes는 상기 제3 그래프의 노드의 총 수, 는 0 이상 1 이하의 상수); 및
상기 제3 그래프에 속한 각 태그 노드 중 중심성이 상기 제1 임계치 이상인 태그 노드를 상기 소정의 제1 기준을 만족하는 핫태그로 선정하는 단계-여기서, 노드 i의 중심성 CD(i)는 에 의해 산출됨(n은 상기 제3 그래프의 총 노드 수)-를 포함하는 컨텐츠 추천 방법.
- 삭제
- 삭제
- 삭제
- 제1항에 있어서,
상기 일반 특징을 선정하는 단계는,
제2 임계치를 산출하는 단계-여기서, 상기 제2 임계치 는
에 의해 산출됨(Number of characteristic은 상기 제3 그래프의 특징 노드의 총 수, Number of actors는 상기 제3 그래프의 사용자 노드의 총 수, Number of nodes는 상기 제3 그래프의 노드의 총 수, 는 0 이상 1 이하의 상수); 및
상기 제3 그래프에 속한 각 특징 노드 중 중심성이 상기 제2 임계치 이상인 특징 노드를 상기 소정의 제2 기준을 만족하는 일반 특징으로 선정하는 단계-여기서, 노드 i의 중심성 CD(i)는 에 의해 산출됨(n은 상기 제3 그래프의 총 노드 수)-를 포함하는 컨텐츠 추천 방법.
- 제1항 또는 제5항에 있어서,
상기 제1 그래프는,
상기 커뮤니티 서비스의 전체 사용자 집합에 속한 각 사용자를 제1 이차원 행렬 Mat의 행 또는 열 중 어느 하나로 하고, 상기 커뮤니티 서비스에 저장된 전체 태그 집합에 속한 각 태그를 상기 Mat의 행 또는 열 중 나머지 하나로 하여 구현되며,
상기 제2 그래프는,
상기 커뮤니티 서비스의 전체 사용자 집합에 속한 각 사용자를 제2 이차원 행렬 Nac의 행 또는 열 중 어느 하나로 하고, 상기 커뮤니티 서비스에 저장된 전체 특징 집합에 속한 각 특징을 상기 Nac의 행 또는 열 중 나머지 하나로 하여 구현되는 컨텐츠 추천 방법.
- 제1항 또는 제5항에 있어서,
상기 제1 그래프는,
상기 커뮤니티 서비스의 전체 사용자 집합에 속한 각 사용자를 제1 이차원 행렬 Mat의 행 또는 열 중 어느 하나로 하고, 상기 커뮤니티 서비스에 저장된 전체 태그 집합에 속한 각 태그를 상기 Mat의 행 또는 열 중 나머지 하나로 하여 구현되며,
상기 제2 그래프는,
상기 커뮤니티 서비스의 전체 사용자 집합에 속한 각 사용자를 제2 이차원 행렬 Nac의 행 또는 열 중 어느 하나로 하고, 상기 커뮤니티 서비스에 저장된 전체 특징 집합에 속한 각 특징을 상기 Nac의 행 또는 열 중 나머지 하나로 하여 구현되며,
상기 제3 그래프는,
또는 인 (상기 는 상기 Nac의 역행렬, 상기 는 상기Mat의 역행렬) 이차원 행렬 Qact로 구현되는 컨텐츠 추천 방법.
- 커뮤니티 서비스 기반의 컨텐츠 추천 시스템으로서,
하나 이상의 프로세서; 및
상기 하나 이상의 프로세서에 의해 실행되는 프로그램을 저장하는 메모리를 포함하며,
상기 프로그램은, 상기 하나 이상의 프로세서에 의해 실행되는 경우, 상기 컨텐츠 추천 시스템으로 하여금,
SNS 레포지토리로부터 상기 커뮤니티 서비스의 각 사용자에 연관된 적어도 하나의 특징 및 태그 정보 -상기 태그 정보는 상기 사용자에 의해 상기 커뮤니티 서비스에 의해 관리되는 컨텐츠에 부여된 태그 정보임-를 수집하는 단계;
상기 커뮤니티 서비스의 각 사용자 별로 그가 부여한 적이 있는 태그를 추출하여 각 사용자 및 상기 추출된 태그를 노드로 표현하고 상기 사용자 및 태그간 연관관계를 에지로 표현한 제1 그래프를 생성하는 단계;
상기 커뮤니티 서비스의 각 사용자 별로 그에 상응하는 특징을 추출하여 각 사용자 및 상기 추출된 특징을 노드로 표현하고 상기 사용자 및 특징간 연관관계를 에지로 표현한 제2 그래프를 생성하는 단계;
상기 제1 그래프 및 상기 제2 그래프를 병합하여 제3 그래프를 생성하는 단계;
상기 컨텐츠들에 부여된 태그중 소정의 제1 기준을 만족하는 적어도 하나의 핫태그(hot tag)를 선정하는 단계;
상기 커뮤니티 서비스의 사용자 특징 중 소정의 제2 기준을 만족하는 적어도 하나의 일반 특징(common characteristic)을 선정하는 단계;
상기 선정된 일반 특징중 적어도 하나에 연관된 사용자중 상기 핫태그에 연관되지 않은 사용자를 추천 대상자로 결정하는 단계; 및
상기 결정된 추천 대상자에게 상기 핫태그가 부여된 컨텐츠중 적어도 일부를 추천하는 단계
를 수행하도록 하되,
상기 핫태그를 선정하는 단계는,
제1 임계치를 산출하는 단계-여기서, 상기 제1 임계치 는
에 의해 산출됨(Number of tags는 상기 제3 그래프의 태그 노드의 총 수, Number of actors는 상기 제3 그래프의 사용자 노드의 총 수, Number of nodes는 상기 제3 그래프의 노드의 총 수, 는 0 이상 1 이하의 상수); 및
상기 제3 그래프에 속한 각 태그 노드 중 중심성이 상기 제1 임계치 이상인 태그 노드를 상기 소정의 제1 기준을 만족하는 핫태그로 선정하는 단계-여기서, 노드 i의 중심성 CD(i)는 에 의해 산출됨(n은 상기 제3 그래프의 총 노드 수)-를 포함하는 컨텐츠 추천 시스템.
- 삭제
- 삭제
- 삭제
- 제8항에 있어서,
상기 일반 특징을 선정하는 단계는,
제2 임계치를 산출하는 단계-여기서, 상기 제2 임계치 는
에 의해 산출됨(Number of characteristic은 상기 제3 그래프의 특징 노드의 총 수, Number of actors는 상기 제3 그래프의 사용자 노드의 총 수, Number of nodes는 상기 제3 그래프의 노드의 총 수, 는 0 이상 1 이하의 상수); 및
상기 제3 그래프에 속한 각 특징 노드 중 중심성이 상기 제2 임계치 이상인 특징 노드를 상기 소정의 제2 기준을 만족하는 일반 특징으로 선정하는 단계-여기서, 노드 i의 중심성 CD(i)는 에 의해 산출됨(n은 상기 제3 그래프의 총 노드 수)-를 포함하는 컨텐츠 추천 시스템. - 제8 또는 제12항에 있어서,
상기 제1 그래프는,
상기 커뮤니티 서비스의 전체 사용자 집합에 속한 각 사용자를 제1 이차원 행렬 Mat의 행 또는 열 중 어느 하나로 하고, 상기 커뮤니티 서비스에 저장된 전체 태그 집합에 속한 각 태그를 상기 Mat의 행 또는 열 중 나머지 하나로 하여 구현되며,
상기 제2 그래프는,
상기 커뮤니티 서비스의 전체 사용자 집합에 속한 각 사용자를 제2 이차원 행렬 Nac의 행 또는 열 중 어느 하나로 하고, 상기 커뮤니티 서비스에 저장된 전체 특징 집합에 속한 각 특징을 상기 Nac의 행 또는 열 중 나머지 하나로 하여 구현되는 컨텐츠 추천 시스템.
- 제8항 또는 제12항에 있어서,
상기 제1 그래프는,
상기 커뮤니티 서비스의 전체 사용자 집합에 속한 각 사용자를 제1 이차원 행렬 Mat의 행 또는 열 중 어느 하나로 하고, 상기 커뮤니티 서비스에 저장된 전체 태그 집합에 속한 각 태그를 상기 Mat의 행 또는 열 중 나머지 하나로 하여 구현되며,
상기 제2 그래프는,
상기 커뮤니티 서비스의 전체 사용자 집합에 속한 각 사용자를 제2 이차원 행렬 Nac의 행 또는 열 중 어느 하나로 하고, 상기 커뮤니티 서비스에 저장된 전체 특징 집합에 속한 각 특징을 상기 Nac의 행 또는 열 중 나머지 하나로 하여 구현되며,
상기 제3 그래프는,
또는 인 (상기 는 상기 Nac의 역행렬, 상기 는 상기Mat의 역행렬) 이차원 행렬 Qact로 구현되는 컨텐츠 추천 시스템. - 제1항 또는 제5항에 기재된 컨텐츠 추천 방법을 수행하는 프로그램이 수록된 컴퓨터 판독 가능한 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120034568A KR101423690B1 (ko) | 2012-04-03 | 2012-04-03 | 커뮤니티 서비스 기반의 컨텐츠 추천 시스템 및 컨텐츠 추천 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120034568A KR101423690B1 (ko) | 2012-04-03 | 2012-04-03 | 커뮤니티 서비스 기반의 컨텐츠 추천 시스템 및 컨텐츠 추천 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130112303A KR20130112303A (ko) | 2013-10-14 |
KR101423690B1 true KR101423690B1 (ko) | 2014-07-30 |
Family
ID=49633328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120034568A KR101423690B1 (ko) | 2012-04-03 | 2012-04-03 | 커뮤니티 서비스 기반의 컨텐츠 추천 시스템 및 컨텐츠 추천 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101423690B1 (ko) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562884A (zh) * | 2017-09-04 | 2018-01-09 | 百度在线网络技术(北京)有限公司 | 一种信息流展现方法、装置、服务器和存储介质 |
KR102160600B1 (ko) * | 2019-03-25 | 2020-09-28 | 주식회사 핀인사이트 | 사용자 반응 향상을 위한 해시태그 추천 방법, 장치 및 컴퓨터-판독가능기록매체 |
CN111767429B (zh) * | 2020-06-29 | 2023-06-02 | 北京奇艺世纪科技有限公司 | 一种视频推荐方法、装置及电子设备 |
KR102659862B1 (ko) * | 2024-02-13 | 2024-04-23 | 솔닥 주식회사 | 환자 데이터 기반의 맞춤형 의료정보 추천 시스템 및 방법 |
-
2012
- 2012-04-03 KR KR1020120034568A patent/KR101423690B1/ko active IP Right Grant
Non-Patent Citations (3)
Title |
---|
논문1(제34회 한국정보처리학회, 추계학술대회 논문집 제17권 제2호 PP 531-534. 2010. 11) * |
논문2(한국인터넷정보학회 2011년도 추계학술발표대회 논문집, 167-168, 2011.11) * |
논문4(제34회 한국정보처리학회, 추계학술대회 논문집 제17권 제2호 PP 523-526. 2010. 11) * |
Also Published As
Publication number | Publication date |
---|---|
KR20130112303A (ko) | 2013-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Dhelim et al. | Personality-aware product recommendation system based on user interests mining and metapath discovery | |
Anandhan et al. | Social media recommender systems: review and open research issues | |
Guo et al. | Combining geographical and social influences with deep learning for personalized point-of-interest recommendation | |
Ravi et al. | A collaborative location based travel recommendation system through enhanced rating prediction for the group of users | |
KR20160075739A (ko) | 소셜 데이터 네트워크에 있어서의 인플루언서들을 결정하기 위한 시스템 및 방법 | |
KR20160057475A (ko) | 소셜 데이터를 능동적으로 획득하기 위한 시스템 및 방법 | |
Webster | The promise of personalisation: Exploring how music streaming platforms are shaping the performance of class identities and distinction | |
Willson | The politics of social filtering | |
Yildirim et al. | Using random walks to generate associations between objects | |
Dhillon et al. | Modeling dynamic user interests: A neural matrix factorization approach | |
JP5318034B2 (ja) | 情報提供装置、情報提供方法、及び情報提供プログラム | |
Bhargava et al. | Unsupervised modeling of users' interests from their Facebook profiles and activities | |
KR101423690B1 (ko) | 커뮤니티 서비스 기반의 컨텐츠 추천 시스템 및 컨텐츠 추천 방법 | |
Jelodar et al. | Recommendation system based on semantic scholar mining and topic modeling on conference publications | |
Chang et al. | Identifying museum visitors via social network analysis of Instagram | |
Au Yeung et al. | Capturing implicit user influence in online social sharing | |
Modani et al. | Fairness aware recommendations on behance | |
Li et al. | Simulation study on opinion formation models of heterogeneous agents based on game theory and complex networks | |
Zaman et al. | Semantics-enhanced recommendation system for social healthcare | |
Kumara et al. | Cluster-based web service recommendation | |
Shi et al. | A geometric representation of collective attention flows | |
Zemaityte et al. | Quantifying the global film festival circuit: Networks, diversity, and public value creation | |
Jatain et al. | A multi-perspective micro-analysis of popularity trend dynamics for user-generated content | |
Zhu et al. | Prediction of online topics’ popularity patterns | |
Mohamed et al. | Implementation of New Technology in Service Industry: Are the Consumers Ready? |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20170707 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180702 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20190715 Year of fee payment: 6 |