KR20150086958A - 텍스트 기준점 기반의 저작권 침해 판단 시스템 및 그 방법 - Google Patents

텍스트 기준점 기반의 저작권 침해 판단 시스템 및 그 방법 Download PDF

Info

Publication number
KR20150086958A
KR20150086958A KR1020140007242A KR20140007242A KR20150086958A KR 20150086958 A KR20150086958 A KR 20150086958A KR 1020140007242 A KR1020140007242 A KR 1020140007242A KR 20140007242 A KR20140007242 A KR 20140007242A KR 20150086958 A KR20150086958 A KR 20150086958A
Authority
KR
South Korea
Prior art keywords
reference point
document
query
unit
search engine
Prior art date
Application number
KR1020140007242A
Other languages
English (en)
Other versions
KR101577376B1 (ko
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 KR1020140007242A priority Critical patent/KR101577376B1/ko
Priority to US14/586,892 priority patent/US20150206101A1/en
Publication of KR20150086958A publication Critical patent/KR20150086958A/ko
Application granted granted Critical
Publication of KR101577376B1 publication Critical patent/KR101577376B1/ko

Links

Images

Classifications

    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • 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/18Legal services
    • G06Q50/184Intellectual property management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/41Analysis of document content
    • G06V30/416Extracting the logical structure, e.g. chapters, sections or page numbers; Identifying elements of the document, e.g. authors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/41Analysis of document content
    • G06V30/418Document matching, e.g. of document images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/95Pattern authentication; Markers therefor; Forgery detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 텍스트 기준점 기반의 저작권 침해 판단 시스템 및 그 방법에 관한 것으로서, 문장 또는 단락 단위가 아닌, 윈도우 단위의 텍스트 기준점을 이용함으로써 자동으로 기준점을 추출하고, 추출된 기준점을 기반으로 저작권 침해 위치를 알 수 있으며, 기준점 정보를 색인하기 위해 검색엔진을 이용함으로써 저작권 침해 진단 속도 향상과 시스템의 확장성을 제공하도록 함에 그 목적이 있다.
이러한 목적을 달성하기 위한 본 발명은, 색인 대상 문서 또는 질의 문서를 등록하는 문서 등록부; 상기 문서 등록부로부터 색인 대상 문서를 입력받아, 윈도우 단위의 텍스트 기준점을 추출하며, 중복되는 기준점을 제거하고, 검색엔진으로 색인 정보를 전달하는 색인부; 문서의 색인 정보 저장과 검색을 수행하는 검색엔진; 및 상기 문서 등록부로부터 질의 문서를 입력받아, 윈도우 단위의 텍스트 기준점을 추출하고, 검색엔진에 한 번에 질의할 수 있는 기준점 및 선택된 기준점 블록에서 검색어를 선택하며, 선택된 검색어를 바탕으로 검색엔진에 질의하여 검색결과를 도출하며, 기준점 해시키와 질의 문서가 동일한 것을 찾아 기준점 블록의 유사도를 계산하여 침해를 판단하는 침해 판단부; 를 포함한다.

Description

텍스트 기준점 기반의 저작권 침해 판단 시스템 및 그 방법{SYSTEM AND METHOD FOR DETERMINING INFRINGEMENT OF COPYRIGHT BASED ON THE TEXT REFERENCE POINT}
본 발명은 저작권 침해 판단 시스템 및 그 방법에 관한 것으로서, 더욱 상세하게는 문장 또는 단락 단위가 아닌, 윈도우 단위의 텍스트 기준점을 이용하여 저작권 침해를 판단하고, 그 위치를 알려주는 기술에 관한 것이다.
저작권 침해 판단 기술과 관련해서는, 한국공개특허 제10-2013-0093230호(이하, '선행문헌') 외에 다수 공개 및 등록되어 있다.
상기한 선행문헌은, 사용자 단말로부터 저작물을 전송받아 등록 및 관리하는 관리서버; 상기 관리서버에 의해 수신되어 등록된 상기 저작물을 저장하는 저작물 DB; 웹상에서 다수의 웹사이트에 대해 크롤링을 하여 상기 웹사이트에 개시된 컨텐츠를 수집하고, 수집된 상기 컨텐츠를 상기 저작물 DB 에 저장되어 있는 상기 저작물과 비교하여 저작권 침해로 판단되는 상기 컨텐츠를 검출하는 검출서버; 및 상기 검출서버의 검출 결과를 토대로 저작권을 침해한 상기 컨텐츠를 개시한 상기 웹사이트에 대해 저작권 침해사실을 통지하는 메일서버; 를 포함한다.
한편, 인터넷의 발달로 찾고자 하는 정보를 손쉽게 찾을 수 있는 시대에 살고 있다. 인터넷은 정보의 접근성을 편리하게 도와주는 좋은 기능도 제공하지만 정보를 손쉽게 복사하고 저작권을 침해할 수 있는 환경도 제공하고 있다. 이에 따라, 저작권 침해를 판단할 수 있는 다양한 방법들도 같이 개발되고 있다.
기존의 저작권 침해를 판단하는 방법 중에 하나는, 문서를 문장 단위로 분할하여 문장 단위의 유사도를 구해 임계치 이상이면 표절로 간주하여 제공하는 방식을 사용하고 있다. 그러나, 문장을 이용한 저작권 침해 판단 방법은 다음과 같은 문제점을 가지고 있다.
첫째, 문장의 경계가 모호하여 문장의 구분이 명확하지 않을 경우가 존재한다는 사실이다.
가장 간단한 방법으로 문장 부호를 이용하여 문장을 분할하는 경우, 전문 편집자가 문장 부호를 정확하게 작업한 문서라면 문장 분할을 할 수 있을지 몰라도 일반인이 작성한 문서는 문장 부호만으로는 부족한 게 사실이다. 이를 보완하는 방법으로 추가적인 문장 분할 알고리즘을 사용한다면 문장 분할하기 위한 시간 소요가 늘어나며, 새로운 방법을 사용한다고 해도 완벽한 문장 분할을 제공하기 어렵다.
둘째, 저작권 문서 개수 가 적을 경우에는 문장으로 분할한다 하더라도 시스템에서 문장 정보를 충분히 관리 가능할 것이다. 하지만, 저작권 문서가 몇 만권 또는 몇 십만권 단위로 커질 경우 문장으로 분할 한 정보가 상당한 크기로 커질 것이다.
이러한 경우, 문장 정보가 너무 많아 침해 판단하는 시간이 너무 많이 소요할 수 있는 가능성이 있다. 더구나 앞으로는 인터넷에서 문서작성을 할 수 있도록 지원하는 구글 드라이브와 비슷한 서비스가 급증하고 있어, 인터넷이 되는 곳이면 어디든 문서를 생산할 수 있어 문서의 양은 기하급수적으로 증가할 수 있는 환경으로 가고 있다. 따라서, 저작권 침해 판단을 위한 색인 정보 크기를 조절할 수 있는 방법과 증가하는 문서에 대응 가능한 침해 판단 시스템이 필요하다.
본 발명은 상기와 같은 문제점을 감안하여 안출된 것으로, 문장 또는 단락 단위가 아닌, 윈도우 단위의 텍스트 기준점을 이용함으로써 자동으로 기준점을 추출하고, 추출된 기준점을 기반으로 저작권 침해 위치를 알 수 있으며, 기준점 정보를 색인하기 위해 검색엔진을 이용함으로써 저작권 침해 진단 속도 향상과 시스템의 확장성을 제공하도록 함에 그 목적이 있다.
이러한 기술적 과제를 달성하기 위한 본 발명은 텍스트 기준점 기반의 저작권 침해 판단 시스템에 관한 것으로서, 색인 대상 문서 또는 질의 문서를 등록하는 문서 등록부; 상기 문서 등록부로부터 색인 대상 문서를 입력받아, 윈도우 단위의 텍스트 기준점을 추출하며, 중복되는 기준점을 제거하고, 검색엔진으로 색인 정보를 전달하는 색인부; 문서의 색인 정보 저장과 검색을 수행하는 검색엔진; 및 상기 문서 등록부로부터 질의 문서를 입력받아, 윈도우 단위의 텍스트 기준점을 추출하고, 검색엔진에 한 번에 질의할 수 있는 기준점 및 선택된 기준점 블록에서 검색어를 선택하며, 선택된 검색어를 바탕으로 검색엔진에 질의하여 검색결과를 도출하며, 기준점 해시키와 질의 문서가 동일한 것을 찾아 기준점 블록의 유사도를 계산하여 침해를 판단하는 침해 판단부; 를 포함한다.
또한 상기 색인부는, 색인 대상 문서를 입력받는 문서 입력모듈; 기준점을 추출하기 위하여, 상기 문서 입력모듈을 통해 입력된 색인 대상 문서(Di)를 어절 단위로 분리하며, 윈도우 크기가 s 인 윈도우(Wi(s))로 분리하고, 윈도우마다 기준점(Fi(m))과, 기준점 블록(Bi(k))을 추출하는 기준점 추출모듈; 및 중복되는 기준점을 하나만 선택하여, 색인 대상 문서(Di)를 다시 중복되지 않는 기준점과 기준점 블록으로 구성하고, 검색엔진에 선택된 색인 정보를 전달하는 색인정보 선택모듈; 을 포함하는 것을 특징으로 한다.
또한 상기 검색엔진은, 등록요청 문서가 색인 대상 문서일 경우, 상기 색인부로부터 전달된 색인 정보를 저장하고, 실제 색인을 진행하는 것을 특징으로 한다.
또한 상기 검색엔진은, m개의 어절 집합으로 검색 시, 해시함수를 이용하여 기준점(F1(m))을 동일한 길이로 변환하며, 기준점 해시키(Hi(m))와 기준점 블록(Bi(k))을 하나의 레코드로서 저장하며, 기준점 해시키와 기준점 블록을 색인하는 것을 특징으로 한다.
또한 상기 검색엔진은, 등록요청 문서가 질의 문서일 경우, 선택된 기준점 해시키 및 검색어를 이용한 침해 판단부의 질의에 따라 검색결과를 상기 침해 판단부로 제공하는 것을 특징으로 한다.
또한 상기 침해 판단부는, 질의 문서를 입력받는 문서 입력모듈; 기준점을 추출하기 위해, 상기 문서 입력모듈을 통해 질의 문서(Q)를 어절 단위로 분리하며, 윈도우 크기가 s 인 윈도우(Wi(s))로 분리함으로써 윈도우마다 기준점(Fi(m))과 기준점 블록(Bi(k))을 추출하며, 기준점(Fi(m))를 해시키로 변환하는 기준점 추출모듈; 중복되는 기준점 해시키를 제거하고, 한 번에 검색엔진에 질의할 수 있는 N개 기준점을 선택하는 기준점 선택모듈; 상기 기준점 선택모듈을 통해 선택된 기준점 블록에서 검색어를 선택하는 검색어 선택모듈; 기준점 해시키와, 상기 검색어 선택모듈을 통해 선택된 검색어를 바탕으로, 검색엔진에 질의하여 검색결과를 도출하는 질의모듈; 및 상기 질의모듈을 통한 검색결과에 따른 질의한 기준점 해시키 값(RHi(m))과 질의 문서(QHi(m))가 동일한 것을 찾아, 기준점 블록의 유사도( SIM(RBi(k), QBi(k)) )를 계산하는 유사도 계산모듈; 을 포함하는 것을 특징으로 한다.
그리고 상기 유사도 계산모듈은, 상기 기준점 블록의 유사도( SIM(RBi(k), QBi(k)) 값이 임계치 이상일 경우, 최종적으로 사용자에게 저작권 침해가 발생했다고 판단하고, 기준점 블록 내용을 함께 표시하는 것을 특징으로 한다.
한편, 본 발명은 텍스트 기준점 기반의 저작권 침해 판단 방법에 관한 것으로서, (a) 문서 등록부가 사용자의 입력신호를 바탕으로, 등록요청 문서가 색인 대상 문서인지 또는 질의 문서인지 여부를 판단하는 과정; (b) 상기 (a) 과정의 판단결과, 등록요청 문서가 질의 문서일 경우, 상기 문서 등록부가 해당 문서를 침해 판단부로 전송하는 과정; (c) 상기 침해 판단부가 질의 문서(Q)를 입력받아, 어절 단위로 분리하며, 윈도우 크기가 s 인 윈도우(Wi(s))로 분리하는 과정; (d) 상기 침해 판단부가 윈도우마다 기준점(Fi(m))과 기준점 블록(Bi(k))을 추출하며, 기준점(Fi(m))를 해시키로 변환하는 과정; (e) 상기 침해 판단부가 중복되는 기준점 해시키를 제거하고, 한 번에 검색엔진에 질의할 수 있는 N개 기준점을 선택하며, 선택된 기준점 블록에서 검색어를 선택하는 과정; (f) 상기 침해 판단부가 기준점 해시키와 선택된 검색어를 바탕으로, 검색엔진에 질의하여 검색결과를 도출하는 과정; 및 (g) 상기 침해 판단부가 검색결과에 따른 질의한 기준점 해시키 값과 질의 문서가 동일한 것을 찾아, 기준점 블록의 유사도( SIM(RBi(k), QBi(k)) )를 계산하는 과정; 을 포함한다.
그리고 상기 (g) 과정의 계산결과, 상기 기준점 블록의 유사도( SIM(RBi(k), QBi(k)) ) 값이 임계치 이상일 경우, 상기 침해 판단부가 최종적으로 사용자에게 저작권 침해가 발생했다고 판단하고, 기준점 블록 내용을 함께 표시하는 것을 특징으로 한다.
한편, 본 발명은 텍스트 기준점 기반의 저작권 침해 판단 방법에 관한 것으로서, (a') 문서 등록부가 사용자의 입력신호를 바탕으로, 등록요청 문서가 색인 대상 문서인지 또는 질의 문서인지 여부를 판단하는 과정; (b') 상기 (a) 과정의 판단결과, 등록요청 문서가 색인 대상 문서일 경우, 상기 문서 등록부가 해당 문서를 색인부로 전송하는 과정; (c') 상기 색인부가 색인 대상 문서(Di)를 입력받아, 어절 단위로 분리하며, 윈도우 크기가 s 인 윈도우(Wi(s))로 분리하는 과정; (d') 상기 색인부가 윈도우마다 기준점(Fi(m))과, 기준점 블록(Bi(k))을 추출하는 과정; (e') 상기 색인부가 중복되는 기준점을 하나만 선택하여, 색인 대상 문서(Di)를 다시 중복되지 않는 기준점과 기준점 블록으로 구성하고, 검색엔진에 선택된 색인 정보를 전달하는 과정; (f') 상기 검색엔진이 해시함수를 이용하여 기준점을 해시키로 변환하고, 기준점 해시키(Hi(m))와 기준점 블록(Bi(k))을 하나의 레코드로서 저장하는 과정; 및 (g') 상기 검색엔진이 기준점 해시키와 기준점 블록을 색인하는 과정; 을 포함한다.
상기와 같은 본 발명에 따르면, 저작권 침해를 진단하기 위해 문장 또는 단락 단위가 아닌, 윈도우 단위의 텍스트의 기준점 방법을 이용함으로써 다양한 문서 편집 상태를 고민할 필요 없이 윈도우 단위로 기준점을 추출하여 저작권 침해 진단을 할 수 있는 효과가 있다.
또한 본 발명에 따르면, 윈도우를 이용한 기준점 추출 방법은 기준점과 기준점 블럭을 검색엔진에 적합한 색인 구조로 저장할 수 있어, 검색엔진을 이용할 수 있는 효과도 있다.
그리고 본 발명에 따르면, 검색엔진을 사용함으로써 저작권 침해 진단 속도 향상 및 대량의 기준점 정보에 대해서도 시스템의 확장성을 지원할 수 있는 효과도 있다.
도 1 은 본 발명에 따른 텍스트 기준점 기반의 저작권 침해 판단 시스템을 개념적으로 도시한 전체 구성도.
도 2 는 본 발명에 따른 색인부에 관한 세부 구성도.
도 3 은 본 발명에 따른 침해 판단부에 관한 세부 구성도.
도 4 는 본 발명에 따른 문서 색인 방법에 관한 전체 흐름도.
도 5 는 본 발명에 따른 저작권 침해 판단 방법에 관한 전체 흐름도.
본 발명의 구체적 특징 및 이점들은 첨부도면에 의거한 다음의 상세한 설명으로 더욱 명백해질 것이다. 이에 앞서 본 발명에 관련된 공지 기능 및 그 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는, 그 구체적인 설명을 생략하였음에 유의해야 할 것이다.
이하, 첨부된 도면을 참조하여 본 발명을 상세하게 설명한다.
본 발명에 따른 텍스트 기준점 기반의 저작권 침해 판단 시스템에 관하여 도 1 내지 도 3 을 참조하여 설명하면 다음과 같다.
본 발명에서는, 저작권 침해 판단을 위해 등록된 문서는, 색인 및 저작권 문서와 비교하여 저작권 침해 판단을 수행한다.
먼저, 색인 및 침해 판단 단계는, 윈도우 단위의 텍스트 기준점을 추출하는 기능을 수행하게 된다. 본 발명에서 적용하는 텍스트 기준점 방법은 윈도우(W), 기준점(F), 기준점 블록(B)을 이용하여 처리하며, 기본 방법을 설명하면 다음과 같다.
입력되는 문서(Di)는 다음과 같이 정의한다.
Di = {E1, E2, E3, E4, ......, En}
여기서, Di는 색인을 하기 위한 i번째 문서이며, Ei는 E1~En 중에서 i번째 어절이다. 어절은 기본적으로 문서를 공백문자를 기준으로 분리한 것을 의미하며, 추가적으로 심볼이나 숫자 등도 같이 이용될 수 있다.
문서는 위의 식처럼 E1~En 까지의 N개의 어절로 이루어진 순차적인 집합으로 정의될 수 있다.
또한, 윈도우(W)는 문서(Di)에서 기준점을 찾기 위한 순차적인 어절의 부분집합을 의미하며, 부분집합의 크기를 윈도우 크기로 정의한다.
Wi(s) = {Ei, Ei+1, ...., Ei+s}
여기서, Wi는 i번째 윈도우이며, s는 윈도우 크기를 나타낸다. Wi(s)는 i번째 윈도우에서 윈도우 크기가 s인 부분집합이다.
예를 들어, Di = {E1, E2, E3, E4, ......, E100}
E1 ~ E100 까지로 정의된 문서(Di)가 있다고 가정하고, s가 30인 Wi(30) 은 다음의 [표 1] 과 같이 표시할 수 있다.
윈도우 번호 윈도우 집합
W1(30) {E1, E2, E3, E4, ... E27, E28, E29, E30}
W2(30) {E2, E3, E4, E5, ... E28, E29, E30, E31}
W3(30) {E3, E4, E5, E6, ... E29, E30, E31, E32}
W4(30) {E4, E5, E6, E7, ... E30, E31, E32, E33}
W5(30) {E5, E6, E7, E8, ... E31, E32, E33, E34}
W6(30) {E6, E7, E8, E9, ... E32, E33, E34, E35}
W7(30) {E7, E8, E9, E10, ... E33, E34, E35, E36}
W8(30) {E8, E9, E10, E11, ... E34, E35, E36, E37}
... ...
W70(30) {E70, E71, E72, E73, ... E96, E97, E98, E99}
W71(30) {E71, E72, E73, E74, ... E97, E98, E99, E100}
윈도우(W)가 정해지면 윈도우마다 기준점(F)을 정하게 된다.
기준점(F)은 윈도우 집합에서 m개의 순차적 어절의 길이 합이 최대인 어절의 순차적 집합을 의미한다. 기준점(F)이 정해지면 기준점을 포함하여 좌우로 k개의 어절을 포함한 순차적 어절의 집합을 기준점 블록(B)으로 정의한다.
SUMj(m) =
Figure pat00001
Fi(m) = MAX(SUMj(m) : j=i, i+1, i+2, ..., i+s-m)
Bi(k) = {Ej-k, ..., Ej-2, Ej-1, Ej, Ej+1, Ej+2, ..., Ej+k}, k > m
여기서, SUMj(m)는 j번째 어절부터 m개 어절을 합한 길이이다.
기준점 Fi(m)는 MAX 함수를 통하여 Wi(s)에서 SUMj(m)의 값이 최대인 어절의 순차적 집합을 구한다.
기준점 블록 Bi(k)는 기준점 Fi(m)를 포함하는 좌우 k 만큼의 크기를 포함하는 순차적 어절의 집합을 의미한다. 예를 들어, 위의 [표 1] 에서 예로 정의된 Wi(30)에서 3개의 어절의 길이 합이 최대인 것, 즉 Fi(3)을 기준점으로 하고, 기준점을 포함하여 좌우로 5개, 즉 Bi(5) 을 기준점 블록으로 정했다면 Fi(3) 와 Bi(5)는 다음의 [표 2] 와 같이 된다.
윈도우 번호 기준점(예시) 기준점 블록(예시)
W1(30) F1(3) = {E10, E11, E12} B1(5) = {E5, ... ,E10,E11,E12, ... ,E15}
W2(30) F2(3) = {E10, E11, E12} B2(5) = {E5, ... ,E10,E11,E12, ... ,E15}
W3(30) F3(3) = {E10, E11, E12} B3(5) = {E5, ... ,E10,E11,E12, ... ,E15}
W4(30) F4(3) = {E10, E11, E12} B4(5) = {E5, ... ,E10,E11,E12, ... ,E15}
... ... ...
W40(30) F40(3) = {E47, E48, E49} B40(5) = {E42, ... ,E47,E48,E49, ... ,E52}
W41(30) F41(3) = {E47, E48, E49} B41(5) = {E42, ... ,E47,E48,E49, ... ,E52}
W42(30) F42(3) = {E47, E48, E49} B42(5) = {E42, ... ,E47,E48,E49, ... ,E52}
... ... ...
W70(30) F70(3) = {E80, E81, E82} B70(5) = {E75, ... ,E80,E81,E82, ... ,E85}
W71(30) F71(3) = {E80, E81, E82} B71(5) = {E75, ... ,E80,E81,E82, ... ,E85}
위의 [표 2] 에서 F1(3) 은 W1(30)에서 SUMj(3), j=1,2...,28 을 아래 [표 3] 처럼 가정을 할 경우, 최대인 어절 집합을 {E10, E11, E12}로 예를 든 것이다. SUMj(3) 의 최대값이 동일한게 존재할 경우 첫번째 최대값을 선택한다.
SUMj(3) 수식 어절 길이 합(예시)
SUM1(3) Len(E1)+Len(E2)+Len(E3) 7
SUM2(3) Len(E2)+Len(E3)+Len(E4) 7
SUM3(3) Len(E3)+Len(E4)+Len(E5) 8
.. ... ...
SUM9(3) Len(E9)+Len(E10)+Len(E11) 10
SUM10(3) Len(E10)+Len(E11)+Len(E12) 13
SUM11(3) Len(E11)+Len(E12)+Len(E13) 12
... ... ...
SUM26(3) Len(E26)+Len(E27)+Len(E28) 13
SUM27(3) Len(E27)+Len(E28)+Len(E29) 11
SUM28(3) Len(E28)+Len(E29)+Len(E30) 9
B1(5) 은 E10를 기준으로 좌우로 5개의 어절을 포함한 것을 예로 든 것이다.
기준점과 기준점 블록 추출이 완료되면 n개의 어절로 이루어진 Di를 다음과 같이 기준점(F)과 기준점 블록(B)으로 다시 정의 할 수 있다. s는 윈도우 크기, m 은 기준점 어절 수, k는 기준점 블록 크기이다.
Di = { (F1(m), B1(k)), (F2(m), B2(k)), ... , (Fn-s+1(m), Bn-s+1(k)) }
기준점과 기준점블록으로 이루어진 Di를 구성하고 나면 Di에서 중복되는 기준점을 제거하고 검색에진에 색인할 수 있도록 한다. 예를 들어, 위의 [표 3] 에서 W1(30), W2(30), W3(30), W4(30)가 동일하여 W1(30) 하나만 선택하고, W40(30), W41(30), W42(30) 가 동일하여 W40(30) 하나만 선택하고, W70(30), W71(30)가 동일하여 W70(30) 하나만 선택한다. 위의 표에서 중복을 제거하고 Di를 표현하면 다음과 같이 정의 될 수 있게 된다.
Di = { (F1(3), B1(5)), ... , (F40(3), B40(5)), ... , (F70(3), B70(5)) }
검색엔진에 중복되지 않는 기준점과 기준점블록 정보가 색인 완료되면 질의 문서를 기준점 기반으로 검색하여 저작권 침해 판단을 할 수 있다. 색인된 문서는 F, B 앞에 D를 붙이고 질의 문서는 F, B 앞에 Q를 붙여서 색인문서 Di 와 질의 문서 Q를 정의하면 다음과 같다. 중복되는 기준점은 하나만 사용한다.
Di = { (DF1(m), DB1(k)), ... , (DF20(m), DB20(k)), ... }
Q = { (QF1(m), QB1(k)), ... , (QF50(m), QB50(k)), ... }
질의문서 Q도 역시 기준점과 기준점 블록으로 동일하게 표현할 수 있으며, 윈도우 크기(s) 및 기준점 어절 수(m), 기준점 블록 크기(k) 등은 색인 설정과 동일해야 한다.
예를 들어, 질의문서 Q 에서 Di 문서의 DB20(k)를 복사한 부분이 QB50(k)이라고 가정하면, QF50(m)과 DF20(m)의 기준점이 동일하게 되어 질의문서 Q의 QF50(m)을 검색하게 되면 기준점이 같은 DF20(m)을 찾을 수 있게 된다.
하지만, QF50(m)과 같은 기준점은 Di 문서의 DF20(m) 외에도 여러개 존재할 수 있다. 이러한 경우 QF50(m) 과 같은 기준점으로 필터링한 후에 QB50(k) 기준점 블록에서 임의로 선택된 검색어를 필터링된 기준점 블록에 질의한다.
그러면, 검색엔진은 검색어와 유사도가 높은 RBi(k)가 결과로 나오게 된다. RBi(k)는 유사도 순위가 i번째인 검색된 기준점 블록을 의미한다. 여기에서 검색 결과 유사도가 임계치 이상인 RBi(k)를 선택하여 QB50(k)과 기준점 블록 사이의 유사도를 다시 계산하여 침해 판단을 판단할 수 있다. 따라서, 기준점을 기반으로 색인하게 되면 검색할 때 모든 기준점을 검색하지 않고 동일한 기준점으로 제한할 수 있어 검색 속도 향상과 침해 위치를 알 수 있게 된다.
도 1 은 본 발명에 따른 텍스트 기준점 기반의 저작권 침해 판단 시스템(S)을 개념적으로 도시한 전체 구성도로서, 도시된 바와 같이 문서 등록부(100), 색인부(200), 검색엔진(300) 및 침해 판단부(400)를 포함하여 이루어진다.
한편, 본 발명에 따른 텍스트 기준점 기반의 저작권 침해 판단 시스템(S), 저작권 문서 등록 및 사용자 로그인, 접속 로그 등과 관련한 정보를 내부 관리 데이터베이스에 저장하여 관리하며, 웹 브라우저로 접속하지 않고 C#, Java 등 개발언어로 개발된 기존의 어플리케이션에서도 접속 가능하도록 API 라이브러리를 제공한다.
문서 등록부(100)는 색인 대상 문서 또는 질의 문서를 등록한다.
이때, 문서 등록부(100)는 웹 서비스모듈로서, 사용자 인터페이스를 제공함으로써, 웹 브라우저를 이용하여 문서 등록부(100)에 접속할 수 있다.
한편, 본 발명에 따른 텍스트 기준점 기반의 저작권 침해 판단 시스템(S)은, 문서를 시스템에 등록하고자 할 경우 색인부(200)를 이용하여 색인을 수행하며, 질의 문서를 시스템에 있는 저작권 문서와 비교하고자 할 경우에는, 침해 판단부(400)를 통해 침해 판단을 수행한다.
따라서, 문서 등록부(100)는 사용자의 입력신호를 바탕으로, 등록요청 문서가 색인 대상 문서인지 또는 질의 문서인지 여부를 판단한다.
색인부(200)는 문서 등록부(100)로부터 색인 대상 문서(Di)를 입력받아, 윈도우 단위의 텍스트 기준점을 추출하며, 중복되는 기준점을 제거하고, 검색엔진(300)으로 색인 정보를 전달하는 기능을 수행하는 바, 도 2 에 도시된 바와 같이 문서 입력모듈(210), 기준점 추출모듈(220) 및 색인정보 선택모듈(230)을 포함한다.
구체적으로, 문서 입력모듈(210)는 색인 대상 문서를 입력받는다.
이때, 문서 입력모듈(210)은 웹 브라우저 또는 API를 이용하여 문서 등록부(100)로부터 색인 대상 문서를 입력받는다.
기준점 추출모듈(220)은 기준점을 추출하기 위하여, 문서 입력모듈(210)을 통해 입력된 색인 대상 문서(Di)를 [수식 1] 과 같이 어절 단위로 분리하며, 윈도우 크기가 s 인 윈도우(Wi(s))로 분리한다.
[수식 1]
Di = {E1, E2, E3, E4, ......, En}
윈도우 크기(s)는 추출되는 기준점 수에 영향을 준다.
윈도우 크기가 클수록 기준점 수가 적어지게 되고, 윈도우 크기가 작을수록 기준점 수가 증가하게 된다. 윈도우 크기가 클 경우, 완전 복사한 침해 문서를 찾기는 쉬워도 작은 영역의 부분 복사는 침해 판단을 못하는 확률이 커진다. 반대로, 윈도우 크기가 작을 경우, 완전 복사한 침해 문서부터 부분 복사한 침해 판단까지 가능하나 기준점 수가 많이 추출된다. 따라서, 윈도우 크기는 부분 복사의 크기를 어느 정도까지 판단할 수 있는가와 시스템이 허용할 수 있는 총 기준점 수를 결정하여 윈도우 크기를 정해야 한다.
또한, 기준점 추출모듈(220)은 윈도우마다 기준점(Fi(m))과, 기준점 블록(Bi(k))을 추출한다. 이에 따라, 다음의 [수식 2] 와 같이 색인 대상 문서(Di)가 정의된다.
[수식 2]
Di = { (F1(m), B1(k)), (F2(m), B2(k)), ... , (Fn-s+1(m), Bn-s+1(k)) }
색인정보 선택모듈(230)은 중복되는 기준점을 선택하여 제거함으로써, 중복되지 않는 기준점과 기준점 블록으로 구성한다.
기준점(Fi(m))은 윈도우(Wi(s))에서 m개 어절 길이의 합이 최대인 것을 기준점으로 결정하기 때문에, 윈도우가 한 어절씩 이동하더라도 기준점의 변동은 자주 발생하지 않는다.
이에 따라, 색인정보 선택모듈(230)은 중복되는 기준점을 하나만 선택하여, 색인 대상 문서(Di)를 다시 중복되지 않는 기준점과 기준점 블록으로 구성하고, 검색엔진(300)에 선택된 색인 정보를 전달한다.
예를 들어, 색인 대상 문서(Di)에서 중복되지 않은 선택된 기준점이 F1(m), F20(m), F50(m), F80(m) 라고 가정하면, 다음의 [수식 3] 과 같이 색인 대상 문서(Di)는 다음의 [수식 3] 과 같이 표현된다.
[수식 3]
Di = { (F1(m), B1(k)), (F20(m), B20(k)), (F50(m), B50(k)), (F80(m), B80(k))}
검색엔진(300)은 문서의 색인 정보 저장과 검색을 수행한다.
여기서, 등록요청 문서가 색인 대상 문서일 경우, 색인부(200)로부터 전달된 색인 정보를 저장하고, 실제 색인을 진행한다.
이때, 검색 효율을 높이기 위해, 검색엔진(300)은 m개의 어절 집합으로 검색할 때, 다음의 [수식 4] 와 같이 해시함수를 이용하여, 기준점(F1(m))을 동일한 길이로 변환한다.
[수식 4]
Hi(m) = hash(Fi(m))
즉, 기준점(Fi(m))에 속한 m개의 어절을 hash 함수에 입력하면, 검색엔진(300)은 분리되어 있는 입력된 어절을 모두 하나로 연결한 후, 해시키로 변환하여 반환한다.
예를 들면, 위에서 기준점이 F1(m), F20(m), F50(m), F80(m) 가 선택된 문서는 검색엔진에 저장하기 위해, 다음의 [수식 5] 와 같이 기준점이 해시키로 변환된다.
[수식 5]
Di = { (H1(m), B1(k)), (H20(m), B20(k)), (H50(m), B50(k)), (H80(m), B80(k))}
또한, 검색엔진(300)은 기준점 해시키(Hi(m))와 기준점 블록(Bi(k))을 하나의 레코드로서 저장하며, 기준점 해시키와 기준점 블록을 색인한다.
이에 따라, 기준점 해시키는 해시키 값을 색인하게 되며, 기준점 블록은 기준점 블록에 포함된 어절 Ei를 색인하게 된다.
그리고, 검색엔진(300)은 등록요청 문서가 질의 문서일 경우, 선택된 기준점 해시키 및 검색어를 이용한 침해 판단부(400)의 질의에 따라 검색결과를 침해 판단부(400)로 제공한다.
침해 판단부(400)는 문서 등록부(100)로부터 질의 문서(Q)를 입력받아, 윈도우 단위의 텍스트 기준점을 추출하고, 검색엔진(300)에 한 번에 질의할 수 있는 기준점 및 선택된 기준점 블록에서 검색어를 선택하며, 선택된 검색어를 바탕으로 검색엔진(300)에 질의하여 검색결과를 도출하며, 기준점 해시키와 질의 문서가 동일한 것을 찾아 기준점 블록의 유사도를 계산하여 침해를 판단하는 기능을 수행하는 바, 도 3 에 도시된 바와 같이 문서 입력모듈(410), 기준점 추출모듈(420), 기준점 선택모듈(430), 검색어 선택모듈(440), 질의모듈(450) 및 유사도 계산모듈(460)을 포함한다.
구체적으로, 문서 입력모듈(410)는 질의 문서를 입력받는다.
이때, 문서 입력모듈(410)은 웹 브라우저 또는 API를 이용하여 문서 등록부(100)로부터 질의 문서를 입력받는다.
질의 문서(Q)도 역시 기준점과 기준점 블록으로 동일하게 표현할 수 있으며, 윈도우 크기(s) 및 기준점 어절 수(m), 기준점 블록 크기(k) 등은 색인 설정과 동일해야 한다.
따라서, 기준점 추출모듈(420)은 기준점을 추출하기 위해, 문서 입력모듈(410)을 통해 질의 문서(Q)를 다음의 [수식 6] 과 같이 어절 단위로 분리한다.
[수식 6]
Q = {E1, E2, E3, E4, ......, En}
또한, 기준점 추출모듈(420)은 색인 단계와 동일하게, 윈도우 크기가 s 인 윈도우(Wi(s))로 분리함으로써 윈도우마다 기준점(Fi(m))과 기준점 블록(Bi(k))을 추출하며, 기준점(Fi(m))를 해시키로 변환하여, 다음의 [수식 7] 과 같이 질의 문서(Q)를 다시 정의할 수 있다.
[수식 7]
Q = { (H1(m), B1(k)), (H2(m), B2(k)), ... , (Hn-s+1(m), Bn-s+1(k)) }
이와 같이, 질의 문서(Q)가 기준점 해시키와 기준점 블록으로 재정의하고 나면, 기준점 선택모듈(430)은 중복되는 기준점 해시키를 제거하고, 한 번에 검색엔진(300)에 질의할 수 있는 N개 기준점을 선택한다.
검색엔진(300)은 기준점 해시키 및 검색어 질의를 한번에 OR 조건으로 질의할 수 있는 최대값이 존재한다. 한 번에 질의할 수 있는 검색엔진 최대값보다 작거나 같게 N개 기준점을 선택해야 한다.
예를 들어, 질의 문서(Q)에서 추출된 중복되지 않는 기준점이 1000개이고, 검색엔진이 한번에 최대 100개를 질의할 수 있다면, 질의를 위한 기준점 선택은 최소 1개에서 최대 100개를 지정할 수 있게 된다.
기준점 100개를 지정했다면 최대 10번을 반복해서 검색하면 질의 문서(Q)의 1000개 기준점에 대해 모두 검색을 할 수 있게 된다. 모든 기준점을 검색하는 것은 검색 시간은 증가하나, 저작권 침해 판단의 정확성을 높일 수 있다. 완전 복사한 저작권 침해 문서만을 판단하는 경우에는 최소 1번만 시도해도 가능하기 때문에 침해 판단 사용 목적에 따라 선택되는 기준점 수와 반복 횟수를 결정해야 한다.
검색어 선택모듈(440)은 기준점 선택모듈(430)을 통해 선택된 기준점 블록에서 검색어를 선택한다.
기준점 해시키만 가지고 검색엔진(300)에 질의할 수 도 있지만, 동일한 기준점 해시키가 여러 개 존재할 경우 검색된 모든 결과에 대해 기준점 블록을 검사해야 한다.
하지만, 검색어를 같이 질의하면, 검색어와 색인된 기준점 블록이 유사도가 높은 순으로 정렬할 수 있기 때문에, 임계치를 설정하여 임계치 이상만 침해 판단을 한다면 검색속도를 향상시킬 수 있다.
검색어를 선택하기 위해 기준점 블록을 하나의 문서라고 가정한다면, tf-idf 가중치를 이용할 수 있게 된다.
[수식 8]
Figure pat00002
여기서,
Figure pat00003
는 i번째 기준점 블록(Bi(k))에서 어절 e 의 tf-idf 가중치이며,
Figure pat00004
는 i번째 기준점 블록(Bi(k))에서 어절 e 의 출현빈도이며, N 은 선택된 기준점 블록 수이고,
Figure pat00005
는 어절 e 가 출현한 기준점 블록 수이다.
tf-idf 가중치인
Figure pat00006
가 높은 N/2 개의 어절 Ei를 선택하며,
Figure pat00007
가 동일한 경우에는 어절 Ei의 길이가 큰 것을 먼저 선택한다.
선택된 검색어 어절 Ei가 N개의 기준점 블록에서 최소한 한 개 이상 포함되는지 확인하고, Ei가 기준점 블록에 없다면 기준점 블록에서 최대 길이의 어절을 선택하여 검색어에 최대 N개 이내에서 추가한다.
선택된 검색어 수가 최대 N개가 되면 검색어를 더 이상 추가하지 않는다.
질의모듈(450)은 기준점 해시키와, 검색어 선택모듈(440)를 통해 선택된 검색어를 바탕으로, 검색엔진(300)에 질의하여 검색결과를 도출한다.
검색엔진(300)에 기준점 해시키를 OR 연산자로 검색하여 필터링한 후, 검색어를 OR 연산자로 색인된 기준점 블록을 검색하면 유사도가 높은 순으로 검색결과를 가져올 수 있다. 유사도가 높은 순으로 정렬할 수 있기 때문에 임계치를 설정하여, 임계치 이상만 침해 판단을 한다면 검색속도를 향상시킬 수 있다.
n개의 검색결과 R은, 기준점 해시키(H) 및 기준점 블록(B) 앞에 R을 붙여 다음의 [수식 9] 와 같이 표시한다.
[수식 9]
R = { (RH1(m), RB1(k)), (RH2(m), RB2(k)), ... , (RHn(m), RBn(k)) }
여기서, RHi(m)는 유사도 순위가 i번째인 검색된 기준점 해시키이며, RBi(k)는 유사도 순위가 i번째인 검색된 기준점 블록이다. RHi(m)는 질의한 기준점 해시키 중에 포함된 값이다.
유사도 계산모듈(460)은 질의모듈(450)을 통한 검색결과에 따른 질의한 기준점 해시키 값(RHi(m))과 질의 문서(QHi(m))가 동일한 것을 찾아, 다음의 [수식 10] 과 같이 기준점 블록의 유사도( SIM(RBi(k), QBi(k)) )를 계산한다.
[수식 10]
SIM(RBi(k), QBi(k)) = | RBi(k) ∩ QBi(k)| / | QBi(k)|
여기서, | QBi(k)| 은 질의 문서(QBi(k))의 기준점 블록에 포함된 어절 수이며, | RBi(k) ∩ QBi(k)| 은 질의문서 QBi(k) 와 RBi(k) 의 기준점 블록 교집합을 구한 어절의 수이다.
즉, 유사도 계산모듈(460)은 SIM(RBi(k), QBi(k)) 값이 임계치 이상일 경우, 최종적으로 사용자에게 저작권 침해가 발생했다고 판단하고, RBi(k)와 QBi(k) 의 기준점 블록 내용을 함께 표시함으로써, 질의 문서(Q)의 모든 내용을 읽지 않고도 저작권이 침해된 위치를 쉽게 알 수 있게 된다.
상술한 바와 같은, 침해 판단부(400)를 통해 처리된 정보는 검색엔진(300)으로 전달하며, 실제로 저작권 문서의 색인 정보 저장과 검색을 처리하게 된다.
이때, 검색엔진(300)은 상용제품을 사용할 수 도 있고, 오픈 소스 검색엔진을 이용할 수 도 있다. 예를 들어, 아파치 재단에서 개발하고 있는 Solr 검색엔진 같은 경우는 스키마 형태로 색인 구조를 구성할 수 있고, 검색 조건도 다양하게 지원하고 있다. 또한, 클라우드를 지원하고 있어 대량의 문서 색인도 처리할 수 있도록 지원하고 있다. 따라서, 기존의 다양한 검색엔진(300) 중, 침해 판단부를 필요로 하는 색인 기능과 검색 기능을 지원하는 검색엔진(300)을 선택하여 저작권 침해 판단 시스템을 구성할 수 있다.
이하에서는, 상술한 시스템을 이용한 문서 색인 방법 및 저작권 침해 판단 방법에 관하여 도 4 및 도 5 를 참조하여 설명하면 다음과 같다.
먼저, 문서 색인 방법에 관하여 도 4 를 참조하여 설명하면 다음과 같다.
문서 등록부(100)는 사용자의 입력신호를 바탕으로, 등록요청 문서가 색인 대상 문서인지 또는 질의 문서인지 여부를 판단한다(S10).
제S10 단계의 판단결과, 등록요청 문서가 색인 대상 문서일 경우, 문서 등록부(100)는 해당 문서를 색인부(200)로 전송한다(S20).
색인부(200)의 문서 입력모듈(210)는 색인 대상 문서를 입력받는다(S30).
또한, 기준점 추출모듈(220)은 기준점을 추출하기 위하여, 문서 입력모듈(210)을 통해 입력된 색인 대상 문서(Di)를 어절 단위로 분리하며(S40), 윈도우 크기가 s 인 윈도우(Wi(s))로 분리한다(S50).
또한, 기준점 추출모듈(220)은 윈도우마다 기준점(Fi(m))과, 기준점 블록(Bi(k))을 추출하며(S60), 색인정보 선택모듈(230)은 중복되는 기준점을 하나만 선택하여, 색인 대상 문서(Di)를 다시 중복되지 않는 기준점과 기준점 블록으로 구성하고(S70), 검색엔진(300)에 선택된 색인 정보를 전달한다(S80).
이후, 검색엔진(300)은 해시함수를 이용하여 기준점을 해시키로 변환하고(S90), 기준점 해시키(Hi(m))와 기준점 블록(Bi(k))을 하나의 레코드로서 저장하며(S100), 기준점 해시키와 기준점 블록을 색인한다(S110).
도 5 를 참조하여 저작권 침해 판단 방법에 관하여 설명하면 다음과 같다.
문서 등록부(100)는 사용자의 입력신호를 바탕으로, 등록요청 문서가 색인 대상 문서인지 또는 질의 문서인지 여부를 판단한다(S210).
제S210 단계의 판단결과, 등록요청 문서가 질의 문서인 경우, 해당 문서를 침해 판단부(400)로 전송한다(S220).
침해 판단부(400)의 문서 입력모듈(410)는 질의 문서를 입력받는다(S230).
또한, 침해 판단부(400)의 기준점 추출모듈(420)은 기준점을 추출하기 위하여, 문서 입력모듈(410)을 통해 질의 문서(Q)를 어절 단위로 분리하며(S240), 윈도우 크기가 s 인 윈도우(Wi(s))로 분리한다(S250).
또한, 기준점 추출모듈(420)은 윈도우마다 기준점(Fi(m))과 기준점 블록(Bi(k))을 추출하며(S260), 기준점(Fi(m))를 해시키로 변환한다(S270).
뒤이어, 기준점 선택모듈(430)은 중복되는 기준점 해시키를 제거하고, 한 번에 검색엔진(300)에 질의할 수 있는 N개 기준점을 선택하며(S280), 검색어 선택모듈(440)은 선택된 기준점 블록에서 검색어를 선택한다(S290).
또한, 질의모듈(450)은 기준점 해시키와 선택된 검색어를 바탕으로, 검색엔진(300)에 질의하여 검색결과를 도출한다(S300).
유사도 계산모듈(460)은 검색결과에 따른 질의한 기준점 해시키 값과 질의 문서가 동일한 것을 찾아, 기준점 블록의 유사도( SIM(RBi(k), QBi(k)) )를 계산한다(S310).
그리고, 유사도 계산모듈(460)은 기준점 블록의 유사도( SIM(RBi(k), QBi(k)) )값이 임계치 이상일 경우, 최종적으로 사용자에게 저작권 침해가 발생했다고 판단하고, 기준점 블록 내용을 함께 표시한다(S320).
지금까지 상술한 바와 같은, 본 발명에 따른 텍스트 기준점 기반의 저작권 침해 판단 시스템 및 그 방법은, 윈도우를 이용한 기준점 추출 방법을 이용하여 자동으로 기준점을 추출할 수 있도록 제공하며, 기준점을 기반으로 저작권 침해 위치를 검색할 수 있어 저작권 문서의 어느 부분에 저작권 침해가 발생했는지 진단할 수 있다.
또한, 윈도우 방법을 이용하면 문장 단위의 기존 진단 방식에서 나타날 수 있는 문장의 경계가 모호하여 문장을 구분하기 힘든 문제점도 해결할 수 있으며, 기준점을 검색엔진에서 사용할 수 있도록 색인 구조로 저장함으로써 저작권 침해 진단 속도 향상과 대량의 문서도 색인할 수 있는 시스템의 확장성을 제공할 수 있는 특징적인 장점을 가진다.
이상으로 본 발명의 기술적 사상을 예시하기 위한 바람직한 실시예와 관련하여 설명하고 도시하였지만, 본 발명은 이와 같이 도시되고 설명된 그대로의 구성 및 작용에만 국한되는 것이 아니며, 기술적 사상의 범주를 일탈함이 없이 본 발명에 대해 다수의 변경 및 수정이 가능함을 당업자들은 잘 이해할 수 있을 것이다. 따라서, 그러한 모든 적절한 변경 및 수정과 균등물들도 본 발명의 범위에 속하는 것으로 간주되어야 할 것이다.
100: 문서 등록부 200: 색인부
300: 검색엔진 400: 침해 판단부
210: 문서 입력모듈 220: 기준점 추출모듈
230: 색인정보 선택모듈 410: 문서 입력모듈
420: 기준점 추출모듈 430: 기준점 선택모듈
440: 검색어 선택모듈 450: 질의모듈
460: 유사도 계산모듈

Claims (10)

  1. 색인 대상 문서 또는 질의 문서를 등록하는 문서 등록부(100);
    상기 문서 등록부(100)로부터 색인 대상 문서를 입력받아, 윈도우 단위의 텍스트 기준점을 추출하며, 중복되는 기준점을 제거하고, 검색엔진(300)으로 색인 정보를 전달하는 색인부(200);
    문서의 색인 정보 저장과 검색을 수행하는 검색엔진(300); 및
    상기 문서 등록부(100)로부터 질의 문서를 입력받아, 윈도우 단위의 텍스트 기준점을 추출하고, 검색엔진(300)에 한 번에 질의할 수 있는 기준점 및 선택된 기준점 블록에서 검색어를 선택하며, 선택된 검색어를 바탕으로 검색엔진(300)에 질의하여 검색결과를 도출하며, 기준점 해시키와 질의 문서가 동일한 것을 찾아 기준점 블록의 유사도를 계산하여 침해를 판단하는 침해 판단부(400); 를 포함하는 텍스트 기준점 기반의 저작권 침해 판단 시스템.
  2. 제 1 항에 있어서,
    상기 색인부(200)는,
    색인 대상 문서를 입력받는 문서 입력모듈(210);
    기준점을 추출하기 위하여, 상기 문서 입력모듈(210)을 통해 입력된 색인 대상 문서(Di)를 어절 단위로 분리하며, 윈도우 크기가 s 인 윈도우(Wi(s))로 분리하고, 윈도우마다 기준점(Fi(m))과, 기준점 블록(Bi(k))을 추출하는 기준점 추출모듈(220); 및
    중복되는 기준점을 하나만 선택하여, 색인 대상 문서(Di)를 다시 중복되지 않는 기준점과 기준점 블록으로 구성하고, 검색엔진(300)에 선택된 색인 정보를 전달하는 색인정보 선택모듈(230); 을 포함하는 것을 특징으로 하는 텍스트 기준점 기반의 저작권 침해 판단 시스템.
  3. 제 1 항에 있어서,
    상기 검색엔진(300)은,
    등록요청 문서가 색인 대상 문서일 경우, 상기 색인부(200)로부터 전달된 색인 정보를 저장하고, 실제 색인을 진행하는 것을 특징으로 하는 텍스트 기준점 기반의 저작권 침해 판단 시스템.
  4. 제 1 항에 있어서,
    상기 검색엔진(300)은,
    m개의 어절 집합으로 검색 시, 해시함수를 이용하여 기준점(F1(m))을 동일한 길이로 변환하며, 기준점 해시키(Hi(m))와 기준점 블록(Bi(k))을 하나의 레코드로서 저장하며, 기준점 해시키와 기준점 블록을 색인하는 것을 특징으로 하는 텍스트 기준점 기반의 저작권 침해 판단 시스템.
  5. 제 1 항에 있어서,
    상기 검색엔진(300)은,
    등록요청 문서가 질의 문서일 경우, 선택된 기준점 해시키 및 검색어를 이용한 침해 판단부(400)의 질의에 따라 검색결과를 상기 침해 판단부(400)로 제공하는 것을 특징으로 하는 텍스트 기준점 기반의 저작권 침해 판단 시스템.
  6. 제 1 항에 있어서,
    상기 침해 판단부(400)는,
    질의 문서를 입력받는 문서 입력모듈(410);
    기준점을 추출하기 위해, 상기 문서 입력모듈(410)을 통해 질의 문서(Q)를 어절 단위로 분리하며, 윈도우 크기가 s 인 윈도우(Wi(s))로 분리함으로써 윈도우마다 기준점(Fi(m))과 기준점 블록(Bi(k))을 추출하며, 기준점(Fi(m))를 해시키로 변환하는 기준점 추출모듈(420);
    중복되는 기준점 해시키를 제거하고, 한 번에 검색엔진(300)에 질의할 수 있는 N개 기준점을 선택하는 기준점 선택모듈(430);
    상기 기준점 선택모듈(430)을 통해 선택된 기준점 블록에서 검색어를 선택하는 검색어 선택모듈(440);
    기준점 해시키와, 상기 검색어 선택모듈(440)을 통해 선택된 검색어를 바탕으로, 검색엔진(300)에 질의하여 검색결과를 도출하는 질의모듈(450); 및
    상기 질의모듈(450)을 통한 검색결과에 따른 질의한 기준점 해시키 값(RHi(m))과 질의 문서(QHi(m))가 동일한 것을 찾아, 기준점 블록의 유사도( SIM(RBi(k), QBi(k)) )를 계산하는 유사도 계산모듈(460); 을 포함하는 것을 특징으로 하는 텍스트 기준점 기반의 저작권 침해 판단 시스템.
  7. 제 6 항에 있어서,
    상기 유사도 계산모듈(460)은,
    상기 기준점 블록의 유사도( SIM(RBi(k), QBi(k)) 값이 임계치 이상일 경우, 최종적으로 사용자에게 저작권 침해가 발생했다고 판단하고, 기준점 블록 내용을 함께 표시하는 것을 특징으로 하는 텍스트 기준점 기반의 저작권 침해 판단 시스템.
  8. (a) 문서 등록부(100)가 사용자의 입력신호를 바탕으로, 등록요청 문서가 색인 대상 문서인지 또는 질의 문서인지 여부를 판단하는 과정;
    (b) 상기 (a) 과정의 판단결과, 등록요청 문서가 질의 문서일 경우, 상기 문서 등록부(100)가 해당 문서를 침해 판단부(400)로 전송하는 과정;
    (c) 상기 침해 판단부(400)가 질의 문서(Q)를 입력받아, 어절 단위로 분리하며, 윈도우 크기가 s 인 윈도우(Wi(s))로 분리하는 과정;
    (d) 상기 침해 판단부(400)가 윈도우마다 기준점(Fi(m))과 기준점 블록(Bi(k))을 추출하며, 기준점(Fi(m))를 해시키로 변환하는 과정;
    (e) 상기 침해 판단부(400)가 중복되는 기준점 해시키를 제거하고, 한 번에 검색엔진(300)에 질의할 수 있는 N개 기준점을 선택하며, 선택된 기준점 블록에서 검색어를 선택하는 과정;
    (f) 상기 침해 판단부(400)가 기준점 해시키와 선택된 검색어를 바탕으로, 검색엔진(300)에 질의하여 검색결과를 도출하는 과정; 및
    (g) 상기 침해 판단부(400)가 검색결과에 따른 질의한 기준점 해시키 값과 질의 문서가 동일한 것을 찾아, 기준점 블록의 유사도( SIM(RBi(k), QBi(k)) )를 계산하는 과정; 을 포함하는 텍스트 기준점 기반의 저작권 침해 판단 방법.
  9. 제 8 항에 있어서,
    상기 (g) 과정의 계산결과,
    상기 기준점 블록의 유사도( SIM(RBi(k), QBi(k)) ) 값이 임계치 이상일 경우, 상기 침해 판단부(400)가 최종적으로 사용자에게 저작권 침해가 발생했다고 판단하고, 기준점 블록 내용을 함께 표시하는 것을 특징으로 하는 텍스트 기준점 기반의 저작권 침해 판단 방법.
  10. (a') 문서 등록부(100)가 사용자의 입력신호를 바탕으로, 등록요청 문서가 색인 대상 문서인지 또는 질의 문서인지 여부를 판단하는 과정;
    (b') 상기 (a) 과정의 판단결과, 등록요청 문서가 색인 대상 문서일 경우, 상기 문서 등록부(100)가 해당 문서를 색인부(200)로 전송하는 과정;
    (c') 상기 색인부(200)가 색인 대상 문서(Di)를 입력받아, 어절 단위로 분리하며, 윈도우 크기가 s 인 윈도우(Wi(s))로 분리하는 과정;
    (d') 상기 색인부(200)가 윈도우마다 기준점(Fi(m))과, 기준점 블록(Bi(k))을 추출하는 과정;
    (e') 상기 색인부(200)가 중복되는 기준점을 하나만 선택하여, 색인 대상 문서(Di)를 다시 중복되지 않는 기준점과 기준점 블록으로 구성하고, 검색엔진(300)에 선택된 색인 정보를 전달하는 과정;
    (f') 상기 검색엔진(300)이 해시함수를 이용하여 기준점을 해시키로 변환하고, 기준점 해시키(Hi(m))와 기준점 블록(Bi(k))을 하나의 레코드로서 저장하는 과정; 및
    (g') 상기 검색엔진(300)이 기준점 해시키와 기준점 블록을 색인하는 과정; 을 포함하는 텍스트 기준점 기반의 저작권 침해 판단 방법.
KR1020140007242A 2014-01-21 2014-01-21 텍스트 기준점 기반의 저작권 침해 판단 시스템 및 그 방법 KR101577376B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140007242A KR101577376B1 (ko) 2014-01-21 2014-01-21 텍스트 기준점 기반의 저작권 침해 판단 시스템 및 그 방법
US14/586,892 US20150206101A1 (en) 2014-01-21 2014-12-30 System for determining infringement of copyright based on the text reference point and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140007242A KR101577376B1 (ko) 2014-01-21 2014-01-21 텍스트 기준점 기반의 저작권 침해 판단 시스템 및 그 방법

Publications (2)

Publication Number Publication Date
KR20150086958A true KR20150086958A (ko) 2015-07-29
KR101577376B1 KR101577376B1 (ko) 2015-12-14

Family

ID=53545113

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140007242A KR101577376B1 (ko) 2014-01-21 2014-01-21 텍스트 기준점 기반의 저작권 침해 판단 시스템 및 그 방법

Country Status (2)

Country Link
US (1) US20150206101A1 (ko)
KR (1) KR101577376B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101634754B1 (ko) * 2015-10-15 2016-07-22 (주)여섯번째데이터 저작물 공유에 대한 모니터링 방법 및 장치

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105373521B (zh) * 2015-12-04 2018-06-29 湖南工业大学 一种基于Minwise Hash动态多阈值过滤计算文本相似度的方法
CN107832384A (zh) * 2017-10-28 2018-03-23 北京安妮全版权科技发展有限公司 侵权检测方法、装置、存储介质和电子设备
CN109635090A (zh) * 2018-12-14 2019-04-16 安徽中船璞华科技有限公司 一种基于机器学习的版权追踪方法
JP7404662B2 (ja) * 2019-06-03 2023-12-26 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
CN111898360B (zh) * 2019-07-26 2023-09-26 创新先进技术有限公司 基于区块链的文本相似性检测方法及装置、电子设备
CN114357977B (zh) * 2022-03-18 2022-06-14 北京创新乐知网络技术有限公司 一种反抄袭实现方法、系统、设备及存储介质

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6834276B1 (en) * 1999-02-25 2004-12-21 Integrated Data Control, Inc. Database system and method for data acquisition and perusal
US6697948B1 (en) * 1999-05-05 2004-02-24 Michael O. Rabin Methods and apparatus for protecting information
US6978419B1 (en) * 2000-11-15 2005-12-20 Justsystem Corporation Method and apparatus for efficient identification of duplicate and near-duplicate documents and text spans using high-discriminability text fragments
US6658423B1 (en) * 2001-01-24 2003-12-02 Google, Inc. Detecting duplicate and near-duplicate files
US9541977B1 (en) * 2001-08-28 2017-01-10 Eugene M. Lee Computer-implemented method and system for automated claim charts with context associations
US20030061490A1 (en) * 2001-09-26 2003-03-27 Abajian Aram Christian Method for identifying copyright infringement violations by fingerprint detection
US20030105739A1 (en) * 2001-10-12 2003-06-05 Hassane Essafi Method and a system for identifying and verifying the content of multimedia documents
AU2003273253A1 (en) * 2002-08-26 2004-03-11 Siftology, Inc. Relating media to information in a workflow system
KR100788440B1 (ko) 2006-06-29 2007-12-24 중앙대학교 산학협력단 도용 패턴에 기반한 복사 감지시스템
US8510312B1 (en) * 2007-09-28 2013-08-13 Google Inc. Automatic metadata identification
KR20100066920A (ko) * 2008-12-10 2010-06-18 한국전자통신연구원 전자 문서 처리 장치 및 그 방법
US20110119293A1 (en) * 2009-10-21 2011-05-19 Randy Gilbert Taylor Method And System For Reverse Pattern Recognition Matching
KR101491446B1 (ko) * 2010-10-14 2015-02-23 한국전자통신연구원 출판물의 핑거프린트 추출 방법, 출판물의 핑거프린트 추출 장치, 핑거프린트를 이용한 출판물 식별 시스템 및 핑거프린트를 이용한 출판물 식별 방법
JP5853507B2 (ja) * 2011-09-05 2016-02-09 ソニー株式会社 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム
WO2013079907A1 (en) * 2011-11-30 2013-06-06 The University Of Surrey System, process and method for the detection of common content in multiple documents in an electronic system
US8838657B1 (en) * 2012-09-07 2014-09-16 Amazon Technologies, Inc. Document fingerprints using block encoding of text

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101634754B1 (ko) * 2015-10-15 2016-07-22 (주)여섯번째데이터 저작물 공유에 대한 모니터링 방법 및 장치

Also Published As

Publication number Publication date
KR101577376B1 (ko) 2015-12-14
US20150206101A1 (en) 2015-07-23

Similar Documents

Publication Publication Date Title
KR101577376B1 (ko) 텍스트 기준점 기반의 저작권 침해 판단 시스템 및 그 방법
US11748323B2 (en) System and method of search indexes using key-value attributes to searchable metadata
US11573996B2 (en) System and method for hierarchically organizing documents based on document portions
US11204950B2 (en) Automated concepts for interrogating a document storage database
US9448992B2 (en) Natural language search results for intent queries
US8527487B2 (en) Method and system for automatic construction of information organization structure for related information browsing
CN107818815B (zh) 电子病历的检索方法及系统
CN103049575B (zh) 一种主题自适应的学术会议搜索系统
US8577882B2 (en) Method and system for searching multilingual documents
CN107844493B (zh) 一种文件关联方法及系统
US20190266158A1 (en) System and method for optimizing search query to retreive set of documents
JP2007249584A (ja) クライアントデータベース構築方法、データ検索方法、データ検索システム、データ検索フィルタリングシステム、クライアントデータベース構築プログラム、データ検索プログラム、データ検索フィルタリングプログラム及びプログラムを格納したコンピュータで読み取り可能な記録媒体並びに記録した機器
US11232137B2 (en) Methods for evaluating term support in patent-related documents
KR101651780B1 (ko) 빅 데이터 처리 기술을 이용한 연관 단어 추출 방법 및 그 시스템
CN110569419A (zh) 问答系统优化方法、装置、计算机设备及存储介质
KR101505673B1 (ko) 단어의 의미를 기반으로 하는 다국어 검색 시스템, 다국어 검색 방법 및 이를 이용한 이미지 검색 시스템
US20150154195A1 (en) Method for entity-driven alerts based on disambiguated features
WO2011163567A2 (en) Methods and systems for filtering search results
EP3367267A1 (en) System and method for creating entity records using existing data sources
US10289640B2 (en) Method and system for retrieval of findings from report documents
JP5944867B2 (ja) 検索意図辞書作成装置、検索意図辞書作成方法及び検索意図辞書作成プログラム
CN105808607A (zh) 一种文档索引的生成方法和装置
CN108268552B (zh) 网站信息的处理方法及装置
CN117688124A (zh) 数据查询索引创建方法、装置、存储介质及电子设备
CN116303873A (zh) 专利检索系统及其方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee