Document retrieval apparatus
The document search system enhances retrieval accuracy and simplifies user input by employing advanced data processing techniques, addressing the challenges of low accuracy and complexity in existing systems.
Patent Information
- Application Number
- JP2025253372
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2018-03-23
- Filing Date
- 2025-12-16
- Publication Date
- 2026-02-24
AI Technical Summary
Existing document retrieval systems struggle with low accuracy and require complex user input methods for searching intellectual property documents, especially in the context of patent searches.
A document search system that utilizes a processing unit to extract keywords, assign weights to related words, and rank data based on these weights, using techniques like inverse document frequency and distributed representation vectors, facilitated by artificial neural networks.
Enables highly accurate document retrieval, particularly for intellectual property, with a simplified input method that reduces user burden and improves search efficiency.
Smart Images

Figure 2026031837000001_ABST
Abstract
Description
[Technical Field]
[0001] One aspect of the present invention is a document search system, a document search method, a program, and a non-transitory computer One aspect of the present invention relates to a document search system relating to intellectual property and a computer-readable storage medium. This relates to document retrieval methods.
[0002] Note that one embodiment of the present invention is not limited to the above technical field. Examples of the semiconductor device include a semiconductor device, a display device, a light-emitting device, a power storage device, a memory device, an electronic device, a lighting device, Input devices (e.g., touch sensors), input / output devices (e.g., touch panels), etc. These driving methods or manufacturing methods can be cited as examples. [Background technology]
[0003] By conducting a prior art search on a pre-filing invention, you can determine whether or not relevant intellectual property rights exist. Patent documents and papers both domestic and foreign obtained through prior art searches can be used. These are used to confirm the novelty and inventive step of an invention and to determine whether to apply for a patent. In addition, by conducting invalidity document searches of patent documents, you can find out whether your patent rights are valid. Investigate whether there is a risk of invalidation or whether you can invalidate patent rights owned by others. This can be done.
[0004] For example, when a user enters a keyword into a system for searching patent documents, the system It is possible to output patent documents containing the keyword.
[0005] In order to conduct a highly accurate prior art search using such a system, appropriate keywords are required. Furthermore, you can extract the necessary patent documents from the many patent documents that are output. It requires high skill from the user.
[0006] In addition, the use of artificial intelligence (AI) is being considered for various purposes. By utilizing networks, it is possible to create computers with higher performance than conventional von Neumann computers. In recent years, artificial neural networks have been developed on electronic circuits. Various research projects are underway to build such a system.
[0007] For example, Patent Document 1 discloses a transistor having an oxide semiconductor in a channel formation region. The memory device stores the weight data required for calculations using artificial neural networks. The invention is disclosed. [Prior art documents] [Patent documents]
[0008] [Patent Document 1] U.S. Patent Publication No. 2016 / 0343452 Summary of the Invention [Problem to be solved by the invention]
[0009] Therefore, one aspect of the present invention is to provide a document retrieval system that can retrieve documents with high accuracy. Another object of the present invention is to provide a document search system that can search for documents with high accuracy. Another object of the present invention is to provide a simple and easy input method. One of the challenges is to achieve highly accurate document retrieval, especially for documents related to intellectual property. do.
[0010] Note that the description of these problems does not preclude the existence of other problems. It is not necessary to solve all of these problems. From the description of the section, it is possible to extract other issues. [Means for solving the problem]
[0011] One aspect of the present invention is a document search system having a processing unit. a function for extracting keywords contained in the first reference sentence analysis data; The function to extract related words of keywords from the list and to provide a function to extract related words of keywords and related words from the list. and a function of assigning weights to each of the plurality of second reference sentence analysis data. A function to assign scores based on weights and to generate multiple second reference sentence analysis data based on the scores. By ranking the data, it is possible to generate ranking data and output the ranking data. It has the function of:
[0012] In one aspect of the present invention, keywords included in text data are extracted, and a plurality of first reference texts are generated. Extract related words from the words contained in the analysis data, and A weight is assigned to each of the words, and the weight is assigned to each of the plurality of second reference sentence analysis data. A score is assigned to each of the sentences based on the weight, and a plurality of second reference sentence analysis data are generated based on the score. By ranking the data, ranking data is generated and output. It is a book search method.
[0013] One aspect of the present invention includes a first step of extracting keywords included in text data, and a second step of extracting keywords from a plurality of text data. Extracting related words of keywords from words included in the first reference sentence analysis data Step 2 and the third step of assigning weights to keywords and related terms. and for each of the plurality of second reference sentence analysis data, Scoring is based on the weight of keywords or related words that match the words in the data. A fourth step is to rank the plurality of second reference sentence analysis data based on the scores. a fifth step of generating ranking data by the above; and a program for causing a processor to execute the above steps. Another aspect of the present invention is a non-transitory computer that stores the program. It is a readable storage medium.
[0014] The weight of a keyword is determined based on the weight of the keyword in the first reference sentence analysis data or the first reference sentence analysis data. Preferably, the value is based on the inverse document frequency in the reference text analysis data of 2. The weight of a word is determined by the similarity or similarity between the distributed representation vector of the related word and the distributed representation vector of the keyword. Preferably, is the product of a distance-based value and a keyword weight.
[0015] For the second reference sentence analysis data having words that match the keyword or related words, It is preferable to assign a score.
[0016] The plurality of first reference sentence analysis data is identical to the plurality of second reference sentence analysis data. That's fine.
[0017] The related words are machine-learned to learn distributed representations of words contained in multiple first reference sentence analysis data. It is preferable to extract the distributed representation vector obtained by
[0018] The related words are obtained by extracting the distributed representations of words from the words included in the first reference sentence analysis data. Based on the similarity or distance between the vector and the distributed representation vector of the keyword It is preferable to extract the distributed representation vector of words using a neural network. Preferably, it is a generated vector.
[0019] Morphological analysis of text data is performed to extract keywords contained in the text data. This has the function of generating analysis data and the function of extracting keywords from the analysis data. The keywords are preferably selected from a plurality of first words included in the analysis data. High inverse document frequency in the reference text analysis data or a plurality of second reference text analysis data It is preferable to extract based on the size.
[0020] The weights are preferably user-configurable.
[0021] The first reference sentence analysis data is generated by performing a morphological analysis of the first reference sentence data. The second reference sentence analysis data is the data obtained by Preferably, the data is generated by performing an analysis.
[0022] The document search system according to one aspect of the present invention preferably includes an electronic device and a server. The electronic device has a first communication unit. The server has the processing unit and a second communication unit. The first communication unit transmits the document to the server via one or both of wired communication and wireless communication. The processing unit has a function of supplying the chapter data to the second communication unit. The second communication unit has a function of communicating by wired communication and / or wireless communication. It has a function of supplying ranking data to electronic devices.
[0023] The processing section may have a transistor having a metal oxide in a channel forming region, The semiconductor device may have a transistor having silicon in a channel forming region. [Effects of the Invention]
[0024] According to one aspect of the present invention, a document retrieval system capable of retrieving documents with high accuracy can be provided. Furthermore, one aspect of the present invention can provide a document retrieval method that can retrieve documents with high accuracy. Alternatively, according to one aspect of the present invention, a highly accurate document search, particularly an intellectual property search, can be performed using a simple input method. It is possible to search for documents related to the above.
[0025] The description of these effects does not preclude the existence of other effects. However, it is not necessary to have all of these effects. , it is possible to extract effects other than these. [Brief explanation of the drawings]
[0026] [Figure 1] FIG. 1 is a block diagram showing an example of a document search system. [Figure 2] FIG. 10 is a flow diagram showing an example of a method for generating search data. [Figure 3] 10A to 10C are diagrams showing an example of a method for generating search data. [Figure 4] FIG. 1 is a flow diagram showing an example of a document search method. [Figure 5] FIG. 1 is a flow diagram showing an example of a document search method. [Figure 6] 1A to 1C are diagrams showing an example of a document search method. [Figure 7] (A) and (B) are diagrams showing an example of a document search method. [Figure 8] FIG. 1 is a flow diagram showing an example of a document search method. [Figure 9] FIG. 1 is a flow diagram showing an example of a document search method. [Figure 10] (A) and (B) are diagrams showing an example of a document search method. [Figure 11]FIG. 1 is a block diagram showing an example of a document search system. [Figure 12] (A) and (B) Diagrams showing examples of neural network configurations. [Figure 13] 1A and 1B illustrate structural examples of a semiconductor device. [Figure 14] FIG. 1 is a diagram showing a configuration example of a memory cell. [Figure 15] FIG. 2 is a diagram showing a configuration example of an offset circuit. [Figure 16] Timing chart. DETAILED DESCRIPTION OF THE INVENTION
[0027] The embodiments will be described in detail with reference to the drawings. However, the present invention is not limited to the following description. The present invention is not limited to the above embodiments, and various changes and modifications may be made in the form and details thereof without departing from the spirit and scope of the present invention. It will be readily understood by those skilled in the art that the present invention can be achieved by the following embodiments. It should not be construed as being limited to the contents described.
[0028] In the configuration of the invention described below, the same parts or parts having similar functions are The same reference numerals are used in common between different drawings, and repeated explanations thereof will be omitted. When referring to a function, the hatch pattern may be the same and no particular symbol may be assigned.
[0029] In addition, the position, size, range, etc. of each component shown in the drawings are not necessarily the same as in reality for ease of understanding. Therefore, the disclosed invention may not necessarily represent the position, size, range, etc. Furthermore, the present invention is not limited to the position, size, range, etc. disclosed in the drawings.
[0030] The words "film" and "layer" may be used interchangeably depending on the situation. For example, the term "conductive layer" can be replaced with "conductive film." Alternatively, for example, the term "insulating film" can be changed to The term can be changed to "insulating layer."
[0031] (Embodiment 1) In this embodiment, a document retrieval system and a document retrieval method according to one embodiment of the present invention will be described with reference to FIGS. This will be explained using FIG.
[0032] One aspect of the present invention is a document retrieval system having a processing unit. The processing unit processes text data. and a function of extracting keywords contained in the first reference sentence analysis data. The function to extract related words from keywords and the function to extract related words from keywords and related words and a function of assigning weights to each of the plurality of second reference sentence analysis data. and a function for assigning a score based on the score and a function for assigning a score based on a plurality of second reference sentence analysis data. A function to generate ranking data by ranking the items and output the ranking data. It has the function.
[0033] In the document search system according to one aspect of the present invention, a keyword is generated using the first reference text analysis data. The related words of the sentence data are extracted, and the second reference sentence analysis data is used as a search target. Or similar data can be searched for.
[0034] The first reference text analysis data and the second reference text analysis data may be the same. In this case, in the document search system according to one aspect of the present invention, the reference sentence analysis data to be searched is It is possible to extract related words of keywords using the first reference sentence analysis data. may include part or all of the second reference sentence analysis data.
[0035] That is, the processing unit of the document search system according to one aspect of the present invention searches for keywords contained in the text data. It has the function of extracting keywords from words contained in multiple reference text analysis data. It has the function of extracting related words from keywords and assigning weights to each of the keywords and related words. and a function to assign scores based on weights to each of multiple reference sentence analysis data. The ranking function ranks multiple reference sentence analysis data based on the scores. The ranking data generating function may also have a function to output ranking data.
[0036] In a document search system, when a user selects keywords to use for a search, the user Not only keywords themselves, but also synonyms, similar words, and variations in spelling of the keywords It is necessary to select keywords to be used in a search, taking into consideration the above. The selection of the tool is a burden for the user, and the difference in skill is likely to occur. Therefore, it is also possible to find the necessary document from the many documents output by the document search system. It becomes a burden.
[0037] Here, the document search system according to one aspect of the present invention is configured to search for keywords contained in the text data and the Therefore, the document search function of one aspect of the present invention is Users of the search system do not have to select the keywords to be used in the search themselves. A document search system that uses text data, which is larger than keywords, as is. You can also select keywords and related words yourself. There is no need to select keywords from scratch; you can simply refer to the keywords and related terms extracted by the document search system. Therefore, it is possible to add, modify, or delete keywords and related terms. This reduces the burden on users in searching and reduces the difference in search results depending on the user's skill. can.
[0038] In particular, the document search system according to one aspect of the present invention is a system for searching for a single word contained in a plurality of reference sentence analysis data. It has the function of extracting related words from keywords. Words included in existing concept dictionaries When extracting related words from a keyword, it is necessary to consider the unique tables contained in the data to be searched. On the other hand, in one aspect of the present invention, it is difficult to extract the keywords as related words. Data prepared for extracting related words of the word (first reference sentence analysis data), and is a key word from the words contained in the data to be searched (second reference sentence analysis data). Extract related words of the word. This allows the unique notation to be extracted as related words. This is preferable because it makes it easier to search and reduces missed searches.
[0039] Furthermore, the document search system according to one aspect of the present invention is Each keyword and related word has a weight. The reference sentence analysis data where the keyword or related word is found is given a score based on the weight. The document search system according to one aspect of the present invention can assign a score based on the score. Based on this, ranking data is generated by ranking the reference text analysis data that is the search target. The search results are ranked by relevance or similarity. This allows users to easily find the documents they need from the search results, improving work efficiency. In this way, the document search system according to one aspect of the present invention is simple and This allows for highly accurate document searches.
[0040] The weight of a keyword is determined based on the weight of the keyword in the first or second reference sentence analysis data. Inverse Document Frequency (IDF) IDF is a measure of how unlikely a word is to appear in a document. The IDF of words that appear in many documents is small, and the IDF of words that appear in only a few documents is small. The IDF is high. Therefore, words with high IDF are likely to be used in the first or second reference sentence analysis. It can be said that this is a characteristic word in the data.
[0041] The extraction of keywords from text data itself is also carried out by searching for a plurality of first keywords of words contained in the text data. Alternatively, it can be performed based on the IDF in the second reference sentence analysis data. Words with an IDF greater than a certain value may be extracted as keywords. Any number of words may be extracted as keywords.
[0042] The keyword is either the first reference sentence analysis data or the second reference sentence analysis data. The second reference sentence analysis data to be searched may be extracted based on the IDF. Extracting keywords from text data based on IDF is more effective in extracting keywords from documents to be searched. However, this method is preferable when there are only a few documents to search. In this case, keywords are extracted from the sentence data based on the IDF in the first reference sentence analysis data. It may be easier to extract keywords from text data by extracting words.
[0043] Or, word part-of-speech information obtained by morphological analysis of text data entered by the user. For example, when morphologically analyzing Japanese text, keywords can be extracted based on the following: It is preferable to extract adjectives, nouns, and so on. It is preferable to extract words and verbs.
[0044] Related words include synonyms, similar words, antonyms, hypernyms, and hyponyms. , among the words contained in multiple reference sentence analysis data, the distributed representation vector of the word is Extraction is based on the similarity or distance between the distributed representation vector of the keyword. It is preferable that the keywords included in the sentence data input by the user are used as reference sentences. Synonyms and similar words contained in the analysis data can be extracted as related words. This can improve search accuracy.
[0045] The weight of related words is the similarity between the distributed representation vector of related words and the distributed representation vector of keywords. Alternatively, it is preferably a product of a distance-based value and a weight of the keyword. The weight is set based on both the relevance of the related words to the keyword and the weight of the keyword itself. By specifying this, the accuracy of the ranking can be improved.
[0046] Document search systems use artificial intelligence (AI) for at least some of their processing. It is preferable to use the Intelligent Intelligence.
[0047] Document retrieval systems, in particular, use artificial neural networks (ANNs). Neural Network (hereafter simply referred to as neural network) A neural network can be implemented as a circuit (hardware) or a program. This is realized by a system (software).
[0048] For example, it is preferable to use machine learning when generating distributed representation vectors of words. It is more preferable to use a neural network. A distributed representation database obtained by machine learning distributed representations of words contained in the reference text analysis data. It is preferable to use vectors to extract related terms. This makes it easier to extract related terms and to assign weights to them. Accuracy can be improved.
[0049] In this specification, a neural network is a network that imitates the neural circuit network of a living organism and is capable of learning. This refers to a general model that determines the strength of connections between neurons and gives them problem-solving ability. A neural network has an input layer, an intermediate layer (hidden layer), and an output layer.
[0050] In this specification, when discussing neural networks, Determining the connection strengths (also called weight coefficients) between neurons is called "learning." There are cases where this happens.
[0051] In this specification, the neural network is constructed using the connection weights obtained by learning. The process of constructing something and then deriving a new conclusion from it is sometimes called "inference."
[0052] <1. Document search system configuration example 1> In this embodiment, a document search system can be used to search for intellectual property. The document search system according to one aspect of the present invention is The invention is not limited to searches for intellectual property, but can also be used to search for other things.
[0053] FIG. 1 shows a block diagram of a document retrieval system 100. The block diagram shows components classified by function as independent blocks. However, it is difficult to completely separate the components into functions in reality, and one component may be complex. A function may involve multiple components. For example, the two processes performed by the processing unit 103 may be executed by different servers. This may be the case.
[0054] The document retrieval system 100 includes at least a processing unit 103. The system 100 further includes an input unit 101, a transmission path 102, a storage unit 105, a database 106, and a 07 and an output unit 109.
[0055] [Input section 101] Data is supplied to the input unit 101 from outside the document retrieval system 100. The data supplied to the processor 103, the memory unit 105, or the like is transmitted via a transmission path 102. The data is fed to the database 107.
[0056] [Transmission path 102] The transmission path 102 has a function of transmitting data. Data is transmitted and received between the data processor 105, the database 107, and the output unit 109 via a transmission line 102. This can be done via:
[0057] [Processing section 103] The processing unit 103 receives the data supplied from the input unit 101, the storage unit 105, the database 107, etc. The processing unit 103 has the function of performing calculations, inferences, etc. using the data. The results can be supplied to the storage unit 105, the database 107, the output unit 109, etc. Cut.
[0058] The processing section 103 may use a transistor having a metal oxide in a channel forming region. Since the off-state current of the transistor is extremely small, the transistor can be preferably used as a memory element. It acts as a switch to hold the charge (data) that has flowed into the capacitance element that functions as a This allows data to be retained for a long period of time. By using it for at least one of the register and the cache memory of the unit 103, The processing unit 103 is operated only when necessary, and in other cases, the information of the immediately preceding processing is stored in the memory element By evacuating the processing unit 103 to the normally This enables off-chip computing, which reduces the power consumption of the document search system. Cut.
[0059] In this specification and the like, when an oxide semiconductor or a metal oxide is used for a channel formation region, The transistor is called an Oxide Semiconductor transistor, or OST. The channel formation region of an OS transistor often contains a metal oxide. preferable.
[0060] In this specification, metal oxide refers to a metal oxide in a broad sense. Metal oxides are oxides. Metal oxides are oxide insulators and oxide conductors (including transparent oxide conductors). , oxide semiconductors (also called "OS"), For example, when a metal oxide is used in the semiconductor layer of a transistor, the metal Oxides are sometimes called oxide semiconductors. In other words, metal oxides have amplifying and rectifying properties. and a switching action, the metal oxide is A semiconductor (metal oxide semiconductor), abbreviated as OS. This can be done.
[0061] The metal oxide contained in the channel formation region preferably contains indium (In). When the metal oxide in the panel formation region contains indium, The carrier mobility (electron mobility) of the semiconductor is increased. The oxide is preferably an oxide semiconductor containing element M. Element M is preferably aluminum. M may be aluminum (Al), gallium (Ga), or tin (Sn). Available elements include boron (B), silicon (Si), titanium (Ti), and iron (Fe). , Nickel (Ni), Germanium (Ge), Yttrium (Y), Zirconium (Zr ), molybdenum (Mo), lanthanum (La), cerium (Ce), neodymium (Nd), Examples include fluorine (Hf), tantalum (Ta), and tungsten (W). In some cases, a combination of the above elements may be used. The element M may be, for example, oxygen. For example, the bond energy with oxygen is higher than that with indium. In addition, the metal oxide in the channel formation region contains zinc (Zn). It is preferable that the metal oxide contains zinc. However, metal oxides containing zinc may be prone to crystallization. .
[0062] The metal oxide contained in the channel formation region is not limited to a metal oxide containing indium. The semiconductor layer may be an indium-free material such as zinc tin oxide or gallium tin oxide. metal oxides containing zinc, metal oxides containing gallium, metal oxides containing tin, etc. It's okay.
[0063] The processing section 103 may also use a transistor containing silicon in the channel forming region. stomach.
[0064] The processing section 103 includes a transistor including an oxide semiconductor in a channel formation region and a It is preferable to use a transistor including silicon in the channel forming region in combination with the transistor.
[0065] The processing unit 103 is, for example, an arithmetic circuit or a central processing unit (CPU). It also has a Recessing Unit.
[0066] The processing unit 103 includes a DSP (Digital Signal Processor), a GP U (Graphics Processing Unit) and other microprocessors The microprocessor may be a Field Programmable Gate Array (FPGA). Gate Array), FPAA (Field Programmable A PLD (Programmable Logic Device) The processing unit 103 may be configured to be realized by a processor. It performs various data processing and program control by interpreting and executing instructions from various programs. The program that can be executed by the processor can be executed by the processor. The data is stored in at least one of the memory area and the storage unit 105 .
[0067] The processing unit 103 may have a main memory. The main memory may be a RAM (Random Access Memory). Volatile memory such as ROM (Read Only Memory) and The memory includes at least one of a non-volatile memory such as a memory for storing data and a non-volatile memory.
[0068] Examples of RAM include DRAM (Dynamic Random Access Memory) mory), SRAM (Static Random Access Memory), etc. is used, and a virtual memory space is allocated and used as a working space for the processing unit 103. The operating system and application programs stored in the storage unit 105 , program modules, program data, and lookup tables, etc. These data, programs, and processes loaded into RAM are Each program module is directly accessed and operated by the processing unit 103.
[0069] The ROM contains a BIOS (Basic Input / Output) It can store the ROM (System) and firmware. SCROM, OTPROM (One Time Programmable Read Only Memory), EPROM (Erasable Programmable EPROM is a type of memory that can be read and written by ultraviolet light. UV-EPROM (Ultra-Violet) Erasable Programmable Read Only Memory), EEPROM (Electrically Erasable Programmability) e Read Only Memory), flash memory, etc.
[0070] [Storage section 105] The storage unit 105 has a function of storing the program executed by the processing unit 103. The memory unit 105 stores the calculation results and inference results generated by the processing unit 103, as well as the results of the calculations and inferences received from the input unit 101. It may also have a function to store input data, etc.
[0071] The storage unit 105 includes at least one of a volatile memory and a non-volatile memory. The unit 105 may include a volatile memory such as a DRAM or an SRAM. The unit 105 is, for example, a ReRAM (Resistive Random Access Memory). Memory, also known as resistive memory), PRAM (Phase change RAM) andom Access Memory), FeRAM (Ferroelectric Random Access Memory), MRAM (Magnetoresis tive Random Access Memory, also known as magnetoresistive memory), Alternatively, the storage unit 105 may have a nonvolatile memory such as a flash memory. Hard Disk Drive (HDD) and solid Recording media drives such as solid state drives (SSDs) It may have a live performance.
[0072] [Database 107] The database 107 includes at least the reference sentence analysis data to be searched, the IDF data, The database 107 has a function of storing the data and vector data. 103, and the calculation results and inference results generated by the input unit 101, etc. The storage unit 105 and the database 107 may have a function to store the information. For example, the document search system may be configured as a storage unit 105 and a database. The storage unit 107 may have the functions of both the storage unit 107 and the storage unit 108.
[0073] [Output section 109] The output unit 109 has a function of supplying data to the outside of the document search system 100. For example, the calculation results or inference results of the processing unit 103 can be supplied to the outside.
[0074] <2. Document search method> First, referring to FIGS. 2 and 3, the document search system 100 is used to perform a search. The process will be explained below. The flowchart is shown in FIG. 2, and the steps shown in FIG. 2 are shown in FIG. 3 is a schematic diagram of the data flow. Note that the illustration of each data shown in FIG. 3 is an example, and is not limited to this. .
[0075] In the following, we will discuss the reference sentence data used to extract related words of keywords and the search The target reference text data is the same (reference text data TD ref (In this case, As mentioned above, even if these two reference sentence data are different, For example, vector data VD (described later) may be generated using the first reference sentence data. In this case, the second reference sentence data may be used as the search target. The ID may be generated using the first reference sentence data, or may be generated using the second reference sentence data. It may also be generated by
[0076] [Step S1] First, the reference text data TD is input to the input unit 101. ref Enter multiple values (Figure 2 and Figure 3 (A )).
[0077] In the document search method of this embodiment, a plurality of documents prepared in advance are searched for, and the input It is possible to search for documents related to or similar to the input document. Reference Text Data TD ref is the text data of the document to be searched in the document search system 100. Reference Text Data TD ref The data used as the document search system 100 is The appropriate selection can be made depending on the situation.
[0078] Reference Text Data TD ref is input to the input unit 101 from outside the document retrieval system 100. And the reference text data TD ref is transmitted from an input unit 101 via a transmission line 102. and supplied to the processing unit 103. Alternatively, the reference text data TD ref is the input section 10 1, and is stored in the storage unit 105 or the database 107 via the transmission path 102. The data is supplied from the memory unit 105 or the database 107 to the processing unit 103 via the transmission path 102. This may be done.
[0079] In FIG. 3(A), n pieces of reference text data TD (n is an integer equal to or greater than 2) are ref Illustrated below: Data TD respectively ref It is written as (x) (x is an integer between 1 and n).
[0080] In this embodiment, an example is shown in which the search target is a document related to intellectual property. TD ref is text data of a document related to intellectual property.
[0081] As mentioned above, the reference sentence data entered in step S1 is the data to be searched. The reference text data entered in step S1 is the document related to intellectual property. It is preferable that the text data is, but is not limited to, the text data. In some cases, part of the reference text data is the data to be searched. The reference text data entered in Step S1 is text data from patent documents and papers. The image may be only the text data of the patent document.
[0082] Here, documents relating to intellectual property include specifically patent documents (unpublished patent publications, patent publications, etc.) These include publications such as patent gazettes, design gazettes, and papers. The use of intellectual property documents is not limited to publications published in Japan, but includes publications published in countries around the world. It is possible.
[0083] The specification, claims, and abstract contained in a patent document may be partially or entirely Reference text data TD ref For example, it can be used to implement a particular invention. The embodiments, examples or claims for the invention are provided in the reference text data TD. ref It can also be used as Similarly, text contained in other publications, such as papers, may be used in whole or in part as a reference. Chapter Data TD ref It can be used as:
[0084] Documents related to intellectual property are not limited to publications. For example, users of document search systems or Document files owned by user organizations are also used as reference text data TD ref Can be used as can.
[0085] Furthermore, intellectual property documents include documents describing inventions, devices, or designs, or industrial products. Examples include sentences that clarify the issue.
[0086] Reference Text Data TD ref For example, patent documents of a particular applicant, or a particular technical field The invention may have patents in the field.
[0087] Reference Text Data TD ref not only the description of the intellectual property itself (e.g., specification, etc.), , may contain various information related to the intellectual property (e.g., bibliographic information, etc.). Such information may include, for example, the patent applicant, technical field, application number, publication number, and status. (Pending, registered, withdrawn, etc.)
[0088] Reference Text Data TD ref It is preferable that the date information related to the intellectual property is included. For example, if the intellectual property is a patent document, the information includes the application date, publication date, and registration date. For example, if the intellectual property is technical information about an industrial product, the release date may be included.
[0089] In this way, the reference text data TD ref possesses various information related to intellectual property With the document retrieval system, various search scopes can be selected.
[0090] For example, by using the document search system of this embodiment, it is possible to search for patents related to or similar to inventions that have not yet been filed. You can search patent documents, papers, or industrial products, which can help you understand inventions before they are filed. By understanding and reviewing the relevant prior art, This will strengthen the clarity of the invention and make it a strong patent that is difficult for other companies to circumvent.
[0091] Furthermore, for example, the document search system of this embodiment can be used to search for information related to industrial products before they are released. can search for similar patent documents, papers, or industrial products. TD ref If a company has its own patent documents, the company has sufficient knowledge of the technology related to the industrial product before it is released. You can check whether a patent application has been filed. ref but If you have information about other companies' intellectual property, you may be able to prevent your pre-release industrial products from infringing on the intellectual property rights of other companies. It is possible to check whether there is any relevant prior art and whether there is any technical information related to industrial products that have not yet been released. By reconsidering the technology, we can discover new inventions and develop strong patents that will contribute to our company's business. In addition, the inspection can be carried out not only on industrial products before they are released but also on industrial products after they are released. You can also search.
[0092] In addition, for example, by using the document search system of this embodiment, it is possible to search for documents related to or similar to a specific patent. You can search for patent documents, papers, or industrial products that are related to the patent. By checking based on this standard, we can easily and accurately check whether the patent in question contains grounds for invalidation. It is possible.
[0093] [Step S2] Next, multiple reference text data TD ref Perform morphological analysis of each and analyze the sentence for reference Data AD ref (Fig. 2 and Fig. 3(A)).
[0094] The processing unit 103 receives n pieces of reference text data TD ref Perform morphological analysis on each of them, and Reference text analysis data AD ref (Reference text analysis data AD, respectively) ref (x) (where x is an integer between 1 and n)) is generated. For example, re f By performing morphological analysis of (n), reference sentence analysis data AD ref Generate (n) .
[0095] Morphological analysis analyzes text written in natural language into morphemes (the smallest units that have meaning in language). This allows us to distinguish between parts of speech of morphemes, for example, Data TD ref Only nouns can be extracted from
[0096] In FIG. 3(A), the input reference text data TD ref (1) contains a long sentence and is output as Reference text analysis data AD ref In (1), the sentence is divided into multiple words.
[0097] In Figure 3(A), the generated reference sentence analysis data AD ref is output to the outside of the processing unit 103 For example, the processing unit 103 stores a plurality of reference sentence analysis data in the database 107. Data AD ref The processing unit 103 can provide a plurality of reference sentence analyses. Data AD ref It is also possible to generate a corpus that compiles all of the above into a single data set and output it.
[0098] In addition to Japanese sentences, sentences in various languages (e.g., English, Chinese, Korean, etc.) are also supported. It is possible to analyze chapters. Various methods can be applied to analyze text depending on the language. .
[0099] [Step S3] After step S2, a plurality of reference sentence analysis data AD refCalculate the IDF of the words contained in The IDF data ID is generated (see Figures 2 and 3(B)). It is preferable to do so.
[0100] Reference Text Analysis Data AD ref is transmitted from the database 107 via the transmission path 102 as follows: The signal is supplied to the processing unit 103 .
[0101] The processing unit 103 generates n pieces of reference sentence analysis data AD ref Calculate the IDF of the words in By standardizing it, an IDF data ID is generated.
[0102] As shown in Figure 3(B), the IDF data ID is a word and a standardized IDF Includes:
[0103] The IDF(t) of a certain word t can be obtained by normalizing the idf(t) in equation (1). The normalization method is not particularly limited. For example, idf(t) can be normalized by the formula (2): In equation (1), N is the total number of documents (reference text analysis data AD ref The number of df(t) is the number of documents in which a certain word t appears (reference text analysis data AD r ef In equation (2), the idf MAX Reference text analysis data AD re f is the maximum value of idf(t) of the words in MIN is a reference text analysis data AD ref is the minimum value of idf(t) of the words contained in
[0104]
number
[0105] For example, the normalized IDF of Word A is 0.868, and the normalized IDF of Word B is 0.868. The normalized IDF for Word C is 0.642. Therefore, Word A has a higher IDF than Word B and Word C. Reference Text Analysis Data AD ref It can be said that it is a characteristic word that does not appear often in the (B) shows an example of sorting words by name, but it is not limited to this, and can be sorted by IDF, etc. You can also arrange the words.
[0106] FIG. 3B shows an example in which the generated IDF data ID is output to the outside of the processing unit 103. For example, the processing unit 103 transmits the IDF data I to the database 107 via the transmission path 102. D can be supplied.
[0107] [Step S4] After step S2, a plurality of reference sentence analysis data AD ref Distributed representation base of words contained in A vector is generated, and vector data VD is generated (FIGS. 2 and 3(C)).
[0108] Note that step S3 and step S4 may be performed in either order, or may be performed in parallel. .
[0109] The processing unit 103 generates n pieces of reference sentence analysis data AD ref The distributed representation vector of the words contained in A torque is generated and vector data VD is generated.
[0110] The word embedding vector is a vector that represents a word as a unique representation of each word. It is a vector expressed by quantified continuous values for characteristic elements (dimensions). The vectors will also be closer to each other.
[0111] As shown in FIG. 3(C), the processing unit 103 uses a neural network NN to It is preferable to generate a distributed representation vector of
[0112] Here, we will explain how to generate distributed representation vectors of words using a neural network (NN). An example of this is explained below. Neural networks (NN) are trained using supervised learning. is a neural network that inputs a word to the input layer and outputs the surrounding words of that word to the output layer. The hidden layer is 10 It is preferable to have a relatively low-dimensional vector with dimensions of 1000 or more. This vector is the distributed representation vector of the word.
[0113] Distributed representations of words are, for example, found in the open-source Word2ve algorithm. Word2vec is a method to find words that are used in the same context. Based on the hypothesis that words have meaning, vectorize words including their features and semantic structure. .
[0114] In word vectorization, we generate distributed representation vectors of words to perform computation between vectors. It is possible to calculate the similarity and distance between words using the algorithm. When the distance between the two vectors is short, the two vectors are said to be highly related. In this case, the two vectors can be said to be highly related.
[0115] Also, while one-hot representation assigns one dimension to one word, distributed representation assigns words It can be expressed as a low-dimensional real-valued vector, so even if the vocabulary size increases, it can be expressed with a small number of dimensions. Therefore, even if the corpus contains a large number of words, the amount of calculation does not increase. In other words, it can process huge amounts of data in a short amount of time.
[0116] As shown in Figure 3(C), the vector data VD consists of words and vectors. For example, the Vector for Word A is (0.12,0.90,0.3 2,···), and the vector for Word B is (0.88,0.10,0.29, ...), and the Vector for Word C is (0.23, 0.56, 0.47, ... ·).
[0117] FIG. 3C shows an example in which the generated vector data VD is output to the outside of the processing unit 103. For example, the processing unit 103 may provide the vector data VD to the database 107. can.
[0118] The above steps are carried out in advance to create the reference text analysis data AD. ref , IDF data ID, and By generating the vector data VD, the document can be searched using the document search system 100. You can search.
[0119] In this embodiment, the document retrieval system 100 is used to generate the reference text analysis data AD ref We have shown an example of generating IDF data ID and vector data VD, but document search Outside the system 100, reference sentence analysis data AD ref , IDF data ID, and In this case, at least one of the externally generated vector data VD may be generated. The data is input to the input unit 101 of the document search system 100 and stored in the database 107. This enables searching using the document search system 100.
[0120] Next, a search method using the document search system 100 will be described. and 9 show the flowcharts, and FIGS. 6, 7(A), and 10 show the flowcharts. 6, 7(A), and 10. The illustration is an example and is not limiting.
[0121] [Step S11] First, text data TD is input to the input unit 101 (FIGS. 4, 5, and 6(A)).
[0122] In the document retrieval method of this embodiment, reference text data TD ref From the text data T It is possible to search for text data related to or similar to D.
[0123] The text data TD is input to the input unit 101 from outside the document retrieval system 100. The text data TD is supplied from an input unit 101 to a processing unit 103 via a transmission line 102. Alternatively, the document data TD is transmitted via the transmission path 102 to the storage unit 105 or the data storage unit 106. The data is stored in the base 107, and the data is transmitted from the storage unit 105 or the database 107 via the transmission line 102. The signal may be supplied to the processing unit 103 via the
[0124] In this embodiment, an example is shown in which the search target is a document related to intellectual property. , which are data of documents relating to intellectual property. Examples of documents relating to intellectual property are as described above.
[0125] The text data TD may include, for example, inventions, devices or designs before application, industrial products before release, and technology. It may contain information, text explaining technical ideas, etc.
[0126] In particular, as text data TD, the scope of claims, abstract, or text explaining the outline of the invention Chapters and the like can be used suitably. The amount of text in this case is relatively small (compared to the full specification). The text data TD (which is a small amount of text) is a set of characteristic keywords contained in the text data TD. The document search system of this embodiment is preferable because it is easy to extract characteristic keywords. Therefore, even if the vocabulary of the text data TD is small, high-precision A search can be performed.
[0127] [Step S12] Next, morphological analysis of the text data TD is performed to generate text analysis data AD (Fig. 4, Fig. 5 , and Figure 6(A)).
[0128] The processing unit 103 performs a morphological analysis of the text data TD to generate analyzed text data AD.
[0129] In FIG. 6(A), the input text data TD includes a long sentence, and the output text analysis data A In D, the sentence is split into multiple words.
[0130] FIG. 6A shows an example in which the generated text analysis data AD is output to the outside of the processing unit 103. For example, the processing unit 103 stores text analysis data in the storage unit 105 or the database 107. AD can be supplied.
[0131] [Steps S13, S33] Next, the sentence analysis data AD is matched with the IDF data ID to generate the keyword data KD (FIGS. 4, 5, and 6(B)).
[0132] The text analysis data AD is transmitted from the storage unit 105 or the database 107 via the transmission path 102. The IDF data ID is then sent to the processing unit 103. The signal is supplied to a processing unit 103 via a line 102 .
[0133] The processing unit 103 compares the text analysis data AD with the IDF data ID, and Keyword data KD is generated by sorting the words contained in D in descending order of IDF.
[0134] The keyword data KD includes keywords KW and their IDFs. Here is an example using IDF:
[0135] Keywords KW can be said to be characteristic words contained in the text analysis data AD. For example, the keyword KW is a word included in both the text analysis data AD and the IDF data ID. It may be all words, or words with IDF equal to or greater than a predetermined value. Depending on the amount of text in the text data TD, the keyword KW For example, the number of keywords should be between 2 and 100. Preferably, the number is 1 or less, and more preferably 5 to 30.
[0136] Here, the normalized IDF of the keyword KW is used later as the reference text analysis data AD ref This corresponds to the weight of the keyword KW used when assigning a score to a search result.
[0137] In Figure 6(B), the weight of Word D is 0.873, the weight of Word A is 0.868, An example is shown where the weight of Word E is 0.867.
[0138] FIG. 6B shows an example in which the keyword data KD is output to the outside of the processing unit 103. For example, the processing unit 103 may transmit the information to the storage unit 105 or the database 107 via the transmission path 102. , keyword data KD can be supplied.
[0139] [Steps S14, S34] Next, using the sentence analysis data AD or keyword data KD and the vector data VD, Then, related word data RD is generated (FIGS. 4, 5, and 6(C)).
[0140] The sentence analysis data AD or the keyword data KD is stored in the storage unit 105 or the database 106. 07 to the processing unit 103 via a transmission path 102. The vector data VD is The data is supplied from the database 107 to the processing unit 103 via the transmission line 102 .
[0141] In step S14, the processing unit 103 calculates the distributed representation vector of the keyword KW and the reference Text Analysis Data AD ref The similarity between the distributed representation vector of the words in Based on the proximity of the keyword, the related words RW are extracted. The related word data RD is generated by sorting the words in descending order of similarity or distance. In general, for one keyword, 1 to 10 related words should be extracted. It is preferable to extract 2 to 5 related words, for example. The word may be one whose similarity is equal to or greater than a predetermined value, or one whose distance is equal to or less than a predetermined value. It may be a predetermined number of words with high similarity, or a predetermined number of words with close distance. Keywords can be used to search for synonyms, antonyms, hypernyms, and hyponyms. The number of related words RW may differ depending on the keyword KW. Reference text analysis data AD ref Related words of keyword KW from words included in RW By extracting the above, the reference sentence analysis data AD ref The keyword KW is displayed in a unique way. Even if the expression is expressed in a different way, it can be extracted as a related word RW. This is preferable because it reduces the chance of missing a search result due to variations in notation.
[0142] In step S34, the processing unit 103 calculates the distributed representations of the words included in the text analysis data AD. Vector and reference text analysis data AD ref The distributed representation vector of the words in Based on the similarity or distance, related words RW are extracted. This is the same as step S14.
[0143] The similarity between two vectors can be measured using cosine similarity, covariance, unbiased covariance, and Pearson product-moment correlation. It can be obtained using a coefficient, etc. In particular, it is preferable to use the cosine similarity.
[0144] The distance between two vectors can be calculated using Euclidean distance, standard (average) Euclidean distance, Using Mahalanobis distance, Manhattan distance, Chebyshev distance, Minkowski distance, etc. can be found by
[0145] The related word data RD includes related words RW and their degrees of relevance RS.
[0146] Related words RW are words contained in the text analysis data AD or words related to the keyword KW. It can be said that this is the case.
[0147] The relevance score RS is a value that indicates the level of similarity or the closeness of the distance, or a value that normalizes these. The relevance score RS is the value obtained by the reference sentence analysis data AD. ref When assigning points to It is used to calculate the weight of related words. Specifically, the normalized I The product of DF and the relevance degree RS of the related word RW corresponds to the weight of the related word.
[0148] In Figure 6(C), Word X is selected as the related word RW of Word D in descending order of relevance RS. (Relevance RS is 0.999), Word Y (Relevance RS is 0.901), Word Z An example of the extracted result (with relevance RS of 0.712) is shown below.
[0149] FIG. 6C shows an example in which the related word data RD is output to the outside of the processing unit 103. For example, The processing unit 103 stores the relevant information in the storage unit 105 or the database 107 via the transmission path 102. Collocation data RD can be supplied.
[0150] When extracting related words using the keyword data KD, as shown in Figure 4, After step S13, step S14 is carried out. On the other hand, related words are extracted using the sentence analysis data AD. As shown in FIG. 5, when issuing the command, which of step S33 and step S34 should be executed first? Alternatively, they may be performed in parallel.
[0151] Furthermore, it is determined whether the related word RW is a word included in the concept dictionary, and The step of determining a weight may be included. Therefore, the related words RW are highly related to the keywords KW. If the word is included, the weight of the related word RW is set to be larger than if it is not included. For example, depending on the determination result, a predetermined value indicating the degree of similarity or the closeness of the distance may be set. The value added or subtracted may be used as the weight of the related word RW. The degree of similarity is either high or low depending on whether the word RW is included in the concept dictionary or not. A predetermined value may be used as the weight of the related word RW regardless of the proximity of the related word. For example, If the related word RW is included in the concept dictionary, the weight of the related word RW is set to the same weight as the keyword KW. It can also be set to
[0152] [Step S15] Next, the reference text analysis data AD ref Keywords that match words contained in KW or Based on the weight of related words RW, reference sentence analysis data AD ref (Figure 4) , Figure 5, and Figure 7(A)).
[0153] Reference Text Analysis Data AD ref is transmitted from the database 107 via the transmission path 102 as follows: The keyword data KD and related word data RD are supplied to the processing unit 103. 5 or database 107 to the processing unit 103 via the transmission line 102. The processing unit 103 transmits the result of the scoring (also called scoring) via the transmission path 102. It can be provided to the storage unit 105 or the database 107 .
[0154] First, a specific example of scoring will be explained using FIG. 7(B). In FIG. 7(B), three types of scoring are Here is an example using a keyword KW and four related words RW for one keyword KW. .
[0155] The denominator of the score is the sum of the weights of the keywords KW, and in the case of Figure 7(B), it is 0.9 + 0.9 +0.8=2.6.
[0156] The numerator of the score is the reference text analysis data AD ref Keywords K that match words contained in The sum of the weights of W or related words RW. In the case of Figure 7(B), Word D, Word The sum of the weights of e and word f is 1.95.
[0157] From this, the score can be calculated as 1.95 / 2.6 = 0.75 (75%). .
[0158] Step S15 will be described in detail with reference to Fig. 8. As shown in Fig. 8, step S15 includes the following steps: The steps S21 to S27 are included. If the number of related words RW of a word KW is q, then x is an integer between 1 and p, and y is 1. Represents an integer greater than or equal to q and less than or equal to q.
[0159] [Step S21] First, the unscored reference text analysis data AD ref Select one item.
[0160] [Step S22] Next, the reference text analysis data AD ref In this case, the keyword KW x Determine if it will be a hit If there is a hit, proceed to step S25. If there is no hit, proceed to step S23. nothing.
[0161] [Step S23] Next, the reference text analysis data AD ref In this case, the keyword KW x Related words for RW xy but If there is a hit, proceed to step S25. If there is no hit, proceed to step S26. Proceed to step S24.
[0162] [Step S24] Next, it is determined whether all related words RW of the keyword KWx have been searched. If so, the status If no search has been performed, the process proceeds to step S23. For example, if the keyword K W x There are two related words RW, and in the previous step S23, x1 Determine if it will be a hit If so, return to step S23 and x2 Determine whether it is a hit.
[0163] [Step S25] In step S25, the weight corresponding to the hit word is added to the score. If 2 hits, the keyword KW x In step S23, the IDF of If there is a hit, the keyword KW x IDF and related words RW xy The product of the relevance RS and It is added to the score. In the above scoring example, it is added to the numerator of the score.
[0164] [Step S26] Next, it is determined whether all keywords KW have been searched. If so, the process proceeds to step S27. If no search has been performed, the process proceeds to step S22. For example, if the keyword KW x There are two If it has been determined in the previous step S22 whether the keyword KW1 is hit, Return to 22 and determine whether keyword KW2 is a hit.
[0165] [Step S27] Next, all reference text analysis data AD refDetermine whether all scores have been assigned. If the attachment is complete, proceed to step S16. If not, proceed to step S21. nothing.
[0166] [Step S16] And, the reference text analysis data AD ref Ranking is performed to generate ranking data LD. , and output (Figs. 4, 5, and 7(A)).
[0167] The processing unit 103 transmits the ranking data LD to the storage unit 105 or The processing unit 103 can provide the ranking data to the database 107. The LD can be supplied to the output section 109 via the transmission line 102. The output unit 109 can supply the ranking data LD to the outside of the document retrieval system 100. can.
[0168] Ranking data LD is the ranking (Lank), and reference text data TD is ref Information (Name It can include Doc (document, identification number, etc.), score (Score), etc. Reference text data TD for database 107 etc. ref If saved, the ranking Data LD is reference text data TD ref It is preferable to include the file path to This allows users to easily access the desired document from the ranking data LD. can be done.
[0169] Reference Text Analysis Data AD ref The higher the score, the better the reference sentence analysis data AD r ef Reference text data TD corresponding to ref is related to or similar to the text data TD. It can be said that.
[0170] In the example shown in FIG. 7(A), n pieces of reference sentence data TD are selected from the ranking data LD. re f Among them, the data most related or similar to the text data TD is the reference text data T D ref (7) and the second most related or similar data is the reference text data T D ref (4) The third related or similar data is the reference text data T D ref It turns out to be (13).
[0171] As described above, a search can be performed using the document search system 100.
[0172] In addition, the keywords KW output in step S14, the weights (IDFs) of the keywords KW, and the related The weights (IDF × RS) of the collocation RW and related term RW are manually edited, and then the step You may proceed to S15.
[0173] FIG. 9 shows a flowchart including the editing steps, and FIG. 10 shows a schematic diagram of the steps shown in FIG. The data illustrated in FIG. 10 is an example, and the present invention is not limited to this.
[0174] [Step S41] After step S14, in step S15, the keyword data KD and related word data to be used are A list of RDs is output (FIGS. 9 and 10(A)).
[0175] From Figure 10(A), the keywords KW are Word D, Word A, and Word E. The weights (IDF) of each are 0.9, 0.9, and 0.8. Light.
[0176] The related words RW of Word D are Word X, Word Y, Word Z, and Word a is listed, and the weights (IDF×RS) are 0.9, 0.8, and 0 We can see that the values are 0.6 and 0.5.
[0177] The related words RW of Word A are Word b, Word c, Word d, and Word e is listed, and the weights (IDF×RS) are 0.5, 0.5, 0 We can see that the values are .45 and 0.3.
[0178] The related words RW of Word E are Word f, Word g, Word h, and Word i is listed, and the weights (IDF×RS) are 0.75 and 0.75 , 0.75, 0.75.
[0179] [Step S42] Next, the keyword data KD and related word data RD are edited (FIGS. 9 and 10(B)). .
[0180] FIG. 10(B) shows an example where three edits have been made. Specifically, Word A and its Removal of related words RW and changing word a (weight 0.5) to word x (weight 0.8) and a change in the weight of Word f (from 0.75 to 0.8).
[0181] In this way, the user can edit at least one of the words and weights to improve search accuracy. It may also be possible to
[0182] Then, in step S15, the edited keyword data KD and related word data RD are Reference text analysis data AD refIn step S16, the ranking is Generate and output the data LD.
[0183] [Step S43] Next, check whether the ranking data LD is the expected result (Figure 9). If there is a result, the search ends. If the expected result is not obtained, the process returns to step S41. , a list of the edited keyword data KD and related word data RD is output, and step S4 You can edit it again in step 2.
[0184] In addition, editing of words and weights is not limited to manual work, but can be done using dictionary data and natural language processing. This may be done automatically using the analysis data, etc. Editing can improve search accuracy. This can be done.
[0185] <3. Document Search System Configuration Example 2> Next, a document retrieval system 150 shown in FIG. 11 will be described.
[0186] FIG. 11 shows a block diagram of the document retrieval system 150. The document retrieval system 150 includes The system includes a server 151 and a terminal 152 (such as a personal computer).
[0187] The server 151 includes a communication unit 161a, a transmission path 162, a processing unit 163a, and a database 1 67. Although not shown in FIG. 11, the server 151 further includes a storage unit, an input / output unit, etc. It may have, etc.
[0188] The terminal 152 includes a communication unit 161b, a transmission path 168, a processing unit 163b, a storage unit 165, and an input The terminal 152 further includes an output unit 169. Although not shown in FIG. and the like.
[0189] A user of the document retrieval system 150 inputs text data TD from a terminal 152 to a server 151. The text data TD is transmitted from the communication unit 161b to the communication unit 161a.
[0190] The text data TD received by the communication unit 161a is transmitted to the database 16 via the transmission path 162. 7 or a storage unit (not shown). Alternatively, the text data TD is stored in the communication unit 161 a may be supplied directly to the processing unit 163a.
[0191] The various processes described above in <2. Document Search Method> are performed by the processing unit 163a. Since this process requires high processing power, it is performed by the processing unit 163a of the server 151. It is preferable.
[0192] Then, the processing unit 163a generates ranking data LD. D is stored in a database 167 or a storage unit (not shown) via a transmission line 162. Alternatively, the ranking data LD may be directly transmitted from the processing unit 163a to the communication unit 161a. After that, the ranking data LD may be transmitted from the server 151 to the terminal 152. The ranking data LD is transmitted from the communication unit 161a to the communication unit 161b. .
[0193] [Input / output section 169] Data is supplied to the input / output unit 169 from outside the document search system 150. 169 has a function of supplying data to the outside of the document search system 150. As in the search system 100, the input section and the output section may be separate.
[0194] [Transmission path 162 and transmission path 168] The transmission path 162 and the transmission path 168 have a function of transmitting data. Data is transmitted and received between the management unit 163a and the database 167 via a transmission path 162. The communication unit 161b, the processing unit 163b, the storage unit 165, and the input / output unit 16 Data transmission and reception between the devices 9 can be performed via a transmission path 168.
[0195] [Processing Unit 163a and Processing Unit 163b] The processing unit 163a receives data from the communication unit 161a and the database 167. The processing unit 163b has a function of performing calculations, inferences, etc. using the communication unit 161b, the memory A function of performing calculations using data supplied from the input / output unit 165 and the input / output unit 169. The processing unit 163a and the processing unit 163b can refer to the description of the processing unit 103. The processing unit 163a can perform the various processes described above in <2. Document search method>. Therefore, it is preferable that the processing unit 163a has a higher processing capacity than the processing unit 163b. stomach.
[0196] [Storage section 165] The storage unit 165 has a function of storing the program executed by the processing unit 163b. The storage unit 165 stores the calculation results generated by the processing unit 163b and the data input to the communication unit 161b. The input / output unit 169 has a function of storing data input thereto, and data input to the input / output unit 169.
[0197] [Database 167] Database 167 is a reference text analysis data AD ref , IDF data ID, and vector The database 167 has a function of storing the torque data VD. and the data input to the communication unit 161a. Alternatively, the server 151 may have a storage unit separate from the database 167. The storage unit stores the calculation results generated by the processing unit 163a and the data input to the communication unit 161a. The device may have a function to store data, etc.
[0198] [Communication Unit 161a and Communication Unit 161b] The communication units 161a and 161b are used to transmit data between the server 151 and the terminal 152. The communication unit 161a and the communication unit 161b can be a hub, a router, or the like. Data can be sent and received either by wire or wirelessly (e.g. For example, radio waves, infrared rays, etc. may be used.
[0199] As described above, in the document search system of this embodiment, documents prepared in advance are used as search targets. As an example, it is possible to search for documents related to or similar to the input document. There is no need for users to select keywords, and the amount of text data is larger than keywords. Since it is possible to search using The document search system of this embodiment can search for documents with high accuracy. Related words are extracted from pre-prepared documents, based on the unique expressions contained in the documents. It is also possible to extract related words, thereby reducing missed searches. A search system can output search results ranked by relevance or similarity. This makes it easier for users to find the documents they need from the search results, and also reduces the chance of overlooking them. It becomes difficult.
[0200] This embodiment mode can be combined with other embodiment modes as appropriate. In the case where multiple configuration examples are shown in one embodiment, the configuration examples may be combined as appropriate. It is possible to do this.
[0201] (Embodiment 2) In this embodiment, a configuration example of a semiconductor device that can be used in a neural network is shown. We will explain about this.
[0202] The semiconductor device of this embodiment is used, for example, in a processing unit of a document search system according to one embodiment of the present invention. You can be there.
[0203] As shown in Figure 12(A), the neural network NN consists of an input layer IL, an output layer OL, and a middle layer OL. It can be composed of an input layer IL, an output layer OL, and an intermediate layer H Each L has one or more neurons (units). It may be a single layer or two or more layers. The network can also be called a DNN (deep neural network), and Learning using neural networks can also be called deep learning.
[0204] Input data is input to each neuron in the input layer IL, and previous data is input to each neuron in the hidden layer HL. The output signal of the neurons in the layer OL or the subsequent layer is input, and each neuron in the output layer OL receives the signal of the neurons in the previous layer. The output signal of each neuron is input. Each neuron is connected to all the neurons in the previous and next layers. It may be connected to all neurons (fully connected) or to a portion of neurons.
[0205] Figure 12(B) shows an example of a neuron operation. Here, we consider a neuron N and a neuron B. The figure shows two neurons in the front layer that output signals to neuron N. Neuron N has a The output x1 of the neuron in the previous layer and the output x2 of the neuron in the previous layer are input. In Ron N, the multiplication result of output x1 and weight w1 (x1w1) and the multiplication result of output x2 and weight w2 After the sum of the calculation results (x2w2) x1w1+x2w2 is calculated, the bias b is applied as needed. are added to obtain the value a=x1w1+x2w2+b. The value a is then applied to the activation function h Thus, the neuron N outputs the output signal y=h(a).
[0206] In this way, the operation of a neuron involves adding the product of the output of the previous layer neuron and the weight. This multiplication and addition operation is called multiplication and addition (x1w1+x2w2 above). This may be done on software using a program, or on hardware. When the multiply-and-accumulate operation is performed by hardware, a multiply-and-accumulate circuit can be used. This product-sum operation circuit may be a digital circuit or an analog circuit. When an analog circuit is used for the sum-of-products operation circuit, the circuit size of the sum-of-products operation circuit can be reduced. Alternatively, the number of times memory is accessed can be reduced, thereby improving processing speed and reducing power consumption. This can be done.
[0207] The multiply-and-accumulate circuit is a transistor that contains silicon (such as single crystal silicon) in the channel formation region. The channel forming region may be made of a metal (also called a silicon transistor). Transistors containing oxide semiconductors (also called OS transistors) In particular, since the off-state current of an OS transistor is extremely small, It is suitable as a transistor that constitutes the memory of an addition circuit. A multiply-accumulate circuit may be configured using both an OS transistor and an OS transistor. A configuration example of a semiconductor device having the above functions will be described.
[0208] <Configuration example of semiconductor device> FIG. 13 shows an example of the configuration of a semiconductor device MAC having a function for performing neural network calculations. The semiconductor device MAC stores first data corresponding to the connection strength (weight) between neurons. The first data has a function of performing a multiplication and accumulation operation on the second data corresponding to the input data. The first data and the second data are analog data or multi-valued digital data (discrete data). The semiconductor device MAC can be used to calculate the sum of products. It has the function of transforming data using an activation function.
[0209] The semiconductor device MAC includes a cell array CA, a current source circuit CS, a current mirror circuit CM, and a circuit WDD, circuit WLD, circuit CLD, offset circuit OFST, and activation function circuit ACT Has V.
[0210] The cell array CA has a plurality of memory cells MC and a plurality of memory cells MCref. 13, a cell array CA has memory cells MC (MC [1,1] to MC[m,n]), and m memory cells MCref (MCref[1] to MCref[m]). The memory cell MC stores the first data. The memory cell MCref stores reference data used in the multiply-and-accumulate operation. The reference data can be analog data or multi-valued digital data. It can be used as data.
[0211] The memory cell MC[i,j] (i is an integer between 1 and m, and j is an integer between 1 and n) is It is connected to the line WL[i], the wiring RW[i], the wiring WD[j], and the wiring BL[j]. In addition, the memory cell MCref[i] is connected to the wiring WL[i], the wiring RW[i], and the wiring WDr ef and the wiring BLref. Here, the memory cell MC[i,j] and the wiring BL The current flowing between [j] is I MC[i,j] and the memory cell MCref[i] and the wiring The current flowing between BLref and I MCref[i] It is written as follows.
[0212] A specific example of the configuration of the memory cell MC and the memory cell MCref is shown in FIG. As representative examples, memory cells MC[1,1], MC[2,1] and memory cell MCref[ 1], MCref[2], but other memory cells MC and memory cells MCref The memory cell MC and the memory cell MCref can be configured in the same manner. Each of them has a transistor Tr11, a transistor Tr12, and a capacitance element C11. The transistors Tr11 and Tr12 are n-channel transistors. This section explains the case where
[0213] In the memory cell MC, the gate of the transistor Tr11 is connected to the wiring WL, and the source One of the drains is connected to the gate of the transistor Tr12 and the first potential of the capacitance element C11. The other of the source and drain is connected to the wiring WD. Either the source or the drain of Tr12 is connected to the wiring BL. The other electrode of the capacitor C11 is connected to the wiring VR. The second electrode of the capacitor C11 is connected to the wiring RW. The wiring VR is a wiring that has a function of supplying a predetermined potential. A case where a low power supply potential (ground potential, etc.) is supplied from the wiring VR will be described below.
[0214] One of the source and drain of the transistor Tr11, the gate of the transistor Tr12, The node connected to the first electrode of the capacitor C11 is referred to as a node NM. The nodes NM of the resellers MC[1,1] and MC[2,1] are respectively set as nodes NM[1,1] , denoted as NM[2,1].
[0215] The memory cell MCref has the same configuration as the memory cell MC. Cref is connected to the wiring WDref instead of the wiring WD, and the wiring BL is connected to the wiring BL ref. Also, in memory cells MCref[1] and MCref[2], The source or drain of the transistor Tr11 and the gate of the transistor Tr12 are connected to the The node connected to the first electrode of the capacitor C11 and the node connected to the first electrode of the capacitor C12 are referred to as node NMref. It is written as [1] and NMref[2].
[0216] The node NM and the node NMref are the storage nodes of the memory cell MC and the memory cell MCref, respectively. The node NM holds the first data, and the node NMref holds the second data. The reference data is stored in the memory cell MC[1,1] from the wiring BL[1], The transistor Tr12 in [2,1] has a current I MC[1,1] , I MC[2, 1] Also, the memory cells MCref[1] and MCref[2 ] transistor Tr12 has a current I MCref[1] , IMCref[2] is playing.
[0217] The transistor Tr11 has the function of maintaining the potential of the node NM or the node NMref. Therefore, it is preferable that the off-state current of the transistor Tr11 is small. It is preferable to use an OS transistor with extremely low off-state current as the transistor Tr11. This makes it possible to suppress fluctuations in the potential of the node NM or the node NMref, The calculation accuracy can be improved. This makes it possible to reduce the frequency of refresh operations, thereby reducing power consumption. Cut.
[0218] The transistor Tr12 is not particularly limited and may be, for example, a Si transistor or an OS transistor. When an OS transistor is used as the transistor Tr12, The transistor Tr12 can be manufactured using the same manufacturing equipment as the transistor Tr11. This makes it possible to reduce manufacturing costs. It may be either a p-channel type or a n-channel type.
[0219] The current source circuit CS is connected to the wirings BL[1] to BL[n] and the wiring BLref. The current source circuit CS supplies current to the wirings BL[1] to BL[n] and the wiring BLref. Note that the current value supplied to the wirings BL[1] to BL[n] and the current value supplied to the wirings BLr The current value supplied to ef may be different. The current supplied to BL[1] through BL[n] is I C , supplied from the current source circuit CS to the wiring BLref The supplied current is I CrefIt is written as follows.
[0220] The current mirror circuit CM has wiring IL[1] to IL[n] and wiring ILref. The wirings IL[1] to IL[n] are connected to the wirings BL[1] to BL[n], respectively. The wiring ILref is connected to the wiring BLref. The connection points of L[n] and wiring BL[1] to BL[n] are nodes NP[1] to NP[n]. The connection point between the wiring ILref and the wiring BLref is expressed as node NPref. Write down.
[0221] The current mirror circuit CM generates a current I according to the potential of the node NPref. CM Wiring ILre The function of flowing this current I CM It also has the function of passing the In Figure 13, the current I CM is discharged, and wiring BL[ A current I flows from the wiring IL[1] to IL[n]. CM Here is an example of the discharge: In addition, the current mirror circuit CM is connected to the sensor via wiring BL[1] to BL[n]. The current flowing through the lumen array CA is I B [1]~I B It is written as [n]. The current flowing from the control circuit CM to the cell array CA via the wiring BLref is defined as I Bref and Write.
[0222] The circuit WDD is connected to the wirings WD[1] to WD[n] and the wiring WDref. The line WDD supplies a potential corresponding to the first data stored in the memory cell MC to the line WD[1 ] to WD[n]. The circuit has a function of supplying a potential corresponding to the reference data stored in the circuit to the wiring WDref. The circuit WLD is connected to the wiring WL[1] to WL[m]. A signal for selecting the memory cell MC or memory cell MCref to be written is distributed. The circuit CLD has a function of supplying power to the wirings RW[1] to WL[m]. The circuit CLD is connected to the wiring R It has the function of supplying signals to W[1] to RW[m].
[0223] The offset circuit OFST is connected to the wirings BL[1] to BL[n] and the wirings OL[1] to OL[n]. The offset circuit OFST is connected to the wirings BL[1] to BL[n]. The amount of current flowing from the offset circuit OFST to the wirings BL[1] to BL[n ] to the offset circuit OFST. The offset circuit OFST has a function of outputting the detection results to the wirings OL[1] to OL[n]. The offset circuit OFST outputs a current corresponding to the detection result to the wiring OL. Alternatively, a current corresponding to the detection result may be converted into a voltage and output to the wiring OL. The current flowing between the ray CA and the offset circuit OFST is I α [1]~I α [n] and table Write down.
[0224] An example of the configuration of the offset circuit OFST is shown in Fig. 15. The circuit OC[1] to OC[n] includes circuits OC[1] to OC[n]. The transistors Tr21, Tr22, and Tr23 are connected to the capacitors Tr21, Tr22, and Tr23, respectively. The connection relationship of each element is as shown in FIG. The node connected to the first electrode of the capacitance element C21 and the first terminal of the resistance element R1 is The node Na is connected to the second electrode of the capacitance element C21 and the source of the transistor Tr21. Alternatively, the node connected to one of the drains and the gate of the transistor Tr22 is Let Nb.
[0225] The wiring VrefL has a function of supplying a potential Vref, and the wiring VaL supplies a potential Va. The wiring VbL has a function of supplying a potential Vb. The wiring VSSL has a function of supplying a potential VSS. Now, let's consider the case where the potential VDD is the high power supply potential and the potential VSS is the low power supply potential. The wiring RST supplies a potential for controlling the conduction state of the transistor Tr21. Transistor Tr22, transistor Tr23, wiring VDDL, wiring The line VSSL and the wiring VbL form a source follower circuit.
[0226] Next, an example of the operation of the circuits OC[1] to OC[n] will be described. An example of the operation of the circuit OC[1] will be described, but the circuits OC[2] to OC[n] also operate in the same manner. First, when a first current flows through the wiring BL[1], the potential of the node Na becomes The potential is determined by the first current and the resistance value of the resistor R1. r21 is in the ON state, and the potential Va is supplied to the node Nb. r21 is in the off state.
[0227] Next, when a second current flows through the wiring BL[1], the potential of the node Na increases depending on the second current and the resistance The potential changes according to the resistance value of the element R1. At this time, the transistor Tr21 is in the off state. Since the node Nb is in a floating state, the potential of the node Na changes. The potential of the node Nb changes due to capacitive coupling. Here, the change in the potential of the node Na is expressed as Δ V Na If the capacitance coupling coefficient is 1, the potential of node Nb is Va+ΔV Na It becomes. Then, the threshold voltage of transistor Tr22 is V th Then, the potential from the wiring OL[1] Va+ΔV Na -V th is output, where Va=V th By doing so, the wiring L[1] to potential ΔV Na can be output.
[0228] Potential ΔV Na is the change amount from the first current to the second current, the resistance value of the resistor element R1, and Here, the resistance value of the resistor element R1 and the potential Vref are known. Therefore, the potential ΔV Na From this, the amount of change in the current flowing through the wiring BL can be obtained.
[0229] The amount of current detected by the offset circuit OFST as described above and / or the change in current A signal corresponding to the amount of the activation is input to the activation function circuit ACTV via wiring OL[1] to OL[n]. is entered into
[0230] The activation function circuit ACTV is connected to the wirings OL[1] to OL[n] and the wirings NIL[1] to NIL[n]. The activation function circuit ACTV is connected to the offset circuit OFST The calculation to transform the input signal from The activation function can be, for example, a sigmoid function, a tanh function, or a so You can use the ftmax function, ReLU function, threshold function, etc. The signal converted by the ACTV circuit is output as output data from wirings NIL[1] to NIL[ n].
[0231] <Example of semiconductor device operation> The semiconductor device MAC can be used to perform a multiplication and accumulation operation on first data and second data. An example of the operation of the semiconductor device MAC when performing a product-sum operation will be described below.
[0232] FIG. 16 shows a timing chart of an example of the operation of the semiconductor device MAC. In the wiring WL[1], wiring WL[2], wiring WD[1], wiring WDref, node NM [1,1], node NM[2,1], node NMref[1], node NMref[2] , the transition of the potential of the wire RW[1] and the wire RW[2], and the current I B [1]-I α [1], and current I Bref The graph shows the transition of the value of the current I B [1]-I α [1] is wiring BL It corresponds to the sum of the currents flowing from [1] to memory cells MC[1,1] and MC[2,1].
[0233] As a representative example, the memory cells MC[1,1], MC[2,1] and MC[3,1] shown in FIG. The operation will be explained focusing on memory cells MCref[1] and MCref[2]. The memory cells MC and MCref can be operated in the same manner.
[0234] [Storage of first data] First, during the period from time T01 to time T02, the potential of the wiring WL[1] is at a high level (H igh), and the potential of the wiring WD[1] becomes V higher than the ground potential (GND). PR -V W[1, 1] The potential of the wiring WDref becomes V higher than the ground potential. PR A large potential is generated In addition, the potential of the wiring RW[1] and the wiring RW[2] becomes the reference potential (REFP). Oh, potential V W[1,1] corresponds to the first data stored in the memory cell MC[1,1]. The potential V PR is the potential corresponding to the reference data. The transistor Tr11 included in the memory cell MC[1,1] and the memory cell MCref[1] When the node NM[1,1] is turned on, the potential of the node NM[1,1] becomes V PR -V W[1,1] , node NMr The potential of ef[1] is V PR This becomes:
[0235] At this time, a current flows from the wiring BL[1] to the transistor Tr12 of the memory cell MC[1,1]. The current I MC[1,1],0 can be expressed as follows: where k is the number of transistors Constants determined by the channel length, channel width, mobility, and capacitance of the gate insulating film of Tr12 Also, V th is the threshold voltage of transistor Tr12.
[0236] I MC[1,1],0 =k(V PR -V W[1,1] -V th ) 2 (E1)
[0237] Also, the current flows from the wiring BLref to the transistor Tr12 of the memory cell MCref[1]. current IMCref[1],0 can be expressed by the following formula:
[0238] I MCref[1],0 =k(V PR -V th ) 2 (E2)
[0239] Next, during the period from time T02 to time T03, the potential of the wiring WL[1] is at a low level (L ow). As a result, the memory cell MC[1,1] and the memory cell MCref[1] The transistor Tr11 included in the node NM[1,1] is turned off, and the nodes NM The potential of ref[1] is maintained.
[0240] As described above, it is preferable to use an OS transistor as the transistor Tr11. This makes it possible to suppress the leakage current of the transistor Tr11, and the node NM[ 1,1] and the potential of node NMref[1] can be accurately maintained.
[0241] Next, during the period from time T03 to time T04, the potential of the wiring WL[2] becomes high level. The potential of the wiring WD[1] is V higher than the ground potential. PR -V W[2,1] It becomes a large potential, The potential of the wiring WDref is V higher than the ground potential. PR The potential V W[2, 1] is a potential corresponding to the first data stored in the memory cell MC[2,1]. As a result, the transistors of the memory cell MC[2,1] and the memory cell MCref[2] Tr11 turns on, and the potential of node NM[2,1] rises to V PR -V W[2,1] , The potential of node NMref[2] is V PR This becomes:
[0242] At this time, a current flows from the wiring BL[1] to the transistor Tr12 of the memory cell MC[2,1]. The current I MC[2,1],0 can be expressed by the following formula:
[0243] I MC[2,1],0 =k(V PR -V W[2,1] -V th ) 2 (E3)
[0244] Also, the current flows from the wiring BLref to the transistor Tr12 of the memory cell MCref[2]. current I MCref[2],0 can be expressed by the following formula:
[0245] I MCref[2],0 =k(V PR -V th ) 2 (E4)
[0246] Next, during the period from time T04 to time T05, the potential of the wiring WL[2] becomes low level. As a result, the memory cells MC[2,1] and MCref[2] have The transistor Tr11 is turned off, and the nodes NM[2,1] and NMref[2 ] is maintained at a potential of
[0247] By the above operation, the first data is stored in the memory cells MC[1,1] and MC[2,1]. Then, the reference data is stored in memory cells MCref[1] and MCref[2].
[0248] Here, in the period from time T04 to time T05, the wiring BL[1] and the wiring BLref Consider the current flowing. A current is supplied to the wiring BLref from the current source circuit CS. The current flowing through the wiring BLref is transmitted through the current mirror circuit CM and the memory cell MCref[1 ], and discharged to MCref[2]. The current supplied from the current source circuit CS to the wiring BLref Flow I Cref , the current flowing from the wiring BLref to the current mirror circuit CM is I CM ,0 Then, the following formula holds:
[0249] I Cref -I CM,0 =I MCref[1],0 +I MCref[2],0 (E5)
[0250] The wire BL[1] is supplied with current from the current source circuit CS. The current flows through the current mirror circuit CM and memory cells MC[1,1] and MC[2,1]. Also, current flows from the wiring BL[1] to the offset circuit OFST. The current supplied from the circuit CS to the wire BL[1] is I C,0 , offset from wiring BL[1] The current flowing through the output circuit OFST is I α,0 Then, the following formula holds:
[0251] I C -I CM,0 =I MC[1,1],0 +I MC[2,1],0 +I α,0 (E6)
[0252] [Multiply and add operations on the first and second data] Next, during the period from time T05 to time T06, the potential of the wiring RW[1] becomes higher than the reference potential. V X[1] At this time, the memory cell MC[1,1] and the memory cell M Each capacitance element C11 of Cref[1] has a potential V X[1] is supplied and capacitively coupled This increases the potential of the gate of the transistor Tr12. X[1] is memory corresponding to the second data supplied to the memory cell MC[1,1] and the memory cell MCref[1]. It is the electric potential.
[0253] The change in the potential of the gate of the transistor Tr12 is proportional to the change in the potential of the wiring RW. The value is obtained by multiplying the capacitance coupling coefficient, which is determined by the capacitance element configuration. It is calculated based on the capacitance of C11, the gate capacitance of transistor Tr12, and the parasitic capacitance. For the sake of convenience, the amount of change in the potential of the wiring RW and the amount of change in the potential of the gate of the transistor Tr12 are used below. The explanation will be given assuming that the amount of change is the same, that is, the capacitive coupling coefficient is 1. Considering the number of potentials, V X It is sufficient to determine the following.
[0254] The potential V X [1] When this signal is supplied, the potentials of the nodes NM[1,1] and NMref[1] are Each V X[1] Rise.
[0255] Here, during the period from time T05 to time T06, the line BL[1] to the memory cell MC[ The current I flows through transistor Tr12 at [1,1]. MC[1,1],1 can be expressed by the following formula: This can be done.
[0256] I MC[1,1],1 =k(V PR -V W[1,1] +V X[1] -V th ) 2 (E7)
[0257] That is, the potential V X[1] By supplying The current flowing through the transistor Tr12 of the memory cell MC[1,1] is ΔI MC[1,1] =I MC[1,1],1 -I MC[1,1],0 Increase.
[0258] In addition, during the period from time T05 to time T06, the line BLref is connected to the memory cell MCre Current I flowing through transistor Tr12 of f[1] MCref[1],1 is expressed by the following formula: It is possible.
[0259] I MCref[1],1 =k(V PR +V X[1] -V th ) 2 (E8)
[0260] That is, the potential V X[1] By supplying The current flowing through the transistor Tr12 of the memory cell MCref[1] is ΔI MCref[ 1] =I MCref[1],1 -I MCref[1],0 Increase.
[0261] Next, consider the current flowing through the wiring BL[1] and the wiring BLref. The current I flows from the current source circuit CS. Cref Also, the current flowing through the wiring BLref The current is discharged to the current mirror circuit CM and memory cells MCref[1] and MCref[2]. The current flowing from the wiring BLref to the current mirror circuit CM is I CM,1 and Then, the following equation holds:
[0262] I Cref -I CM,1 =I MCref[1],1 +I MCref[2],0 (E9)
[0263] The wire BL[1] carries the current I from the current source circuit CS. C Also, wiring BL[1] The current flowing through the current mirror circuit CM and the memory cells MC[1,1] and MC[2,1] Furthermore, current also flows from the wiring BL[1] to the offset circuit OFST. The current flowing from the wiring BL[1] to the offset circuit OFST is I α,1 Then, the following equation is It works.
[0264] I C -I CM,1 =I MC[1,1],1 +I MC[2,1],1 +I α,1 (E10)
[0265] Then, from equations (E1) to (E10), the current I α,0 and current I α,1 Difference (Differential Current ΔI α ) can be expressed as follows:
[0266] ΔI α =I α,1 -I α,0 =2kV W[1,1] V X[1] (E11)
[0267] Thus, the differential current ΔI α is the potential V W[1,1] and V X[1] The value depends on the product of .
[0268] After that, during the period from time T06 to time T07, the potential of the wiring RW[1] becomes the reference potential. The potentials of the node NM[1,1] and the node NMref[1] are The period will be the same as
[0269] Next, during the period from time T07 to time T08, the potential of the wiring RW[1] becomes higher than the reference potential. V X[1] The potential of the wiring RW[2] becomes V higher than the reference potential. X[2] big This causes the memory cell MC[1,1] and the memory cell MCref[1] The potential V X[1] is supplied, and the node NM[ 1,1] and node NMref[1] are V X[1] Also, memo The capacitor C11 of each of the memory cell MC[2,1] and the memory cell MCref[2] Potential V X[2] is supplied, and the nodes NM[2,1] and NMref [2] potential is V X[2] Rise.
[0270] Here, during the period from time T07 to time T08, the line BL[1] to the memory cell MC[ The current I flows through transistor Tr12 at [2,1]. MC[2,1],1 can be expressed by the following formula: This can be done.
[0271] I MC[2,1],1 =k(V PR -V W[2,1] +V X[2] -V th ) 2 (E12)
[0272] That is, the potential V X[2] By supplying The current flowing through the transistor Tr12 of the memory cell MC[2,1] is ΔI MC[2,1] =I MC[2,1],1 -I MC[2,1],0 Increase.
[0273] In addition, during the period from time T07 to time T08, the line BLref is connected to the memory cell MCre Current I flowing through transistor Tr12 of f[2] MCref[2],1 is expressed by the following formula: It is possible.
[0274] I MCref[2],1 =k(V PR +V X[2] -V th ) 2 (E13)
[0275] That is, the potential V X[2] By supplying The current flowing through the transistor Tr12 of the memory cell MCref[2] is ΔI MCref[ 2] =I MCref[2],1 -I MCref[2],0 Increase.
[0276] Next, consider the current flowing through the wiring BL[1] and the wiring BLref. The current I flows from the current source circuit CS. Cref Also, the current flowing through the wiring BLref The current is discharged to the current mirror circuit CM and memory cells MCref[1] and MCref[2]. The current flowing from the wiring BLref to the current mirror circuit CM is I CM,2 and Then, the following equation holds:
[0277] I Cref -I CM,2 =I MCref[1],1 +I MCref[2],1 (E14)
[0278] The wire BL[1] carries the current I from the current source circuit CS. C Also, wiring BL[1] The current flowing through the current mirror circuit CM and the memory cells MC[1,1] and MC[2,1] Furthermore, current also flows from the wiring BL[1] to the offset circuit OFST. The current flowing from the wiring BL[1] to the offset circuit OFST is I α,2 Then, the following equation is It works.
[0279] I C -I CM,2 =I MC[1,1],1 +I MC[2,1],1 +I α,2 (E15)
[0280] Then, from the equations (E1) to (E8) and the equations (E12) to (E15), the current I α,0 and current I α,2 Difference between the current difference (ΔI α ) can be expressed as follows:
[0281] ΔI α =I α,2 -I α,0 =2k(V W[1,1] V X[1] +V W[2,1] V X[ 2] ) (E16)
[0282] In this way, the differential current ΔI α is the potential V W[1,1] and potential V X[1] and the potential V W [2,1] and potential V X[2] The value is determined by adding the product of and .
[0283] After that, during the period from time T08 to time T09, the potential of the wiring RW[1] and [2] is The potential of the nodes NM[1,1], NM[2,1] and the nodes NMref[1], NM The potential of ref[2] is the same as in the period from time T04 to time T05.
[0284] As shown in equations (E11) and (E16), the offset signal is input to the offset circuit OFST. Differential current ΔIα is the potential V corresponding to the first data (weight) W and the second data (input data) The potential V X It can be calculated from an equation with the product terms of Minute current ΔI α By measuring the offset of the first data and the second data with the offset circuit OFST, The result of the multiplication and accumulation of data can be obtained.
[0285] In the above description, the memory cells MC[1,1], MC[2,1] and MCre Although attention was paid to f[1] and MCref[2], the memory cells MC and MCref The number of rows m of the memory cells MC and the memory cells MCref can be set arbitrarily. The differential current ΔIα for any number i can be expressed by the following equation:
[0286] ΔI α =2kΣ i V W[i,1] V X[i] (E17)
[0287] In addition, by increasing the number n of columns of memory cells MC and memory cells MCref, The number of multiply-accumulate operations performed can be increased.
[0288] As described above, by using the semiconductor device MAC, the product of the first data and the second data can be obtained. The memory cell MC and the memory cell MCref shown in FIG. By using the configuration shown in 4, a multiply-and-accumulate circuit can be configured with a small number of transistors. Therefore, the circuit scale of the semiconductor device MAC can be reduced.
[0289] When the semiconductor device MAC is used for calculations in a neural network, the memory cell MC The number of rows m corresponds to the number of input data supplied to one neuron, and the number of columns of memory cells MC The number n can correspond to the number of neurons. For example, in the hidden layer H shown in Figure 12(A), Consider a case where a multiply-and-accumulate operation is performed using a semiconductor device MAC in L. The number of rows m of the model MC is the number of input data supplied from the input layer IL (the number of neurons in the input layer IL). The number of columns n of memory cells MC is set to the number of neurons in the hidden layer HL. This can be done.
[0290] The structure of the neural network to which the semiconductor device MAC is applied is not particularly limited. For example, the semiconductor device MAC uses convolutional neural networks (CNNs), recurrent neural networks (RNs), and Neural Networks (RNN), Autoencoders, Boltzmann Machines (Restricted Boltzmann Machines) It can also be used for other purposes, such as
[0291] As described above, by using the semiconductor device MAC, it is possible to Furthermore, the cell array CA includes the memory cells MC and memory cells MC shown in FIG. By using the rechargeable cell MCref, it is possible to improve the calculation accuracy, reduce the power consumption, or reduce the circuit regulation. It is possible to provide an integrated circuit that allows for a reduction in size.
[0292] This embodiment mode can be combined with other embodiment modes as appropriate. [Explanation of symbols]
[0293] AD: Text analysis data, AD ref : Reference text analysis data, C11: Capacitor element, C21 : Capacitance element, ID: IDF data, KD: Keyword data, KW: Keyword, KW1 :Keyword, KW2:Keyword, KWx :Keywords, LD:Ranking data, N N: neural network, R1: resistor element, RD: related word data, RS: relevance, R W: Related words, RW x1 : Related words, RW x2 : Related words, RW xy : Related words, TD: Text data Ta, TD ref :Reference text data, Tr11:Transistor, Tr12:Transistor , Tr21: transistor, Tr22: transistor, Tr23: transistor, VD: Vector data, 100: document search system, 101: input unit, 102: transmission line, 103 : Processing unit, 105: Storage unit, 107: Database, 109: Output unit, 150: Document search System, 151: Server, 152: Terminal, 161a: Communication unit, 161b: Communication unit, 16 2: transmission path, 163a: processing unit, 163b: processing unit, 165: storage unit, 167: database 168: transmission line; 169: input / output section
Claims
1. A document search device that searches for documents related to or similar to an input document, the document search device has an analog circuit and a processing unit having a neural network; the analog circuit has a function of performing a product-sum operation of the neural network, the processing unit has a function of extracting, from an input document, a first distributed representation vector and a first weight of the first distributed representation vector, using the neural network; the processing unit has a function of extracting a second distributed representation vector using a similarity of the first distributed representation vector; the processing unit has a function of acquiring a second weight of the second distributed representation vector, the second weight being a product of the first weight and a similarity; The processing unit executes a document search using the first weight and the second weight.
2. In claim 1, A document search device in which the first distributed representation vector and the second distributed representation vector are obtained by machine learning distributed representations of words contained in multiple reference text analysis data.
3. In claim 1, A document search device, wherein the first distributed representation vector is a vector obtained from keywords extracted from a document input to the processing unit.
4. In claim 1, the processing unit outputs the first weight and the second weight; The processing unit has a function of accepting a change to at least one of the first weight and the second weight.
5. In claim 2, The machine learning is a document search device that uses a neural network.
Citation Information
Patent Citations
Electronic Device
US20160343452A1