KR101826594B1 - 지식 구조 기반의 전자책 추천 방법 및 시스템 - Google Patents

지식 구조 기반의 전자책 추천 방법 및 시스템 Download PDF

Info

Publication number
KR101826594B1
KR101826594B1 KR1020160132521A KR20160132521A KR101826594B1 KR 101826594 B1 KR101826594 B1 KR 101826594B1 KR 1020160132521 A KR1020160132521 A KR 1020160132521A KR 20160132521 A KR20160132521 A KR 20160132521A KR 101826594 B1 KR101826594 B1 KR 101826594B1
Authority
KR
South Korea
Prior art keywords
book
query
knowledge structure
keyword
similarity
Prior art date
Application number
KR1020160132521A
Other languages
English (en)
Inventor
이문용
김성찬
김자용
지승환
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Priority to KR1020160132521A priority Critical patent/KR101826594B1/ko
Application granted granted Critical
Publication of KR101826594B1 publication Critical patent/KR101826594B1/ko

Links

Images

Classifications

    • G06F17/30
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • G06F17/27
    • G06F17/30038
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Human Resources & Organizations (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Educational Technology (AREA)
  • Algebra (AREA)
  • Educational Administration (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

지식 구조를 기반으로 전자책을 추천하는 방법 및 시스템이 개시된다. 본 발명에 따른 전자책 추천 방법은, 사용자가 보고 있는 전자책에 대한 지식 구조를 획득하는 단계와; 지식 구조의 그래프 중심도(Graph Centrality)를 이용하여 지식 구조로부터 적어도 하나의 키워드를 추출함으로써 쿼리를 생성하는 단계와; 쿼리와 후보 전자책 간의 유사도를 계산하는 단계와; 유사도 계산 결과를 기반으로 상기 후보 전자책의 추천 점수를 계산하는 단계를 포함한다.

Description

지식 구조 기반의 전자책 추천 방법 및 시스템 {Method and system for recommending e-book based on knowledge structure}
본 발명은 전자적 형태의 서적(전자책)을 사용자에게 제공하는 방법에 대한 것으로, 더욱 구체적으로는 지식 구조를 기반으로 특정 전자책과 유사한 전자책을 사용자에게 추천하는 방법 및 시스템에 대한 것이다.
최근 전자책과 이를 이용한 이러닝(e-learning) 시장은 고속 성장을 이루고 있으며, 학습자별 학습 성취도, 관심사, 성향 등에 따른 맞춤형 학습 컨텐츠의 제공은 이러닝 기술 분야의 화두라 할 수 있다.
따라서, 사용자가 보고 있는 전자책과 관련된 유사 컨텐츠를 검색하여 제공하기 위한 기술이 활발히 연구되고 있으나 아직까지 학습자의 교육 과정을 고려하여 학습자에게 최대한 도움을 줄 수 있는 컨텐츠를 검색하는 시스템은 미비한 실정이다.
대한민국 등록특허 제10-1538998호 "지식 구조를 기반으로 한 검색 서비스 제공 방법 및 장치" 대한민국 등록특허 제10-1521330호 "지식체계 맵핑을 통한 전자적 형태의 서적 관리방법"
본 발명은 상기와 같은 종래 기술의 문제점을 해소하기 위한 것으로, 전자책 이용자가 보고 있는 부분의 지식 구조를 기반으로 유사한 컨텐츠를 검색하여 추천하는 방법을 제공하기 위한 것이다.
또한, 본 발명은 전자책에 대응하는 교육 과정을 고려하여 학습 목적에 최대한 부합하는 다른 전자책을 추천하는 방법을 제공하기 위한 것이다.
상기와 같은 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 지식 구조 기반의 전자책 추천 방법은, 사용자가 보고 있는 전자책에 대한 지식 구조를 획득하는 단계와; 상기 지식 구조의 그래프 중심도(Graph Centrality)를 이용하여 상기 지식 구조로부터 적어도 하나의 키워드를 추출함으로써 쿼리를 생성하는 단계와; 상기 생성된 쿼리와 후보 전자책 간의 유사도를 계산하는 단계와; 상기 유사도 계산 결과를 기반으로 상기 후보 전자책의 추천 점수를 계산하는 단계를 포함할 수 있다.
상기 쿼리를 생성하는 단계에서, 상기 전자책에서 사용자가 현재 보고 있는 섹션의 타이틀 키워드인지 다른 섹션의 타이틀 키워드인지 여부에 따라 해당 키워드를 쿼리에 포함시킬 것인지 여부를 결정하거나 해당 키워드의 가중치를 다르게 조절할 수 있다.
상기 쿼리를 생성하는 단계에서, 상기 전자책에서 사용자가 이미 읽은 섹션의 타이틀 키워드인지 아직 읽지 않은 섹션의 타이틀 키워드인지 여부에 따라 해당 키워드의 가중치를 다르게 조절할 수 있다.
상기 쿼리를 생성하는 단계에서, TF-IDF(Term Frequency - Inverse Document Frequency) 점수, 해당 노드의 링크 수 및 사용자가 현재 보고 있는 섹션에 존재하는 키워드인지 여부에 의해 결정되는 키워드 중요도에 따라 상기 쿼리에 포함시킬 키워드를 변경하거나 쿼리 내 키워드의 순서를 정렬할 수 있다.
상기 쿼리를 생성하는 단계에서, 상기 전자책의 지식 구조 그래프에서 노드 뭉치들 간에 매개체 역할을 하는 노드에 대응하는 키워드를 추출하는 중개성 중심도(Betweenness Centrality) 기반 추출 방식; 지식 구조 그래프에서 전체 노드들과 가장 짧은 경로로 이어질 수 있는 노드에 대응하는 키워드를 추출하는 근사성 중심도(Closeness Centrality) 기반 추출 방식; 지식 구조 그래프에서 중요 노드들과 가까이 연결된 노드에 대응하는 키워드를 추출하는 고유벡터 중심도(Eigenvector Centrality) 기반 추출 방식; 또는 지식 구조 그래프에서 연결된 노드의 개수가 많은 노드에 대응하는 키워드를 추출하는 차수 중심도(Degree Centrality) 기반 추출 방식을 이용할 수 있다.
상기 유사도를 계산하는 단계에서, 상기 후보 전자책과 상기 사용자가 보고 있는 전자책의 모든 섹션 간의 유사도를 각각 계산하고, 유사도가 가장 높은 섹션이 어느 것인지에 따라 다르게 결정된 유사도 가중치를 적용할 수 있다.
상기 유사도 가중치를 결정할 때 상기 후보 전자책과 가장 유사한 섹션과 상기 사용자가 현재 보고 있는 섹션 간의 거리와, 가장 유사한 섹션이 이미 읽은 섹션인지 아직 읽지 않은 섹션인지 여부를 고려할 수 있다.
본 발명의 다른 실시예에 따른 지식 구조 기반의 전자책 추천 서버는, 사용자 단말을 통해 사용자가 보고 있는 전자책에 대한 지식 구조를 획득하는 지식 구조 획득 모듈과; 상기 지식 구조의 그래프 중심도(Graph Gentrality)를 이용하여 상기 지식 구조로부터 적어도 하나의 키워드를 추출하여 쿼리를 생성하는 쿼리 생성 모듈과; 상기 생성된 쿼리와 후보 전자책 간의 유사도를 계산하고, 상기 유사도 계산 결과를 기반으로 상기 후보 전자책의 추천 점수를 계산하는 추천 모듈을 포함할 수 있다.
상기와 같은 본 발명에 의하면, 전자책 이용자가 보고 있는 부분의 지식 구조 그래프의 특징, 전체 교육 과정, 키워드의 중요도 등을 이용하여 쿼리를 생성하므로 학습에 최대한 도움을 줄 수 있는 컨텐츠를 추천해줄 수 있다는 효과가 있다.
또한, 본 발명에 따르면, 사용자가 현재 읽고 있는 챕터와 가장 유사한 추천 문서들을 찾을 수 있고, 이미 읽어서 알고 있는 내용보다 앞으로 읽을 문서에 가중치를 더 부여하여 추천 가능성이 높아지도록 함으로써 이러닝에 최적화된 추천 방법을 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 전자책 추천 시스템의 구성을 설명하기 위한 기능 블록도이다.
도 2는 본 발명의 일 실시예에 따른 전자책 추천 서버의 구성을 설명하기 위한 기능 블록도이다.
도 3은 본 발명의 일 실시예에 따른 전자책 추천 방법을 설명하기 위한 순서도이다.
도 4는 본 발명에서 지식 구조를 기반으로 전자책을 추천하는 원리를 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따라 쿼리를 자동 생성하여 관련 전자책을 추천하는 과정을 설명하기 위한 개념도이다.
도 6은 본 발명의 일 실시예에 따라 그래프 중심도를 이용하여 쿼리를 생성하는 방법을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따라 목차를 고려하여 쿼리를 생성하는 방법을 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시예에 따라 키워드의 중요도를 고려하여 쿼리를 생성하는 방법을 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따라 쿼리와의 유사도를 기반으로 추천할 전자책을 선정하는 방법을 설명하기 위한 도면이다.
도 10 및 도 11은 본 발명의 일 실시예에 따라 추천된 전자책을 사용자에게 제공하기 위한 화면을 예시한 것이다.
도 12는 본 발명의 일 실시예에 따라 교육 과정과의 유사도 계산시 사용되는 가중치 그래프를 예시한 것이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...수단", "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 본 발명의 일 실시예에 따른 전자책 추천 시스템의 구성을 설명하기 위한 기능 블록도이다.
전자책은 텍스트, 이미지, 멀티미디어 컨텐츠가 소정의 순서, 목차에 따라서 결합되며, 네트워크를 통해 전송되거나 플래쉬 메모리나 DVD(Digital Versatile Disc) 등의 기록매체에 수록되어 복제될 수 있는 데이터를 의미한다.
지식 구조 기반의 전자책 추천 서버(20)는 네트워크를 통해 다수의 사용자 단말(10)과 연결된다. 이때, 네트워크는 인터넷이 이용될 수 있으며 기타 다른 형태의 통신망이 이용될 수도 있다.
사용자 단말(10)은 전자책을 재생하여 표시하기 위한 수단으로서 개인용 컴퓨터나 스마트폰, 타블렛과 같은 종래기술에 의한 요소일 수도 있으며, 또는 디지털 교과서 등 근 미래에 등장할 것으로 예상되는 새로운 형태의 전자적 형태의 서적을 재생하기 위한 전용 단말기일 수 있다. 사용자 단말(10)은 전자책 관리 모듈(11)과 브라우저(12)를 구비할 수 있다.
사용자가 브라우저(12)를 통해 보고 있는 전자책의 식별정보를 포함하는 추천 요청이, 사용자의 선택에 의해 또는 상황에 따라 자동으로 전자책 추천 서버(20)로 전송되며, 이 추천 요청에 대한 응답이 전자책 추천 서버(20)로부터 수신되면 브라우저(12)를 통해 출력하여 사용자에게 추천 컨텐츠가 제공될 것이다.
전자책 추천 서버(20)는 전자책으로부터 지식 구조를 생성하거나 기생성된 지식 구조를 검색하기 위한 지식 구조 획득 모듈(21)과, 지식 구조 획득 모듈(21)을 통해 획득된 지식 구조로부터 쿼리에 포함시킬 키워드를 추출하기 위한 쿼리 생성 모듈(22)과, 추출된 키워드(들)을 포함하는 쿼리를 만족하는 전자책을 검색하고 추천 점수를 계산하는 추천 모듈(23)을 포함할 수 있다. 추천 모듈(23)은 전자책의 형태로 된 컨텐츠뿐만 아니라 게시물, 뉴스 등의 단편적인 컨텐츠도 검색하여 제공할 수 있다.
사용자 단말(10)의 이북 플랫폼(e-book platform)과 추천 서버(20)는 API(Application Programming Interface)(30)를 통해 외부 또는 내부 자료를 검색할 수 있다. 검색 대상이 되는 자료는 공유된 지식 구조 저장소(31), 도메인 지식 구조 저장소(32) 또는 루씬 인덱스(33)를 통해 획득될 수 있다.
도 2는 본 발명의 일 실시예에 따른 전자책 추천 서버의 구성을 설명하기 위한 기능 블록도이다.
도 2를 참조하면, 전처리기(Pre-processor, 41)가 전자책 저장소, 네트워크틀 통해 획득한 보조 컨텐츠, 사전 등의 자료를 분석하여 지식 구조를 추출함으로써 도메인 지식 구조 저장소가 구성되어 전자책 추천 서비스에 이용될 수 있다.
전자책 추천 서버(20)는 입력된 전자책 식별 정보에 대응하는 지식 구조를 획득하고, 전자책의 메타데이터를 분석한다. 그 결과를 이용하여 그래프 중심도를 기반으로 쿼리를 생성한 후, 생성된 쿼리를 이용해 전자책을 검색하고 유사도를 기반으로 추천 점수를 계산하고 추천 순위를 결정하며, 그 결과에 따라 추천하고자 하는 전자책의 식별 정보 집합을 출력한다. 전자책 추천 서버(20)의 일련의 기능에 대해서는 도 3 내지 도 12를 참조하여 상세히 후술하기로 한다.
도 3은 본 발명의 일 실시예에 따른 전자책 추천 방법을 설명하기 위한 순서도이고, 도 4는 본 발명에서 지식 구조를 기반으로 전자책을 추천하는 원리를 설명하기 위한 도면이며, 도 5는 본 발명의 일 실시예에 따라 쿼리를 자동 생성하여 관련 전자책을 추천하는 과정을 설명하기 위한 개념도이다.
먼저 선택된 전자책을 분석하여 지식 구조를 획득한다(S30). 선택된 전자책은 도 4에서와 같이 사용자가 브라우저(12)를 통해 보고 있는 전자책(40)이거나, 또는 유사 자료 검색을 요청한 전자책을 의미한다.
지식 구조(Knowledge Structure)는 학습자가 어떤 문서나 매체를 통해 학습할 때 생성되는 핵심 개념들과 그들의 연관관계를 조직적으로 나타낸 모형으로서, 개념 간에 연결된 선은 두 개념이 의미적으로 밀접한 관계가 있음을 나타낸다. 지식 구조는 도 4와 같이 다수의 노드와 다수의 링크로 구성된 그래프(41)로 표현될 수 있다. 유사도 비교를 위해서는 현재 보고 있는 전자책(40)과 추천 후보책(45)의 지식 구조가 모두 필요하다.
노드에는 각 핵심 개념들을 나타내는 중요 단어(키워드)가 표시되고 소정의 면적을 가지는 도형(원, 사각형 등)으로 표현될 수 있다. 링크는 키워드들 간의 관계를 나타내며, 해당 링크로 연결된 키워드 간의 관계에 따라 굵기, 색상, 종류 등이 다양하게 달라지는 선으로 표현될 수 있다. 또한, 노드 간의 거리는 노드 간의 연관도에 반비례하도록 설정될 수 있다. 예를 들어, 노드 간 거리가 멀수록 해당 노드 끼리의 연관관계는 낮아지게 된다.
지식 구조의 획득은 해당 전자책의 내용을 분석하여 새로이 지식 구조를 생성하거나, 기생성된 지식 구조를 검색함으로써 수행될 수 있다.
도 5에서와 같이, 사용자가 보고 있는 전자책(50)의 전체 구성 중 현재 읽고 있는 섹션의 지식 구조(51)를 획득하여 이를 기초로 쿼리를 생성할 수 있다.
지식 구조(51)의 그래프 특징을 이용하여 쿼리에 포함될 단어인 키워드를 선택할 수 있다. 이를 위해, 단계 S32에서는, 지식 구조의 그래프 중심도(Graph Centrality)를 이용하여 지식 구조로부터 쿼리에 포함시킬 적어도 하나의 키워드를 추출한다.
도 6은 본 발명의 일 실시예에 따라 그래프 중심도를 이용하여 쿼리를 생성하는 방법을 설명하기 위한 도면이다.
도 6을 참조하면, 그래프 중심도(Graph Centrality)를 이용해 지식 구조에서 중요 단어인 q1, q2, q3를 추출하였음을 볼 수 있다.
그래프 중심도를 이용해 중요 단어를 추출하는 방식에는 아래와 같은 4가지방식이 있을 수 있으며, 실시예에 따라 이 방식들 중 하나를 통해 키워드를 추출할 수 있다.
중개성 중심도(Betweenness Centrality) 기반 추출 방식은, 지식 구조 그래프에서 노드 뭉치들 간에 매개체 역할을 하는 노드에 대응하는 키워드를 추출하는 방식이다. 이 방식에 의하면 단어 개념들 사이에 있는 단어가 추출되므로 문서에서 주요 개념들을 이어주는 단어를 추출하게 된다.
근사성 중심도(Closeness Centrality) 기반 추출 방식은, 지식 구조 그래프에서 전체 노드들과 가장 짧은 경로로 이어질 수 있는 노드에 대응하는 키워드를 추출하는 방식이다. 이 방식에 의하면, 전체적으로 보았을 때 다른 단어들과 의미상으로 가까운 단어가 추출되므로 문서의 전체적인 개념을 표현하는 단어를 추출하게 된다.
고유벡터 중심도(Eigenvector Centrality) 기반 추출 방식은, 지식 구조 그래프에서 중요 노드들과 가까이 연결된 노드에 대응하는 키워드를 추출하는 방식이다. 이 방식에 의하면, 중요 단어들 중에서도 중요한 단어가 추출되므로 문서에서 가장 중요한 하나의 내용을 표현하는 단어를 추출할 수 있다.
차수 중심도(Degree Centrality) 기반 추출 방식은, 지식 구조 그래프에서 연결된 노드의 개수가 많은 노드에 대응하는 키워드를 추출하는 방식이다. 이 방식에 의하면, 다른 단어들과 관계가 소정 수 이상인 단어가 우선적으로 추출되므로 문서에 나온 주요 개념을 표현하는 단어를 추출할 수 있게 된다.
도 5를 참조하면, 그래프의 특징 뿐만 아니라 키워드의 중요도가 쿼리에 포함시킬 키워드를 선택하는데 이용될 수 있다(54).
도 8은 본 발명의 일 실시예에 따라 키워드의 중요도를 고려하여 쿼리를 생성하는 방법을 설명하기 위한 도면이다.
도 8의 예에서, 그래프 특징을 이용해 선별된 후보 키워드가 q1, q2, q3, q4, q5이고, 이들 후보 키워드의 중요도를 계산하여 중요도 점수가 높지 않는 q1, q4는 쿼리로부터 제거되고, 나머지 키워드들의 순서도 q3, q2, q5로 정렬되었음을 알 수 있다.
키워드의 중요도는, TF-IDF(Term Frequency - Inverse Document Frequency) 점수, 해당 노드의 링크 수 및 사용자가 현재 보고 있는 섹션에 존재하는 키워드인지 여부에 의해 결정될 수 있다. 구체적으로, 키워드 중요도는 아래 수학식 1에 의해 계산될 수 있다.
Figure 112016099105140-pat00001
여기서, TF*IDF(qk)는 키워드 qk의 TF*IDF 값을, Max(TF*IDF(q))는 키워드들 중에서 가장 큰 TF*IDF 값을 나타내고, NL(qk)는 키워드 qk의 링크 수를, Max(NL(q))은 가장 많은 링크를 가지고 있는 키워드의 링크 수를, bool(TOC)는 키워드가 목차명에 속하는지 아닌지 여부(속하면 1, 아니면 0)를, w1, w2, w3는 가중치 계수를 나타낸다. 각 가중치 계수는 키워드 중요도에 고려되는 각 요인을 어떤 비율로 적용할 것인지에 따라 결정되는 값이다.
TF-IDF(Term Frequency - Inverse Document Frequency)는 정보 검색과 텍스트 마이닝에서 이용하는 가중치로, 여러 문서로 이루어진 문서군이 있을 때 어떤 단어가 특정 문서 내에서 얼마나 중요한 것인지를 나타내는 통계적 수치이다. 문서의 핵심어를 추출하거나, 검색 엔진에서 검색 결과의 순위를 결정하거나, 문서들 사이의 비슷한 정도를 구하는 등의 용도로 사용할 수 있다.
TF(단어 빈도, term frequency)는 특정 단어가 문서 내에 얼마나 자주 등장하는지를 나타내는 값으로, 이 값이 높을수록 문서에서 중요하다고 생각할 수 있다. 하지만 단어 자체가 문서군 내에서 자주 사용되는 경우, 이것은 그 단어가 흔하게 등장한다는 것을 의미한다. 이것을 DF(문서 빈도, document frequency)라고 하며, 이 값의 역수를 IDF(역문서 빈도, inverse document frequency)라고 한다. TF-IDF는 TF와 IDF를 곱한 값이다.
IDF 값은 문서군의 성격에 따라 결정된다. 예를 들어 '원자'라는 낱말은 일반적인 문서들 사이에서는 잘 나오지 않기 때문에 IDF 값이 높아지고 문서의 핵심어가 될 수 있지만, 원자에 대한 문서를 모아놓은 문서군의 경우 이 낱말은 상투어가 되어 각 문서들을 세분화하여 구분할 수 있는 다른 낱말들이 높은 가중치를 얻게 된다.
도 5를 참조하면, 쿼리의 키워드 선택에 목차를 고려한 가중치가 더 고려될수 있다(53). 이를 위해 현재 사용자가 보고 있는 전자책의 전체 목차가 참조되며, 쿼리에는 질의의 키가 되는 키워드뿐만 아니라 각 키워드의 가중치가 더 포함될 수 있다. 키워드의 가중치는 추후 후보 전자책과의 유사도를 계산할 때 이용될 것이다.
도 7은 본 발명의 일 실시예에 따라 목차를 고려하여 쿼리를 생성하는 방법을 설명하기 위한 도면이다.
쿼리 생성에 목차를 활용하기 위한 방안은 2가지로 분류될 수 있다.
하나는, 전자책에서 사용자가 현재 보고 있는 섹션의 타이틀 키워드인지 다른 섹션의 타이틀 키워드인지 여부에 따라 해당 키워드를 쿼리에 포함시킬 것인지 여부를 결정하거나 해당 키워드의 가중치를 다르게 조절하는 방식이다.
예컨대, 사용자가 보고 있는 섹션에 대응하는 지식 구조에 포함되는 키워드들 중에서 쿼리에 포함시킬 키워드를 선택할 때, 현재 섹션의 타이틀 키워드는 기본적으로 포함시키고 다른 섹션의 타이틀 키워드인 경우에는 쿼리에서 배제시킬 수 있다. 선택적 또는 추가적으로, 현재 섹션의 타이틀 키워드에 대해서는 상대적으로 높은 가중치를 적용하고 다른 섹션의 타이틀 키워드인 경우에는 낮은 가중치를 적용할 수 있다.
도 7에서 생성된 첫번째 쿼리(70)는, 그래프 중심도에 따라 선별된 키워드 q1, q2, q3가 쿼리에 포함되어 있는 상태에서, q5가 현재 섹션의 타이틀 키워드이고 q3가 다른 섹션의 타이틀 키워드임이 판단되어, 상기 첫번째 방식에 의해 q3가 제거되고 q5가 포함된 결과이다.
도 7에서 생성된 두번째 쿼리(71)는, 현재 섹션의 타이틀 키워드인 q5에 높은 가중치 2.0이 적용되어 쿼리에 추가되고, 다른 섹션의 타이틀 키워드인 q3에는 낮은 가중치 0.5가 적용되는 식으로 가중치가 설정된 결과이다.
한편, 목차 활용을 위한 두번째 방식은, 해당 전자책에서 사용자가 이미 읽은 섹션의 타이틀 키워드 및 아직 읽지 않은 섹션의 타이틀 키워드에 대해 각각 다른 가중치를 적용하는 방법이다.
예컨대, 이미 읽은 섹션의 타이틀 키워드인 경우에는 상대적으로 적은 가중치를 주고, 추후 읽을 섹션의 타이틀 키워드에 대해서는 상대적으로 높은 가중치를 줌으로써, 학습자의 학습에 더욱 도움되는 자료를 추천할 수 있다.
도 3의 단계 S34에서는, 추출된 키워드를 포함하는 쿼리와 후보 전자책 간의 유사도를 계산한다. 이를 위해 후보 전자책의 내용도 지식 구조로 변환할 필요가 있다. 또한, 단계 S36에서는, 유사도 계산 결과를 기반으로 후보 전자책의 추천 점수를 계산한다. 이들 단계는 도 5에서 각 추천 후보(55)에 대한 추천 점수 계산(52) 과정에 해당한다.
도 9는 본 발명의 일 실시예에 따라 쿼리와의 유사도를 기반으로 추천할 전자책을 선정하는 방법을 설명하기 위한 도면이다.
도 9를 참조하면, 현재 보고 있는 전자책의 지식 구조에서 추출된 쿼리가 q1, q2, q3인 경우, 후보 전자책들의 지식 구조와의 유사도 계산에 의해 추천 점수가 가장 높은 후보 전자책2가 선정되었음을 알 수 있다.
추천 점수는 아래 수학식 2와 같이 랭킹 점수와 유사도 점수를 이용해 계산될 수 있다. 랭킹 함수는 검색 엔진이 주어진 질의문에 대해 일치하는 문서들의 순위를 매길 수 있도록 하는 함수로서 대표적인 예로 BM25 알고리즘이 사용될 수 있다. 유사도 점수(Proximity Score, PS)는 단어쌍 각각을 지식 구조에 대입하여 지식 구조 상에서의 단어 간 거리를 획득하고 평균화하여 단어 간 평균 거리를 계산함으로써 계산될 수 있다.
Figure 112016099105140-pat00002
Figure 112016099105140-pat00003
Figure 112016099105140-pat00004
Figure 112016099105140-pat00005
유사도 점수는 쿼리의 키워드가 선정되는 4가지 방식에 따라 달라질 수 있다. 따라서, 사용자가 보고 있는 전자책 문서에서 주요 개념들을 이어주는 개념에 관련된 전자책들을 추천하고자 할 때는 중개성 중심도(Betweenness Centrality) 기반 추출 방식을, 해당 문서에서 전체적인 개념에 관련된 전자책들을 추천하고자 할 때는 근사성 중심도(Closeness Centrality) 기반 추출 방식을, 해당 문서에서 가장 중요한 내용에 관련된 전자책들을 추천하고자 할 때에는 고유벡터 중심도(Eigenvector Centrality) 기반 추출 방식을, 해당 문서에서 나온 주요 개념들에 관련된 전자책들을 추천하고자 할 때에는 차수 중심도(Degree Centrality) 기반 추출 방식을 선택하면 될 것이다.
한편, 본 발명의 다른 실시예에 따르면, 교육 과정에 필요한 전자책을 선별하여 추천하기 위해서, 전자책들의 내용 간 유사성뿐만 아니라 전체 교육 과정과 사용자별 이수 현황을 추천 점수 계산에 적용할 수 있도록 하고 있다.
이를 위해 아래 수학식 3과 같이 추천 점수 계산시 교육 과정과의 유사도를 더 반영할 수 있다. 전자책의 교육 과정에 대한 정보는 해당 전자책의 목차 또는 시퀀스(sequence)로부터 획득할 수 있다.
Figure 112016099105140-pat00006
"교육 과정과의 유사도"를 계산하기 위해, 추천 후보 책의 목차 내용과 특정 전자책의 교육 과정을 비교하며, 추천 후보책이 전자책의 교육 과정 중 어느 섹션과 가장 유사한지에 따라 다른 유사도 가중치가 적용된다. 이미 읽은 섹션과 가장 유사한 경우는 적은 가중치를 부여하고 아직 읽지 않은 섹션과 가장 유사한 경우는 큰 가중치를 부여하는 식이다.
예를 들어, 사용자가 보고 있는 전자책의 전체 교육 과정이 5개의 챕터로 구성되어 있고, 사용자가 현재 챕터 3을 보고 있다면, 챕터 1과 챕터 2는 이미 읽은 부분이고, 챕터 3은 현재 읽고 있는 부분이며 챕터 4와 챕터 5는 추후 읽을 부분이 된다.
챕터 5개와 추천 후보책 간의 유사도를 모두 계산하고 어느 챕터와의 유사도가 가장 높은지를 파악한다. 유사도가 가장 높은 챕터가 어떤 것인지에 따라 다른 가중치가 적용되며, 가중치는 도 12의 그래프와 같이 결정될 수 있다. 도 12를 참조하면, 사용자가 현재 읽고 있는 챕터의 가중치 유사도가 상대적으로 가장 높게 1로 설정되며, 현재 챕터를 기준으로 이미 읽은 챕터들의 유사도 가중치는 현재 챕터와 멀어질 수록 높은 기울기로 감소되고, 아직 읽지 않은 챕터들의 유사도 가중치는 현재 챕터와 멀어질 수록 상대적으로 더 완만한 기울기로 감소됨을 알 수 있다.
후보 전자책 ck에 대한 교육 과정과의 유사도 가중치 w(ck)는 아래 수학식 4에 의해 계산될 수 있다.
Figure 112016099105140-pat00007
여기서, d는 현재 챕터로부터의 거리를 의미한다. 예컨대, 현재 보고 있는 챕터가 1인 경우, 챕터 2에 대한 d 값은 1, 챕터 3에 대한 d 값은 2이다.
dr은 감소율(drop ratio)을 나타낸다. 예컨대, 읽을 챕터의 dr의 0.1로, 이미 읽은 챕터의 dr은 0.2로 설정될 수 있으며, dr은 실시예에 따라 다르게 설정될 수 있다.
이와 같이 추천 후보책과의 유사도 계산시 유사도 가중치를 적용하면, 현재 읽고 있는 챕터와 가장 유사한 추천 문서들을 찾을 수 있고, 이미 읽어서 알고 있는 내용보다 앞으로 읽을 문서에 가중치를 더 부여하여 추천 가능성이 높아지도록 할 수 있다.
도 10 및 도 11은 본 발명의 일 실시예에 따라 추천된 전자책을 사용자에게 제공하기 위한 화면을 예시한 것이다.
전자책 추천 서버는 상술한 방법으로 계산된 추천 점수에 따라 추천 순위를 부여하고 소정 점수 이상인 추천 후보책이나 소정 순위 내의 추천 후보책에 대한 정보를 사용자 단말에 송신할 것이다.
도 10을 참조하면, 사용자 단말은 브라우저(100)를 통해 추천 전자책의 내용을 사용자에게 제공하며, 사용자가 보고 있는 섹션의 콘텐츠 내용과의 유사도 및 교육 과정과의 유사도에 따라 추천된 외부 콘텐츠(110)가 추천될 수 있다.
도 11을 참조하면, 사용자가 현재 보고 있는 목차(112)에 해당하는 내용과 유사한 문서들(111)이 추천되었으며, 추천 후보책들의 소스로 AVR 카페 문서, Wikipedia 문서, 기타 웹 문서가 사용될 수 있다.
본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속한다.
10: 사용자 단말
11: 전자책 관리 모듈
12: 브라우저
20: 전자책 추천 서버
21: 지식 구조 획득 모듈
22: 쿼리 생성 모듈
23: 추천 모듈
30: API(Application Program Interface)
31: 공유 지식 구조 저장소
32: 도메인 지식 구조 저장소
33: 루씬 인덱스(Lucene Index)

Claims (4)

  1. 전자책 추천 서버가,
    사용자가 현재 보고 있는 전자책에 대한 지식 구조를 획득하는 단계와;
    상기 지식 구조의 그래프 중심도(Graph Centrality)를 이용하여 상기 지식 구조로부터 적어도 하나의 키워드를 추출함으로써 쿼리를 생성하는 단계와;
    상기 생성된 쿼리와 후보 전자책 간의 유사도를 계산하는 단계와;
    상기 유사도 계산 결과를 기반으로 상기 후보 전자책의 추천 점수를 계산하는 단계;를 수행하되,

    상기 쿼리를 생성하는 단계에서,
    사용자가 이미 읽은 섹션의 타이틀 키워드와 아직 읽지 않은 섹션의 타이틀 키워드에 대해 서로 다른 가중치를 적용하여 쿼리에 포함시키며,
    상기 서로 다른 가중치는 상기 후보 전자책과의 유사도 계산에 적용되며,
    상기 유사도 계산은 사용자가 이미 읽은 섹션의 타이틀 키워드보다 아직 읽지 않은 섹션의 타이틀 키워드에 높은 가중치가 적용되는 것을 특징으로 하는 지식 구조 기반의 전자책 추천 방법.
  2. 제1항에 있어서,
    상기 쿼리를 생성하는 단계에서,
    키워드 중요도에 따라 상기 쿼리에 포함시킬 키워드를 변경하거나 쿼리 내 키워드의 순서를 정렬하며,
    상기 키워드 중요도는,
    TF-IDF(Term Frequency - Inverse Document Frequency) 점수, 해당 노드의 링크 수 및 사용자가 현재 보고 있는 전자책의 섹션에 존재하는 키워드인지 여부에 의해 결정되는 것을 특징으로 하는 지식 구조 기반의 전자책 추천 방법.
  3. 제1항에 있어서,
    상기 쿼리를 생성하는 단계에서,
    상기 전자책의 지식 구조 그래프에서 노드 뭉치들 간에 매개체 역할을 하는 노드에 대응하는 키워드를 추출하는 중개성 중심도(Betweenness Centrality) 기반 추출 방식;
    지식 구조 그래프에서 전체 노드들과 가장 짧은 경로로 이어질 수 있는 노드에 대응하는 키워드를 추출하는 근사성 중심도(Closeness Centrality) 기반 추출 방식;
    지식 구조 그래프에서 중요 노드들과 가까이 연결된 노드에 대응하는 키워드를 추출하는 고유벡터 중심도(Eigenvector Centrality) 기반 추출 방식; 또는
    지식 구조 그래프에서 연결된 노드의 개수가 많은 노드에 대응하는 키워드를 추출하는 차수 중심도(Degree Centrality) 기반 추출 방식 중 어느 하나를 이용하는 것을 특징으로 하는 지식 구조 기반의 전자책 추천 방법.
  4. 제1항에 있어서,
    상기 유사도를 계산하는 단계에서,
    상기 후보 전자책과 상기 사용자가 현재 보고 있는 전자책의 섹션 간의 유사도를 각각 계산하고, 상기 사용자가 현재 보고 있는 전자책의 섹션을 중심으로 하여 모든 섹션에 서로 다른 유사도 가중치를 적용하되,
    상기 유사도 가중치는 상기 후보 전자책과 가장 유사한 섹션과 상기 사용자가 현재 보고 있는 전자책의 섹션 간의 거리에 의해 결정되는 것을 특징으로 하는 지식 구조 기반의 전자책 추천 방법.
KR1020160132521A 2016-10-13 2016-10-13 지식 구조 기반의 전자책 추천 방법 및 시스템 KR101826594B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160132521A KR101826594B1 (ko) 2016-10-13 2016-10-13 지식 구조 기반의 전자책 추천 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160132521A KR101826594B1 (ko) 2016-10-13 2016-10-13 지식 구조 기반의 전자책 추천 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR101826594B1 true KR101826594B1 (ko) 2018-02-07

Family

ID=61204186

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160132521A KR101826594B1 (ko) 2016-10-13 2016-10-13 지식 구조 기반의 전자책 추천 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101826594B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113032695A (zh) * 2019-12-25 2021-06-25 腾讯科技(深圳)有限公司 更换数据来源的方法、装置、设备和存储介质
CN115328362A (zh) * 2022-08-09 2022-11-11 北京字跳网络技术有限公司 书籍信息显示方法、装置、设备和存储介质
KR102540866B1 (ko) * 2022-04-11 2023-06-08 (주)데이타이음 하이퍼메타기반 지능형 추천 시스템 및 방법, 이를 구현하기 위한 프로그램이 저장된 기록매체 및 이를 구현하기 위해 매체에 저장된 컴퓨터프로그램

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009288870A (ja) * 2008-05-27 2009-12-10 Nec Corp 文書重要度算出システム、文書重要度算出方法およびプログラム
KR101272377B1 (ko) 2011-12-19 2013-06-07 한국과학기술원 시맨틱 클라우드에 기반한 시맨틱 어노테이션 방법 및 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009288870A (ja) * 2008-05-27 2009-12-10 Nec Corp 文書重要度算出システム、文書重要度算出方法およびプログラム
KR101272377B1 (ko) 2011-12-19 2013-06-07 한국과학기술원 시맨틱 클라우드에 기반한 시맨틱 어노테이션 방법 및 장치

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
권선영, "학술논문의 저자키워드 출현순서에 따른 저자키워드 중요도 측정을 위한 네트워크 분석방법의 적용에 관한 연구", 정보관리학회지, 2014.06, 121-142*
정원철 외2명, "고품질 슬라이드 선별을 위한 지식구조 기반 분류 기법", 정보과학회 컴퓨팅의 실제 논문지 20(12), 2014.12, 676-681*

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113032695A (zh) * 2019-12-25 2021-06-25 腾讯科技(深圳)有限公司 更换数据来源的方法、装置、设备和存储介质
CN113032695B (zh) * 2019-12-25 2023-10-17 腾讯科技(深圳)有限公司 更换数据来源的方法、装置、设备和存储介质
KR102540866B1 (ko) * 2022-04-11 2023-06-08 (주)데이타이음 하이퍼메타기반 지능형 추천 시스템 및 방법, 이를 구현하기 위한 프로그램이 저장된 기록매체 및 이를 구현하기 위해 매체에 저장된 컴퓨터프로그램
CN115328362A (zh) * 2022-08-09 2022-11-11 北京字跳网络技术有限公司 书籍信息显示方法、装置、设备和存储介质

Similar Documents

Publication Publication Date Title
US10956461B2 (en) System for searching, recommending, and exploring documents through conceptual associations
JP6381775B2 (ja) 情報処理システム及び情報処理方法
US20190073415A1 (en) Automatically linking text to concepts in a knowledge base
Golder et al. Usage patterns of collaborative tagging systems
US9576023B2 (en) User interface for summarizing the relevance of a document to a query
US20160012058A1 (en) Automatic new concept definition
US20160012057A1 (en) Computing the relevance of a document to concepts not specified in the document
US20160012092A1 (en) Inverted table for storing and querying conceptual indices
US11263400B2 (en) Identifying entity attribute relations
US20170011643A1 (en) Ranking of segments of learning materials
KR101826594B1 (ko) 지식 구조 기반의 전자책 추천 방법 및 시스템
Hu et al. Enabling semantic search and knowledge discovery for ArcGIS Online: A linked-data-driven approach
JP6928044B2 (ja) 提供装置、提供方法及び提供プログラム
Anh et al. Extracting user requirements from online reviews for product design: A supportive framework for designers
CN110110218A (zh) 一种身份关联方法及终端
Cantador et al. Semantic contextualisation of social tag-based profiles and item recommendations
JP6426074B2 (ja) 関連文書検索装置、モデル作成装置、これらの方法及びプログラム
Wasim et al. Extracting and modeling user interests based on social media
Antolić et al. Recommender system based on the analysis of publicly available data
JP7160971B2 (ja) コンテンツ制御装置
Poornima et al. Automatic Annotation of Educational Videos for Enhancing Information Retrieval.
Kumar et al. Domain and Intelligence Based Multimedia Question Answering System.
Petertonkoker et al. Scientific recommendations to enhance scholarly awareness and foster collaboration
WO2021095728A1 (ja) コンテンツ制御装置、コンテンツ制御システム、コンテンツ制御方法、及びコンテンツ制御プログラム
Wiklund A Recommendation system for News Push Notifications-Personalizing with a User-based and Content-based Recommendation system

Legal Events

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