KR101590976B1 - 협업 필터링 기반 추천 성능을 향상 시키기 위한 의미 클러스터 기반 매트릭스 지역화 방법 및 장치 - Google Patents
협업 필터링 기반 추천 성능을 향상 시키기 위한 의미 클러스터 기반 매트릭스 지역화 방법 및 장치 Download PDFInfo
- Publication number
- KR101590976B1 KR101590976B1 KR1020140158889A KR20140158889A KR101590976B1 KR 101590976 B1 KR101590976 B1 KR 101590976B1 KR 1020140158889 A KR1020140158889 A KR 1020140158889A KR 20140158889 A KR20140158889 A KR 20140158889A KR 101590976 B1 KR101590976 B1 KR 101590976B1
- Authority
- KR
- South Korea
- Prior art keywords
- semantic
- items
- users
- item
- matrix
- Prior art date
Links
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/06—Arrangements for sorting, selecting, merging, or comparing data on individual record carriers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
협업 필터링 기반 추천 성능을 향상 시키기 위한 의미 클러스터 기반 매트릭스 지역화 방법 및 장치가 제시된다. 본 발명에서 제안하는 의미 클러스터 기반 매트릭스 지역화 방법은 사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성하는 단계, 상기 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성하는 단계, 상기 의미 사용자-아이템 행렬을 이용하여 새로운 아이템에 대한 사용자의 평가를 추정함으로써 잠재적 관심 아이템을 식별하고 추천하는 단계를 포함할 수 있다.
Description
본 발명은 협업 필터링 기반 추천 성능을 향상 시키기 위한 의미 클러스터 기반 매트릭스 지역화 방법 및 장치에 관한 것이다.
협업 필터링(CF: Collaborative Filtering)은 추천 시스템 개발에 널리 사용되어왔다. 이것은 두 사용자가 동일한 항목 세트에 비슷한 관심을 보인 경우, 그들이 새로운 아이템 선택에 비슷한 관심 패턴을 표시할 수 있다는 가정에 기반하여 타겟 사용자들의 새로운 아이템에 대한 평가를 예측한다. 일반적으로, 협업 필터링(CF: Collaborative Filtering) 기반 추천 시스템들은 사용자가 소비하는 사용자의 아이템에 대한 평가로 드문드문 채워진 이차원 사용자 아이템 행렬을 마이닝(mining)함으로써 사용자에 대하여 잠재적으로 흥미로운 아이템을 식별할 수 있다. 종래 기술에서 제안된 실제 데이터 세트로부터 생성된 통계에 따르면, 그들의 사용자 아이템 행렬의 밀도는 희박하다(평가로 채워진 행렬의 요소가 2% 미만인). 이것은 데이터 희소성 문제라고 하고 일반적이며, 관측되지 않은 평가(unobserved ratings)보다 더 작은 수의 사용자들로부터 평가 때문에 발생한다. 관측되지 않은 평가 및 사용자 평가 사이의 비율이 높을 때 타겟 사용자와 유사한 선호 세트를 갖는 찾는 사용자들의 확률은 낮기 때문에 데이터 희소성 문제는 추천 시스템의 정확도에 직접적인 영향을 미친다. 후자는 일반적으로 사용자의 숫자에 의해 평가되는 아이템을 찾는데 어려움을 나타낸다.
데이터 희소성 문제를 극복하기 위해, 사용자의 소셜 네트워크 관계와 대상 아이템의 도메인 별 정보와 같은 외부 정보를 활용하기 위한 노력이 있었다. 이러한 기술에서, 외부 정보는 특정 사용자 항목 매트릭스에서 사용자와 항목의 암시적 상관관계 그룹을 찾는 데 사용되었다. 예를 들어, 종래 기술에서는 일반 상품을 공유 할 신뢰 사용자 그룹을 찾기 위해 사용자들 사이의 사회적 네트워크 관계를 이용했다. 이러한 방법의 가정은 소비 아이템을 선택할 때 중요한 사회적 관계를 공유하는 사용자들의 그룹이 서로 영향을 미칠 수 있었다. 그들은 또한 아이템 카테고리들과 보다 정확한 방법으로 아이템들 중 암시적 관계를 측정하기 위한 타겟 아이템들의 장르와 같은 도메인 의미 정보를 활용했다. 하지만, 이러한 기술은 몇 가지 제한 사항이 있다. 먼저, 소셜 네트워크 관계를 사용할 때, 사용자가 다른 소셜 네트워크에서 사용하는 다른 ID들의 통합을 위한 추가적인 절차를 필요로 한다(예를 들어, 넷플릭스(Netflix)와 페이스북(Facebook)). 소셜 네트워킹 기능이 내부적으로 제공되는 경우, 이러한 과정은 불필요 하다. 여러 ID의 사용은 유사한 흥미를 갖는 사용자들의 그룹을 식별하기 위한 소셜 네트워크 관계를 이용하는 것을 어렵게 만들 수 있다. 게다가, 아이템 카테고리 및 장르와 같은 제한된 도메인 관련 정보를 고려할 때 아이템들 사이의 상관 관계의 다양한 타입을 식별하는 데 필요한 범위를 제한할 수 있다.
최근 협업 필터링(CF: Collaborative Filtering) 기반 추천 방법은 데이터 희소성 문제를 극복하기 위해 외부 정보를 사용한다. 이러한 방법에서 외부 정보의 유형은 다음의 세 가지로 분류되어 사용될 수 있다: 소셜 네트워크 관계; 도메인 별 정보; 연결된 데이터.
종래 기술의 일반적인 특성은 추천 정확도를 보장하기 위해 주어진 사용자 아이템 행렬의 의미 있는 하위집합을 식별할 수 있다. 종래 기술은 소모 상품의 관점에서 사용자들 사이의 상관 관계를 식별하고, 비슷한 환경을 갖는 사용자를 찾고, 데이터 희소성 문제를 극복하기 위해 외부 정보를 사용할 수 있다. 외부 정보의 이용은 추천의 정확도를 향상시키는 효과가 있다는 것이 증명되었지만, 이러한 접근 방식은 몇 가지 한계를 가지고 있다. 앞서 설명한 바와 같이, 소셜 관계의 사용은 사용자가 다른 소셜 네트워크 도메인에 있는 다른 식별을 통합하기 위해 추가적인 절차가 필요하다. 이것은 이종 사용자 식별자를 병합하는 것이 가능하지만, 소셜 네트워크에서 찾을 수 있는 소셜 상관 관계는 일반적으로 사용자 간의 공동의 관심을 의미하지는 않는다. 또한, 아이템 카테고리 및 장르들과 같은 제한된 도메인 특성만을 고려할 때, 데이터 희소성 문제를 해결하기에 충분하지 않을 수 있다. 마지막으로, 이러한 관계를 수동적으로 만드는 추가적인 부담을 필요로 하기 때문에 사용자와 연결된 데이터에서 아이템 사이의 관계를 명시 적으로 활용이 가능하지 않을 수 있다. 또한, 연결된 데이터에서 출판 개인 보호 데이터를 게시하는 것은 개인 정보 보호 문제를 야기할 수도 있다.
이러한 한계를 극복하고, 아이템과 사용자들의 상관 관계 그룹을 효과적으로 식별하기 위해, 다음과 같은 요구 사항을 확인할 수 있다. 먼저, 아이템들 사이의 암시적인 상관 관계를 식별하는 가능성을 증가시키기 위해 다양한 측면에서의 아이템 정보를 강화하는 방법을 제공할 필요가 있다. 이것은 관심 중심의 상관 관계가 비슷한 환경을 가진 사용자를 찾는 소셜 상관 관계 보다 더 직접적이고 중요하기 때문이다. 두 번째로, 보다 정확한 방법으로 새로운 항목에 대한 사용자의 등급을 예측하기 위해 암시적 상관 관계의 로컬 사용자 아이템 그룹으로부터 사용자의 선호를 배워야 할 필요가 있다. 높은 상관 관계의 사용자들로부터 사용자의 선호를 배우는 것은 더 정확하게 관측되지 않은 사용자 평가를 예측하는데 중요하기 때문에 필수적이다. 해당 아이템의 잠재적 의미를 식별한 후 사용자들 사이의 유사도를 측정함으로써 사용자 아이템 그룹 찾기가 가능하다. 마지막으로, 이전의 요구 사항을 충족하기 위해 사용될 수 있는 지식 소스를 갖기 위해 반드시 필요하다. 지식 소스는 아이템 사이의 유사도를 측정하기 위해 필요한 관련 의미 정보를 제공해야 한다. 또한, 최신 트랜드를 고려하는 것이 중요하고, 아이템들의 시변 특성은 다양한 측면에서 그것들을 특성화하기 때문에 지식 소스가 다양한 영역과 최신 이슈를 포함하는 것이 바람직하다.
본 발명이 이루고자 하는 기술적 과제는 협업 필터링에서 사용자 관심에 따라 생성되는 의미 클러스터를 사용함으로써 추천 정확도를 향상시키기 위한 방법 및 장치를 제공하는데 있다. 협업 필터링의 데이터 희소성 문제를 극복하기 위해, 아이템 정보를 링크 데이터에서 관련 개념을 갖는 아이템에 연관시켜 데이터가 풍부한 의미 클러스터를 생성하고자 한다. 또한, 여러 가지 예측된 평가가 있을 경우, 각 부분 행렬을 위한 아이템에 대하여 사용자의 평가를 예측하고, 복수의 부분 행렬들을 이용하여 다른 평가에 다른 가중치를 할당함으로써 예측 평가를 집계하고자 한다.
일 측면에 있어서, 본 발명에서 제안하는 협업 필터링 기반 추천 성능을 향상 시키기 위한 의미 클러스터 기반 매트릭스 지역화 방법은 사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성하는 단계, 상기 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성하는 단계, 상기 의미 사용자-아이템 행렬을 이용하여 새로운 아이템에 대한 사용자의 평가를 추정함으로써 잠재적 관심 아이템을 식별하고 추천하는 단계를 포함할 수 있다.
상기 사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성하는 단계는 링크 데이터를 이용하여 상기 사용자들이 소비한 아이템들에 대한 검색 키워드와 관련된 컨셉(concept)을 검색하는 단계, 상기 검색된 컨셉 중 무관한 컨셉을 필터링 하기 위해 상기 관련된 컨셉의 그룹들을 구성하는 단계, 식별 링크 및 유사도 링크를 상호보완적으로 이용하여 상기 관련된 컨셉의 그룹들을 통합하는 단계를 포함할 수 있다.
상기 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성하는 단계는 상기 사용자들 중 가장 많은 수의 아이템을 소비하고, 가장 많은 수의 아이템에 대한 평가를 제공하는 사용자를 대표 사용자로 선택하는 단계, 상기 대표 사용자와 유사한 관심을 갖는 다른 사용자들을 찾고, 상기 다른 사용자들을 사용자 그룹에 추가하는 단계, 상기 아이템 그룹에서 대표 아이템을 선택하고, 상기 사용자 그룹에서 상기 사용자들에 의해 평가된 평가의 수에 기반하여 아이템 그룹의 아이템들을 배열하는 단계, 상기 의미 클러스터를 비교함으로써 상기 아이템 그룹 내에서 상기 대표 아이템과 다른 아이템들 사이의 의미 유사도를 비교하고, 상기 의미 유사도에 기반하여 상기 아이템 그룹의 아이템들을 재 배열하는 단계를 포함할 수 있다.
또 다른 일 측면에 있어서, 협업 필터링 기반 추천 성능을 향상 시키기 위한 의미 클러스터 기반 매트릭스 지역화 장치는 사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성하는 의미 클러스터 생성부, 상기 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성하는 행렬 생성부, 상기 의미 사용자-아이템 행렬을 이용하여 새로운 아이템에 대한 사용자의 평가를 추정함으로써 잠재적 관심 아이템을 식별하고 추천하는 추천부를 포함할 수 있다.
본 발명의 실시예들에 따르면 협업 필터링에서 사용자 관심에 따라 생성되는 의미 클러스터를 사용함으로써 추천 정확도를 향상시킬 수 있다. 제안된 프레임워크는 아이템에 대하여 의미적으로 풍부한 메타데이터에서 키워드를 확장하기 위해 링크 데이터를 사용할 수 있다. 링크 데이터의 활용은 최근 개념과 트렌드의 고려가 필수적이고, 사용자의 관심을 이해하여 보다 효과적인 방법으로 사용자에게 새로운 아이템을 추천할 수 있다. 또한, 사용자 아이템 행렬에서 생성된 의미 클러스터를 비교함으로써 유사 사용자의 관심을 식별할 수 있다. 또한, 복수의 부분 행렬에 의한 영향을 받는 새로운 아이템에 대한 사용자 평가를 추정하기 위한 가중치 합으로 부분 행렬로부터 예측 결과를 효과적으로 집계할 수 있다.
도 1은 본 발명의 일 실시예에 따른 의미 클러스터 기반 추천의 전체 과정을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 의미 클러스터 기반 매트릭스 지역화 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 컨셉 분석 모델을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 컨셉 분석 모델에 기반하여 영화 '에어 포스 원'에 대한 트리플 검색을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 영화 '에어 포스 원'에 대한 의미 클러스터의 예를 나타내는 도면이다.
도 6은 본 발명의 일 실시예에 따른 복수의 의미 사용자-아이템 행렬에 의해 영향을 받는 평가를 추정하는 방법을 나타내는 도면이다.
도 7은 본 발명의 일 실시예에 따른 의미 클러스터 기반 매트릭스 지역화 장치의 구성을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 의미 클러스터 기반 매트릭스 지역화 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 컨셉 분석 모델을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 컨셉 분석 모델에 기반하여 영화 '에어 포스 원'에 대한 트리플 검색을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 영화 '에어 포스 원'에 대한 의미 클러스터의 예를 나타내는 도면이다.
도 6은 본 발명의 일 실시예에 따른 복수의 의미 사용자-아이템 행렬에 의해 영향을 받는 평가를 추정하는 방법을 나타내는 도면이다.
도 7은 본 발명의 일 실시예에 따른 의미 클러스터 기반 매트릭스 지역화 장치의 구성을 설명하기 위한 도면이다.
이하, 본 발명의 실시 예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 의미 클러스터 기반 추천의 전체 과정을 설명하기 위한 도면이다.
아이템에 대한 사용자의 관심을 나타내는 사용자의 의미 클러스터를 사용하여 아이템을 추천하는 방법에 대하여 설명한다. 종래 기술의 문제점을 해결하기 위해, 제안된 방법은 도 1과 같이 세 단계를 포함할 수 있다.
먼저, 주어진 사용자 콘텐츠 행렬(111)로부터, 각 아이템의 이름과 같은 키워드를 이용하여 의미 클러스터들의 세트를 생성할 수 있다(110). 제안하는 방법은 키워드에 대한 의미 정보를 추출하기 위해 링크 데이터를 사용할 수 있다. 전술한 바와 같이, 의미 클러스터는 의미적으로 관련된 용어들의 그룹이고, 화제 영역(topic area)의 필수적인 의미를 나타내는 아이템들 사이의 관계이다. 앞서 설명한 바와 같이, 링크 데이터는 대규모 이종 의미 웹 데이터 저장소(large-scale and heterogeneous Semantic Web data store)이며, 다양한 영역에서의 현재 동향과 문제점을 반영하는 많은 데이터 세트로 구성되어 있다.
의미 클러스터를 발생시킨 이후, 의미 유사도를 측정(121)함으로써, 사용자들뿐만 아니라 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-콘텐츠 행렬을 생성할 수 있다(120). 우선, 이전 단계에서 각 아이템에 대해 생성된 의미 클러스터를 사용하여 아이템들 중 의미 유사도를 측정할 수 있다. 사용자들의 소비 아이템 의미 유사도를 비교함으로써, 사용자들 사이의 의미 유사도를 측정할 수 있다. 그러면, 부분 행렬들의 세트로 나누기 위한 의미적 상관 관계 사용자들 및 아이템을 식별할 수 있고, 부분 행렬들은 주어진 사용자 아이템 행렬을 아이템 그룹에 더 초점을 둔 사용자들 평가 클러스터를 나타낸다.
다음으로 사용자 평가를 추정할 수 있다(130). 새 아이템의 사용자의 평가를 예측하기 위해, 이전 단계에서 생성된 각각의 부분 행렬에 대한 행렬을 완료(도면에서, '불완전한 SVD(Singular Value Decomposition)'로 설명된)할 수 있다. 그러면, 각 부분 행렬의 결과를 집계할 수 있다.
제안된 추천 방법의 특징은 사용자들 간의 유사도를 측정하는 의미 클러스터를 사용하는 것이다. 구체적으로, 제안하는 방법은 사용자 및 아이템으로 이루어진 부분 행렬을 생성하기 위해 의미 유사도를 이용할 수 있다. 다음으로, 의미 클러스터를 생성하고 비교하기 위해 사용된 상세한 과정과 사용자들에게 잠재적으로 관심 있는 아이템들을 추천하기 위해 사용된 과정에 대하여 설명한다.
도 2는 본 발명의 일 실시예에 따른 의미 클러스터 기반 매트릭스 지역화 방법을 설명하기 위한 흐름도이다.
의미 클러스터 기반 매트릭스 지역화 방법은 사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성하는 단계(210), 상기 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성하는 단계(220), 상기 의미 사용자-아이템 행렬을 이용하여 새로운 아이템에 대한 사용자의 평가를 추정함으로써 잠재적 관심 아이템을 식별하고 추천하는 단계(230)를 포함할 수 있다.
단계(210)에서, 사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성할 수 있다. 사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성하는 단계(210)는 링크 데이터를 이용하여 상기 사용자들이 소비한 아이템들에 대한 검색 키워드와 관련된 컨셉(concept)을 검색하는 단계(211), 상기 검색된 컨셉 중 무관한 컨셉을 필터링 하기 위해 상기 관련된 컨셉의 그룹들을 구성하는 단계(212), 식별 링크 및 유사도 링크를 상호보완적으로 이용하여 상기 관련된 컨셉의 그룹들을 통합하는 단계(213)를 포함할 수 있다.
단계(211)에서, 링크 데이터를 이용하여 상기 사용자들이 소비한 아이템들에 대한 검색 키워드와 관련된 컨셉을 검색할 수 있다. 이때, 형태소 분석기(morpheme analyzer)를 이용하여 아이템 설명에서 명사 및 명사구를 추출하고, 추출된 상기 명사 및 명사구에서 각 키워드를 갖는 링크 데이터에 문의할 수 있다.
사용자에 대한 의미 클러스터를 생성하는 첫 번째 단계로서, 사용자에 의해 소비된 아이템 중 검색된 키워드와 관련된 컨셉을 검색할 수 있다. 앞에서 언급한 바와 같이, 키워드에 관련된 컨셉을 식별하기 위해 링크 데이터를 사용할 수 있다. 형태소 분석기(morpheme analyzer)를 사용함으로써, 먼저 아이템 설명에서 명사 및 명사구를 추출할 수 있다. 그러면, 해당 컨셉을 검색하기 위해 SPARQL(SPARQL Protocol 및 RDF Query Language)을 사용함으로써 명사와 명사구에서 각 키워드를 갖는 링크 데이터에 문의할 수 있다. 해당 컨셉을 설명하고, 이름(name), 제목(title) 또는 레이블(label)과 같은 속성 값 중 하나로서 키워드를 포함하는 RDF 트리플을 가정할 수 있다. 링크 데이터의 각 데이터 세트는 이러한 속성을 나타내는 술어의 다른 종류를 사용할 수 있기 때문에, 타겟 데이터 세트에서 사용된 rdf:label 및 skos:prefLabel과 같은 여러 조건을 다룰 수 있다. 이 후에, 각각의 주제를 설명하는 모든 트리플을 검색하기 위한 링크 데이터에 다시 문의할 수 있고, 일관된 컨셉으로 그룹화할 수 있다.
단계(212)에서, 상기 검색된 컨셉 중 무관한 컨셉을 필터링 하기 위해 상기 관련된 컨셉의 그룹들을 구성할 수 있다. 도 3를 참조하여 더욱 상세히 설명한다.
도 3은 본 발명의 일 실시예에 따른 컨셉 분석 모델을 설명하기 위한 도면이다.
상기 단계(212)에서는 도 3에 도시된 컨셉 해석 모델을 사용한다. 각 컨셉(310)은 프리젠테이션(presentation)에 대한 레이블과 그것의 레퍼런스(reference)에 대한 URI(URI)를 가질 수 있다. 두 속성은 각각 'hasLabel'(320) 및 'hasURI'(330) 속성을 통해 컨셉으로 문자화(321, 331)되고 연결될 수 있다.
owl:sameAs(342) 및 skos:exactMatch(341) 와 같은 식별 링크(Identity Link)(340)는 같은 의미를 갖는 컨셉들을 통합하기 위해 사용될 수 있다. 또한, skos:broader(351) 및 skos:narrower(352)와 같은 유사도 링크(Similarity Link)(350)를 사용함으로써 의미적으로 관련된 컨셉을 통합할 수 있다 이러한 링크는 링크 데이터의 동일한 데이터 세트 내에서의 상대적인 컨셉 계층 구조를 표현하기 위해 사용되기 때문에, 다른 데이터 세트로부터 생성된 관련 컨셉을 그룹화 하기 위해 상호보완적인 방식으로 식별 링크와 함께 유사도 링크를 사용해야 한다. 또한 컨셉의 중요성을 평가하기 위해 컨셉 사이의 다른 관계를 고려할 수 있다.
도 4는 본 발명의 일 실시예에 따른 컨셉 분석 모델에 기반하여 영화 '에어 포스 원'에 대한 트리플 검색을 나타내는 도면이다.
도 4를 참조하면, 컨셉 분석 모델 기반 '에어 포스 원' 키워드에 대한 RDF 트리플 검색으로 이루어진 컨셉의 예를 나타내었다. 우선, 링크 무비 데이터베이스 데이터세트로부터 '에어 포스 원' 키워드를 갖는 레이블을 매칭함으로써 주제(subject) 'http://data.linkmdb.org/resource/film/602' 를 검색한다. '에어 포스 원' 컨셉에 대한 해당 레이블 및 URI가 정렬 및 사용된다. 그러면, 식별 링크 owl:sameAs 를 사용함으로써 DBpedia 데이터 세트에서 주제 'http://dbpedia.org/resource/Air_Force_One_(film)'가 주제'http://data.linkmdb.org/resource/film/602' 와 통합된다. 그후, 'Action_films_by_decade', 'Works_about_terrorism', 및 'American_films_by_genre'와 같은 의미적 관련 컨셉들은 'http://dbpedia.org/resource/Air_Force_One_(film)'에서 유사도 링크(similarity-link) skos:broader 를 사용함으로써 검색될 수 있다. 식별 링크 및 유사도 링크(125)를 제외한 관계의 수는 검색 및 카운트될 수 있다. 컨셉 분석을 통해, '에어 포스 원' 컨셉에 대한 의미 클러스터는 초기에 발생할 수 있다.
단계(213)에서, 식별 링크 및 유사도 링크를 상호보완적으로 이용하여 상기 관련된 컨셉의 그룹들을 통합할 수 있다. 최초의 의미 클러스터가 생성되면, 상기 관련된 컨셉의 그룹들을 의미적으로 관련된 그룹들끼리 통합함으로써 상기 의미 클러스터의 모호성을 감소시킬 수 있다.
도 5는 본 발명의 일 실시예에 따른 영화 '에어 포스 원'에 대한 의미 클러스터의 예를 나타내는 도면이다. 도 5에 보여진 것과 같이 의미 클러스터를 풍부하게 하기 위해 의미적으로 관련된 더 많은 컨셉들을 검색하고 통합할 수 있다.
도 5(a)는 최초 의미 클러스터를 나타내고, 도 5(b)는 강화된 의미 클러스터를 나타낸다. 이때, 각각의 의미 클러스터의 대표 컨셉에서 시작하는 폭 우선 탐색(breadth-first search) 방법을 적용할 수 있다.
의미 클러스터가 최초로 생성되면, 더 많은 관련 컨셉들을 연결함으로써 클러스터의 모호성이 해결될 수 있다. 예를 들어, '에어 포스 원'은 미국의 대통령이 이용하는 항공기, 힙합 장르의 노래, 및 액션무비와 같이 다양한 의미를 가지고 있다. 도 5(a)에 도시된 최초 의미 클러스터의 의미들은 도 5(b)와 같이 1990년대 액션 영화, 테러리즘에 대한 영화, 및 헤리슨 포드와 같이 더 많은 관련 컨셉들로 더욱 명확해진다.
대표 컨셉에서 홉(hops)의 수(컨셉 그래프에서 에지들(edges)의 수)는 의미 관계에 반비례한다. 따라서, 이러한 방법을 사용함으로써 대부분의 의미적으로 관련된 컨셉을 검색하는 것이 가능하다. 대표 컨셉을 선택하기 위해, 컨셉 그래프에서 각 컨셉의 중요도를 나타내는 컨셉의 중요도를 측정할 수 있다. 다른 노드 사이의 최단 경로를 따르는 브릿지로서 컨셉 활동 횟수를 측정하기 때문에 컨셉의 중요도로 중심값(betweenness)을 사용할 수 있다. 그러므로, 발생의 높은 확률을 갖는 컨셉은 높은 중요도 값을 갖는 두 개의 랜덤으로 선택된 컨셉 사이에서 최단 경로를 랜덤으로 선택할 수 있다. 중간 값은 수학식1과 같이 측정될 수 있다.
그러면, 각 의미 클러스터에서 대표적 컨셉으로 가장 높은 중요도를 갖는 컨셉을 선택할 수 있다. 종래 기술에 따르면, 최대 홉의 수를 2로 정의 하였기 때문에, 중요한 컨셉의 80% 이상을 대표적 컨셉에서 2 홉의 범위 내에서 찾을 수 있었다.
단계(220)에서, 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성할 수 있다.
이때, 사용자들이 소비한 아이템의 집합 사이의 유사도를 측정하고, 상기 사용자들의 그룹 및 상기 사용자들의 유사도에 기반한 아이템들을 생성할 수 있다. 그리고, 상기 아이템들 사이의 유사도는 상기 아이템들에 대하여 생성된 의미 클러스터에서 오버랩 개념의 수를 집계하여 측정할 수 있다.
생성된 의미 클러스터를 사용하여 사용자들이 소비한 아이템의 집합 사이의 유사도를 측정할 수 있고, 사용자들의 그룹 및 그들의 유사도에 기반한 아이템들을 생성할 수 있다. 아이템 간의 유사도는 아이템들에 대하여 생성된 의미 클러스터에서 오버랩 컨셉의 수를 집계하여 측정될 수 있다. 오버랩 컨셉의 수를 카운트할 때, 의미 클러스터 내에서 컨셉의 중요성을 암시하기 때문에 각 컨셉의 중요도 값(C)가 고려될 수 있다. 수학식2는 의미 클러스터 간의 의미 유사도를 측정하는 함수를 정의한다.
여기에서, 및 는 두 개의 다른 아이템 i 및 j 에 대하여 생성된 의미 클러스터이고, 는 의미적 클러스터에서 공동 발생한 모든 컨셉들을 나타내고, 및 는 의미 클러스터 및 에 포함된 컨셉이다.
아이템 간의 유사도 값은 의미 클러스터의 컨셉의 수에 기반하여 정규화될 수 있다. 따라서, 의미 유사도는 두 아이템에 대하여 중요도 및 컨셉의 총 수를 검색함으로써 공존 컨셉 가중치 사이의 비율을 의미할 수 있다.
사용자 간의 유사도는 사용자가 소비한 아이템 세트 사이의 오버랩 컨셉의 수를 집계하여 측정될 수 있다. 수학식3은 두 개의 서로 다른 사용자 및 간에 의미 유사도 측정 함수를 정의하는 방법을 나타낸다.
. 여기에서, 는 사용자가 소비한 아이템에 대하여 생성된 의미 클러스터이고, , 및 는 다른 사용자 에 의해 소비된 아이템에 대하여 생성된 의미 클러스터이다. 사용자 간의 유사도는 수학식3에 나타낸 것과 같이 사용자에 대하여 생성된 의미 클러스터의 개수에 의해 정규화될 수 있다.
단계(220)은 상기 사용자들 중 가장 많은 수의 아이템을 소비하고, 가장 많은 수의 아이템에 대한 평가를 제공하는 사용자를 대표 사용자로 선택하는 단계(221), 상기 대표 사용자와 유사한 관심을 갖는 다른 사용자들을 찾고, 상기 다른 사용자들을 사용자 그룹에 추가하는 단계(222), 상기 아이템 그룹에서 대표 아이템을 선택하고, 상기 사용자 그룹에서 상기 사용자들에 의해 평가된 평가의 수에 기반하여 아이템 그룹의 아이템들을 배열하는 단계(223), 상기 의미 클러스터를 비교함으로써 상기 아이템 그룹 내에서 상기 대표 아이템과 다른 아이템들 사이의 의미 유사도를 비교하고, 상기 의미 유사도에 기반하여 상기 아이템 그룹의 아이템들을 재 배열하는 단계(224)를 포함할 수 있다.
단계(221)에서, 상기 사용자들 중 가장 많은 수의 아이템을 소비하고, 가장 많은 수의 아이템에 대한 평가를 제공하는 사용자를 대표 사용자로 선택할 수 있다.
제안하는 알고리즘은 주어진 사용자 아이템 행렬로부터 검색된 정보에 기반하여 사용자 및 아이템에 대한 의미 클러스터가 생성되면 그 후, 가장 많은 수의 아이템을 소비하고, 가장 많은 수의 아이템에 대한 평가를 제공하는 한 명을 대표 사용자로 선택할 수 있다. 대표 사용자를 선택하기 위해, 알고리즘은 숫자 등급에 기초하여 사용자를 정렬(Line 8)할 수 있고, 제1 사용자(the first user)를 선택(Lines 9 및 12)할 수 있다. 제안하는 방법에서, 대표 사용자들은 사용자 그룹의 주요 관심사를 나타내는 핵심 컨셉을 제공하기 때문에 대표 사용자의 식별은 필수적이다.
그러면 단계(222)에서, 대표 사용자와 유사한 관심을 갖는 다른 사용자들을 찾고, 상기 다른 사용자들을 사용자 그룹에 추가할 수 있다.
제안하는 알고리즘은 대표 사용자와 같이 유사한 관심(특정 임계값에서)을 갖는 다른 사용자들을 찾을 수 있고, 그들을 사용자 그룹에 추가(Lines 13 - 17)할 수 있다. 비슷한 관심사를 가진 사용자를 찾기 위해, 제안하는 알고리즘은 수학식2 및 수학식3을 사용함으로써 사용자들의 의미 클러스터들의 오버랩 컨셉의 수를 카운트할 수 있다. 본 발명에서, 가능한 많은 데이트 희소성 문제를 해결하기 위해, '0'으로 임계값을 설정하여 제안하는 알고리즘은 동일한 사용자 그룹 내의 대표 사용자와 관련된 모든 유형의 사용자를 클러스터링(clustering)할 수 있다. 이때, 의미적으로 관련된 관심을 갖는 의미 클러스터 내에서 공동 컨셉을 공유하는 사용자들을 가정할 수 있다.
이후, 단계(223)에서 상기 아이템 그룹에서 대표 아이템을 선택하고, 상기 사용자 그룹에서 상기 사용자들에 의해 평가된 평가의 수에 기반하여 아이템 그룹의 아이템들을 배열할 수 있다.
사용자들을 그룹화 한 후, 사용자 그룹에서 사용자에 의해 소비된 아이템은 아이템 그룹으로 모을 수 있다(Lines 18 - 20). 사용자를 그룹화하는 이전 단계와 유사하게, 제안하는 알고리즘은 또한 아이템 그룹의 구성에서 대표 아이템을 선택할 수 있다. 이를 위해, 알고리즘은 해당 사용자 그룹에서 사용자에 의해 평가된 평가의 수에 기반하여 아이템 그룹의 아이템을 배열 할 수 있다(Lines 27 and 28).
그러면 단계(224)에서, 의미 클러스터를 비교함으로써 상기 아이템 그룹 내에서 상기 대표 아이템과 다른 아이템들 사이의 의미 유사도를 비교하고, 상기 의미 유사도에 기반하여 상기 아이템 그룹의 아이템들을 재 배열할 수 있다(Line 29).
이때 사용되는 알고리즘은 아래와 같다.
관측되지 않은 평가를 갖는 아이템에 대하여, 제안하는 알고리즘은 평가를 갖는 아이템에 대하여 그들의 의미 유사도를 확인할 수 있다(Line 30 - 40). 관측되지 않은 평가에 대하여 의미적 유사한 평가를 갖는 아이템이 있는 경우, 그들은 아이템 하위 그룹으로 그룹화될 수 있다(Line 30 ― 40). 그러면, 제안하는 알고리즘은 평가 아이템에 대한 요소의 의미 유사도에 기반하여 각 서브 그룹을 정렬한 후 아이템 서브 그룹을 함께 집계할 수 있다(Lines 41 ― 44). 이러한 아이템 서브 그룹을 생성한 후, 사용자 아이템 행렬(부분 집합)이 사용자 그룹 및 아이템 서브 그룹의 각 조합에 대하여 생성될 수 있다(Line 21). 이러한 과정을 대표 사용자를 변경하는 동안 모든 사용자가 적어도 하나의 사용자 그룹에 포함될 때까지 반복할 수 있다(Line 22). 새로운 부분 행령은 각 반복의 마지막에 생성될 수 있다.
마지막으로, 단계(230)에서, 의미 사용자-아이템 행렬을 이용하여 새로운 아이템에 대한 사용자의 평가를 추정함으로써 잠재적 관심 아이템을 식별하고 추천할 수 있다. 이때, 사용자-아이템 행렬에서 관측되지 않은 평가를 추정하기 위해 누락된 값으로 행렬에 요소들을 추가함으로써 행렬 완성을 수행할 수 있다.
미완성의 SVD (Singular Value Decomposition)는 행렬 완성을 위해 널리 사용될 수 있고, 수학식4로 정의될 수 있다.
여기서 M 은 주어진 사용자 아이템 행렬 (M ∈ R mxn , with m users and n items) 이고, U ∈ R mxr , V ∈ R nxr (낮은 순위 가정: r 은 m 및 n 보다 상당히 작은) 이고, A 는 M 에서 관찰된 평가의 트레이닝 세트이고, u 및 i 는 각각 A 에서 사용자 및 아이템이다.
관측되지 않은 평가 값은 일반적으로 어떤 값이든 될 수 있기 때문에, 상기 낮은 순위 가정은 비용 함수가 주어진 사용자 아이템 행렬 및 근사 된 행렬 M ' 사이의 적합성을 측정하는 문제를 최소화 함으로써 행렬 완성 과정을 단순화할 필요가 있다.
결과 행렬 여기서 M` 은 트레이닝 세트에 포함되지 않은 사용자 아이템 쌍 을 포함하는 사용자 v 및 아이템 j 의 평가 M v,j 을 추정하기 위해 사용될 수 있다. 행렬 M` 이 완성된 후에, 중 다른 아이템들 보다 상대적으로 높은 값을 갖는 아이템을 선택함으로써 사용자 v 에 대한 추천이 수행될 수 있다.
도 6은 본 발명의 일 실시예에 따른 복수의 의미 사용자-아이템 행렬에 의해 영향을 받는 평가를 추정하는 방법을 나타내는 도면이다.
도 6을 참조하면, 이전 단계에서 생성된 사용자 아이템 행렬(음영 영역)의 세트를 나타내었다. 그러면, 사용자 아이템 부분 행렬의 총 수만큼 많은 미완성 SVD 를 사용함으로써 행렬 완성을 수행할 수 있다. 둘 이상의 사용자 아이템 행렬과 오버랩(overlapped)되는 요소가 있다면, 각 사용자 아이템 행렬에서 집계된 값은 요소에 할당될 수 있다.
상기 사용자 v 및 아이템 j 에 대하여 집계된 값은 수학식5와 같이 생성된 사용자 아이템 행렬의 가중치를 고려함으로써 계산될 수 있다.
여기에서, n 은 이전 단계에서 생성된 사용자 아이템 행렬의 수이고, w i 는 i번째 사용자 아이템 행렬에 대한 가중치 값이고, Rating(v, j)는 i번째 사용자 아이템 행렬의 행렬 완성에 의한 (v, j) 에 대하여 추정된 평가 값이다.
가중치 값은 요소 (v, j)에 대한 각 사용자 아이템 행렬에서 대표적 요소(가장 인기 있는 아이템)로부터의 거리를 의미한다. 각 행렬에서 가중치 값은 거리에 반비례하기 때문에, 각 가중치는 거리 비율에 의해 감산될 수 있다. 예를 들어, 행렬 A(620)에서 요소 (v, j)(610)에 대하여 예측된 결과가 5(621)이고, 행렬 B(630)에서 요소 (v, j)(610)에 대하여 예측된 결과가 3(631)인 경우, 그러면, 두 행렬로부터의 거리는 도 6에 나타낸 것과 같이 각각 3(622)및 √5(632)일 수 있다.
행렬A(620)의 비율이 3/(3+√5)이기 때문에, 가중치 값은 비율에 의해 감산되어 할당될 수 있고, 행렬 B(630)에서 가중치 값 또한 같은 방법으로 할당될 수 있다. 수학식6에 나타낸 것과 같이 요소 (v, j) 에 대하여 예측된 평가는 3.86으로 계산될 수 있다.
도 7은 본 발명의 일 실시예에 따른 의미 클러스터 기반 매트릭스 지역화 장치의 구성을 설명하기 위한 도면이다.
의미 클러스터 기반 매트릭스 지역화 장치(720)는 의미 클러스터 생성부(710), 행렬 생성부(720), 추천부(730)를 포함할 수 있다.
클러스터 생성부(710)는 사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성할 수 있다. 클러스터 생성부(710)는 링크 데이터를 이용하여 상기 사용자들이 소비한 아이템들에 대한 검색 키워드와 관련된 컨셉을 검색할 수 있다. 이때, 형태소 분석기(morpheme analyzer)를 이용하여 아이템 설명에서 명사 및 명사구를 추출하고, 추출된 상기 명사 및 명사구에서 각 키워드를 갖는 링크 데이터에 문의할 수 있다. 그리고, 상기 검색된 컨셉 중 무관한 컨셉을 필터링 하기 위해 상기 관련된 컨셉의 그룹들을 구성하고, 식별 링크 및 유사도 링크를 상호보완적으로 이용하여 상기 관련된 컨셉의 그룹들을 통합할 수 있다. 이와 같이 최초의 의미 클러스터가 생성되면, 상기 관련된 컨셉의 그룹들을 의미적으로 관련된 그룹들끼리 통합함으로써 상기 의미 클러스터의 모호성을 감소시킬 수 있다.
행렬 생성부(720)는 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성할 수 있다. 행렬 생성부(720)는 사용자들이 소비한 아이템의 집합 사이의 유사도를 측정하고, 상기 사용자들의 그룹 및 상기 사용자들의 유사도에 기반한 아이템들을 생성할 수 있다. 그리고, 상기 아이템들 사이의 유사도는 상기 아이템들에 대하여 생성된 의미 클러스터에서 오버랩 개념의 수를 집계하여 측정할 수 있다.
행렬 생성부(720)는 상기 사용자들 중 가장 많은 수의 아이템을 소비하고, 가장 많은 수의 아이템에 대한 평가를 제공하는 사용자를 대표 사용자로 선택할 수 있다. 그리고, 대표 사용자와 유사한 관심을 갖는 다른 사용자들을 찾고, 상기 다른 사용자들을 사용자 그룹에 추가할 수 있다. 이후, 아이템 그룹에서 대표 아이템을 선택하고, 상기 사용자 그룹에서 상기 사용자들에 의해 평가된 평가의 수에 기반하여 아이템 그룹의 아이템들을 배열할 수 있다. 그리고, 의미 클러스터를 비교함으로써 상기 아이템 그룹 내에서 상기 대표 아이템과 다른 아이템들 사이의 의미 유사도를 비교하고, 의미 유사도에 기반하여 아이템 그룹의 아이템들을 재 배열할 수 있다.
행렬 생성부(720)는 관측되지 않은 평가에 대하여 의미적으로 유사한 평가를 갖는 아이템이 있는 경우, 상기 아이템들을 아이템 하위 그룹으로 그룹화하고, 상기 의미 사용자-아이템 행렬을 상기 사용자 그룹 및 상기 아이템 하위 그룹의 각 조합에 대하여 생성할 수 있다. 그리고, 의미 사용자-아이템 행렬을 생성하는 단계를 모든 사용자가 적어도 하나의 사용자 그룹에 포함될 때까지 반복 수행하도록 한다.
추천부(730)는 의미 사용자-아이템 행렬을 이용하여 새로운 아이템에 대한 사용자의 평가를 추정함으로써 잠재적 관심 아이템을 식별하고 추천할 수 있다. 추천부(730)는 사용자-아이템 행렬에서 관측되지 않은 평가를 추정하기 위해 누락된 값으로 행렬에 요소들을 추가함으로써 행렬 완성을 수행할 수 있다.
앞선 설명에서는 협업 필터링에서 사용자 관심에 따라 생성되는 의미 클러스터를 사용함으로써 추천 정확도를 향상시키기 위한 방법을 제안하였다. 협업 필터리의 데이터 희소성 문제를 극복하기 위해, 아이템 정보는 링크 데이터에서 관련 컨셉을 갖는 아이템에 연관되어 생성된 의미 클러스터로 풍부해 진다. 제안된 방법은 주어진 사용자 아이템 행렬을 부분 행렬의 세트로 나누고, 그것들 사이의 의미 유사도를 분석함으로써 의미적으로 관련된 사용자 및 아이템을 구성할 수 있다. 결국, 제안된 방법은 아이템에 대한 여러 가지 예측된 평가가 있을 경우, 각 부분 행렬을 위한 아이템에 대하여 사용자의 평가를 예측할 수 있고, 복수의 부분 행렬들을 이용하여 다른 평가에 다른 가중치를 할당함으로써 예측 평가를 집계할 수 있다.
제안된 프레임워크는 아이템에 대하여 의미적으로 풍부한 메타데이터에서 키워드를 확장하기 위해 링크 데이터를 사용한다. 링크 데이터의 활용은 최근 컨셉과 트렌드의 고려가 필수적이고, 사용자의 관심을 이해하여 보다 효과적인 방법으로 사용자에게 새로운 아이템을 추천할 수 있다. 또한, 사용자 아이템 행렬에서 생성된 의미 클러스터를 비교함으로써 유사 사용자의 관심을 식별하는 방법을 제안하였다. 마지막으로, 복수의 부분 행렬에 의한 영향을 받는 새로운 아이템에 대한 사용자 평가를 추정하기 위한 가중치 합으로 부분 행렬로부터 예측 결과를 집계하는 효과적인 방법을 제안하였다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Claims (12)
- 의미 클러스터 기반 매트릭스 지역화 장치에서의 의미 클러스터 기반 매트릭스 지역화 방법에 있어서,
상기 의미 클러스터 기반 매트릭스 지역화 장치는 의미 클러스터 생성부, 행렬 생성부, 및 추천부를 포함하고,
상기 의미 클러스터 기반 매트릭스 지역화 방법은,
상기 의미 클러스터 생성부에서, 사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성하는 단계;
상기 행렬 생성부에서, 상기 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성하는 단계; 및
상기 추천부에서, 상기 의미 사용자-아이템 행렬을 이용하여 새로운 아이템에 대한 사용자의 평가를 추정함으로써 잠재적 관심 아이템을 식별하고 추천하는 단계
를 포함하고,
상기 사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성하는 단계는,
링크 데이터를 이용하여 상기 사용자들이 소비한 아이템들에 대한 검색 키워드와 관련된 컨셉을 검색하는 단계;
상기 검색된 컨셉 중 무관한 컨셉을 필터링 하기 위해 상기 관련된 컨셉의 그룹들을 구성하는 단계; 및
식별 링크 및 유사도 링크를 이용하여 상기 관련된 컨셉의 그룹들을 통합하는 단계
를 포함하는 의미 클러스터 기반 매트릭스 지역화 방법. - 삭제
- 제1항에 있어서,
상기 링크 데이터를 이용하여 상기 사용자들이 소비한 아이템들에 대한 검색 키워드와 관련된 컨셉을 검색하는 단계는,
형태소 분석기(morpheme analyzer)를 이용하여 아이템 설명에서 명사 및 명사구를 추출하고, 추출된 상기 명사 및 명사구에서 각 키워드를 갖는 링크 데이터에 문의하는 것을 특징으로 하는 의미 클러스터 기반 매트릭스 지역화 방법. - 제1항에 있어서,
상기 식별 링크 및 유사도 링크를 이용하여 상기 관련된 컨셉의 그룹들을 통합하는 단계는,
최초의 의미 클러스터가 생성되면, 상기 관련된 컨셉의 그룹들을 의미적으로 관련된 그룹들끼리 통합하는 것을 특징으로 하는 의미 클러스터 기반 매트릭스 지역화 방법. - 제1항에 있어서,
상기 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성하는 단계는,
상기 사용자들이 소비한 아이템의 집합 사이의 유사도를 측정하고, 상기 사용자들의 그룹 및 상기 사용자들의 유사도에 기반한 아이템들을 생성하고, 상기 아이템들 사이의 유사도는 상기 아이템들에 대하여 생성된 의미 클러스터에서 오버랩 개념의 수를 집계하여 측정하는 것을 특징으로 하는 의미 클러스터 기반 매트릭스 지역화 방법. - 의미 클러스터 기반 매트릭스 지역화 장치에서의 의미 클러스터 기반 매트릭스 지역화 방법에 있어서,
상기 의미 클러스터 기반 매트릭스 지역화 장치는 의미 클러스터 생성부, 행렬 생성부, 및 추천부를 포함하고,
상기 의미 클러스터 기반 매트릭스 지역화 방법은,
상기 의미 클러스터 생성부에서, 사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성하는 단계;
상기 행렬 생성부에서, 상기 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성하는 단계; 및
상기 추천부에서, 상기 의미 사용자-아이템 행렬을 이용하여 새로운 아이템에 대한 사용자의 평가를 추정함으로써 잠재적 관심 아이템을 식별하고 추천하는 단계
를 포함하고,
상기 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성하는 단계는,
상기 사용자들 중 가장 많은 수의 아이템을 소비하고, 가장 많은 수의 아이템에 대한 평가를 제공하는 사용자를 대표 사용자로 선택하는 단계;
상기 대표 사용자와 유사한 관심을 갖는 다른 사용자들을 찾고, 상기 다른 사용자들을 사용자 그룹에 추가하는 단계;
아이템 그룹에서 대표 아이템을 선택하고, 상기 사용자 그룹에서 상기 사용자들에 의해 평가된 평가의 수에 기반하여 아이템 그룹의 아이템들을 배열하는 단계; 및
상기 의미 클러스터를 비교함으로써 상기 아이템 그룹 내에서 상기 대표 아이템과 다른 아이템들 사이의 의미 유사도를 비교하고, 상기 의미 유사도에 기반하여 상기 아이템 그룹의 아이템들을 재 배열하는 단계
를 포함하는 의미 클러스터 기반 매트릭스 지역화 방법. - 제6항에 있어서,
관측되지 않은 평가에 대하여 의미적으로 유사한 평가를 갖는 아이템이 있는 경우, 상기 아이템들을 아이템 하위 그룹으로 그룹화하고, 상기 의미 사용자-아이템 행렬을 상기 사용자 그룹 및 상기 아이템 하위 그룹의 각 조합에 대하여 생성하는 것을 특징으로 하는 의미 클러스터 기반 매트릭스 지역화 방법. - 제7항에 있어서,
상기 의미 사용자-아이템 행렬을 생성하는 단계를 모든 사용자가 적어도 하나의 사용자 그룹에 포함될 때까지 반복 수행하는 것을 특징으로 하는 것을 특징으로 하는 의미 클러스터 기반 매트릭스 지역화 방법. - 의미 클러스터 기반 매트릭스 지역화 장치에서의 의미 클러스터 기반 매트릭스 지역화 방법에 있어서,
상기 의미 클러스터 기반 매트릭스 지역화 장치는 의미 클러스터 생성부, 행렬 생성부, 및 추천부를 포함하고,
상기 의미 클러스터 기반 매트릭스 지역화 방법은,
상기 의미 클러스터 생성부에서, 사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성하는 단계;
상기 행렬 생성부에서, 상기 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성하는 단계; 및
상기 추천부에서, 상기 의미 사용자-아이템 행렬을 이용하여 새로운 아이템에 대한 사용자의 평가를 추정함으로써 잠재적 관심 아이템을 식별하고 추천하는 단계
를 포함하고,
상기 의미 사용자-아이템 행렬을 이용하여 새로운 아이템에 대한 사용자의 평가를 추정함으로써 잠재적 관심 아이템을 식별하고 추천하는 단계는,
상기 사용자-아이템 행렬에서 관측되지 않은 평가를 추정하기 위해 누락된 값으로 행렬에 요소들을 추가함으로써 행렬 완성을 수행하는 것을 특징으로 하는 의미 클러스터 기반 매트릭스 지역화 방법. - 의미 클러스터 기반 매트릭스 지역화 장치에 있어서,
사용자들의 아이템에 대한 관심을 나타내는 의미 클러스터를 생성하는 의미 클러스터 생성부;
상기 의미 클러스터를 이용하여 사용자들 사이의 의미 유사도 및 아이템들 사이의 의미 유사도를 측정함으로써, 상기 사용자들 및 상기 아이템들 사이의 의미 상관 관계를 분석하여 의미 사용자-아이템 행렬을 생성하는 행렬 생성부; 및
상기 의미 사용자-아이템 행렬을 이용하여 새로운 아이템에 대한 사용자의 평가를 추정함으로써 잠재적 관심 아이템을 식별하고 추천하는 추천부
를 포함하고,
상기 의미 클러스터 생성부는,
링크 데이터를 이용하여 상기 사용자들이 소비한 아이템들에 대한 검색 키워드와 관련된 컨셉을 검색하고, 상기 검색된 컨셉 중 무관한 컨셉을 필터링 하기 위해 상기 관련된 컨셉의 그룹들을 구성하고, 식별 링크 및 유사도 링크를 이용하여 상기 관련된 컨셉의 그룹들을 통합하는 것을 특징으로 하는 의미 클러스터 기반 매트릭스 지역화 장치. - 삭제
- 제10항에 있어서,
상기 행렬 생성부는,
상기 사용자들이 소비한 아이템의 집합 사이의 유사도를 측정하고, 상기 사용자들의 그룹 및 상기 사용자들의 유사도에 기반한 아이템들을 생성하고, 상기 아이템들 사이의 유사도는 상기 아이템들에 대하여 생성된 의미 클러스터에서 오버랩 개념의 수를 집계하여 측정하는 것을 특징으로 하는 의미 클러스터 기반 매트릭스 지역화 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140158889A KR101590976B1 (ko) | 2014-11-14 | 2014-11-14 | 협업 필터링 기반 추천 성능을 향상 시키기 위한 의미 클러스터 기반 매트릭스 지역화 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140158889A KR101590976B1 (ko) | 2014-11-14 | 2014-11-14 | 협업 필터링 기반 추천 성능을 향상 시키기 위한 의미 클러스터 기반 매트릭스 지역화 방법 및 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101590976B1 true KR101590976B1 (ko) | 2016-02-19 |
Family
ID=55448814
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140158889A KR101590976B1 (ko) | 2014-11-14 | 2014-11-14 | 협업 필터링 기반 추천 성능을 향상 시키기 위한 의미 클러스터 기반 매트릭스 지역화 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101590976B1 (ko) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101821744B1 (ko) * | 2016-06-30 | 2018-01-29 | 주식회사 스타일큐 | 편집샵 서비스 시스템 |
KR101913358B1 (ko) * | 2016-12-20 | 2018-10-30 | 한동대학교 산학협력단 | 빅데이터 기술을 이용한 홈쇼핑 및 t커머스 큐레이션 제공방법 |
KR20190016236A (ko) | 2017-08-08 | 2019-02-18 | 한국과학기술원 | 보조정보를 이용하는 조건부 변분 오토인코더 기반의 협업 필터링 방법 및 장치 |
KR102375755B1 (ko) * | 2021-03-31 | 2022-03-17 | 고려대학교 산학협력단 | 과목 유사도에 기반한 과목 추천 시스템과 방법 및 이를 위한 컴퓨터 프로그램 |
KR102412380B1 (ko) * | 2021-07-01 | 2022-06-23 | (주)뤼이드 | 사용자의 검색 정보를 기반으로 사용자의 학습 능력을 평가하는 방법, 장치, 및 시스템 |
WO2023277614A1 (ko) * | 2021-07-01 | 2023-01-05 | (주)뤼이드 | 사용자에게 교육 효과가 최대화되는 풀이 컨텐츠를 추천하는 방법, 장치, 및 시스템 |
KR102540417B1 (ko) * | 2022-03-02 | 2023-06-05 | 고려대학교 산학협력단 | 학문영역 임베딩을 이용한 관심 키워드 기반 학습활동 통합 추천 시스템 및 그 방법, 이를 수행하기 위한 기록매체 |
KR102723074B1 (ko) * | 2022-05-03 | 2024-11-01 | 주식회사 아이스크림에듀 | 비교과콘텐츠/학생프로파일을 이용한 개인화 비교과콘텐츠추천방법 및 추천장치 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080071213A (ko) * | 2006-12-20 | 2008-08-04 | 한국과학기술정보연구원 | 시맨틱 웹 기반 연구정보 서비스 시스템 및 그 방법 |
KR20100048218A (ko) * | 2008-10-30 | 2010-05-11 | 에스케이커뮤니케이션즈 주식회사 | 협업 필터링 시스템과 방법 및 이를 구현할 수 있는 컴퓨터로 읽을 수 있는 기록 매체 |
KR20140073345A (ko) * | 2012-12-06 | 2014-06-16 | 한국과학기술원 | 모바일 기기에서 사용자 인터랙션에 기반한 서비스 목록 추천 방법 및 이를 이용하는 모바일 기기 |
JP2014115911A (ja) * | 2012-12-11 | 2014-06-26 | Nippon Telegr & Teleph Corp <Ntt> | 情報推薦装置、情報推薦方法、及び情報推薦プログラム |
-
2014
- 2014-11-14 KR KR1020140158889A patent/KR101590976B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080071213A (ko) * | 2006-12-20 | 2008-08-04 | 한국과학기술정보연구원 | 시맨틱 웹 기반 연구정보 서비스 시스템 및 그 방법 |
KR20100048218A (ko) * | 2008-10-30 | 2010-05-11 | 에스케이커뮤니케이션즈 주식회사 | 협업 필터링 시스템과 방법 및 이를 구현할 수 있는 컴퓨터로 읽을 수 있는 기록 매체 |
KR20140073345A (ko) * | 2012-12-06 | 2014-06-16 | 한국과학기술원 | 모바일 기기에서 사용자 인터랙션에 기반한 서비스 목록 추천 방법 및 이를 이용하는 모바일 기기 |
JP2014115911A (ja) * | 2012-12-11 | 2014-06-26 | Nippon Telegr & Teleph Corp <Ntt> | 情報推薦装置、情報推薦方法、及び情報推薦プログラム |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101821744B1 (ko) * | 2016-06-30 | 2018-01-29 | 주식회사 스타일큐 | 편집샵 서비스 시스템 |
KR101913358B1 (ko) * | 2016-12-20 | 2018-10-30 | 한동대학교 산학협력단 | 빅데이터 기술을 이용한 홈쇼핑 및 t커머스 큐레이션 제공방법 |
KR20190016236A (ko) | 2017-08-08 | 2019-02-18 | 한국과학기술원 | 보조정보를 이용하는 조건부 변분 오토인코더 기반의 협업 필터링 방법 및 장치 |
KR102375755B1 (ko) * | 2021-03-31 | 2022-03-17 | 고려대학교 산학협력단 | 과목 유사도에 기반한 과목 추천 시스템과 방법 및 이를 위한 컴퓨터 프로그램 |
KR102412380B1 (ko) * | 2021-07-01 | 2022-06-23 | (주)뤼이드 | 사용자의 검색 정보를 기반으로 사용자의 학습 능력을 평가하는 방법, 장치, 및 시스템 |
WO2023277614A1 (ko) * | 2021-07-01 | 2023-01-05 | (주)뤼이드 | 사용자에게 교육 효과가 최대화되는 풀이 컨텐츠를 추천하는 방법, 장치, 및 시스템 |
KR102540417B1 (ko) * | 2022-03-02 | 2023-06-05 | 고려대학교 산학협력단 | 학문영역 임베딩을 이용한 관심 키워드 기반 학습활동 통합 추천 시스템 및 그 방법, 이를 수행하기 위한 기록매체 |
KR102723074B1 (ko) * | 2022-05-03 | 2024-11-01 | 주식회사 아이스크림에듀 | 비교과콘텐츠/학생프로파일을 이용한 개인화 비교과콘텐츠추천방법 및 추천장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101590976B1 (ko) | 협업 필터링 기반 추천 성능을 향상 시키기 위한 의미 클러스터 기반 매트릭스 지역화 방법 및 장치 | |
Gasparetti et al. | Community detection in social recommender systems: a survey | |
Symeonidis et al. | Product recommendation and rating prediction based on multi-modal social networks | |
Li et al. | User profiling in an ego network: co-profiling attributes and relationships | |
Shi et al. | Heterogeneous information network analysis and applications | |
Ullah et al. | Identification of Influential Nodes via Effective Distance‐based Centrality Mechanism in Complex Networks | |
Zhou et al. | Real-time context-aware social media recommendation | |
US10474670B1 (en) | Category predictions with browse node probabilities | |
Santra et al. | From base data to knowledge discovery–A life cycle approach–Using multilayer networks | |
Djenouri et al. | An ontology matching approach for semantic modeling: A case study in smart cities | |
KR101738809B1 (ko) | IoT 기반 스마트 홈 커뮤니티에서 소셜 매칭 및 소통 서비스를 위한 다차원매트릭스 지역화 방법 및 시스템 | |
Liu et al. | Digger: Detect similar groups in heterogeneous social networks | |
Hamzehei et al. | Collaborative topic regression for predicting topic-based social influence | |
Yang et al. | Combining prestige and relevance ranking for personalized recommendation | |
Sabah et al. | A new fast entropy‐based method to generate composite centrality measures in complex networks | |
Adeleye et al. | A fitness-based evolving network for web-apis discovery | |
Han et al. | Fair Re-Ranking Recommendation Based on Debiased Multi-graph Representations | |
Wang et al. | A conditional random field recommendation method based on tripartite graph | |
Barbieri et al. | Survival factorization on diffusion networks | |
Ayvaz et al. | Building summary graphs of rdf data in semantic web | |
Stankovic et al. | Discovering relevant topics using DBPedia: providing non-obvious recommendations | |
Sharma et al. | A trust-based architectural framework for collaborative filtering recommender system | |
Helal et al. | A novel social network mining approach for customer segmentation and viral marketing | |
Mirizzi et al. | Linked Open Data for content-based recommender systems | |
Tsoumas et al. | Learning a generalized matrix from multi-graphs topologies towards microservices recommendations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20190107 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20200122 Year of fee payment: 5 |
|
R401 | Registration of restoration |