KR20200134265A - 문서 검색 시스템, 문서 검색 방법, 프로그램, 및 비일시적 컴퓨터 가독 기억 매체 - Google Patents

문서 검색 시스템, 문서 검색 방법, 프로그램, 및 비일시적 컴퓨터 가독 기억 매체 Download PDF

Info

Publication number
KR20200134265A
KR20200134265A KR1020207029794A KR20207029794A KR20200134265A KR 20200134265 A KR20200134265 A KR 20200134265A KR 1020207029794 A KR1020207029794 A KR 1020207029794A KR 20207029794 A KR20207029794 A KR 20207029794A KR 20200134265 A KR20200134265 A KR 20200134265A
Authority
KR
South Korea
Prior art keywords
data
keyword
analysis data
word
sentence analysis
Prior art date
Application number
KR1020207029794A
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 가부시키가이샤 한도오따이 에네루기 켄큐쇼
Publication of KR20200134265A publication Critical patent/KR20200134265A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3334Selection or weighting of terms from queries, including natural language queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/338Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/38Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/383Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2216/00Indexing scheme relating to additional aspects of information retrieval not explicitly covered by G06F16/00 and subgroups
    • G06F2216/11Patent retrieval

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Molecular Biology (AREA)
  • Library & Information Science (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Tourism & Hospitality (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Technology Law (AREA)
  • Operations Research (AREA)
  • Neurology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Primary Health Care (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

간편한 입력 방법으로 정밀도가 높은 문서 검색, 특히 지식 재산에 관한 문서의 검색을 실현한다. 처리부를 가지는 문서 검색 시스템이다. 처리부는 문장 데이터에 포함되는 키워드를 추출하는 기능과, 복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어 중에서 키워드의 관련어를 추출하는 기능과, 키워드 및 관련어 각각에 대하여 가중치를 부여하는 기능과, 복수의 제 2 참조용 문장 해석 데이터 각각에 대하여 가중치에 기초하여 점수를 부여하는 기능과, 점수에 기초하여 복수의 제 2 참조용 문장 해석 데이터에 순위를 부여함으로써 랭킹 데이터를 생성하는 기능과, 랭킹 데이터를 출력하는 기능을 가진다.

Description

문서 검색 시스템, 문서 검색 방법, 프로그램, 및 비일시적 컴퓨터 가독 기억 매체
본 발명의 일 형태는 문서 검색 시스템, 문서 검색 방법, 프로그램, 및 비일시적 컴퓨터 가독 기억 매체에 관한 것이다. 본 발명의 일 형태는 지식 재산에 관한 문서 검색 시스템 및 문서 검색 방법에 관한 것이다.
또한 본 발명의 일 형태는 상기 기술분야에 한정되지 않는다. 본 발명의 일 형태의 기술분야로서는, 반도체 장치, 표시 장치, 발광 장치, 축전 장치, 기억 장치, 전자 기기, 조명 장치, 입력 장치(예를 들어, 터치 센서 등), 입출력 장치(예를 들어, 터치 패널 등), 이들의 구동 방법, 또는 이들의 제조 방법을 일례로서 들 수 있다.
출원 전의 발명에 관하여 선행 기술 조사를 수행함으로써, 관련된 지식 재산권이 존재할지 여부를 조사할 수 있다. 선행 기술 조사를 수행함으로써 얻어진 국내외의 특허문헌 및 논문 등은 발명의 신규성 및 진보성의 확인, 그리고 특허를 출원할지 여부를 판단하는 데 이용될 수 있다. 또한, 특허문헌의 무효 자료 조사를 수행함으로써, 자신이 소유하는 특허권이 무효화될 우려가 없는지, 또는 타인이 소유하는 특허권을 무효화할 수 있는지를 조사할 수 있다.
예를 들어, 특허문헌을 검색하는 시스템에 사용자가 키워드를 입력함으로써, 그 키워드를 포함하는 특허문헌을 출력할 수 있다.
이와 같은 시스템을 사용하여 높은 정밀도로 선행 기술 조사를 수행하기 위해서는, 적절한 키워드로 검색하는 것, 또한 출력된 많은 특허문헌으로부터 필요한 특허문헌을 추출하는 것 등, 사용자에게 높은 기량이 요구된다.
또한, 다양한 용도에 있어서 인공 지능의 활용이 검토되고 있다. 특히, 인공 뉴럴 네트워크 등을 이용함으로써, 종래의 노이만형 컴퓨터보다 고성능의 컴퓨터를 실현할 수 있을 것으로 기대되고, 근년, 전자 회로 위에서 인공 뉴럴 네트워크를 구축하는 다양한 연구가 진행되고 있다.
예를 들어, 특허문헌 1에는 채널 형성 영역에 산화물 반도체를 가지는 트랜지스터를 사용한 기억 장치에 의하여, 인공 뉴럴 네트워크를 사용한 계산에 필요한 가중치 데이터를 유지하는 발명이 개시(開示)되어 있다.
미국 특허 공보 제 2016/0343452호
그래서, 본 발명의 일 형태는 높은 정밀도로 문서를 검색할 수 있는 문서 검색 시스템을 제공하는 것을 과제 중 하나로 한다. 또한, 본 발명의 일 형태는 높은 정밀도로 문서를 검색할 수 있는 문서 검색 방법을 제공하는 것을 과제 중 하나로 한다. 또는, 본 발명의 일 형태는 간편한 입력 방법으로 정밀도가 높은 문서 검색, 특히 지식 재산에 관한 문서의 검색을 실현하는 것을 과제 중 하나로 한다.
또한 이들 과제의 기재는 다른 과제의 존재를 방해하는 것이 아니다. 본 발명의 일 형태는 반드시 이들 과제 모두를 해결할 필요는 없는 것으로 한다. 명세서, 도면, 청구항의 기재에서 이들 외의 과제를 추출할 수 있다.
본 발명의 일 형태는 처리부를 가지는 문서 검색 시스템이다. 처리부는 문장 데이터에 포함되는 키워드를 추출하는 기능과, 복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어 중에서 키워드의 관련어를 추출하는 기능과, 키워드 및 관련어 각각에 대하여 가중치를 부여하는 기능과, 복수의 제 2 참조용 문장 해석 데이터 각각에 대하여 가중치에 기초하여 점수를 부여하는 기능과, 점수에 기초하여 복수의 제 2 참조용 문장 해석 데이터에 순위를 부여함으로써 랭킹 데이터를 생성하는 기능과, 랭킹 데이터를 출력하는 기능을 가진다.
본 발명의 일 형태는 문장 데이터에 포함되는 키워드를 추출하고, 복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어 중에서 키워드의 관련어를 추출하고, 키워드 및 관련어 각각에 대하여 가중치를 부여하고, 복수의 제 2 참조용 문장 해석 데이터 각각에 대하여 가중치에 기초하여 점수를 부여하고, 점수에 기초하여 복수의 제 2 참조용 문장 해석 데이터에 순위를 부여함으로써 랭킹 데이터를 생성하고, 랭킹 데이터를 출력하는 문서 검색 방법이다.
본 발명의 일 형태는 문장 데이터에 포함되는 키워드를 추출하는 제 1 단계와, 복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어 중에서 키워드의 관련어를 추출하는 제 2 단계와, 키워드 및 관련어 각각에 대하여 가중치를 부여하는 제 3 단계와, 복수의 제 2 참조용 문장 해석 데이터 각각에 대하여 제 2 참조용 문장 해석 데이터에 포함되는 단어와 일치한 키워드 또는 관련어의 가중치에 기초하여 점수를 부여하는 제 4 단계와, 점수에 기초하여 복수의 제 2 참조용 문장 해석 데이터에 순위를 부여함으로써 랭킹 데이터를 생성하는 제 5 단계를 프로세서에 실행시키는 프로그램이다. 또한, 본 발명의 일 형태는 상기 프로그램이 기억된 비일시적 컴퓨터 가독 기억 매체이다.
키워드의 가중치는 키워드의, 복수의 제 1 참조용 문장 해석 데이터 또는 복수의 제 2 참조용 문장 해석 데이터에 있어서의 역 문서 빈도에 기초한 값인 것이 바람직하다. 관련어의 가중치는 관련어의 분산 표현 벡터와 키워드의 분산 표현 벡터의 유사도 또는 거리에 기초한 값과, 키워드의 가중치의 곱인 것이 바람직하다.
키워드 또는 관련어와 일치하는 단어를 가지는 제 2 참조용 문장 해석 데이터에 대하여 점수를 부여하는 것이 바람직하다.
복수의 제 1 참조용 문장 해석 데이터는 복수의 제 2 참조용 문장 해석 데이터와 동일하여도 좋다.
관련어는 복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어의 분산 표현을 기계 학습함으로써 얻어지는 분산 표현 벡터를 사용하여 추출하는 것이 바람직하다.
관련어는, 복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어 중에서 단어의 분산 표현 벡터와 키워드의 분산 표현 벡터의 유사도의 높이 또는 거리의 가까움에 기초하여 추출하는 것이 바람직하다. 단어의 분산 표현 벡터는 뉴럴 네트워크를 사용하여 생성된 벡터인 것이 바람직하다.
문장 데이터에 포함되는 키워드를 추출하는 기능으로서, 문장 데이터의 형태소 해석을 수행함으로써 해석 데이터를 생성하는 기능과 해석 데이터로부터 키워드를 추출하는 기능을 가지는 것이 바람직하다. 키워드는 해석 데이터에 포함되는 단어 중에서 복수의 제 1 참조용 문장 해석 데이터 또는 복수의 제 2 참조용 문장 해석 데이터에 있어서의 역 문서 빈도의 높이에 기초하여 추출하는 것이 바람직하다.
가중치는 사용자가 변경할 수 있는 것이 바람직하다.
제 1 참조용 문장 해석 데이터는 제 1 참조용 문장 데이터의 형태소 해석을 수행함으로써 생성된 데이터이고, 제 2 참조용 문장 해석 데이터는 제 2 참조용 문장 데이터의 형태소 해석을 수행함으로써 생성된 데이터인 것이 바람직하다.
본 발명의 일 형태의 문서 검색 시스템은 전자 기기와 서버를 가지는 것이 바람직하다. 전자 기기는 제 1 통신부를 가진다. 서버는 상기 처리부와 제 2 통신부를 가진다. 제 1 통신부는 유선 통신 및 무선 통신 중 한쪽 또는 양쪽에 의하여 서버에 문장 데이터를 공급하는 기능을 가진다. 처리부는 랭킹 데이터를 제 2 통신부에 공급하는 기능을 가진다. 제 2 통신부는 유선 통신 및 무선 통신 중 한쪽 또는 양쪽에 의하여 전자 기기에 랭킹 데이터를 공급하는 기능을 가진다.
처리부는 채널 형성 영역에 금속 산화물을 가지는 트랜지스터를 가져도 좋고, 채널 형성 영역에 실리콘을 가지는 트랜지스터를 가져도 좋다.
본 발명의 일 형태에 의하여, 높은 정밀도로 문서를 검색할 수 있는 문서 검색 시스템을 제공할 수 있다. 또는, 본 발명의 일 형태에 의하여, 높은 정밀도로 문서를 검색할 수 있는 문서 검색 방법을 제공할 수 있다. 또는, 본 발명의 일 형태에 의하여, 간단한 입력 방법으로 정밀도가 높은 문서 검색, 특히 지식 재산에 관한 문서의 검색을 실현할 수 있다.
또한, 이들의 효과의 기재는 다른 효과의 존재를 방해하는 것이 아니다. 본 발명의 일 형태는 반드시 이들의 효과 모두를 가질 필요는 없다. 명세서, 도면, 청구항의 기재로부터 이들 이외의 효과를 추출할 수 있다.
도 1은 문서 검색 시스템의 일례를 도시한 블록도.
도 2는 검색용 데이터의 생성 방법의 일례를 도시한 흐름도.
도 3의 (A) 내지 (C)는 검색용 데이터의 생성 방법의 일례를 도시한 도면.
도 4는 문서 검색 방법의 일례를 도시한 흐름도.
도 5는 문서 검색 방법의 일례를 도시한 흐름도.
도 6의 (A) 내지 (C)는 문서 검색 방법의 일례를 도시한 도면.
도 7의 (A), (B)는 문서 검색 방법의 일례를 도시한 도면.
도 8은 문서 검색 방법의 일례를 도시한 흐름도.
도 9는 문서 검색 방법의 일례를 도시한 흐름도.
도 10의 (A), (B)는 문서 검색 방법의 일례를 도시한 도면.
도 11은 문서 검색 시스템의 일례를 도시한 블록도.
도 12의 (A), (B)는 뉴럴 네트워크의 구성예를 도시한 도면.
도 13은 반도체 장치의 구성예를 도시한 도면.
도 14는 메모리 셀의 구성예를 도시한 도면.
도 15는 오프셋 회로의 구성예를 도시한 도면.
도 16은 타이밍 차트.
실시형태에 대하여 도면을 사용하여 자세히 설명한다. 다만 본 발명은 이하의 설명에 한정되지 않고, 본 발명의 취지 및 그 범위에서 벗어남이 없이 그 형태 및 자세한 사항을 다양하게 변경할 수 있는 것은 통상의 기술자라면 용이하게 이해할 수 있다. 따라서 본 발명은 이하의 실시형태의 기재 내용에 한정하여 해석되는 것은 아니다.
또한, 이하에서 설명하는 발명의 구성에서, 동일한 부분 또는 같은 기능을 가지는 부분에는 동일한 부호를 상이한 도면 사이에서 공통적으로 사용하고, 이의 반복적인 설명은 생략한다. 또한 같은 기능을 가지는 부분을 가리키는 경우에는, 해치 패턴을 동일하게 하고, 특별히 부호를 붙이지 않는 경우가 있다.
또한, 도면에서 도시한 각 구성의 위치, 크기, 범위 등은, 이해를 쉽게 하기 위하여 실제의 위치, 크기, 범위 등을 나타내지 않는 경우가 있다. 그러므로, 개시된 발명은 반드시 도면에 개시된 위치, 크기, 범위 등에 한정되지 않는다.
또한 "막"이라는 말과 "층"이라는 말은 경우 또는 상황에 따라 서로 바꿀 수 있다. 예를 들어 '도전층'이라는 용어를 '도전막'이라는 용어로 바꿀 수 있다. 또는 예를 들어 "절연막"이라는 용어를 "절연층"이라는 용어로 변경할 수 있다.
(실시형태 1)
본 실시형태에서는 본 발명의 일 형태의 문서 검색 시스템 및 문서 검색 방법에 대하여 도 1 내지 도 11을 사용하여 설명한다.
본 발명의 일 형태는 처리부를 가지는 문서 검색 시스템이다. 상기 처리부는 문장 데이터에 포함되는 키워드를 추출하는 기능과, 복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어 중에서 키워드의 관련어를 추출하는 기능과, 키워드 및 관련어 각각에 대하여 가중치를 부여하는 기능과, 복수의 제 2 참조용 문장 해석 데이터의 각각에 대하여 가중치에 기초하여 점수를 부여하는 기능과, 점수에 기초하여 복수의 제 2 참조용 문장 해석 데이터에 순위를 부여함으로써 랭킹 데이터를 생성하는 기능과, 랭킹 데이터를 출력하는 기능을 가진다.
본 발명의 일 형태의 문서 검색 시스템에서는 제 1 참조용 문장 해석 데이터를 사용하여 키워드의 관련어를 추출하고, 제 2 참조용 문장 해석 데이터를 검색 대상으로 하여 문장 데이터에 관련 또는 유사하는 데이터를 검색할 수 있다.
제 1 참조용 문장 해석 데이터와 제 2 참조용 문장 해석 데이터는 동일하여도 좋다. 이때, 본 발명의 일 형태의 문서 검색 시스템에서는 검색 대상인 참조용 문장 해석 데이터를 사용하여 키워드의 관련어를 추출할 수 있다. 또한, 제 1 참조용 문장 해석 데이터는 제 2 참조용 문장 해석 데이터의 일부 또는 전부를 포함하여도 좋다.
즉, 본 발명의 일 형태의 문서 검색 시스템이 가지는 처리부는 문장 데이터에 포함되는 키워드를 추출하는 기능과, 복수의 참조용 문장 해석 데이터에 포함되는 단어 중에서 키워드의 관련어를 추출하는 기능과, 키워드 및 관련어의 각각에 대하여 가중치를 부여하는 기능과, 복수의 참조용 문장 해석 데이터 각각에 대하여 가중치에 기초하여 점수를 부여하는 기능과, 점수에 기초하여 복수의 참조용 문장 해석 데이터에 순위를 부여함으로써 랭킹 데이터를 생성하는 기능과, 랭킹 데이터를 출력하는 기능을 가져도 좋다.
문서 검색 시스템에 있어서, 검색에 사용하는 키워드를 사용자가 선정하는 경우, 키워드뿐만 아니라, 상기 키워드의 동의어, 유의어, 및 표기의 변동 등도 고려하여 검색에 사용하는 키워드를 선정하는 것이 사용자에게 요구된다. 그러므로, 키워드의 선정은 사용자에게 부담이 되고, 또한 기량에 따른 차이가 생기기 쉽다. 또한, 문서 검색 시스템에 의하여 출력된 많은 문서로부터 필요한 문서를 찾아내는 것도 사용자에게 부담이 된다.
여기서, 본 발명의 일 형태의 문서 검색 시스템은 문장 데이터에 포함되는 키워드와 상기 키워드의 관련어를 추출하는 기능을 가진다. 그러므로, 본 발명의 일 형태의 문서 검색 시스템의 사용자는 검색에 사용하는 키워드를 스스로 선정하지 않아도 된다. 사용자는 키워드보다 분량이 많은 문장 데이터(텍스트 데이터)를 그대로 문서 검색 시스템에 입력할 수 있다. 또한, 사용자 자신이 키워드 및 관련어를 선정하고자 하는 경우도, 처음부터 선정할 필요는 없고, 문서 검색 시스템이 추출한 키워드 및 관련어를 참조하여 키워드 및 관련어의 추가, 수정, 삭제 등을 수행하면 좋다. 따라서, 문서 검색에 있어서의 사용자의 부담을 경감하고, 또한 사용자의 기량에 따른 검색 결과의 차이가 생기기 어렵게 할 수 있다.
특히, 본 발명의 일 형태의 문서 검색 시스템은 복수의 참조용 문장 해석 데이터에 포함되는 단어 중에서 키워드의 관련어를 추출하는 기능을 가진다. 기존의 개념 사전에 포함되는 단어 중에서 키워드의 관련어를 추출하는 경우, 검색 대상인 데이터에 포함되는 독특한 표기를 관련어로서 추출하는 것이 어려운 경우가 있다. 한편, 본 발명의 일 형태에서는 키워드의 관련어를 추출하기 위하여 준비된 데이터(제 1 참조용 문장 해석 데이터), 또는 검색 대상인 데이터(제 2 참조용 문장 해석 데이터)에 포함되는 단어 중에서 키워드의 관련어를 추출한다. 이에 의하여, 상기 독특한 표기도 관련어로서 추출하기 쉽게 되고, 검색 누락을 저감할 수 있어 바람직하다.
또한, 본 발명의 일 형태의 문서 검색 시스템은, 추출한 키워드 및 관련어 각각에 가중치를 부여하는 기능을 가진다. 키워드 및 관련어 각각이 가중치를 가짐으로써, 키워드 또는 관련어가 검색 결과에 나온 참조용 문장 해석 데이터에, 가중치에 기초한 점수를 부여할 수 있다. 그리고, 본 발명의 일 형태의 문서 검색 시스템은 상기 점수에 기초하여 검색 대상인 참조용 문장 해석 데이터에 순위를 부여함으로써 랭킹 데이터를 생성하고 출력하는 기능을 가진다. 관련성 또는 유사성의 높이에 따라 순위가 부여되어 검색 결과가 출력되기 때문에, 사용자는 검색 결과로부터 필요한 문서를 찾아내기 쉽고 작업 효율이 높아지고, 또한 못 보고 지나치는 실수가 생기기 어렵게 된다. 이와 같이 본 발명의 일 형태의 문서 검색 시스템은 간편하고 높은 정밀도로 문서를 검색할 수 있다.
키워드의 가중치는 키워드의, 복수의 제 1 참조용 문장 해석 데이터 또는 제 2 참조용 문장 해석 데이터에 있어서의 역 문서 빈도(Inverse Document Frequency, 이하 IDF라고 기재함)에 기초한 값인 것이 바람직하다. IDF는 어떤 단어가 문서에서 나타나기 어려운 정도를 나타낸다. 많은 문서에 나타나는 단어의 IDF는 낮게 되고, 일부의 문서에만 나타나는 단어의 IDF는 높게 된다. 따라서, IDF가 높은 단어는 제 1 참조용 문장 해석 데이터 또는 제 2 참조용 문장 해석 데이터에 있어서 특징적인 단어라고 할 수 있다.
문장 데이터로부터의 키워드의 추출 자체도, 문장 데이터에 포함되는 단어의, 복수의 제 1 참조용 문장 해석 데이터 또는 복수의 제 2 참조용 문장 해석 데이터에 있어서의 IDF에 기초하여 수행할 수 있다. 예를 들어, IDF가 어떤 수치 이상의 단어를 키워드로서 추출하여도 좋고, IDF가 높은 순서로 임의의 개수의 단어를 키워드로서 추출하여도 좋다.
키워드는 제 1 참조용 문장 해석 데이터 및 제 2 참조용 문장 해석 데이터 중 어느 쪽의 IDF에 기초하여 추출하여도 좋다. 검색 대상인 제 2 참조용 문장 해석 데이터에 있어서의 IDF에 기초하여 문장 데이터로부터 키워드를 추출하는 것이, 검색 대상의 문서에 있어서의 특징적인 단어를 추출하기 더 쉽기 때문에 바람직하다. 다만, 검색 대상이 되는 문서가 적은 경우 등, 제 1 참조용 문장 해석 데이터에 있어서의 IDF에 기초하여 문장 데이터로부터 키워드를 추출하는 것이, 문장 데이터에 있어서의 키워드를 추출하기 더 쉬운 경우도 있다.
또는, 사용자가 입력한 문장 데이터를 형태소 해석함으로써 얻어진 단어의 품사 정보 등에 기초하여 키워드를 추출하여도 좋다. 예를 들어, 일본어의 문장을 형태소 해석하는 경우, 명사를 추출하는 것이 바람직하다. 또한, 영어의 문장을 형태소 해석하는 경우, 형용사, 명사, 및 동사를 추출하는 것이 바람직하다.
관련어로서는, 동의어, 유의어, 대의어, 상위어, 하위어 등을 들 수 있다. 관련어는 복수의 참조용 문장 해석 데이터에 포함되는 단어 중에서 상기 단어의 분산 표현 벡터와 키워드의 분산 표현 벡터의 유사도의 높이 또는 거리의 가까움에 기초하여 추출하는 것이 바람직하다. 사용자가 입력한 문장 데이터에 포함되는 키워드에 대하여, 참조용 문장 해석 데이터에 포함되는 동의어, 유의어 등을 관련어로서 추출할 수 있다. 이에 의하여, 검색의 정확도를 높일 수 있다.
관련어의 가중치는 관련어의 분산 표현 벡터와 키워드의 분산 표현 벡터의 유사도 또는 거리에 기초한 값과, 키워드의 가중치의 곱인 것이 바람직하다. 관련어의 가중치가 관련어와 키워드의 관련도 및 키워드 자체의 가중치의 양쪽에 기초하여 설정됨으로써, 랭킹의 정확도를 더 높일 수 있다.
문서 검색 시스템은 적어도 일부의 처리에 인공 지능(AI: Artificial Intelligence)을 사용하는 것이 바람직하다.
문서 검색 시스템은, 특히 인공 뉴럴 네트워크(ANN: Artificial Neural Network, 이하 단순히 뉴럴 네트워크라고도 기재함)를 사용하는 것이 바람직하다. 뉴럴 네트워크는 회로(하드웨어) 또는 프로그램(소프트웨어)에 의하여 실현된다.
예를 들어, 단어의 분산 표현 벡터를 생성할 때에 기계 학습을 사용하는 것이 바람직하고, 뉴럴 네트워크를 사용하는 것이 더 바람직하다. 구체적으로는, 관련어는 복수의 참조용 문장 해석 데이터에 포함되는 단어의 분산 표현을 기계 학습함으로써 얻어지는 분산 표현 벡터를 사용하여 추출하는 것이 바람직하다. 이에 의하여, 관련어의 추출 및 관련어의 가중치의 정확도를 높일 수 있다.
본 명세서 등에 있어서, 뉴럴 네트워크란 생물의 신경 회로망을 모방하고, 학습에 의하여 뉴런끼리의 결합 강도를 결정하고, 문제 해결 능력을 갖게 하는 모델 전반을 가리킨다. 뉴럴 네트워크는 입력층, 중간층(은닉층), 및 출력층을 가진다.
본 명세서 등에 있어서, 뉴럴 네트워크에 대하여 설명할 때, 이미 있는 정보로부터 뉴런과 뉴런의 결합 강도(가중 계수라고도 함)를 결정하는 것을 "학습"이라고 부르는 경우가 있다.
본 명세서 등에서 학습에 의하여 얻어진 결합 강도를 사용하여 뉴럴 네트워크를 구성하고, 여기서 새로운 결론을 도출하는 것을 "추론"이라고 부르는 경우가 있다.
<1. 문서 검색 시스템의 구성예 1>
본 실시형태에 있어서는, 문서 검색 시스템의 일례로서 지식 재산의 검색에 사용할 수 있는 문서 검색 시스템에 대하여 설명한다. 또한, 본 발명의 일 형태의 문서 검색 시스템은 지식 재산의 검색 용도에 한정되지 않고, 지식 재산 이외의 검색에 사용할 수도 있다.
도 1에 문서 검색 시스템(100)의 블록도를 도시하였다. 또한, 본 명세서에 첨부된 도면에서는 구성 요소를 기능마다 분류하여 서로 독립된 블록으로서 블록도를 도시하였지만, 실제의 구성 요소들을 기능마다 완전히 나누는 것이 어려우며 하나의 구성 요소가 복수의 기능에 관련될 수도 있다. 또한, 하나의 기능이 복수의 구성 요소에 관련될 수도 있고, 예를 들어 처리부(103)에서 수행되는 2개의 처리는 서로 상이한 서버에 의하여 실행되는 경우가 있다.
문서 검색 시스템(100)은 적어도 처리부(103)를 가진다. 도 1에 도시한 문서 검색 시스템(100)은 입력부(101), 전송(傳送)로(102), 기억부(105), 데이터베이스(107), 및 출력부(109)를 더 가진다.
[입력부(101)]
입력부(101)에는 문서 검색 시스템(100)의 외부로부터 데이터가 공급된다. 입력부(101)에 공급된 데이터는 전송로(102)를 통하여 처리부(103), 기억부(105), 또는 데이터베이스(107)에 공급된다.
[전송로(102)]
전송로(102)는 데이터를 전달하는 기능을 가진다. 입력부(101), 처리부(103), 기억부(105), 데이터베이스(107), 및 출력부(109) 사이의 데이터의 송수신은 전송로(102)를 통하여 수행할 수 있다.
[처리부(103)]
처리부(103)는 입력부(101), 기억부(105), 데이터베이스(107) 등으로부터 공급된 데이터를 사용하여 연산, 추론 등을 수행하는 기능을 가진다. 처리부(103)는 연산 결과, 추론 결과 등을 기억부(105), 데이터베이스(107), 출력부(109) 등에 공급할 수 있다.
처리부(103)에는 채널 형성 영역에 금속 산화물을 가지는 트랜지스터를 사용하는 것이 바람직하다. 상기 트랜지스터는 오프 전류가 매우 작기 때문에, 상기 트랜지스터를, 기억 소자로서 기능하는 용량 소자에 유입한 전하(데이터)를 유지하기 위한 스위치로서 사용함으로써, 데이터의 유지 기간을 장기간에 걸쳐 확보할 수 있다. 이 특성을 처리부(103)가 가지는 레지스터 및 캐시 메모리 중 적어도 한쪽에 사용함으로써, 필요할 때에만 처리부(103)를 동작시키고, 그렇지 않을 경우에는 직전의 처리의 정보를 상기 기억 소자에 대피시킴으로써 처리부(103)를 오프로 할 수 있다. 즉, 노멀리 오프 컴퓨팅이 가능하게 되고, 문서 검색 시스템의 저소비전력화를 도모할 수 있다.
또한, 본 명세서 등에 있어서, 채널 형성 영역에 산화물 반도체 또는 금속 산화물을 사용한 트랜지스터를 Oxide Semiconductor 트랜지스터 또는 OS 트랜지스터라고 부른다. OS 트랜지스터의 채널 형성 영역은 금속 산화물을 가지는 것이 바람직하다.
본 명세서 등에서 금속 산화물(metal oxide)이란, 넓은 의미로의 금속의 산화물이다. 금속 산화물은 산화물 절연체, 산화물 도전체(투명 산화물 도전체를 포함함), 산화물 반도체(Oxide Semiconductor 또는 단순히 OS라고도 함) 등으로 분류된다. 예를 들어, 트랜지스터의 반도체층에 금속 산화물을 사용한 경우, 상기 금속 산화물을 산화물 반도체라고 부르는 경우가 있다. 즉, 금속 산화물이 증폭 작용, 정류 작용, 및 스위칭 작용 중 적어도 하나를 가지는 경우, 이 금속 산화물을 금속 산화물 반도체(metal oxide semiconductor), 줄여서 OS라고 부를 수 있다.
채널 형성 영역이 가지는 금속 산화물은 인듐(In)을 포함하는 것이 바람직하다. 채널 형성 영역이 가지는 금속 산화물이 인듐을 포함하는 금속 산화물인 경우, OS 트랜지스터의 캐리어 이동도(전자 이동도)가 높게 된다. 또한, 채널 형성 영역이 가지는 금속 산화물은 원소 M을 포함하는 산화물 반도체인 것이 바람직하다. 원소 M은, 바람직하게는 알루미늄(Al), 갈륨(Ga) 또는 주석(Sn) 등으로 한다. 그 외의 원소 M에 적용할 수 있는 원소로서는, 붕소(B), 실리콘(Si), 타이타늄(Ti), 철(Fe), 니켈(Ni), 저마늄(Ge), 이트륨(Y), 지르코늄(Zr), 몰리브데넘(Mo), 란타넘(La), 세륨(Ce), 네오디뮴(Nd), 하프늄(Hf), 탄탈럼(Ta), 텅스텐(W) 등이 있다. 다만 원소 M으로서 상술한 원소를 복수 조합하여도 되는 경우가 있다. 원소 M은 예를 들어, 산소와의 결합 에너지가 높은 원소이다. 예를 들어, 산소와의 결합 에너지가 인듐보다 높은 원소이다. 또한, 채널 형성 영역이 가지는 금속 산화물은 아연(Zn)을 포함하는 금속 산화물인 것이 바람직하다. 아연을 포함한 금속 산화물은 결정화되기 쉬운 경우가 있다.
채널 형성 영역이 가지는 금속 산화물은 인듐을 포함하는 금속 산화물에 한정되지 않는다. 반도체층은 예를 들어, 아연 주석 산화물, 갈륨 주석 산화물 등, 인듐을 포함하지 않고 아연을 포함하는 금속 산화물, 갈륨을 포함하는 금속 산화물, 주석을 포함하는 금속 산화물 등이어도 된다.
또한, 처리부(103)에는 채널 형성 영역에 실리콘을 포함하는 트랜지스터를 사용하여도 좋다.
또한, 처리부(103)에는 채널 형성 영역에 산화물 반도체를 포함하는 트랜지스터와, 채널 형성 영역에 실리콘을 포함하는 트랜지스터를 조합하여 사용하는 것이 바람직하다.
처리부(103)는 예를 들어, 연산 회로 또는 중앙 연산 장치(CPU: Central Processing Unit) 등을 가진다.
처리부(103)는, DSP(Digital Signal Processor), GPU(Graphics Processing Unit) 등의 마이크로프로세서를 가져도 좋다. 마이크로프로세서는 FPGA(Field Programmable Gate Array), FPAA(Field Programmable Analog Array) 등의 PLD(Programmable Logic Device)에 의하여 실현된 구성이어도 좋다. 처리부(103)는 프로세서에 의하여 다양한 프로그램으로부터의 명령을 해석하고 실행함으로써, 각종 데이터 처리 및 프로그램 제어를 수행할 수 있다. 프로세서에 의하여 실행할 수 있는 프로그램은 프로세서가 가지는 메모리 영역 및 기억부(105) 중 적어도 한쪽에 저장된다.
처리부(103)는 메인 메모리를 가져도 좋다. 메인 메모리는 RAM(Random Access Memory) 등의 휘발성 메모리 및 ROM(Read Only Memory) 등의 비휘발성 메모리 중 적어도 한쪽을 가진다.
RAM으로서는, 예를 들어 DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory) 등이 사용되고, 처리부(103)의 작업 공간으로서 가상적으로 메모리 공간이 할당되어 이용된다. 기억부(105)에 저장된 운영 체계, 애플리케이션 프로그램, 프로그램 모듈, 프로그램 데이터, 및 룩업 테이블 등은 실행을 위하여 RAM에 로드된다. RAM에 로드된 이들의 데이터, 프로그램, 및 프로그램 모듈은 각각 처리부(103)에 직접 액세스되고 조작된다.
ROM에는 재기록을 필요로 하지 않는 BIOS(Basic Input/Output System) 및 펌웨어 등을 저장할 수 있다. ROM으로서는, 마스크 ROM, OTPROM(One Time Programmable Read Only Memory), EPROM(Erasable Programmable Read Only Memory) 등을 들 수 있다. EPROM으로서는, 자외선 조사에 의하여 기억 데이터의 소거를 가능하게 하는 UV-EPROM(Ultra-Violet Erasable Programmable Read Only Memory), EEPROM(Electrically Erasable Programmable Read Only Memory), 플래시 메모리 등을 들 수 있다.
[기억부(105)]
기억부(105)는 처리부(103)가 실행하는 프로그램을 기억하는 기능을 가진다. 또한, 기억부(105)는 처리부(103)가 생성한 연산 결과 및 추론 결과, 그리고 입력부(101)에 입력된 데이터 등을 기억하는 기능을 가져도 좋다.
기억부(105)는 휘발성 메모리 및 비휘발성 메모리 중 적어도 한쪽을 가진다. 기억부(105)는 예를 들어, DRAM, SRAM 등의 휘발성 메모리를 가져도 좋다. 기억부(105)는 예를 들어, ReRAM(Resistive Random Access Memory, 저항 변화형 메모리라고도 함), PRAM(Phase change Random Access Memory), FeRAM(Ferroelectric Random Access Memory), MRAM(Magnetoresistive Random Access Memory, 자기(磁氣) 저항형 메모리라고도 함), 또는 플래시 메모리 등의 비휘발성 메모리를 가져도 좋다. 또한, 기억부(105)는 하드 디스크 드라이브(Hard Disc Drive: HDD) 및 솔리드 스테이트 드라이브(Solid State Drive: SSD) 등의 기록 미디어 드라이브를 가져도 좋다.
[데이터베이스(107)]
데이터베이스(107)는 적어도 검색 대상이 되는 참조용 문장 해석 데이터, IDF 데이터, 및 벡터 데이터를 기억하는 기능을 가진다. 또한, 데이터베이스(107)는 처리부(103)가 생성한 연산 결과 및 추론 결과, 그리고 입력부(101)에 입력된 데이터 등을 기억하는 기능을 가져도 좋다. 또한, 기억부(105) 및 데이터베이스(107)는 서로 분리되어 있지 않아도 된다. 예를 들어, 문서 검색 시스템은 기억부(105) 및 데이터베이스(107)의 양쪽의 기능을 가지는 기억 유닛을 가져도 좋다.
[출력부(109)]
출력부(109)는 문서 검색 시스템(100)의 외부에 데이터를 공급하는 기능을 가진다. 예를 들어, 처리부(103)에 있어서의 연산 결과 또는 추론 결과 등을 외부에 공급할 수 있다.
<2. 문서 검색 방법>
우선, 도 2 및 도 3을 사용하여 문서 검색 시스템(100)을 사용하여 검색을 수행하기 위하여 미리 수행하는 처리에 대하여 설명한다. 도 2에 흐름도를 도시하고, 도 2에 도시한 각 단계의 모식도를 도 3에 도시하였다. 또한, 도 3에서의 각 데이터의 도시는 일례이고, 이에 한정되지 않는다.
또한, 이하에서는 키워드의 관련어를 추출하기 위하여 사용하는 참조용 문장 데이터와, 검색 대상이 되는 참조용 문장용 데이터가 동일한(참조용 문장 데이터(TDref)라고 기재함) 경우를 예로 들어 설명한다. 상술한 바와 같이, 이들 2개의 참조용 문장용 데이터가 상이하여도 좋다. 예를 들어, 제 1 참조용 문장 데이터를 사용하여 벡터 데이터(VD)(후술함)를 생성하고, 제 2 참조용 문장 데이터를 검색 대상으로 하여도 좋다. 이때, 후술하는 IDF 데이터(ID)는 제 1 참조용 문장 데이터를 사용하여 생성하여도 좋고, 제 2 참조용 문장 데이터를 사용하여 생성하여도 좋다.
[단계 S1]
우선, 입력부(101)에 참조용 문장 데이터(TDref)를 복수로 입력한다(도 2 및 도 3의 (A)).
본 실시형태의 문서 검색 방법에서는, 사전에 준비된 복수의 문서를 검색의 대상으로 하여, 입력된 문서에 관련 또는 유사하는 문서를 검색할 수 있다. 참조용 문장 데이터(TDref)는 문서 검색 시스템(100)에 있어서 검색의 대상이 되는 문서의 문장 데이터이다. 참조용 문장 데이터(TDref)로서 사용하는 데이터는, 문서 검색 시스템(100)의 용도에 따라 적절히 선택할 수 있다.
참조용 문장 데이터(TDref)는 문서 검색 시스템(100)의 외부로부터 입력부(101)에 입력된다. 그리고, 참조용 문장 데이터(TDref)는 입력부(101)로부터 전송로(102)를 통하여 처리부(103)에 공급된다. 또는, 참조용 문장 데이터(TDref)는 입력부(101)로부터 전송로(102)를 통하여 기억부(105) 또는 데이터베이스(107)에 저장되고, 기억부(105) 또는 데이터베이스(107)로부터 전송로(102)를 통하여 처리부(103)에 공급되어도 좋다.
도 3의 (A)에서는 n개(n은 2 이상의 정수)의 참조용 문장 데이터(TDref)를 도시하고, 각각 데이터(TDref(x))(x는 1 이상 n 이하의 정수)라고 기재한다.
본 실시형태에서는 검색의 대상이 지식 재산에 관한 문서인 예를 나타낸다. 참조용 문장 데이터(TDref)는 지식 재산에 관한 문서의 문장 데이터이다.
또한, 상술한 바와 같이, 단계 S1에서 입력하는 참조용 문장 데이터가 검색의 대상이 되는 데이터와 상이한 경우도 있다. 단계 S1에서 입력하는 참조용 문장 데이터는 지식 재산에 관한 문서의 문장 데이터인 것이 바람직하지만, 이에 한정되지 않는다. 또한, 단계 S1에서 입력하는 참조용 문장 데이터의 일부가, 검색의 대상이 되는 데이터인 경우도 있다. 예를 들어, 단계 S1에서 입력하는 참조용 문장 데이터가 특허문헌 및 논문의 문장 데이터이고, 검색의 대상은 특허문헌의 문장 데이터만이어도 좋다.
여기서, 지식 재산에 관한 문서로서는, 구체적으로는 특허문헌(공개 특허 공보, 특허 공보 등), 실용 신안 공보, 의장 공보, 및 논문 등의 간행물을 들 수 있다.국내에서 발행된 간행물에 한정되지 않고, 세계 각국에서 발행된 간행물을 지식 재산에 관한 문서로서 사용할 수 있다.
특허문헌에 포함되는 명세서, 청구범위, 및 요약서는 각각 일부 또는 전부를 참조용 문장 데이터(TDref)로서 사용할 수 있다. 예를 들어, 특정의 발명을 실시하기 위한 구체적인 내용, 실시예, 또는 청구항을 참조용 문장 데이터(TDref)로서 사용하여도 좋다. 마찬가지로, 논문 등 다른 간행물에 포함되는 문장에 대해서도, 일부 또는 전부를 참조용 문장 데이터(TDref)로서 사용할 수 있다.
지식 재산에 관한 문서는 간행물에 한정되지 않는다. 예를 들어, 문서 검색 시스템의 사용자 또는 사용 단체가 독자적으로 가지는 문서 파일도 참조용 문장 데이터(TDref)로서 사용할 수 있다.
또한, 지식 재산에 관한 문서로서는 발명, 고안, 또는 의장, 또는 공업 제품을 설명하는 문장 등을 들 수 있다.
참조용 문장 데이터(TDref)는 예를 들어, 특정의 출원인의 특허문헌, 또는 특정의 기술분야의 특허문헌을 가질 수 있다.
참조용 문장 데이터(TDref)는 지식 재산 자체의 설명(예를 들어 명세서 등)뿐만 아니라, 상기 지식 재산에 관한 다양한 정보(예를 들어 서지 정보 등)를 가질 수 있다. 상기 정보로서는, 예를 들어 특허의 출원인, 기술분야, 출원 번호, 공개 번호, 스테이터스(계류 중, 특허 등록, 포기 등) 등을 들 수 있다.
참조용 문장 데이터(TDref)는 지식 재산에 관한 날짜 정보를 가지는 것이 바람직하다. 날짜 정보로서는 예를 들어, 지식 재산이 특허문헌이라면, 출원일, 공개 일, 등록일 등을 들 수 있고, 지식 재산이 공업 제품의 기술 정보라면, 발매일 등을 들 수 있다.
이와 같이, 참조용 문장 데이터(TDref)가 지식 재산에 관계하는 다양한 정보를 가짐으로써, 문서 검색 시스템을 사용하여 다양한 검색 범위를 선택할 수 있다.
예를 들어, 본 실시형태의 문서 검색 시스템을 사용하여, 출원 전의 발명과 관련 또는 유사하는 특허문헌, 논문, 또는 공업 제품을 검색할 수 있다. 이에 의하여, 출원 전의 발명에 관한 선행 기술 조사를 수행할 수 있다. 관련되는 선행 기술을 파악하고 재검토함으로써, 발명을 강화하고, 타사가 회피하기 어려운 강한 특허가 되는 발명으로 할 수 있다.
또한, 예를 들어 본 실시형태의 문서 검색 시스템을 사용하여, 발매 전의 공업 제품과 관련 또는 유사하는 특허문헌, 논문, 또는 공업 제품을 검색할 수 있다. 참조용 문장 데이터(TDref)가 자사의 특허문헌을 가지는 경우, 발매 전의 공업 제품에 관한 기술이 사내에서 충분히 특허 출원되어 있는지 여부를 확인할 수 있다. 또는, 참조용 문장 데이터(TDref)가 타사의 지식 재산의 정보를 가지는 경우, 발매 전의 공업 제품이 타사의 지식 재산권을 침해하지 않는지 여부를 확인할 수 있다. 관련되는 선행 기술을 파악하고, 발매 전의 공업 제품에 관한 기술을 재검토함으로써, 새로운 발명을 발굴하고, 자사의 사업에 공헌하는 강한 특허가 되는 발명으로 할 수 있다. 또한, 발매 전의 공업 제품에 한정되지 않고, 발매 후의 공업 제품에 대하여 검색하여도 좋다.
또한, 예를 들어 본 실시형태의 문서 검색 시스템을 사용하여, 특정의 특허와 관련 또는 유사하는 특허문헌, 논문, 또는 공업 제품을 검색할 수 있다. 특히 상기 특허의 출원일을 기준으로 검색함으로써, 상기 특허가 무효 사유를 포함하지 않는지를 간편하고 높은 정밀도로 조사할 수 있다.
[단계 S2]
다음으로, 복수의 참조용 문장 데이터(TDref) 각각의 형태소 해석을 수행하고, 참조용 문장 해석 데이터(ADref)를 복수로 생성한다(도 2 및 도 3의 (A)).
처리부(103)는, n개의 참조용 문장 데이터(TDref) 각각의 형태소 해석을 수행하고, n개의 참조용 문장 해석 데이터(ADref)(각각, 참조용 문장 해석 데이터(ADref(x))(x는 1 이상 n 이하의 정수)라고 기재함)를 생성한다. 예를 들어, 참조용 문장 데이터(TDref(n))의 형태소 해석을 수행함으로써, 참조용 문장 해석 데이터(ADref(n))를 생성한다.
형태소 해석에서는 자연어로 씌어진 문장을 형태소(언어로서 의미를 가지는 최소 단위)로 분할하고, 형태소의 품사 등을 판별할 수 있다. 이에 의하여, 예를 들어 참조용 문장 데이터(TDref)로부터 명사만을 추출할 수 있다.
도 3의 (A)에서는 입력하는 참조용 문장 데이터(TDref(1))는 긴 문장을 포함하고, 출력된 참조용 문장 해석 데이터(ADref(1))에서는 상기 문장이 복수의 단어로 구분되어 있다.
도 3의 (A)에서는 생성한 참조용 문장 해석 데이터(ADref)를 처리부(103)의 외부로 출력하는 예를 도시하였다. 예를 들어, 처리부(103)는 데이터베이스(107)에 복수의 참조용 문장 해석 데이터(ADref)를 공급할 수 있다. 또한, 처리부(103)는 복수의 참조용 문장 해석 데이터(ADref)를 하나의 데이터에 합친 코퍼스를 생성하고 출력하여도 좋다.
또한, 일본어의 문장뿐만 아니라, 다양한 언어(예를 들어 영어, 중국어, 한국어 등)의 문장의 해석을 수행할 수 있다. 문장의 해석 방법에는, 언어에 따라 다양한 방법을 적용할 수 있다.
[단계 S3]
단계 S2의 후, 복수의 참조용 문장 해석 데이터(ADref)에 포함되는 단어의 IDF를 계산하여, IDF 데이터(ID)를 생성한다(도 2 및 도 3의 (B)). 여기서, IDF는 정규화하는 것이 바람직하다.
참조용 문장 해석 데이터(ADref)는 데이터베이스(107)로부터 전송로(102)를 통하여 처리부(103)에 공급된다.
처리부(103)는 n개의 참조용 문장 해석 데이터(ADref)에 포함되는 단어의 IDF를 계산하여 정규화함으로써, IDF 데이터(ID)를 생성한다.
도 3의 (B)에 도시된 바와 같이, IDF 데이터(ID)는 단어(Word)와 정규화된 IDF를 포함한다.
어떤 단어 t의 IDF(t)는 식(1)의 idf(t)를 정규화함으로써 구할 수 있다. 정규화의 방법은 특별히 한정되지 않고, 예를 들어 식(2)에 의하여 idf(t)를 정규화할 수 있다. 식(1)에 있어서, N은 문서의 총수(참조용 문장 해석 데이터(ADref)의 개수, 상기 n과 동등함)이고, df(t)는 어떤 단어 t가 출현하는 문서의 개수(참조용 문장 해석 데이터(ADref)의 개수)이다. 식(2)에 있어서, idfMAX는 참조용 문장 해석 데이터(ADref)에 포함되는 단어의 idf(t)의 최댓값이고, idfMIN은 참조용 문장 해석 데이터(ADref)에 포함되는 단어의 idf(t)의 최솟값이다.
[수학식 1]
Figure pct00001
예를 들어, Word A의 정규화된 IDF는 0.868이고, Word B의 정규화된 IDF는 0.115이고, Word C의 정규화된 IDF는 0.642이므로, Word A는 Word B 및 Word C에 비하여 IDF가 높고, 참조용 문장 해석 데이터(ADref)에 나타나기 어려운 특징적인 단어라고 할 수 있다. 또한, 도 3의 (B)에서는 명칭 순서로 단어를 늘어놓는 예를 도시하였지만, 이에 한정되지 않고, IDF가 높은 순서 등으로 단어를 늘어놓아도 좋다.
도 3의 (B)에서는 생성한 IDF 데이터(ID)를 처리부(103)의 외부로 출력하는 예를 도시하였다. 예를 들어, 처리부(103)는 전송로(102)를 통하여 데이터베이스(107)에 IDF 데이터(ID)를 공급할 수 있다.
[단계 S4]
단계 S2의 후, 복수의 참조용 문장 해석 데이터(ADref)에 포함되는 단어의 분산 표현 벡터를 생성하여, 벡터 데이터(VD)를 생성한다(도 2 및 도 3의 (C)).
또한, 단계 S3과 단계 S4는 어느 쪽을 먼저 수행하여도 좋고, 병행하여 수행하여도 좋다.
처리부(103)는 n개의 참조용 문장 해석 데이터(ADref)에 포함되는 단어의 분산 표현 벡터를 생성하여, 벡터 데이터(VD)를 생성한다.
단어의 분산 표현은 워드 임베딩(word embedding)이라고도 불리고, 단어의 분산 표현 벡터는 단어를 각 특징 요소(차원)에 대하여 정량화한 연속값으로 표현한 벡터이다. 의미가 가까운 단어끼리는 벡터도 가깝게 된다.
도 3의 (C)에 도시한 바와 같이, 처리부(103)는 뉴럴 네트워크(NN)를 사용하여 단어의 분산 표현 벡터를 생성하는 것이 바람직하다.
여기서, 뉴럴 네트워크(NN)를 사용하여 단어의 분산 표현 벡터를 생성하는 방법의 일례를 설명한다. 뉴럴 네트워크(NN)의 학습은 지도 학습으로 수행한다. 구체적으로는, 어떤 단어를 입력층에 주고, 상기 단어의 주변어를 출력층에 주고, 뉴럴 네트워크(NN)에, 어떤 단어에 대한 그 주변어의 확률을 학습시킨다. 중간층(은닉층)은 10차원 이상 1000차원 이하의 비교적 저차원의 벡터를 가지는 것이 바람직하다. 학습 후의 상기 벡터가 단어의 분산 표현 벡터이다.
단어의 분산 표현은 예를 들어, 오픈 소스화된 알고리즘의 Word2vec을 사용하여 수행할 수 있다. Word2vec은 같은 문맥으로 이용되는 단어는 같은 의미를 가진다는 가설에 기초하여, 단어의 특징 및 의미 구조를 포함하여 단어를 벡터화한다.
단어의 벡터화에 있어서 단어의 분산 표현 벡터를 생성함으로써, 벡터 간의 연산으로 단어 간의 유사도나 거리 등을 계산할 수 있다. 2개의 벡터의 유사도가 높은 경우, 상기 2개의 벡터는 관계성이 높다고 할 수 있다. 또한, 2개의 벡터의 거리가 가까운 경우, 상기 2개의 벡터는 관계성이 높다고 할 수 있다.
또한, one-hot 표현이 하나의 단어에 1차원을 할당하는 반면, 분산 표현에서는 단어를 저차원의 실수치 벡터로 표현할 수 있기 때문에, 어휘가 증가되어도 적은 차원수로 표현할 수 있다. 따라서, 코퍼스에 포함되는 단어수가 많아도 계산량이 증가되기 어렵고, 방대한 데이터를 단시간에 처리할 수 있다.
도 3의 (C)에 도시한 바와 같이, 벡터 데이터(VD)는 단어(Word)와 벡터(Vector)를 포함한다. 예를 들어, Word A의 Vector는 (0.12, 0.90, 0.32,…)이고, Word B의 Vector는 (0.88, 0.10, 0.29,…)이고, Word C의 Vector는 (0.23, 0.56, 0.47,…)이다.
도 3의 (C)에서는 생성한 벡터 데이터(VD)를 처리부(103)의 외부로 출력하는 예를 도시하였다. 예를 들어, 처리부(103)는 데이터베이스(107)에 벡터 데이터(VD)를 공급할 수 있다.
이상의 단계를 사전에 수행하고, 참조용 문장 해석 데이터(ADref), IDF 데이터(ID), 및 벡터 데이터(VD)를 생성해 둠으로써, 문서 검색 시스템(100)을 사용하여 문서를 검색할 수 있다.
또한, 본 실시형태에서는 문서 검색 시스템(100)을 사용하여 참조용 문장 해석 데이터(ADref), IDF 데이터(ID), 및 벡터 데이터(VD)를 생성하는 예를 도시하였지만, 문서 검색 시스템(100)의 외부에서 참조용 문장 해석 데이터(ADref), IDF 데이터(ID), 및 벡터 데이터(VD) 중 적어도 하나를 생성하여도 좋다. 이 경우, 외부에서 생성한 데이터를 문서 검색 시스템(100)의 입력부(101)에 입력하고 데이터베이스(107)에 저장함으로써, 문서 검색 시스템(100)을 사용한 검색이 가능하게 된다.
다음으로, 문서 검색 시스템(100)을 사용한 검색 방법에 대하여 설명한다. 도 4, 도 5, 도 8, 및 도 9에 흐름도를 도시하고, 도 6, 도 7의 (A), 및 도 10에, 흐름도에 나타낸 각 단계의 모식도를 도시하였다. 또한, 도 6, 도 7의 (A), 및 도 10에서의 각 데이터의 도시는 일례이고, 이에 한정되지 않는다.
[단계 S11]
우선, 입력부(101)에 문장 데이터(TD)를 입력한다(도 4, 도 5, 및 도 6의 (A)).
본 실시형태의 문서 검색 방법에서는 참조용 문장 데이터(TDref) 중에서 문장 데이터(TD)에 관련 또는 유사하는 문장 데이터를 검색할 수 있다.
문장 데이터(TD)는 문서 검색 시스템(100)의 외부로부터 입력부(101)에 입력된다. 그리고, 문장 데이터(TD)는 입력부(101)로부터 전송로(102)를 통하여 처리부(103)에 공급된다. 또는, 문장 데이터(TD)는 전송로(102)를 통하여 기억부(105) 또는 데이터베이스(107)에 저장되고, 기억부(105) 또는 데이터베이스(107)로부터 전송로(102)를 통하여 처리부(103)에 공급되어도 좋다.
본 실시형태에서는 검색의 대상이 지식 재산에 관한 문서인 예를 나타낸다. 문장 데이터(TD)는 지식 재산에 관한 문서의 데이터이다. 지식 재산에 관한 문서의 예는 상술한 바와 같다.
문장 데이터(TD)는 예를 들어, 출원 전의 발명, 고안, 또는 의장, 발매 전의 공업 제품, 기술 정보, 또는 기술적 시상을 설명하는 문장 등을 가질 수 있다.
특히, 문장 데이터(TD)로서, 청구범위, 요약서, 또는 발명의 내용을 설명하는 문장 등을 적합하게 사용할 수 있다. 이와 같은, 문장량이 비교적 적은(명세서 전문에 비하여 문장량이 적은) 문장 데이터(TD)는, 문장 데이터(TD)에 포함되는 특징적인 키워드를 추출하기 쉽기 때문에 바람직하다. 본 실시형태의 문서 검색 시스템은 특징적인 키워드의 관련어를 추출할 수 있기 때문에, 문장 데이터(TD)의 어휘가 적어도, 높은 정밀도로 검색을 수행할 수 있다.
[단계 S12]
다음으로, 문장 데이터(TD)의 형태소 해석을 수행하여, 문장 해석 데이터(AD)를 생성한다(도 4, 도 5, 및 도 6의 (A)).
처리부(103)는 문장 데이터(TD)의 형태소 해석을 수행하여, 문장 해석 데이터(AD)를 생성한다.
도 6의 (A)에서는 입력하는 문장 데이터(TD)는 긴 문장을 포함하고, 출력된 문장 해석 데이터(AD)에서는 상기 문장이 복수의 단어로 구분되어 있다.
도 6의 (A)에서는 생성한 문장 해석 데이터(AD)를 처리부(103)의 외부로 출력하는 예를 도시하였다. 예를 들어, 처리부(103)는 기억부(105) 또는 데이터베이스(107)에 문장 해석 데이터(AD)를 공급할 수 있다.
[단계 S13, S33]
다음으로, 문장 해석 데이터(AD)를 IDF 데이터(ID)와 조합(照合)함으로써, 키워드 데이터(KD)를 생성한다(도 4, 도 5, 및 도 6의 (B)).
문장 해석 데이터(AD)는 기억부(105) 또는 데이터베이스(107)로부터 전송로(102)를 통하여 처리부(103)에 공급된다. IDF 데이터(ID)는 데이터베이스(107)로부터 전송로(102)를 통하여 처리부(103)에 공급된다.
처리부(103)는 문장 해석 데이터(AD)와 IDF 데이터(ID)를 조합하여, 문장 해석 데이터(AD)에 포함되는 단어를 IDF가 높은 순서로 늘어놓음으로써, 키워드 데이터(KD)를 생성한다.
키워드 데이터(KD)는 키워드(KW)와 그것의 IDF를 포함한다. 여기서는, 정규화된 IDF를 사용하는 예를 나타낸다.
키워드(KW)는 문장 해석 데이터(AD)에 포함되는 특징적인 단어라고 할 수 있다. 키워드(KW)는, 예를 들어 문장 해석 데이터(AD) 및 IDF 데이터(ID)의 양쪽에 포함되는 단어 모두이어도 좋고, IDF가 소정의 값 이상의 단어이어도 좋고, IDF가 높은 상위의 소정의 개수의 단어이어도 좋다. 문장 데이터(TD)의 문장량에 따라, 키워드(KW)의 추출 기준을 설정하는 것이 바람직하다. 예를 들어, 키워드(KW)의 개수는 2개 이상 100개 이하가 바람직하고, 5개 이상 30개 이하가 더 바람직하다.
여기서, 키워드(KW)의 정규화된 IDF는 추후에 참조용 문장 해석 데이터(ADref)에 점수를 부여할 때에 사용하는 키워드(KW)의 가중치에 상당한다.
도 6의 (B)에서는 Word D의 가중치가 0.873, Word A의 가중치가 0.868, Word E의 가중치가 0.867인 예를 도시하였다.
도 6의 (B)에서는 키워드 데이터(KD)를 처리부(103)의 외부로 출력하는 예를 도시하였다. 예를 들어, 처리부(103)는 전송로(102)를 통하여 기억부(105) 또는 데이터베이스(107)에 키워드 데이터(KD)를 공급할 수 있다.
[단계 S14, S34]
다음으로, 문장 해석 데이터(AD) 또는 키워드 데이터(KD)와, 벡터 데이터(VD)를 사용하여, 관련어 데이터(RD)를 생성한다(도 4, 도 5, 및 도 6의 (C)).
문장 해석 데이터(AD) 또는 키워드 데이터(KD)는 기억부(105) 또는 데이터베이스(107)로부터 전송로(102)를 통하여 처리부(103)에 공급된다. 벡터 데이터(VD)는 데이터베이스(107)로부터 전송로(102)를 통하여 처리부(103)에 공급된다.
단계 S14의 경우, 처리부(103)는 키워드(KW)의 분산 표현 벡터와, 참조용 문장 해석 데이터(ADref)에 포함되는 단어의 분산 표현 벡터의 유사도의 높이 또는 거리의 가까움에 기초하여 키워드(KW)의 관련어(RW)를 추출한다. 그리고, 관련어(RW)를 유사도가 높은 순서 또는 거리가 가까운 순서로 늘어놓음으로써, 관련어 데이터(RD)를 생성한다. 구체적으로는, 하나의 키워드(KW)에 대하여 관련어(RW)를 하나 이상 10개 이하 추출하는 것이 바람직하고, 2개 이상 5개 이하 추출하는 것이 더 바람직하다. 관련어(RW)는 예를 들어, 유사도가 소정의 값 이상의 단어이어도 좋고, 거리가 소정의 값 이하의 단어이어도 좋고, 유사도가 높은 상위의 소정의 개수의 단어이어도 좋고, 거리가 가까운 상위의 소정의 개수의 단어이어도 좋다. 키워드(KW)에 따라, 동의어, 유의어, 대의어, 상위어, 하위어 등의 개수는 상이하기 때문에, 키워드(KW)에 따라, 관련어(RW)의 개수는 상이하여도 좋다. 참조용 문장 해석 데이터(ADref)에 포함되는 단어 중에서 키워드(KW)의 관련어(RW)를 추출함으로써, 참조용 문장 해석 데이터(ADref)가 독특한 표기로 키워드(KW)를 표현하고 있는 경우에도, 상기 표기를 관련어(RW)로서 추출할 수 있다. 따라서, 표기의 변동에 의한 검색 누락을 저감할 수 있어 바람직하다.
단계 S34의 경우, 처리부(103)는 문장 해석 데이터(AD)에 포함되는 단어의 분산 표현 벡터와, 참조용 문장 해석 데이터(ADref)에 포함되는 단어의 분산 표현 벡터의 유사도의 높이 또는 거리의 가까움에 기초하여 관련어(RW)를 추출한다. 이 이외는 단계 S14와 마찬가지이다.
2개의 벡터의 유사도는 코사인 유사도, 공분산, 불편(不偏) 공분산, 피어손의 적률 상관 계수 등을 사용하여 구할 수 있다. 특히, 코사인 유사도를 사용하는 것이 바람직하다.
2개의 벡터의 거리는, 유클리드 거리, 표준(표준화, 평균) 유클리드 거리, 마하라노비스 거리, 맨해튼 거리, 체비쉐브 거리, 민코프스키 거리 등을 사용하여 구할 수 있다.
관련어 데이터(RD)는 관련어(RW)와 그 관련도(RS)를 포함한다.
관련어(RW)는 문장 해석 데이터(AD)에 포함되는 단어 또는 키워드(KW)와 관련되는 단어라고 할 수 있다.
관련도(RS)는 상기 유사도의 높이 또는 거리의 가까움을 나타내는 값, 또는 이들을 정규화한 값이다. 관련도(RS)는 추후에 참조용 문장 해석 데이터(ADref)에 점수를 부여할 때에 사용하는, 관련어의 가중치의 산출에 이용한다. 구체적으로는, 키워드(KW)의 정규화된 IDF와 관련어(RW)의 관련도(RS)의 곱이 관련어의 가중치에 상당한다.
도 6의 (C)에서는 Word D의 관련어(RW)로서 관련도(RS)가 높은 순서로 Word X(관련도(RS)가 0.999), Word Y(관련도(RS)가 0.901), Word Z(관련도(RS)가 0.712)가 추출된 예를 도시하였다.
도 6의 (C)에서는 관련어 데이터(RD)를 처리부(103)의 외부로 출력하는 예를 도시하였다. 예를 들어, 처리부(103)는 전송로(102)를 통하여 기억부(105) 또는 데이터베이스(107)에 관련어 데이터(RD)를 공급할 수 있다.
또한, 키워드 데이터(KD)를 사용하여 관련어를 추출하는 경우, 도 4에 도시한 바와 같이, 단계 S13의 후에 단계 S14를 수행한다. 한편, 문장 해석 데이터(AD)를 사용하여 관련어를 추출하는 경우, 도 5에 도시한 바와 같이, 단계 S33과 단계 S34는 어느 쪽을 먼저 수행하여도 좋고, 병행하여 수행하여도 좋다.
또한, 관련어(RW)가, 개념 사전에 포함되는 단어인지 여부를 판단하고, 상기 관련어(RW)의 가중치를 결정하는 단계를 가져도 좋다. 관련어(RW)가 개념 사전에 포함되는 경우, 상기 관련어(RW)는 키워드(KW)와의 관련도가 높다고 할 수 있다. 그러므로, 개념 사전에 포함되는 경우는, 포함되지 않는 경우에 비하여 관련어(RW)의 가중치가 크게 되도록 설정하여도 좋다. 예를 들어, 판단 결과에 따라 유사도의 높이 또는 거리의 가까움을 나타내는 값에 소정의 값을 더한 값 또는 뺀 값을 관련어(RW)의 가중치로서 사용하여도 좋다. 또는, 관련어(RW)가 개념 사전에 포함되는 경우 및 포함되지 않는 경우 중 한쪽에 있어서, 유사도의 높이 또는 거리의 가까움에 상관없이 소정의 값을 관련어(RW)의 가중치로서 사용하여도 좋다. 예를 들어, 관련어(RW)가 개념 사전에 포함되는 경우, 관련어(RW)의 가중치를 키워드(KW)와 같은 가중치로 하여도 좋다.
[단계 S15]
다음으로, 참조용 문장 해석 데이터(ADref)에 포함되는 단어와 일치한 키워드(KW) 또는 관련어(RW)의 가중치에 기초하여 참조용 문장 해석 데이터(ADref)에 점수를 부여한다(도 4, 도 5, 및 도 7의 (A)).
참조용 문장 해석 데이터(ADref)는 데이터베이스(107)로부터 전송로(102)를 통하여 처리부(103)에 공급된다. 키워드 데이터(KD) 및 관련어 데이터(RD)는 기억부(105) 또는 데이터베이스(107)로부터 전송로(102)를 통하여 처리부(103)에 공급된다. 처리부(103)는, 점수 부여(스코어링이라고도 함)의 결과를 전송로(102)를 통하여 기억부(105) 또는 데이터베이스(107)에 공급할 수 있다.
우선, 도 7의 (B)를 사용하여 점수 부여의 구체적인 예를 설명한다. 도 7의 (B)에서는 3종류의 키워드(KW)와, 키워드(KW) 하나에 대하여 4종류의 관련어(RW)를 사용하는 예를 도시하였다.
스코어의 분모는 키워드(KW)의 가중치의 총합이고, 도 7의 (B)의 경우, 0.9+0.9+0.8=2.6이다.
스코어의 분자는 참조용 문장 해석 데이터(ADref)에 포함되는 단어와 일치한 키워드(KW) 또는 관련어(RW)의 가중치의 총합이고, 도 7의 (B)의 경우, Word D, Word e, 및 Word f의 가중치의 합인 1.95이다.
따라서, 스코어는 1.95/2.6=0.75(75%)로 구할 수 있다.
도 8을 사용하여 단계 S15를 자세히 설명한다. 도 8에 도시한 바와 같이, 단계 S15는 단계 S21 내지 단계 S27을 가진다. 또한, 키워드(KW)의 개수가 p개, 각 키워드(KW)의 관련어(RW)의 개수가 q개인 경우, x는 1 이상 p 이하의 정수를 나타내고, y는 1 이상 q 이하의 정수를 나타낸다.
[단계 S21]
우선, 점수를 부여하지 않은 참조용 문장 해석 데이터(ADref)를 1건 선택한다.
[단계 S22]
다음으로, 참조용 문장 해석 데이터(ADref)에 있어서, 키워드(KWx)가 검색 결과에 나오는지 판단한다. 검색 결과에 나오는 경우, 단계 S25로 나아간다. 검색 결과에 나오지 않는 경우, 단계 S23으로 나아간다.
[단계 S23]
다음으로, 참조용 문장 해석 데이터(ADref)에 있어서, 키워드(KWx)의 관련어(RWxy)가 검색 결과에 나오는지 판단한다. 검색 결과에 나오는 경우, 단계 S25로 나아간다. 나오지 않는 경우, 단계 S24로 나아간다.
[단계 S24]
다음으로, 키워드(KWx)의 모든 관련어(RW)로 검색하였는지 판단한다. 검색한 경우, 단계 S26으로 나아간다. 검색하지 않은 경우, 단계 S23으로 나아간다. 예를 들어, 키워드(KWx)의 관련어(RW)가 2개 있고, 앞의 단계 S23에서 관련어(RWx1)가 검색 결과에 나오는지 판단한 경우, 단계 S23으로 되돌아가고 관련어(RWx2)가 검색 결과에 나오는지 판단한다.
[단계 S25]
단계 S25에서는 검색 결과에 나온 단어에 대응하는 가중치를 스코어에 가산한다. 단계 S22에서 검색 결과에 나온 경우, 키워드(KWx)의 IDF를 스코어에 가산한다. 단계 S23에서 검색 결과에 나온 경우, 키워드(KWx)의 IDF와 관련어(RWxy)의 관련도(RS)의 곱을 스코어에 가산한다. 또한, 상술한 점수 부여의 예에서는 스코어의 분자에 가산한다.
[단계 S26]
다음으로, 모든 키워드(KW)로 검색하였는지 판단한다. 검색한 경우, 단계 S27로 나아간다. 검색하지 않은 경우, 단계 S22로 나아간다. 예를 들어, 키워드(KWx)가 2개 있고, 앞의 단계 S22에서 키워드(KW1)가 검색 결과에 나오는지 판단한 경우, 단계 S22로 되돌아가고 키워드(KW2)가 검색 결과에 나오는지 판단한다.
[단계 S27]
다음으로, 모든 참조용 문장 해석 데이터(ADref)의 점수 부여를 하였는지 판단한다. 점수 부여가 모두 종료한 경우, 단계 S16으로 나아간다. 종료하지 않은 경우, 단계 S21로 나아간다.
[단계 S16]
그리고, 참조용 문장 해석 데이터(ADref)에 순위를 부여하고, 랭킹 데이터(LD)를 생성하여 출력한다(도 4, 도 5, 및 도 7의 (A)).
처리부(103)는 랭킹 데이터(LD)를 전송로(102)를 통하여 기억부(105) 또는 데이터베이스(107)에 공급할 수 있다. 또한, 처리부(103)는 랭킹 데이터(LD)를 전송로(102)를 통하여 출력부(109)에 공급할 수 있다. 이에 의하여, 출력부(109)는 문서 검색 시스템(100)의 외부로 랭킹 데이터(LD)를 공급할 수 있다.
랭킹 데이터(LD)는 순위(Lank), 참조용 문장 데이터(TDref)의 정보(명칭이나 식별 번호 등)(Doc), 스코어(Score) 등을 포함할 수 있다. 또한, 데이터베이스(107) 등에 참조용 문장 데이터(TDref)가 저장되어 있는 경우, 랭킹 데이터(LD)는 참조용 문장 데이터(TDref)로의 파일 경로를 포함하는 것이 바람직하다. 이에 의하여, 사용자는 랭킹 데이터(LD)로부터 목적의 문서에 용이하게 액세스할 수 있다.
참조용 문장 해석 데이터(ADref)의 스코어가 높을수록, 상기 참조용 문장 해석 데이터(ADref)에 대응하는 참조용 문장 데이터(TDref)는 문장 데이터(TD)와 관련 또는 유사한다고 할 수 있다.
도 7의 (A)에 도시한 예에서는, 랭킹 데이터(LD)에 의하여, n개의 참조용 문장 데이터(TDref) 중 문장 데이터(TD)와 가장 관련 또는 유사한 데이터는 참조용 문장 데이터(TDref(7))이고, 둘째로 관련 또는 유사한 데이터는 참조용 문장 데이터(TDref(4))이고, 세 번째로 관련 또는 유사한 데이터는 참조용 문장 데이터(TDref(13))인 것으로 알 수 있다.
이상에 의하여, 문서 검색 시스템(100)을 사용하여 검색을 수행할 수 있다.
또한, 단계 S14에서 출력한 키워드(KW), 키워드(KW)의 가중치(IDF), 관련어(RW), 및 관련어(RW)의 가중치(IDF×RS)를 수작업으로 편집하고 나서 단계 S15로 나아가도 좋다.
도 9에 편집의 단계를 포함하는 흐름도를 도시하고, 도 10에, 도 9에 나타낸 단계의 모식도를 도시하였다. 또한, 도 10에서의 데이터의 도시는 일례이고, 이에 한정되지 않는다.
[단계 S41]
단계 14 후, 단계 S15에서 사용할 예정인 키워드 데이터(KD) 및 관련어 데이터(RD)의 일람을 출력한다(도 9 및 도 10의 (A)).
도 10의 (A)를 보면, 키워드(KW)로서 Word D, Word A, Word E가 제시되어 있고, 각각의 가중치(IDF)가 0.9, 0.9, 0.8인 것을 알 수 있다.
Word D의 관련어(RW)로서는, Word X, Word Y, Word Z, 및 Word a가 제시되어 있고, 각각의 가중치(IDF×RS)는 0.9, 0.8, 0.6, 0.5인 것을 알 수 있다.
Word A의 관련어(RW)로서는, Word b, Word c, Word d, 및 Word e가 제시되어 있고, 각각의 가중치(IDF×RS)는 0.5, 0.5, 0.45, 0.3인 것을 알 수 있다.
Word E의 관련어(RW)로서는, Word f, Word g, Word h, 및 Word i가 제시되어 있고, 각각의 가중치(IDF×RS)는 0.75, 0.75, 0.75, 0.75인 것을 알 수 있다.
[단계 S42]
다음으로, 키워드 데이터(KD) 및 관련어 데이터(RD)를 편집한다(도 9 및 도 10의 (B)).
도 10의 (B)에서는 3군데 편집한 예를 도시하였다. 구체적으로는, Word A 및 그 관련어(RW)의 삭제와, Word a(가중치 0.5)로부터 Word x(가중치 0.8)로의 변경과, Word f의 가중치의 변경(0.75로부터 0.8로)이다.
이와 같이, 사용자가 단어 및 가중치 중 적어도 한쪽을 편집함으로써, 검색의 정밀도의 향상을 도모하여도 좋다.
그 후, 단계 S15에서는 편집된 키워드 데이터(KD) 및 관련어 데이터(RD)를 사용하여 참조용 문장 해석 데이터(ADref)에 점수를 부여하고, 단계 S16에서 랭킹 데이터(LD)를 생성하여 출력한다.
[단계 S43]
다음으로, 랭킹 데이터(LD)가 기대한 결과인지 확인한다(도 9). 기대한 결과이면 검색을 종료한다. 기대한 결과가 얻어지지 않은 경우, 단계 S41로 되돌아가고, 편집된 키워드 데이터(KD) 및 관련어 데이터(RD)의 일람을 출력하고, 단계 S42에서 다시 편집하여도 좋다.
또한, 단어 및 가중치의 편집은 수작업에 한정되지 않고, 사전 데이터, 자연어 처리에 의하여 생성한 해석 데이터 등을 사용하여, 자동적으로 수행되어도 좋다. 편집에 의하여, 검색의 정밀도의 향상을 도모할 수 있다.
<3. 문서 검색 시스템의 구성예 2>
다음으로, 도 11에 도시한 문서 검색 시스템(150)에 대하여 설명한다.
도 11에, 문서 검색 시스템(150)의 블록도를 도시하였다. 문서 검색 시스템(150)은 서버(151)와 단말(152)(퍼스널 컴퓨터 등)을 가진다.
서버(151)는 통신부(161a), 전송로(162), 처리부(163a), 및 데이터베이스(167)를 가진다. 도 11에서는 도시하지 않았지만, 서버(151)는 기억부, 입출력부 등을 더 가져도 좋다.
단말(152)은 통신부(161b), 전송로(168), 처리부(163b), 기억부(165), 및 입출력부(169)를 가진다. 도 11에서는 도시하지 않았지만, 단말(152)은 데이터베이스 등을 더 가져도 좋다.
문서 검색 시스템(150)의 사용자는 단말(152)로부터 문장 데이터(TD)를 서버(151)에 입력한다. 문장 데이터(TD)는 통신부(161b)로부터 통신부(161a)에 송신된다.
통신부(161a)가 수신한 문장 데이터(TD)는 전송로(162)를 통하여 데이터베이스(167) 또는 기억부(도시하지 않았음)에 저장된다. 또는, 문장 데이터(TD)는 통신부(161a)로부터 직접적으로 처리부(163a)에 공급되어도 좋다.
상기 <2. 문서 검색 방법>에서 설명한 각종 처리는 처리부(163a)에서 수행된다. 이들 처리에는 높은 처리 능력이 요구되기 때문에, 서버(151)가 가지는 처리부(163a)에서 수행하는 것이 바람직하다.
그리고, 처리부(163a)에 의하여 랭킹 데이터(LD)가 생성된다. 랭킹 데이터(LD)는 전송로(162)를 통하여 데이터베이스(167) 또는 기억부(도시하지 않았음)에 저장된다. 또는, 랭킹 데이터(LD)는 처리부(163a)로부터 직접적으로 통신부(161a)에 공급되어도 좋다. 그 후, 서버(151)로부터 랭킹 데이터(LD)가 단말(152)에 출력된다. 랭킹 데이터(LD)는 통신부(161a)로부터 통신부(161b)에 송신된다.
[입출력부(169)]
입출력부(169)에는 문서 검색 시스템(150)의 외부로부터 데이터가 공급된다. 입출력부(169)는 문서 검색 시스템(150)의 외부에 데이터를 공급하는 기능을 가진다. 또한, 문서 검색 시스템(100)과 같이, 입력부와 출력부가 분리되어도 좋다.
[전송로(162) 및 전송로(168)]
전송로(162) 및 전송로(168)는 데이터를 전달하는 기능을 가진다. 통신부(161a), 처리부(163a), 및 데이터베이스(167) 사이의 데이터의 송수신은 전송로(162)를 통하여 수행할 수 있다. 통신부(161b), 처리부(163b), 기억부(165), 및 입출력부(169) 사이의 데이터의 송수신은 전송로(168)를 통하여 수행할 수 있다.
[처리부(163a) 및 처리부(163b)]
처리부(163a)는 통신부(161a) 및 데이터베이스(167) 등으로부터 공급된 데이터를 사용하여, 연산, 추론 등을 수행하는 기능을 가진다. 처리부(163b)는 통신부(161b), 기억부(165), 및 입출력부(169) 등으로부터 공급된 데이터를 사용하여, 연산 등을 수행하는 기능을 가진다. 처리부(163a) 및 처리부(163b)는 처리부(103)의 설명을 참조할 수 있다. 특히 처리부(163a)는 상기 <2. 문서 검색 방법>에서 설명한 각종 처리를 수행할 수 있다. 그러므로, 처리부(163a)는 처리부(163b)에 비하여 처리 능력이 높은 것이 바람직하다.
[기억부(165)]
기억부(165)는 처리부(163b)가 실행하는 프로그램을 기억하는 기능을 가진다. 또한, 기억부(165)는 처리부(163b)가 생성한 연산 결과, 통신부(161b)에 입력된 데이터, 및 입출력부(169)에 입력된 데이터 등을 기억하는 기능을 가진다.
[데이터베이스(167)]
데이터베이스(167)는 참조용 문장 해석 데이터(ADref), IDF 데이터(ID), 및 벡터 데이터(VD)를 기억하는 기능을 가진다. 또한, 데이터베이스(167)는 처리부(163a)가 생성한 연산 결과, 및 통신부(161a)에 입력된 데이터 등을 기억하는 기능을 가져도 좋다. 또는, 서버(151)는 데이터베이스(167)와 별도로 기억부를 가지고, 상기 기억부가 처리부(163a)가 생성한 연산 결과, 및 통신부(161a)에 입력된 데이터 등을 기억하는 기능을 가져도 좋다.
[통신부(161a) 및 통신부(161b)]
통신부(161a) 및 통신부(161b)를 사용하여, 서버(151)와 단말(152) 사이에서 데이터의 송수신을 수행할 수 있다. 통신부(161a) 및 통신부(161b)로서는, 허브, 라우터, 모뎀 등을 사용할 수 있다. 데이터의 송수신에는 유선을 사용하여도 무선(예를 들어, 전파, 적외선 등)을 사용하여도 좋다.
이상과 같이, 본 실시형태의 문서 검색 시스템에서는 사전에 준비된 문서를 검색의 대상으로 하고, 입력된 문서에 관련 또는 유사하는 문서를 검색할 수 있다. 검색에 사용하는 키워드를 사용자가 선택할 필요가 없고, 키워드보다 분량이 많은 문장 데이터를 사용하여 검색할 수 있기 때문에, 검색의 정밀도의 개인차를 저감할 수 있고, 간편하고 높은 정밀도로 문서를 검색할 수 있다. 또한, 본 실시형태의 문서 검색 시스템은 키워드의 관련어를 사전에 준비된 문서 중에서 추출하기 때문에, 상기 문서에 포함되는 독특한 표기도 관련어로서 추출할 수 있고, 검색 누락을 저감할 수 있다. 또한, 본 실시형태의 문서 검색 시스템은 관련성 또는 유사성의 높이에 기초하여 순위를 부여하고 검색 결과를 출력할 수 있기 때문에, 사용자에게는 검색 결과로부터 필요한 문서를 찾기 쉽게 되고, 또한 못 보고 지나치는 실수가 적어진다.
본 실시형태는 다른 실시형태와 적절히 조합할 수 있다. 또한, 본 명세서에서, 하나의 실시형태 중에 복수의 구성예가 나타내어지는 경우에는, 구성예를 적절히 조합할 수 있다.
(실시형태 2)
본 실시형태에서는, 뉴럴 네트워크에 사용할 수 있는 반도체 장치의 구성예에 대하여 설명한다.
본 실시형태의 반도체 장치는, 예를 들어 본 발명의 일 형태의 문서 검색 시스템의 처리부에 사용할 수 있다.
도 12의 (A)에 나타낸 바와 같이, 뉴럴 네트워크(NN)는 입력층(IL), 출력층(OL), 중간층(은닉층)(HL)으로 구성할 수 있다. 입력층(IL), 출력층(OL), 중간층(HL)은 각각 하나 또는 복수의 뉴런(유닛)을 가진다. 또한 중간층(HL)은 1층이어도 좋고 2층 이상이어도 좋다. 2층 이상의 중간층(HL)을 가지는 뉴럴 네트워크는 DNN(딥 뉴럴 네트워크)이라고 부를 수도 있고, 딥 뉴럴 네트워크를 사용한 학습은 심층 학습이라고 부를 수도 있다.
입력층(IL)의 각 뉴런에는 입력 데이터가 입력되고, 중간층(HL)의 각 뉴런에는 앞의 층 또는 뒤의 층의 뉴런의 출력 신호가 입력되고, 출력층(OL)의 각 뉴런에는 앞의 층의 뉴런의 출력 신호가 입력된다. 또한 각 뉴런은 앞뒤의 층의 모든 뉴런과 결합되어도 좋고(전(全)결합), 일부의 뉴런과 결합되어도 좋다.
도 12의 (B)에 뉴런에 의한 연산의 예를 도시하였다. 여기서는, 뉴런(N)과, 뉴런(N)에 신호를 출력하는 앞의 층의 2개의 뉴런을 도시하였다. 뉴런(N)에는 앞의 층의 뉴런의 출력(x1)과, 앞의 층의 뉴런의 출력(x2)이 입력된다. 그리고, 뉴런(N)에서, 출력(x1)과 가중치(w1)의 승산 결과(x1w1)와, 출력(x2)과 가중치(w2)의 승산 결과(x2w2)의 합(x1w1+x2w2)이 계산된 후, 필요에 따라 바이어스(b)가 가산되어, 값(a=x1w1+x2w2+b)이 얻어진다. 그리고, 값 a는 활성화 함수 h를 사용하여 변환되고, 뉴런(N)으로부터 출력 신호 y=h(a)가 출력된다.
이와 같이, 뉴런에 의한 연산에는, 앞의 층의 뉴런의 출력과 가중치의 곱을 더하는 연산, 즉 적화 연산이 포함된다(상기 x1w1+x2w2). 이 적화 연산은 프로그램을 사용하여 소프트웨어상에서 수행되어도 좋고, 하드웨어에 의하여 수행되어도 좋다. 하드웨어에 의하여 적화 연산을 수행하는 경우에는 적화 연산 회로를 사용할 수 있다. 이 적화 연산 회로로서는 디지털 회로를 사용하여도 좋고, 아날로그 회로를 사용하여도 좋다. 적화 연산 회로에 아날로그 회로를 사용하는 경우, 적화 연산 회로의 회로 규모의 축소, 또는 메모리에 대한 액세스 횟수의 감소로 인한 처리 속도의 향상 및 소비전력의 저감을 도모할 수 있다.
적화 연산 회로는, 채널 형성 영역에 실리콘(단결정 실리콘 등)을 포함하는 트랜지스터(Si 트랜지스터라고도 함)로 구성하여도 좋고, 채널 형성 영역에 금속 산화물의 한 종류인 산화물 반도체를 포함하는 트랜지스터("OS 트랜지스터"라고도 함)로 구성하여도 좋다. 특히 OS 트랜지스터는 오프 전류가 매우 작기 때문에, 적화 연산 회로의 메모리를 구성하는 트랜지스터로서 적합하다. 또한 Si 트랜지스터와 OS 트랜지스터의 양쪽을 사용하여 적화 연산 회로를 구성하여도 좋다. 아래에서 적화 연산 회로의 기능을 가지는 반도체 장치의 구성예에 대하여 설명한다.
<반도체 장치의 구성예>
도 13에 신경망의 연산을 수행하는 기능을 가지는 반도체 장치(MAC)의 구성예를 도시하였다. 반도체 장치(MAC)는 뉴런 간의 결합 강도(가중치)에 대응하는 제 1 데이터와, 입력 데이터에 대응하는 제 2 데이터의 적화 연산을 수행하는 기능을 가진다. 또한 제 1 데이터 및 제 2 데이터를 각각 아날로그 데이터 또는 멀티레벨 디지털 데이터(이산적 데이터)로 할 수 있다. 또한 반도체 장치(MAC)는 적화 연산에 의하여 얻어진 데이터를 활성화 함수를 사용하여 변환하는 기능을 가진다.
반도체 장치(MAC)는 셀 어레이(CA), 전류원 회로(CS), 커런트 미러 회로(CM), 회로(WDD), 회로(WLD), 회로(CLD), 오프셋 회로(OFST), 및 활성화 함수 회로(ACTV)를 가진다.
셀 어레이(CA)는 복수의 메모리 셀(MC) 및 복수의 메모리 셀(MCref)을 가진다. 도 13에는 셀 어레이(CA)가 m행 n열(m, n은 1 이상의 정수임)의 메모리 셀(MC)(MC[1, 1] 내지 MC[m, n])과, m개의 메모리 셀(MCref)(MCref[1] 내지 MCref[m])을 가지는 구성예를 도시하였다. 메모리 셀(MC)은 제 1 데이터를 저장하는 기능을 가진다. 또한 메모리 셀(MCref)은 적화 연산에 사용되는 참조 데이터를 저장하는 기능을 가진다. 또한 참조 데이터를 아날로그 데이터 또는 멀티레벨 데이터로 할 수 있다.
메모리 셀(MC[i, j])(i는 1 이상 m 이하의 정수이고, j는 1 이상 n 이하의 정수임)은 배선(WL[i]), 배선(RW[i]), 배선(WD[j]), 및 배선(BL[j])과 접속된다. 또한 메모리 셀(MCref[i])은 배선(WL[i]), 배선(RW[i]), 배선(WDref), 배선(BLref)과 접속된다. 여기서 메모리 셀(MC[i, j])과 배선(BL[j]) 간을 흐르는 전류를 IMC[i, j]로 표기하고, 메모리 셀(MCref[i])과 배선(BLref) 간을 흐르는 전류를 IMCref[i]로 표기한다.
메모리 셀(MC) 및 메모리 셀(MCref)의 구체적인 구성예를 도 14에 도시하였다. 도 14에는 대표적인 예로서 메모리 셀(MC[1, 1], MC[2, 1]) 및 메모리 셀(MCref[1], MCref[2])을 도시하였지만, 다른 메모리 셀(MC) 및 메모리 셀(MCref)에도 같은 구성을 사용할 수 있다. 메모리 셀(MC) 및 메모리 셀(MCref)은 각각 트랜지스터(Tr11), 트랜지스터(Tr12), 용량 소자(C11)를 가진다. 여기서는, 트랜지스터(Tr11) 및 트랜지스터(Tr12)가 n채널형 트랜지스터인 경우에 대하여 설명한다.
메모리 셀(MC)에 있어서, 트랜지스터(Tr11)의 게이트는 배선(WL)과 접속되고, 소스 및 드레인 중 한쪽은 트랜지스터(Tr12)의 게이트 및 용량 소자(C11)의 제 1 전극과 접속되고, 소스 및 드레인 중 다른 쪽은 배선(WD)과 접속되어 있다. 트랜지스터(Tr12)의 소스 및 드레인 중 한쪽은 배선(BL)과 접속되고, 소스 및 드레인 중 다른 쪽은 배선(VR)과 접속되어 있다. 용량 소자(C11)의 제 2 전극은 배선(RW)과 접속된다. 배선(VR)은 소정의 전위를 공급하는 기능을 가지는 배선이다. 여기서는 일례로서 배선(VR)으로부터 저전원 전위(접지 전위 등)가 공급되는 경우에 대하여 설명한다.
트랜지스터(Tr11)의 소스 및 드레인 중 한쪽, 트랜지스터(Tr12)의 게이트, 및 용량 소자(C11)의 제 1 전극과 접속된 노드를 노드(NM)로 한다. 또한 메모리 셀(MC[1, 1], MC[2, 1])의 노드(NM)를 각각 노드(NM[1, 1], NM[2, 1])로 표기한다.
메모리 셀(MCref)도 메모리 셀(MC)과 같은 구성을 가진다. 다만 메모리 셀(MCref)은 배선(WD) 대신에 배선(WDref)과 접속되고, 배선(BL) 대신에 배선(BLref)과 접속된다. 또한, 메모리 셀(MCref[1], MCref[2])에서, 트랜지스터(Tr11)의 소스 및 드레인 중 한쪽, 트랜지스터(Tr12)의 게이트, 및 용량 소자(C11)의 제 1 전극과 접속된 노드를 각각 노드(NMref[1], NMref[2])로 표기한다.
노드(NM) 및 노드(NMref)는 각각 메모리 셀(MC) 및 메모리 셀(MCref)의 유지 노드로서 기능한다. 노드(NM)에는 제 1 데이터가 유지되고, 노드(NMref)에는 참조 데이터가 유지된다. 또한 배선(BL[1])으로부터 메모리 셀(MC[1, 1], MC[2, 1])의 트랜지스터(Tr12)로 각각 전류(IMC[1, 1], IMC[2, 1])가 흐른다. 또한 배선(BLref)으로부터 메모리 셀(MCref[1], MCref[2])의 트랜지스터(Tr12)로 각각 전류(IMCref[1], IMCref[2])가 흐른다.
트랜지스터(Tr11)는 노드(NM) 또는 노드(NMref)의 전위를 유지하는 기능을 가지기 때문에, 트랜지스터(Tr11)의 오프 전류는 작은 것이 바람직하다. 그래서 트랜지스터(Tr11)로서 오프 전류가 매우 작은 OS 트랜지스터를 사용하는 것이 바람직하다. 이로써, 노드(NM) 또는 노드(NMref)의 전위의 변동을 억제할 수 있어, 연산 정밀도의 향상을 도모할 수 있다. 또한 노드(NM) 또는 노드(NMref)의 전위를 리프레시하는 동작의 빈도를 낮출 수 있어, 소비전력을 삭감할 수 있다.
트랜지스터(Tr12)는 특별히 한정되지 않고, 예를 들어 Si 트랜지스터, 또는 OS 트랜지스터 등을 사용할 수 있다. 트랜지스터(Tr12)에 OS 트랜지스터를 사용하는 경우, 트랜지스터(Tr11)와 같은 제조 장치를 사용하여 트랜지스터(Tr12)를 제작할 수 있어 제조 비용을 낮출 수 있다. 또한 트랜지스터(Tr12)는 n채널형이어도 좋고 p채널형이어도 좋다.
전류원 회로(CS)는 배선(BL[1] 내지 BL[n]) 및 배선(BLref)과 접속되어 있다. 전류원 회로(CS)는 배선(BL[1] 내지 BL[n]) 및 배선(BLref)에 전류를 공급하는 기능을 가진다. 또한 배선(BL[1] 내지 BL[n])에 공급되는 전류값과 배선(BLref)에 공급되는 전류값은 상이하여도 좋다. 여기서는, 전류원 회로(CS)로부터 배선(BL[1] 내지 BL[n])에 공급되는 전류를 IC로, 전류원 회로(CS)로부터 배선(BLref)에 공급되는 전류를 ICref로 표기한다.
커런트 미러 회로(CM)는 배선(IL[1] 내지 IL[n]) 및 배선(ILref)을 가진다. 배선(IL[1] 내지 IL[n])은 각각 배선(BL[1] 내지 BL[n])과 접속되고, 배선(ILref)은 배선(BLref)과 접속되어 있다. 여기서는, 배선(IL[1] 내지 IL[n])과 배선(BL[1] 내지 BL[n])의 접속 부분을 노드(NP[1] 내지 NP[n])로 표기한다. 또한 배선(ILref)과 배선(BLref)의 접속 부분을 노드(NPref)로 표기한다.
커런트 미러 회로(CM)는 노드(NPref)의 전위에 따른 전류(ICM)를 배선(ILref)에 흘리는 기능과 이 전류(ICM)를 배선(IL[1] 내지 IL[n])에도 흘리는 기능을 가진다. 도 13에는 배선(BLref)으로부터 배선(ILref)으로 전류(ICM)가 배출되고, 배선(BL[1] 내지 BL[n])으로부터 배선(IL[1] 내지 IL[n])으로 전류(ICM)가 배출되는 예를 도시하였다. 또한 커런트 미러 회로(CM)로부터 배선(BL[1] 내지 BL[n])을 통하여 셀 어레이(CA)로 흐르는 전류를 IB[1] 내지 IB[n]으로 표기한다. 또한 커런트 미러 회로(CM)로부터 배선(BLref)을 통하여 셀 어레이(CA)로 흐르는 전류를 IBref로 표기한다.
회로(WDD)는 배선(WD[1] 내지 WD[n]) 및 배선(WDref)과 접속되어 있다. 회로(WDD)는 메모리 셀(MC)에 저장되는 제 1 데이터에 대응하는 전위를 배선(WD[1] 내지 WD[n])에 공급하는 기능을 가진다. 또한 회로(WDD)는 메모리 셀(MCref)에 저장되는 참조 데이터에 대응하는 전위를 배선(WDref)에 공급하는 기능을 가진다. 회로(WLD)는 배선(WL[1] 내지 WL[m])과 접속되어 있다. 회로(WLD)는 데이터의 기록을 수행하는 메모리 셀(MC) 또는 메모리 셀(MCref)을 선택하기 위한 신호를 배선(WL[1] 내지 WL[m])에 공급하는 기능을 가진다. 회로(CLD)는 배선(RW[1] 내지 RW[m])과 접속되어 있다. 회로(CLD)는 제 2 데이터에 대응하는 전위를 배선(RW[1] 내지 RW[m])에 공급하는 기능을 가진다.
오프셋 회로(OFST)는 배선(BL[1] 내지 BL[n]) 및 배선(OL[1] 내지 OL[n])과 접속되어 있다. 오프셋 회로(OFST)는 배선(BL[1] 내지 BL[n])으로부터 오프셋 회로(OFST)로 흐르는 전류량 및/또는 배선(BL[1] 내지 BL[n])으로부터 오프셋 회로(OFST)로 흐르는 전류의 변화량을 검출하는 기능을 가진다. 또한 오프셋 회로(OFST)는 검출 결과를 배선(OL[1] 내지 OL[n])에 출력하는 기능을 가진다. 또한 오프셋 회로(OFST)는 검출 결과에 대응하는 전류를 배선(OL)에 출력하여도 좋고, 검출 결과에 대응하는 전류를 전압으로 변환하여 배선(OL)에 출력하여도 좋다. 셀 어레이(CA)와 오프셋 회로(OFST) 사이를 흐르는 전류를 Iα[1] 내지 Iα[n]으로 표기한다.
오프셋 회로(OFST)의 구성예를 도 15에 도시하였다. 도 15에 도시된 오프셋 회로(OFST)는 회로(OC[1] 내지 OC[n])를 가진다. 또한, 회로(OC[1] 내지 OC[n])는 각각, 트랜지스터(Tr21), 트랜지스터(Tr22), 트랜지스터(Tr23), 용량 소자(C21), 및 저항 소자(R1)를 가진다. 각 소자의 접속 관계는 도 15에 도시된 바와 같다. 또한 용량 소자(C21)의 제 1 전극 및 저항 소자(R1)의 제 1 단자와 접속된 노드를 노드(Na)로 한다. 또한 용량 소자(C21)의 제 2 전극, 트랜지스터(Tr21)의 소스 및 드레인 중 한쪽, 및 트랜지스터(Tr22)의 게이트와 접속된 노드를 노드(Nb)로 한다.
배선(VrefL)은 전위(Vref)를 공급하는 기능을 가지고, 배선(VaL)은 전위(Va)를 공급하는 기능을 가지고, 배선(VbL)은 전위(Vb)를 공급하는 기능을 가진다. 또한 배선(VDDL)은 전위(VDD)를 공급하는 기능을 가지고, 배선(VSSL)은 전위(VSS)를 공급하는 기능을 가진다. 여기서는 전위(VDD)가 고전원 전위이고, 전위(VSS)가 저전원 전위인 경우에 대하여 설명한다. 또한 배선(RST)은 트랜지스터(Tr21)의 도통 상태를 제어하기 위한 전위를 공급하는 기능을 가진다. 트랜지스터(Tr22), 트랜지스터(Tr23), 배선(VDDL), 배선(VSSL), 및 배선(VbL)으로 소스 폴로어 회로가 구성된다.
다음으로 회로(OC[1] 내지 OC[n])의 동작예에 대하여 설명한다. 또한 여기서는 대표적인 예로서 회로(OC[1])의 동작예에 대하여 설명하지만, 회로(OC[2] 내지 OC[n])도 마찬가지로 동작시킬 수 있다. 우선, 배선(BL[1])을 제 1 전류가 흐르면 노드(Na)의 전위는 제 1 전류와 저항 소자(R1)의 저항값에 대응하는 전위가 된다. 또한 이때 트랜지스터(Tr21)는 온 상태이므로 노드(Nb)에 전위(Va)가 공급된다. 그 후, 트랜지스터(Tr21)는 오프 상태가 된다.
다음으로 배선(BL[1])을 제 2 전류가 흐르면 노드(Na)의 전위는 제 2 전류와 저항 소자(R1)의 저항값에 대응하는 전위로 변화한다. 이때 트랜지스터(Tr21)는 오프 상태이고 노드(Nb)는 부유 상태이므로, 노드(Na)의 전위 변화에 따라 노드(Nb)의 전위는 용량 결합에 의하여 변화한다. 여기서 노드(Na)의 전위의 변화를 ΔVNa로 하고, 용량 결합 계수를 1로 하면, 노드(Nb)의 전위는 Va+ΔVNa가 된다. 그리고 트랜지스터(Tr22)의 문턱 전압을 Vth로 하면, 배선(OL[1])으로부터 전위(Va+ΔVNa-Vth)가 출력된다. 여기서, Va=Vth로 함으로써 배선(OL[1])으로부터 전위(ΔVNa)를 출력할 수 있다.
전위(ΔVNa)는 제 1 전류로부터 제 2 전류로의 변화량, 저항 소자(R1)의 저항값, 및 전위(Vref)에 따라 결정된다. 여기서, 저항 소자(R1)의 저항값 및 전위(Vref)는 이미 알려져 있기 때문에 배선(BL)을 흐르는 전류의 변화량을 전위(ΔVNa)로부터 얻을 수 있다.
상술한 바와 같이 오프셋 회로(OFST)에 의하여 검출된 전류량 및/또는 전류의 변화량에 대응하는 신호는 배선(OL[1] 내지 OL[n])을 통하여 활성화 함수 회로(ACTV)에 입력된다.
활성화 함수 회로(ACTV)는 배선(OL[1] 내지 OL[n]) 및 배선(NIL[1] 내지 NIL[n])과 접속되어 있다. 활성화 함수 회로(ACTV)는 오프셋 회로(OFST)로부터 입력된 신호를 미리 정의된 활성화 함수에 따라 변환하기 위한 연산을 수행하는 기능을 가진다. 활성화 함수로서는, 예를 들어 시그모이드 함수, tanh 함수, softmax 함수, ReLU 함수, 문턱값 함수 등을 사용할 수 있다. 활성화 함수 회로(ACTV)에 의하여 변환된 신호는 출력 데이터로서 배선(NIL[1] 내지 NIL[n])에 출력된다.
<반도체 장치의 동작예>
상기 반도체 장치(MAC)를 사용하여 제 1 데이터와 제 2 데이터의 적화 연산을 수행할 수 있다. 이하에서 적화 연산을 수행할 때의 반도체 장치(MAC)의 동작예를 설명한다.
도 16에 반도체 장치(MAC)의 동작예의 타이밍 차트를 나타내었다. 도 16에는, 도 14에서의 배선(WL[1]), 배선(WL[2]), 배선(WD[1]), 배선(WDref), 노드(NM[1, 1]), 노드(NM[2, 1]), 노드(NMref[1]), 노드(NMref[2]), 배선(RW[1]), 및 배선(RW[2])의 전위의 추이(推移)와, 전류(IB[1]-Iα[1]) 및 전류(IBref)의 값의 추이를 나타내었다. 전류(IB[1]-Iα[1])는 배선(BL[1])으로부터 메모리 셀(MC[1, 1], MC[2, 1])로 흐르는 전류의 합계에 상당한다.
또한, 여기서는 대표적인 예로서 도 14에 도시된 메모리 셀(MC[1, 1], MC[2, 1]) 및 메모리 셀(MCref[1], MCref[2])에 주목하여 동작을 설명하지만, 다른 메모리 셀(MC) 및 메모리 셀(MCref)도 마찬가지로 동작시킬 수 있다.
[제 1 데이터의 저장]
우선, 시각 T01 내지 시각 T02의 기간에서, 배선(WL[1])의 전위가 하이 레벨(High)이 되고, 배선(WD[1])의 전위가 접지 전위(GND)보다 VPR-VW[1, 1]만큼 큰 전위가 되고, 배선(WDref)의 전위가 접지 전위보다 VPR만큼 큰 전위가 된다. 또한 배선(RW[1]) 및 배선(RW[2])의 전위가 기준 전위(REFP)가 된다. 또한 전위(VW[1, 1])는 메모리 셀(MC[1, 1])에 저장되는 제 1 데이터에 대응하는 전위이다. 또한 전위(VPR)는 참조 데이터에 대응하는 전위이다. 이로써, 메모리 셀(MC[1, 1]) 및 메모리 셀(MCref[1])이 가지는 트랜지스터(Tr11)가 온 상태가 되고, 노드(NM[1, 1])의 전위가 VPR-VW[1, 1]가 되고, 노드(NMref[1])의 전위가 VPR가 된다.
이때 배선(BL[1])으로부터 메모리 셀(MC[1, 1])의 트랜지스터(Tr12)로 흐르는 전류(IMC[1, 1], 0)는 다음 식으로 나타낼 수 있다. 여기서, k는 트랜지스터(Tr12)의 채널 길이, 채널 폭, 이동도, 및 게이트 절연막의 용량 등으로 결정되는 정수(定數)이다. 또한 Vth는 트랜지스터(Tr12)의 문턱 전압이다.
IMC[1, 1], 0=k(VPR-VW[1, 1]-Vth)2 (E1)
또한 배선(BLref)으로부터 메모리 셀(MCref[1])의 트랜지스터(Tr12)로 흐르는 전류(IMCref[1], 0)는 다음 식으로 나타낼 수 있다.
IMCref[1], 0=k(VPR-Vth)2 (E2)
다음으로, 시각 T02 내지 시각 T03의 기간에서, 배선(WL[1])의 전위가 로 레벨(Low)이 된다. 이로써, 메모리 셀(MC[1, 1]) 및 메모리 셀(MCref[1])이 가지는 트랜지스터(Tr11)가 오프 상태가 되고, 노드(NM[1, 1]) 및 노드(NMref[1])의 전위가 유지된다.
또한, 상술한 바와 같이 트랜지스터(Tr11)로서 OS 트랜지스터를 사용하는 것이 바람직하다. 이로써, 트랜지스터(Tr11)의 누설 전류를 억제할 수 있어, 노드(NM[1, 1]) 및 노드(NMref[1])의 전위를 정확히 유지할 수 있다.
다음으로, 시각 T03 내지 시각 T04의 기간에 배선(WL[2])의 전위가 하이 레벨이 되고, 배선(WD[1])의 전위가 접지 전위보다 VPR-VW[2, 1]만큼 큰 전위가 되고, 배선(WDref)의 전위가 접지 전위보다 VPR만큼 큰 전위가 된다. 또한, 전위(VW[2, 1])는 메모리 셀(MC[2, 1])에 저장되는 제 1 데이터에 대응하는 전위이다. 이로써, 메모리 셀(MC[2, 1]) 및 메모리 셀(MCref[2])이 가지는 트랜지스터(Tr11)가 온 상태가 되고, 노드(NM[2, 1])의 전위가 VPR-VW[2, 1]이 되고, 노드(NMref[2])의 전위가 VPR가 된다.
이때 배선(BL[1])으로부터 메모리 셀(MC[2, 1])의 트랜지스터(Tr12)로 흐르는 전류(IMC[2, 1], 0)는 다음 식으로 나타낼 수 있다.
IMC[2, 1], 0=k(VPR-VW[2, 1]-Vth)2 (E3)
또한 배선(BLref)으로부터 메모리 셀(MCref[2])의 트랜지스터(Tr12)로 흐르는 전류(IMCref[2], 0)는 다음 식으로 나타낼 수 있다.
IMCref[2], 0=k(VPR-Vth)2 (E4)
다음으로, 시각 T04 내지 시각 T05의 기간에 배선(WL[2])의 전위가 로 레벨이 된다. 이로써, 메모리 셀(MC[2, 1]) 및 메모리 셀(MCref[2])이 가지는 트랜지스터(Tr11)가 오프 상태가 되고, 노드(NM[2, 1]) 및 노드(NMref[2])의 전위가 유지된다.
이상의 동작에 의하여 메모리 셀(MC[1, 1], MC[2, 1])에 제 1 데이터가 저장되고, 메모리 셀(MCref[1], MCref[2])에 참조 데이터가 저장된다.
여기서, 시각 T04 내지 시각 T05의 기간에서, 배선(BL[1]) 및 배선(BLref)을 흐르는 전류에 대하여 생각한다. 배선(BLref)에는 전류원 회로(CS)로부터 전류가 공급된다. 또한 배선(BLref)을 흐르는 전류는 커런트 미러 회로(CM), 메모리 셀(MCref[1], MCref[2])에 배출된다. 전류원 회로(CS)로부터 배선(BLref)에 공급되는 전류를 ICref로 하고, 배선(BLref)으로부터 커런트 미러 회로(CM)에 의하여 배출되는 전류를 ICM, 0으로 하면, 다음 식이 성립된다.
ICref-ICM, 0=IMCref[1], 0+IMCref[2], 0 (E5)
배선(BL[1])에는 전류원 회로(CS)로부터의 전류가 공급된다. 또한 배선(BL[1])을 흐르는 전류는 커런트 미러 회로(CM), 메모리 셀(MC[1, 1], MC[2, 1])에 배출된다. 또한 배선(BL[1])으로부터 오프셋 회로(OFST)로 전류가 흐른다. 전류원 회로(CS)로부터 배선(BL[1])에 공급되는 전류를 IC,0, 배선(BL[1])으로부터 오프셋 회로(OFST)로 흐르는 전류를 Iα, 0으로 하면, 다음 식이 성립된다.
IC-ICM, 0=IMC[1, 1], 0+IMC[2, 1], 0+Iα, 0 (E6)
[제 1 데이터와 제 2 데이터의 적화 연산]
다음으로, 시각 T05 내지 시각 T06의 기간에 배선(RW[1])의 전위가 기준 전위보다 VX[1]만큼 큰 전위가 된다. 이때, 메모리 셀(MC[1, 1]) 및 메모리 셀(MCref[1]) 각각의 용량 소자(C11)에는 전위(VX[1])가 공급되어, 용량 결합에 의하여 트랜지스터(Tr12)의 게이트의 전위가 상승된다. 또한, 전위(VX[1])는 메모리 셀(MC[1, 1]) 및 메모리 셀(MCref[1])에 공급되는 제 2 데이터에 대응하는 전위이다.
트랜지스터(Tr12)의 게이트 전위의 변화량은 배선(RW)의 전위의 변화량과, 메모리 셀의 구성에 따라 결정되는 용량 결합 계수를 곱하여 얻은 값이다. 용량 결합 계수는, 용량 소자(C11)의 용량, 트랜지스터(Tr12)의 게이트 용량, 및 기생 용량 등에 의하여 산출된다. 이하에서는 편의상 배선(RW)의 전위의 변화량과 트랜지스터(Tr12)의 게이트 전위의 변화량이 같은 것으로, 즉 용량 결합 계수가 1인 것으로 하여 설명한다. 실제로는 용량 결합 계수를 고려하여 전위(VX)를 결정하면 좋다.
메모리 셀(MC[1, 1]) 및 메모리 셀(MCref[1])의 용량 소자(C11)에 전위(VX[1])가 공급되면, 노드(NM[1, 1]) 및 노드(NMref[1])의 전위가 각각 VX[1]만큼 상승된다.
여기서, 시각 T05 내지 시각 T06의 기간에 배선(BL[1])으로부터 메모리 셀(MC[1, 1])의 트랜지스터(Tr12)로 흐르는 전류(IMC[1, 1], 1)는 다음 식으로 나타낼 수 있다.
IMC[1, 1], 1=k(VPR-VW[1, 1]+VX[1]-Vth)2 (E7)
즉 배선(RW[1])에 전위(VX[1])를 공급함으로써 배선(BL[1])으로부터 메모리 셀(MC[1, 1])의 트랜지스터(Tr12)로 흐르는 전류는 ΔIMC[1, 1]=IMC[1, 1], 1-IMC[1, 1], 0만큼 증가한다.
또한 시각 T05 내지 시각 T06의 기간에 배선(BLref)으로부터 메모리 셀(MCref[1])의 트랜지스터(Tr12)로 흐르는 전류(IMCref[1], 1)는 다음 식으로 나타낼 수 있다.
IMCref[1], 1=k(VPR+VX[1]-Vth)2 (E8)
즉 배선(RW[1])에 전위(VX[1])를 공급함으로써 배선(BLref)으로부터 메모리 셀(MCref[1])의 트랜지스터(Tr12)로 흐르는 전류는 ΔIMCref[1]=IMCref[1], 1-IMCref[1], 0만큼 증가한다.
또한 배선(BL[1]) 및 배선(BLref)을 흐르는 전류에 대하여 생각한다. 배선(BLref)에는 전류원 회로(CS)로부터 전류(ICref)가 공급된다. 또한 배선(BLref)을 흐르는 전류는 커런트 미러 회로(CM), 메모리 셀(MCref[1], MCref[2])에 배출된다. 배선(BLref)으로부터 커런트 미러 회로(CM)에 배출되는 전류를 ICM, 1로 하면 다음 식이 성립된다.
ICref-ICM, 1=IMCref[1], 1+IMCref[2], 0 (E9)
배선(BL[1])에는 전류원 회로(CS)로부터 전류(IC)가 공급된다. 또한 배선(BL[1])을 흐르는 전류는 커런트 미러 회로(CM), 메모리 셀(MC[1, 1], MC[2, 1])에 배출된다. 또한 배선(BL[1])으로부터 오프셋 회로(OFST)로 전류가 흐른다. 배선(BL[1])으로부터 오프셋 회로(OFST)로 흐르는 전류를 Iα, 1로 하면 다음 식이 성립된다.
IC-ICM, 1=IMC[1, 1], 1+IMC[2, 1], 1+Iα, 1 (E10)
그리고, 식(E1) 내지 식(E10)에 의거하여, 전류(Iα, 0)와 전류(Iα, 1)의 차(차분 전류(ΔIα))는 다음 식으로 나타낼 수 있다.
ΔIα=Iα, 1-Iα, 0=2kVW[1, 1]VX[1] (E11)
이와 같이, 차분 전류(ΔIα)는 전위(VW[1, 1])와 전위(VX[1])의 곱에 대응하는 값이다.
그 후, 시각 T06 내지 시각 T07의 기간에서, 배선(RW[1])의 전위는 기준 전위가 되고, 노드(NM[1, 1]) 및 노드(NMref[1])의 전위는 시각 T04 내지 시각 T05의 기간에서의 전위와 동일하게 된다.
다음으로, 시각 T07 내지 시각 T08의 기간에 배선(RW[1])의 전위가 기준 전위보다 VX[1]만큼 큰 전위가 되고, 배선(RW[2])의 전위가 기준 전위보다 VX[2]만큼 큰 전위가 된다. 이로써, 메모리 셀(MC[1, 1]) 및 메모리 셀(MCref[1]) 각각의 용량 소자(C11)에 전위(VX[1])가 공급되고, 용량 결합에 의하여 노드(NM[1, 1]) 및 노드(NMref[1])의 전위가 각각 VX[1]만큼 상승된다. 또한 메모리 셀(MC[2, 1]) 및 메모리 셀(MCref[2]) 각각의 용량 소자(C11)에 전위(VX[2])가 공급되고, 용량 결합에 의하여 노드(NM[2, 1]) 및 노드(NMref[2])의 전위가 각각 VX[2]만큼 상승된다.
여기서, 시각 T07 내지 시각 T08의 기간에 배선(BL[1])으로부터 메모리 셀(MC[2, 1])의 트랜지스터(Tr12)로 흐르는 전류(IMC[2, 1], 1)는 다음의 식으로 나타낼 수 있다.
IMC[2, 1], 1=k(VPR-VW[2, 1]+VX[2]-Vth)2 (E12)
즉 배선(RW[2])에 전위(VX[2])를 공급함으로써 배선(BL[1])으로부터 메모리 셀(MC[2, 1])의 트랜지스터(Tr12)로 흐르는 전류는 ΔIMC[2, 1]=IMC[2, 1], 1-IMC[2, 1], 0만큼 증가한다.
또한 시각 T07 내지 시각 T08의 기간에 배선(BLref)으로부터 메모리 셀(MCref[2])의 트랜지스터(Tr12)로 흐르는 전류(IMCref[2], 1)는 다음 식으로 나타낼 수 있다.
IMCref[2], 1=k(VPR+VX[2]-Vth)2 (E13)
즉 배선(RW[2])에 전위(VX[2])를 공급함으로써 배선(BLref)으로부터 메모리 셀(MCref[2])의 트랜지스터(Tr12)로 흐르는 전류는 ΔIMCref[2]=IMCref[2], 1-IMCref[2], 0만큼 증가한다.
또한 배선(BL[1]) 및 배선(BLref)을 흐르는 전류에 대하여 생각한다. 배선(BLref)에는 전류원 회로(CS)로부터 전류(ICref)가 공급된다. 또한 배선(BLref)을 흐르는 전류는 커런트 미러 회로(CM), 메모리 셀(MCref[1], MCref[2])에 배출된다. 배선(BLref)으로부터 커런트 미러 회로(CM)에 배출되는 전류를 ICM, 2로 하면 다음 식이 성립된다.
ICref-ICM, 2=IMCref[1], 1+IMCref[2], 1 (E14)
배선(BL[1])에는 전류원 회로(CS)로부터 전류(IC)가 공급된다. 또한 배선(BL[1])을 흐르는 전류는 커런트 미러 회로(CM), 메모리 셀(MC[1, 1], MC[2, 1])에 배출된다. 또한 배선(BL[1])으로부터 오프셋 회로(OFST)로 전류가 흐른다. 배선(BL[1])으로부터 오프셋 회로(OFST)로 흐르는 전류를 Iα, 2로 하면 다음 식이 성립된다.
IC-ICM, 2=IMC[1, 1], 1+IMC[2, 1], 1+Iα, 2 (E15)
그리고, 식(E1) 내지 식(E8) 및 식(E12) 내지 식(E15)에 의거하여, 전류(Iα, 0)와 전류(Iα, 2)의 차(차분 전류(ΔIα))를 다음 식으로 나타낼 수 있다.
ΔIα=Iα, 2-Iα, 0=2k(VW[1, 1]VX[1]+VW[2, 1]VX[2]) (E16)
상술한 바와 같이, 차분 전류(ΔIα)는 전위(VW[1, 1])와 전위(VX[1])의 곱과 전위(VW[2, 1])와 전위(VX[2])의 곱의 합에 대응하는 값이 된다.
그 후, 시각 T08 내지 시각 T09의 기간에서, 배선(RW[1], RW[2])의 전위는 기준 전위가 되고, 노드(NM[1, 1], NM[2, 1]) 및 노드(NMref[1], NMref[2])의 전위는 시각 T04 내지 시각 T05의 기간에서의 전위와 동일하게 된다.
식(E11) 및 식(E16)에 나타낸 바와 같이, 오프셋 회로(OFST)에 입력되는 차분 전류(ΔIα)는 제 1 데이터(가중치)에 대응하는 전위(VW)와 제 2 데이터(입력 데이터)에 대응하는 전위(VX)의 곱의 항을 가지는 식으로부터 산출할 수 있다. 즉, 차분 전류(ΔIα)를 오프셋 회로(OFST)에 의하여 계측함으로써 제 1 데이터와 제 2 데이터의 적화 연산의 결과를 얻을 수 있다.
또한, 상기에서는 특히 메모리 셀(MC[1, 1], MC[2, 1]) 및 메모리 셀(MCref[1], MCref[2])에 주목하였지만, 메모리 셀(MC) 및 메모리 셀(MCref)의 개수는 임의로 설정할 수 있다. 메모리 셀(MC) 및 메모리 셀(MCref)의 행의 개수 m을 임의의 개수 i로 한 경우의 차분 전류(ΔIα)는 다음 식으로 나타낼 수 있다.
ΔIα=2kΣiVW[i, 1]VX[i] (E17)
또한 메모리 셀(MC) 및 메모리 셀(MCref)의 열의 개수 n을 늘림으로써, 병렬로 실행되는 적화 연산의 개수를 늘릴 수 있다.
상술한 바와 같이, 반도체 장치(MAC)를 사용함으로써 제 1 데이터와 제 2 데이터의 적화 연산을 수행할 수 있다. 또한, 메모리 셀(MC) 및 메모리 셀(MCref)로서 도 14에 도시된 구성을 사용함으로써, 적은 트랜지스터 수로 적화 연산 회로를 구성할 수 있다. 그러므로, 반도체 장치(MAC)의 회로 규모의 축소를 도모할 수 있다.
반도체 장치(MAC)를 뉴럴 네트워크에서의 연산에 사용하는 경우, 메모리 셀(MC)의 행의 개수 m을 하나의 뉴런에 공급되는 입력 데이터의 개수에 대응시키고, 메모리 셀(MC)의 열의 개수 n을 뉴런의 개수에 대응시킬 수 있다. 예를 들어, 도 12의 (A)에 나타낸 중간층(HL)에서 반도체 장치(MAC)를 사용한 적화 연산을 수행하는 경우에 대하여 생각한다. 이때 메모리 셀(MC)의 행의 개수 m을 입력층(IL)으로부터 공급되는 입력 데이터의 개수(입력층(IL)의 뉴런의 개수)로 설정하고, 메모리 셀(MC)의 열의 개수 n을 중간층(HL)의 뉴런의 개수로 설정할 수 있다.
또한 반도체 장치(MAC)를 적용하는 뉴럴 네트워크의 구조는 특별히 한정되지 않는다. 예를 들어 반도체 장치(MAC)는 컨볼루셔널 뉴럴 네트워크(CNN), 순환 뉴럴 네트워크(RNN), 자기 부호화기, 볼츠만 머신(제한 볼츠만 머신을 포함함) 등에 사용할 수도 있다.
상술한 바와 같이, 반도체 장치(MAC)를 사용함으로써 뉴럴 네트워크의 적화 연산을 수행할 수 있다. 또한, 셀 어레이(CA)에 도 14에 도시된 메모리 셀(MC) 및 메모리 셀(MCref)을 사용함으로써, 연산 정밀도의 향상, 소비전력의 삭감, 또는 회로 규모의 축소를 도모할 수 있는 집적 회로를 제공할 수 있다.
본 실시형태는 다른 실시형태와 적절히 조합할 수 있다.
AD: 문장 해석 데이터, ADref: 참조용 문장 해석 데이터, C11: 용량 소자, C21: 용량 소자, ID: IDF 데이터, KD: 키워드 데이터, KW: 키워드, KW1: 키워드, KW2: 키워드, KWx: 키워드, LD: 랭킹 데이터, NN: 뉴럴 네트워크, R1: 저항 소자, RD: 관련어 데이터, RS: 관련도, RW: 관련어, RWx1: 관련어, RWx2: 관련어, RWxy: 관련어, TD: 문장 데이터, TDref: 참조용 문장 데이터, Tr11: 트랜지스터, Tr12: 트랜지스터, Tr21: 트랜지스터, Tr22: 트랜지스터, Tr23: 트랜지스터, VD: 벡터 데이터, 100: 문서 검색 시스템, 101: 입력부, 102: 전송로, 103: 처리부, 105: 기억부, 107: 데이터베이스, 109: 출력부, 150: 문서 검색 시스템, 151: 서버, 152: 단말, 161a: 통신부, 161b: 통신부, 162: 전송로, 163a: 처리부, 163b: 처리부, 165: 기억부, 167: 데이터베이스, 168: 전송로, 169: 입출력부

Claims (24)

  1. 문서 검색 시스템으로서,
    처리부를 가지고,
    상기 처리부는,
    문장 데이터에 포함되는 키워드를 추출하는 기능과,
    복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어 중에서 상기 키워드의 관련어를 추출하는 기능과,
    상기 키워드 및 상기 관련어 각각에 대하여 가중치를 부여하는 기능과,
    복수의 제 2 참조용 문장 해석 데이터 각각에 대하여 상기 가중치에 기초하여 점수를 부여하는 기능과,
    상기 점수에 기초하여 상기 복수의 제 2 참조용 문장 해석 데이터에 순위를 부여함으로써 랭킹 데이터를 생성하는 기능과,
    상기 랭킹 데이터를 출력하는 기능을 가지는, 문서 검색 시스템.
  2. 문서 검색 시스템으로서,
    처리부를 가지고,
    상기 처리부는,
    문장 데이터에 포함되는 키워드를 추출하는 기능과,
    복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어 중에서 상기 키워드의 관련어를 추출하는 기능과,
    상기 키워드 및 상기 관련어 각각에 대하여 가중치를 부여하는 기능과,
    복수의 제 2 참조용 문장 해석 데이터 각각에 대하여 상기 가중치에 기초하여 점수를 부여하는 기능과,
    상기 점수에 기초하여 상기 복수의 제 2 참조용 문장 해석 데이터에 순위를 부여함으로써 랭킹 데이터를 생성하는 기능과,
    상기 랭킹 데이터를 출력하는 기능을 가지고,
    상기 키워드의 상기 가중치는, 상기 키워드의, 상기 복수의 제 1 참조용 문장 해석 데이터 또는 상기 복수의 제 2 참조용 문장 해석 데이터에 있어서의 역 문서 빈도에 기초한 값이고,
    상기 관련어의 상기 가중치는 상기 관련어의 분산 표현 벡터와 상기 키워드의 분산 표현 벡터의 유사도 또는 거리에 기초한 값과, 상기 키워드의 상기 가중치의 곱인, 문서 검색 시스템.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 키워드 또는 상기 관련어와 일치하는 단어를 가지는 상기 제 2 참조용 문장 해석 데이터에 대하여 상기 점수를 부여하는, 문서 검색 시스템.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 복수의 제 1 참조용 문장 해석 데이터는 상기 복수의 제 2 참조용 문장 해석 데이터와 동일한, 문서 검색 시스템.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 관련어는 상기 복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어의 분산 표현을 기계 학습함으로써 얻어지는 분산 표현 벡터를 사용하여 추출하는, 문서 검색 시스템.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    상기 관련어는 상기 복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어 중에서 상기 단어의 분산 표현 벡터와 상기 키워드의 분산 표현 벡터의 유사도의 높이 또는 거리의 가까움에 기초하여 추출하는, 문서 검색 시스템.
  7. 제 6 항에 있어서,
    상기 단어의 분산 표현 벡터는 뉴럴 네트워크를 사용하여 생성된 벡터인, 문서 검색 시스템.
  8. 제 1 항 내지 제 7 항 중 어느 한 항에 있어서,
    상기 문장 데이터에 포함되는 키워드를 추출하는 기능으로서, 상기 문장 데이터의 형태소 해석을 수행함으로써 해석 데이터를 생성하는 기능과, 상기 해석 데이터로부터 상기 키워드를 추출하는 기능을 가지고,
    상기 키워드는 상기 해석 데이터에 포함되는 단어 중에서 상기 복수의 제 1 참조용 문장 해석 데이터 또는 상기 복수의 제 2 참조용 문장 해석 데이터에 있어서의 역 문서 빈도의 높이에 기초하여 추출하는, 문서 검색 시스템.
  9. 제 1 항 내지 제 8 항 중 어느 한 항에 있어서,
    상기 가중치는 사용자가 변경할 수 있는, 문서 검색 시스템.
  10. 제 1 항 내지 제 9 항 중 어느 한 항에 있어서,
    상기 제 1 참조용 문장 해석 데이터는 제 1 참조용 문장 데이터의 형태소 해석을 수행함으로써 생성된 데이터이고,
    상기 제 2 참조용 문장 해석 데이터는 제 2 참조용 문장 데이터의 형태소 해석을 수행함으로써 생성된 데이터인, 문서 검색 시스템.
  11. 제 1 항 내지 제 10 항 중 어느 한 항에 있어서,
    전자 기기와 서버를 가지고,
    상기 전자 기기는 제 1 통신부를 가지고,
    상기 서버는 상기 처리부와 제 2 통신부를 가지고,
    상기 제 1 통신부는 유선 통신 및 무선 통신 중 한쪽 또는 양쪽에 의하여 상기 서버에 상기 문장 데이터를 공급하는 기능을 가지고,
    상기 처리부는 상기 랭킹 데이터를 상기 제 2 통신부에 공급하는 기능을 가지고,
    상기 제 2 통신부는 유선 통신 및 무선 통신 중 한쪽 또는 양쪽에 의하여 상기 전자 기기에 상기 랭킹 데이터를 공급하는 기능을 가지는, 문서 검색 시스템.
  12. 제 1 항 내지 제 11 항 중 어느 한 항에 있어서,
    상기 처리부는 트랜지스터를 가지고,
    상기 트랜지스터는 채널 형성 영역에 금속 산화물을 가지는, 문서 검색 시스템.
  13. 제 1 항 내지 제 11 항 중 어느 한 항에 있어서,
    상기 처리부는 트랜지스터를 가지고,
    상기 트랜지스터는 채널 형성 영역에 실리콘을 가지는, 문서 검색 시스템.
  14. 문서 검색 방법으로서,
    문장 데이터에 포함되는 키워드를 추출하고,
    복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어 중에서 상기 키워드의 관련어를 추출하고,
    상기 키워드 및 상기 관련어 각각에 대하여 가중치를 부여하고,
    복수의 제 2 참조용 문장 해석 데이터 각각에 대하여 상기 가중치에 기초하여 점수를 부여하고,
    상기 점수에 기초하여 상기 복수의 제 2 참조용 문장 해석 데이터에 순위를 부여함으로써 랭킹 데이터를 생성하고,
    상기 랭킹 데이터를 출력하는, 문서 검색 방법.
  15. 제 14 항에 있어서,
    상기 키워드 또는 상기 관련어와 일치하는 단어를 가지는 상기 제 2 참조용 문장 해석 데이터에 대하여 상기 점수를 부여하는, 문서 검색 방법.
  16. 제 14 항 또는 제 15 항에 있어서,
    상기 키워드의 상기 가중치는, 상기 키워드의, 상기 복수의 제 1 참조용 문장 해석 데이터 또는 상기 복수의 제 2 참조용 문장 해석 데이터에 있어서의 역 문서 빈도에 기초한 값이고,
    상기 관련어의 상기 가중치는, 상기 관련어의 분산 표현 벡터와 상기 키워드의 분산 표현 벡터의 유사도 또는 거리에 기초한 값과, 상기 키워드의 상기 가중치의 곱인, 문서 검색 방법.
  17. 제 14 항 내지 제 16 항 중 어느 한 항에 있어서,
    상기 복수의 제 1 참조용 문장 해석 데이터는 상기 복수의 제 2 참조용 문장 해석 데이터와 동일한, 문서 검색 방법.
  18. 제 14 항 내지 제 17 항 중 어느 한 항에 있어서,
    상기 관련어는 상기 복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어의 분산 표현을 기계 학습함으로써 얻어지는 분산 표현 벡터를 사용하여 추출하는, 문서 검색 방법.
  19. 제 14 항 내지 제 18 항 중 어느 한 항에 있어서,
    상기 관련어는 상기 복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어 중에서 상기 단어의 분산 표현 벡터와 상기 키워드의 분산 표현 벡터의 유사도의 높이 또는 거리의 가까움에 기초하여 추출하는, 문서 검색 방법.
  20. 제 19 항에 있어서,
    상기 단어의 분산 표현 벡터는 뉴럴 네트워크를 사용하여 생성된 벡터인, 문서 검색 방법.
  21. 제 14 항 내지 제 20 항 중 어느 한 항에 있어서,
    상기 문장 데이터의 형태소 해석을 수행함으로써 해석 데이터를 생성하고, 상기 해석 데이터에 포함되는 단어 중에서 상기 복수의 제 1 참조용 문장 해석 데이터 또는 상기 복수의 제 2 참조용 문장 해석 데이터에 있어서의 역 문서 빈도의 높이에 기초하여 상기 키워드를 추출함으로써 상기 문장 데이터에 포함되는 상기 키워드를 추출하는, 문서 검색 방법.
  22. 제 14 항 내지 제 21 항 중 어느 한 항에 있어서,
    상기 제 1 참조용 문장 해석 데이터는 제 1 참조용 문장 데이터의 형태소 해석을 수행함으로써 생성된 데이터이고,
    상기 제 2 참조용 문장 해석 데이터는 제 2 참조용 문장 데이터의 형태소 해석을 수행함으로써 생성된 데이터인, 문서 검색 방법.
  23. 프로그램으로서,
    문장 데이터에 포함되는 키워드를 추출하는 제 1 단계와,
    복수의 제 1 참조용 문장 해석 데이터에 포함되는 단어 중에서 상기 키워드의 관련어를 추출하는 제 2 단계와,
    상기 키워드 및 상기 관련어 각각에 대하여 가중치를 부여하는 제 3 단계와,
    복수의 제 2 참조용 문장 해석 데이터 각각에 대하여 상기 제 2 참조용 문장 해석 데이터에 포함되는 단어와 일치한 상기 키워드 또는 상기 관련어의 상기 가중치에 기초하여 점수를 부여하는 제 4 단계와,
    상기 점수에 기초하여 상기 복수의 제 2 참조용 문장 해석 데이터에 순위를 부여함으로써 랭킹 데이터를 생성하는 제 5 단계를 프로세서에 실행시키는, 프로그램.
  24. 비일시적 컴퓨터 가독 기억 매체로서,
    제 23 항에 기재된 프로그램이 기억된, 비일시적 컴퓨터 가독 기억 매체.
KR1020207029794A 2018-03-23 2019-03-13 문서 검색 시스템, 문서 검색 방법, 프로그램, 및 비일시적 컴퓨터 가독 기억 매체 KR20200134265A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2018-055934 2018-03-23
JP2018055934 2018-03-23
PCT/IB2019/052022 WO2019180546A1 (ja) 2018-03-23 2019-03-13 文書検索システム、文書検索方法、プログラム、及び非一時的コンピュータ可読記憶媒体

Publications (1)

Publication Number Publication Date
KR20200134265A true KR20200134265A (ko) 2020-12-01

Family

ID=67986795

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207029794A KR20200134265A (ko) 2018-03-23 2019-03-13 문서 검색 시스템, 문서 검색 방법, 프로그램, 및 비일시적 컴퓨터 가독 기억 매체

Country Status (6)

Country Link
US (1) US11789953B2 (ko)
JP (4) JP7321143B2 (ko)
KR (1) KR20200134265A (ko)
CN (1) CN112136126A (ko)
DE (1) DE112019001497T5 (ko)
WO (1) WO2019180546A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11409754B2 (en) * 2019-06-11 2022-08-09 International Business Machines Corporation NLP-based context-aware log mining for troubleshooting
JP7476201B2 (ja) 2019-07-19 2024-04-30 株式会社半導体エネルギー研究所 テキスト生成方法およびテキスト生成システム
JP7428250B2 (ja) * 2020-06-11 2024-02-06 株式会社島津製作所 文書検索の性能を評価する方法、システム、および装置
CN114691965A (zh) * 2020-12-29 2022-07-01 北京达佳互联信息技术有限公司 简历推荐方法、岗位推荐方法、电子设备
CN115329051B (zh) * 2022-10-17 2022-12-20 成都大学 一种多视角新闻信息快速检索方法、系统、存储介质及终端

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160343452A1 (en) 2015-05-21 2016-11-24 Semiconductor Energy Laboratory Co., Ltd. Electronic Device

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2742115B2 (ja) * 1989-12-01 1998-04-22 日本電信電話株式会社 類似文書検索装置
JPH08263521A (ja) 1995-03-24 1996-10-11 Fuji Xerox Co Ltd 文書登録検索システム
JP2000207422A (ja) * 1999-01-13 2000-07-28 Fujitsu Ltd 概念シソ―ラスを用いた文書の検索及び格付けシステム並びに方法
JP2007065745A (ja) 2005-08-29 2007-03-15 Canon Inc 文書検索方法および文書検索装置、プログラム
CN201000602Y (zh) * 2007-01-05 2008-01-02 鸿富锦精密工业(深圳)有限公司 电脑关机节能电路
JP5186453B2 (ja) 2009-08-07 2013-04-17 ヤフー株式会社 検索装置及び方法
US9280595B2 (en) * 2012-08-30 2016-03-08 Apple Inc. Application query conversion
US20140324808A1 (en) 2013-03-15 2014-10-30 Sumeet Sandhu Semantic Segmentation and Tagging and Advanced User Interface to Improve Patent Search and Analysis
JP6130270B2 (ja) 2013-08-21 2017-05-17 Kddi株式会社 メディアコンテンツに対応するコメント集合をソートして明示するコメントリスト公開サーバ、プログラム及び方法
CN105631009A (zh) * 2015-12-25 2016-06-01 广州视源电子科技股份有限公司 基于词向量相似度的检索方法和系统
JP6639040B2 (ja) 2016-01-28 2020-02-05 日本放送協会 情報検索装置及びプログラム
US11645317B2 (en) 2016-07-26 2023-05-09 Qualtrics, Llc Recommending topic clusters for unstructured text documents
CN107247780A (zh) * 2017-06-12 2017-10-13 北京理工大学 一种基于知识本体的专利文献相似性度量方法
US10810214B2 (en) * 2017-11-22 2020-10-20 Facebook, Inc. Determining related query terms through query-post associations on online social networks
US11182806B1 (en) * 2018-01-04 2021-11-23 Facebook, Inc. Consumer insights analysis by identifying a similarity in public sentiments for a pair of entities
US10891943B2 (en) 2018-01-18 2021-01-12 Citrix Systems, Inc. Intelligent short text information retrieve based on deep learning
US11086857B1 (en) 2018-05-15 2021-08-10 Intuit Inc. Method and system for semantic search with a data management system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160343452A1 (en) 2015-05-21 2016-11-24 Semiconductor Energy Laboratory Co., Ltd. Electronic Device

Also Published As

Publication number Publication date
US20200409963A1 (en) 2020-12-31
JP2021072102A (ja) 2021-05-06
JP6916941B2 (ja) 2021-08-11
WO2019180546A1 (ja) 2019-09-26
JP7321143B2 (ja) 2023-08-04
CN112136126A (zh) 2020-12-25
DE112019001497T5 (de) 2021-01-07
US11789953B2 (en) 2023-10-17
US20210026861A1 (en) 2021-01-28
JP2023134810A (ja) 2023-09-27
JP2021007024A (ja) 2021-01-21
JPWO2019180546A1 (ja) 2021-03-11

Similar Documents

Publication Publication Date Title
JP7321143B2 (ja) 文書検索システム
US20220207070A1 (en) Document search system and document search method
US20210011956A1 (en) Information search system, intellectual property information search system, information search method, and intellectual property information search method
WO2020164332A1 (zh) 一种保险业务的处理方法、装置及设备
Wei et al. Sentiment classification of Chinese Weibo based on extended sentiment dictionary and organisational structure of comments
US11507760B2 (en) Machine translation method, machine translation system, program, and non-transitory computer-readable storage medium
Mahmoud et al. Hybrid attention-based approach for arabic paraphrase detection
US12019636B2 (en) Document search system, document search method, program, and non-transitory computer readable storage medium
Zhu et al. A named entity recognition model based on ensemble learning
JP2023076598A (ja) 情報検索の方法
Alharbi et al. Tourist reviews sentiment classification using deep learning techniques: A case study in saudi arabia
US20230350949A1 (en) Document Retrieval System and Method For Retrieving Document
WO2021079230A1 (ja) 文書検索システム
US20240012979A1 (en) Reading comprehension support system and reading comprehension support method
Coban et al. Domain Effect Investigation for Bert Models Fine-Tuned on Different Text Categorization Tasks
WO2021005433A1 (ja) 読解支援システム及び読解支援方法
Li et al. Tourist Sentiment Mining Based on Deep Learning
Chien Deep Bayesian Data Mining
Kim et al. A 24.1 TOPS/W mixed-signal BNN processor in 28-nm CMOS
Sharma et al. Deep Neural Models for Key-Phrase Indexing
Kumar et al. Cross-Lingual Sentiment Analysis in Deep Learning: A Comparative Study of Multilingual Approaches
VP et al. LEARNING WORD EMBEDDINGS FOR LOW RESOURCE LANGUAGES: THE CASE OF BURYAT