Semiconductor device
The document retrieval system employs metal oxide transistors and neural networks to enhance search accuracy in intellectual property documents, addressing the limitations of existing systems by providing precise and efficient document retrieval.
Patent Information
- Application Number
- JP2025102263
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2019-04-26
- Filing Date
- 2025-06-18
- Publication Date
- 2025-09-09
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Existing document search systems lack accuracy and require advanced user skills for effective keyword-based searches, particularly in the context of intellectual property documents.
A document retrieval system utilizing a processing unit with transistors having a metal oxide in the channel formation region, combined with a database that generates weight and synonym dictionary data, and a neural network for distributed representation vectors, to enhance search accuracy.
Enables highly accurate document retrieval, especially for intellectual property, with a simple input method, by leveraging the small off-state current of oxide semiconductors for low power consumption and utilizing neural networks for improved search precision.
Smart Images

Figure 2025131865000001_ABST
Abstract
Description
[Technical Field]
[0001] One aspect of the present invention relates to a document retrieval system and a document retrieval method.
[0002] One embodiment of the present invention is not limited to the above technical field. Examples of the technical field of one embodiment of the present invention include a semiconductor device, a display device, a light-emitting device, a power storage device, a memory device, an electronic device, a lighting device, an input device (for example, a touch sensor), an input / output device (for example, a touch panel), a driving method thereof, or a manufacturing method thereof. [Background technology]
[0003] By conducting a prior art search for an invention before filing, you can investigate whether any related intellectual property rights exist. The domestic and international patent documents and papers obtained through a prior art search can be used to confirm the novelty and inventive step of the invention, as well as to determine whether to apply for a patent. Furthermore, by conducting a patent document invalidation search, you can investigate whether your own patent rights are at risk of being invalidated, or whether you can invalidate patent rights owned by others.
[0004] For example, when a user inputs a keyword into a system for searching patent documents, patent documents containing the keyword can be output.
[0005] In order to conduct a highly accurate prior art search using such a system, the user must have high skills, such as searching with appropriate keywords and extracting the necessary patent documents from the large number of patent documents output.
[0006] The use of artificial intelligence (AI) is also being considered for various applications. In particular, it is expected that the use of artificial neural networks will lead to the realization of computers with higher performance than conventional von Neumann-type computers. In recent years, various research efforts have been made to build AI networks on electronic circuits.
[0007] For example, Patent Document 1 discloses an invention in which weight data required for calculations using an artificial neural network is stored by a memory device using a transistor having an oxide semiconductor in a channel formation region. [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, an object of one embodiment of the present invention is to provide a document search system capable of searching for documents with high accuracy.Another object of one embodiment of the present invention is to provide a document search method capable of searching for documents with high accuracy.Another object of one embodiment of the present invention is to realize a highly accurate document search, particularly a search for documents related to intellectual property, using a simple input method.
[0010] The description of multiple problems does not preclude the existence of each other's problems. One embodiment of the present invention does not necessarily solve all of the problems exemplified. Furthermore, problems other than those listed will become apparent from the description in this specification, and such problems may also be problems of one embodiment of the present invention. [Means for solving the problem]
[0011] One aspect of the present invention is a document retrieval system having an input unit, a database, a memory unit, and a processing unit, wherein the database has a function of storing multiple reference document data, weight dictionary data, and synonym dictionary data, the processing unit has a function of generating weight dictionary data and synonym dictionary data based on the reference document data, a function of generating sentence analysis data from sentence data input to the input unit, a function of extracting search words from words included in the sentence analysis data, and a function of generating first search data from the search words based on the weight dictionary data and the synonym dictionary data, the memory unit has a function of storing second search data generated by a user modifying the first search data, and the processing unit has a function of updating the synonym dictionary data in accordance with the second search data.
[0012] In one aspect of the present invention, a document search system is preferable in which the processing unit has a function of generating reference sentence analysis data from reference document data and a function of extracting multiple keywords and related words corresponding to the keywords from the words contained in the reference sentence analysis data.
[0013] In one aspect of the present invention, a document search system is preferred in which the weight dictionary data is data generated by extracting the frequency of occurrence of keywords from words contained in the reference text analysis data and assigning a first weight to each keyword according to the frequency of occurrence.
[0014] In one embodiment of the present invention, the document search system is preferably such that the first weight is a value based on the inverse document frequency of the keyword in the reference text analysis data.
[0015] In one aspect of the present invention, the thesaurus data is preferably generated by assigning a second weight to each related word in the document retrieval system.
[0016] In one embodiment of the present invention, a document search system is preferred in which the second weight is a product of a value based on the similarity or distance between the distributed representation vector of the related word and the distributed representation vector of the keyword and the first weight of the keyword.
[0017] In one aspect of the present invention, the document retrieval system is preferably a document retrieval system in which the distributed representation vector is a vector generated using a neural network.
[0018] In one embodiment of the present invention, the processing unit preferably includes a transistor, and the transistor preferably includes a metal oxide in a channel formation region.
[0019] In one aspect of the present invention, the document search system preferably includes a processing unit having a transistor, and the transistor has silicon in a channel formation region.
[0020] One aspect of the present invention is a document retrieval method that generates weight dictionary data and synonym dictionary data based on multiple reference document data, generates sentence analysis data from sentence data, extracts search words from words included in the sentence analysis data, generates first search data from the search words based on the weight dictionary data and the synonym dictionary data, updates the synonym dictionary data in accordance with second search data generated by a user modifying the first search data, assigns scores to the reference document data based on the second search data, and generates ranking data by ranking the multiple reference document data based on the scores.
[0021] In one aspect of the present invention, a document search method is preferred in which reference text analysis data is generated from reference document data, and a plurality of keywords and related words of the keywords are extracted from words included in the reference text analysis data.
[0022] In one aspect of the present invention, a document retrieval method is preferred in which the weight dictionary data is data generated by extracting the frequency of occurrence of keywords from words included in the reference text analysis data and assigning a first weight to each of the multiple keywords according to the frequency of occurrence.
[0023] In one aspect of the present invention, a document retrieval method is preferred in which the first weight is a value based on the inverse document frequency of the keyword in the reference text analysis data.
[0024] In one aspect of the present invention, the document retrieval method is preferably such that the thesaurus data is data generated by assigning a second weight to each related word.
[0025] In one aspect of the present invention, a document retrieval method is preferred in which the second weight is a product of a value based on the similarity or distance between the distributed representation vector of the related word and the distributed representation vector of the keyword and the first weight of the keyword.
[0026] In one aspect of the present invention, the document retrieval method is preferably such that the distributed representation vector is a vector generated using a neural network.
[0027] Other aspects of the present invention will be described in the following embodiments and in the drawings. [Effects of the Invention]
[0028] According to one aspect of the present invention, a document retrieval system capable of retrieving documents with high accuracy can be provided. Alternatively, according to one aspect of the present invention, a document retrieval method capable of retrieving documents with high accuracy can be provided. Alternatively, according to one aspect of the present invention, highly accurate document retrieval, particularly retrieval of documents related to intellectual property, can be realized using a simple input method.
[0029] The description of multiple effects does not preclude the existence of other effects. Furthermore, one embodiment of the present invention does not necessarily have all of the exemplified effects. Furthermore, problems, effects, and novel features of one embodiment of the present invention other than those described above will become apparent from the description and drawings of this specification. [Brief explanation of the drawings]
[0030] [Figure 1] FIG. 1 is a block diagram showing an example of a document search system. [Figure 2] FIG. 2 is a flow diagram illustrating the document search method. [Figure 3] FIG. 3 is a flow diagram illustrating the document search method. [Figure 4] FIG. 4 is a flow diagram illustrating the document search method. [Figure 5] FIG. 5 is a flow diagram illustrating the document search method. [Figure 6] 6A to 6C are schematic diagrams for explaining the document search method. [Figure 7] FIG. 7 is a schematic diagram for explaining the document search method. [Figure 8] FIG. 8 is a schematic diagram for explaining the document search method. [Figure 9] FIG. 9 is a schematic diagram for explaining the document search method. [Figure 10] FIG. 10 is a flow diagram for explaining the document search method. [Figure 11] FIG. 11 is a flow diagram for explaining the document search method. [Figure 12] FIG. 12 is a flow diagram illustrating the document search method. [Figure 13] 13A and 13B are diagrams showing examples of the configuration of a neural network. [Figure 14] FIG. 14 is a diagram illustrating a configuration example of a semiconductor device. [Figure 15] FIG. 15 is a diagram showing an example of the configuration of a memory cell. [Figure 16] FIG. 16 is a diagram illustrating an example of the configuration of the offset circuit. [Figure 17] FIG. 17 is a timing chart. DETAILED DESCRIPTION OF THE INVENTION
[0031] The following describes an embodiment of the present invention. However, one embodiment of the present invention is not limited to the following description, and it will be readily understood by those skilled in the art that various changes in form and details can be made without departing from the spirit and scope of the present invention. Therefore, one embodiment of the present invention should not be interpreted as being limited to the description of the embodiment shown below.
[0032] In this specification, the ordinal numbers "first," "second," and "third" are used to avoid confusion between components. Therefore, they do not limit the number of components. Furthermore, they do not limit the order of the components. For example, a component referred to as "first" in one embodiment of this specification may be a component referred to as "second" in another embodiment or in the claims. For example, a component referred to as "first" in one embodiment of this specification may be omitted in another embodiment or in the claims.
[0033] In the drawings, the same elements or elements having similar functions, elements made of the same material, or elements formed at the same time may be given the same reference numerals, and repeated description thereof may be omitted.
[0034] In this specification, for example, the power supply potential VDD may be abbreviated to potential VDD, VDD, etc. This also applies to other components (for example, signals, voltages, circuits, elements, electrodes, wiring, etc.).
[0035] Furthermore, when the same symbol is used for multiple elements, and particularly when it is necessary to distinguish between them, an identification symbol such as "_1", "_2", "[n]", "[m,n]", etc. may be added to the symbol. For example, the second wiring GL is written as wiring GL[2].
[0036] (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.
[0037] In this embodiment, a document search system that can be used to search for intellectual property will be described as an example of a document search system. Note that the document search system of one embodiment of the present invention is not limited to the use for searching for intellectual property, and can also be used for searches other than intellectual property.
[0038] 1 shows a block diagram of a document retrieval system 10. The document retrieval system 10 has an input unit 20, a processing unit 30, a storage unit 40, a database 50, an output unit 60, and a transmission path 70.
[0039] Data (such as text data 21) is supplied to the input unit 20 from outside the document retrieval system 10. The input unit also receives corrected data (such as search data 62) generated when a user of the document retrieval system corrects data (such as search data 61) output from the output unit 60. The text data 21 and search data 62 are supplied to the processing unit 30, the storage unit 40, or the database 50 via a transmission path 70.
[0040] In this specification and the like, data on documents related to intellectual property is referred to as document data. The above-mentioned document data is data equivalent to a portion of document data. Specific examples of document data include data on patent documents (unexamined patent gazettes, patent publications, etc.), utility model publications, design publications, and publications such as papers. Publications published in countries around the world, not limited to publications published domestically, can also be used as document data related to intellectual property. Note that document data corresponds to data that is referenced for document data containing the sentence to be searched. For this reason, document data is sometimes referred to as reference document data.
[0041] The text data 21 is a portion of the reference document data. Specifically, the specification, claims, and abstract contained in a patent document can be used in part or in whole as the text data 21. For example, a description of a particular invention, examples, or claims can be used as the text data 21. Similarly, texts contained in other publications such as papers can be used in part or in whole as the text data 21.
[0042] Documents relating to intellectual property are not limited to publications. For example, document files independently owned by users or user organizations of the document search system can also be used as the text data 21.
[0043] Furthermore, intellectual property documents include documents describing inventions, devices, or designs, or industrial products.
[0044] The document data 21 may include, for example, patent documents of a particular applicant or patent documents in a particular technical field.
[0045] The text data 21 can include not only a description of the intellectual property itself (e.g., a specification, etc.), but also various information related to the intellectual property (e.g., bibliographic information, etc.), such as the patent applicant, technical field, application number, publication number, and status (pending, registered, withdrawn, etc.).
[0046] The text data 21 preferably includes date information related to the intellectual property. For example, if the intellectual property is a patent document, the date of application, publication date, registration date, etc. may be included as date information, and if the intellectual property is technical information on an industrial product, the date of release may be included as date information.
[0047] In this way, since the text data 21 contains various pieces of information related to intellectual property, various search ranges can be selected using the document search system.
[0048] The processing unit 30 has the function of performing calculations, inferences, etc. using data supplied from the input unit 20, the storage unit 40, the database 50, etc. The processing unit 30 can supply the calculation results, inference results, etc. to the storage unit 40, the database 50, the output unit 60, etc.
[0049] The processing unit 30 preferably uses a transistor having a metal oxide in its channel formation region. Because the off-state current of this transistor is extremely small, using this transistor as a switch for retaining charge (data) flowing into a capacitor functioning as a memory element can ensure long-term data retention. By utilizing this characteristic in at least one of the register and cache memory of the processing unit 30, the processing unit 30 can be operated only when necessary and turned off at other times by saving the information from the previous processing in the memory element. In other words, normally-off computing becomes possible, enabling low power consumption in the document search system.
[0050] Note that in this specification and the like, a transistor using an oxide semiconductor or a metal oxide for a channel formation region is referred to as an oxide semiconductor transistor or an OS transistor. The channel formation region of an OS transistor preferably contains metal oxide.
[0051] In this specification and the like, a metal oxide refers to an oxide of a metal in a broad sense. Metal oxides are classified into oxide insulators, oxide conductors (including transparent oxide conductors), oxide semiconductors (also referred to as oxide semiconductors or simply as OSs), and the like. For example, when a metal oxide is used in a semiconductor layer of a transistor, the metal oxide may be referred to as an oxide semiconductor. In other words, when a metal oxide has at least one of an amplifying function, a rectifying function, and a switching function, the metal oxide can be referred to as a metal oxide semiconductor, or OS for short.
[0052] The metal oxide contained in the channel formation region preferably contains indium (In). When the metal oxide contained in the channel formation region contains indium, the carrier mobility (electron mobility) of the OS transistor is increased. Furthermore, the metal oxide contained in the channel formation region is preferably an oxide semiconductor containing element M. The element M is preferably aluminum (Al), gallium (Ga), or tin (Sn). Other elements that can be used as element M include boron (B), silicon (Si), titanium (Ti), iron (Fe), nickel (Ni), germanium (Ge), yttrium (Y), zirconium (Zr), molybdenum (Mo), lanthanum (La), cerium (Ce), neodymium (Nd), hafnium (Hf), tantalum (Ta), and tungsten (W). However, the element M may be a combination of two or more of the above elements. The element M is, for example, an element having a high binding energy with oxygen. For example, it is an element whose bond energy with oxygen is higher than that of indium. Furthermore, the metal oxide contained in the channel formation region is preferably a metal oxide containing zinc (Zn). Metal oxides containing zinc may be more likely to crystallize.
[0053] The metal oxide contained in the channel formation region is not limited to a metal oxide containing indium. The semiconductor layer may be, for example, a metal oxide containing zinc but not indium, such as zinc tin oxide or gallium tin oxide, a metal oxide containing gallium, or a metal oxide containing tin.
[0054] The processing section 30 may also be made of a transistor containing silicon in the channel forming region.
[0055] In addition, the processing section 30 preferably uses a combination of a transistor including an oxide semiconductor in a channel formation region and a transistor including silicon in a channel formation region.
[0056] The processing unit 30 includes, for example, an arithmetic circuit or a central processing unit (CPU).
[0057] The processing unit 30 may have a microprocessor such as a DSP (Digital Signal Processor) or a GPU (Graphics Processing Unit). The microprocessor may be implemented by a PLD (Programmable Logic Device) such as an FPGA (Field Programmable Gate Array) or an FPAA (Field Programmable Analog Array). The processing unit 30 can perform various data processing and program control by interpreting and executing instructions from various programs using the processor. Programs that can be executed by the processor are stored in at least one of the memory area of the processor and the storage unit 40.
[0058] The processing unit 30 may have a main memory, which includes at least one of a volatile memory such as a random access memory (RAM) and a non-volatile memory such as a read only memory (ROM).
[0059] The RAM may be, for example, a dynamic random access memory (DRAM) or a static random access memory (SRAM), and is used as a virtual memory space allocated to the processing unit 30 as a working space. The operating system, application programs, program modules, program data, lookup tables, and the like stored in the storage unit 40 are loaded into the RAM for execution. The data, programs, and program modules loaded into the RAM are each directly accessed and operated by the processing unit 30.
[0060] ROM can store BIOS (Basic Input / Output System) and firmware, which do not require rewriting. Examples of ROM include mask ROM, OTPROM (One-Time Programmable Read-Only Memory), and EPROM (Erasable Programmable Read-Only Memory). Examples of EPROM include UV-EPROM (Ultra-Violet Erasable Programmable Read-Only Memory), which allows stored data to be erased by exposure to ultraviolet light, EEPROM (Electrically Erasable Programmable Read-Only Memory), and flash memory.
[0061] The storage unit 40 has a function of storing programs executed by the processing unit 30. The storage unit 40 may also have a function of storing calculation results and inference results generated by the processing unit 30, as well as data input to the input unit 20. The storage unit 40 also has a function of storing search data 62 input to the input unit 20 in the storage unit 40 as search data 41. The search data 41 stored in the storage unit 40 is used to update the thesaurus data, which will be described later.
[0062] The storage unit 40 includes at least one of a volatile memory and a nonvolatile memory. The storage unit 40 may include a volatile memory such as a DRAM or an SRAM. The storage unit 40 may include a nonvolatile memory such as a ReRAM (Resistive Random Access Memory, also called a Resistive Memory), a PRAM (Phase Change Random Access Memory), an FeRAM (Ferroelectric Random Access Memory), an MRAM (Magnetoresistive Random Access Memory, also called a Magnetoresistive Memory), or a flash memory. The storage unit 40 may also include a recording media drive such as a hard disk drive (HDD) or a solid state drive (SSD).
[0063] The database 50 has a function of storing at least reference document data 51 to be searched, weight dictionary data 52, and synonym search data 53. The database 50 may also have a function of storing the calculation results and inference results generated by the processing unit 30, as well as data input to the input unit 20. The storage unit 40 and the database 50 do not need to be separated from each other. For example, the document search system 10 may have a storage unit that has the functions of both the storage unit 40 and the database 50.
[0064] The reference document data 51 is data on a plurality of documents related to intellectual property. The weight dictionary data 52 is data generated by extracting the appearance frequencies of a plurality of keywords from among the words included in the reference text analysis data obtained by analyzing the reference document data 51, and assigning weights to each of the plurality of keywords according to the appearance frequencies. The synonym search data 53 is data generated by extracting related words corresponding to the keywords from among the words included in the reference text analysis data, and assigning weights to each of the related words according to their similarities.
[0065] The database 50 also has the function of storing inverse document frequency (IDF) data (hereinafter referred to as IDF data) required for generating the weight dictionary data 52 and the synonym search data 53. IDF indicates the likelihood of a word appearing in a document. A word that appears in many documents has a small IDF, while a word that appears in only a few documents has a high IDF. Therefore, a word with a high IDF can be said to be a characteristic word in the reference text analysis data. It is preferable to use IDF data to calculate the frequency of appearance of the above keywords.
[0066] Search words can also be extracted from text data based on IDF. For example, words with an IDF greater than a certain value can be extracted as search words, or any number of words with the highest IDF can be extracted as search words.
[0067] The database 50 also has the function of storing vector data necessary for calculating related words corresponding to keywords. Related words are extracted from words included in the reference text analysis data based on the similarity or distance between the word's distributed representation vector and the keyword's distributed representation vector. The weight of a related word is preferably calculated using the product of the keyword weight and a value based on the similarity or distance between the related word's distributed representation vector and the keyword's distributed representation vector. Alternatively, the weight of a related word may be calculated using a value based on the similarity or distance between the related word's distributed representation vector and the keyword's distributed representation vector. Search accuracy can be improved by setting the weight of a related word based on both the similarity between the related word and the keyword and the weight of the keyword itself. Examples of related words include synonyms, similar words, antonyms, hypernyms, and hyponyms.
[0068] The search data 61 corresponds to data generated by extracting search words contained in the text data 21 and referencing the thesaurus data and weight dictionary data. The search data is data in which weights are assigned to keywords corresponding to the search words and related words corresponding to the keywords. By assigning weights to each of the keywords and related words, it is possible to assign scores based on the weights to reference document data in which the keywords or related words are found. The search data 62 corresponds to data in which the weights have been modified by user operation in the search data 61.
[0069] The output unit 60 has a function of supplying search data to an external device of the document search system 10. For example, the search data generated in the processing unit 30 can be supplied to a display device or the like provided external to the document search system 10. A user can check the generated search data via a display device or the like provided external to the document search system 10.
[0070] The transmission path 70 has a function of transmitting data. Data can be transmitted and received between the input unit 20, the processing unit 30, the storage unit 40, the database 50, and the output unit 60 via the transmission path 70.
[0071] FIG. 2 is a flowchart illustrating a document search method using the document search system 10 described in FIG.
[0072] 2, first, reference document data is registered in the database 50 (step S11). This registration step may be configured to be performed in the middle of the subsequent steps.
[0073] Next, weight dictionary data is created (step S12). The weight dictionary data creation flow in step S12 will be explained later with reference to FIG.
[0074] Next, thesaurus data is created (step S13). The thesaurus data creation flow in step S13 will be described later with reference to Figure 4. Note that step S13 may be performed interchangeably with step S12, or may be performed at the same time.
[0075] Next, text data is input (step S14). This text data is input via a graphical user interface (GUI) such as a display device provided outside the document retrieval system 10.
[0076] Next, search words are extracted from the text data (step S15). The flow of extracting search words in step S15 will be explained later with reference to FIG.
[0077] Next, search data is created (step S16). The search data is created by referring to the search word, weight dictionary data, and synonym dictionary data. The search data in step S16 will be described later with reference to FIG. 7 etc.
[0078] Next, the search data based on the search data is displayed (step S17). The display is performed by outputting the search data to a GUI such as a display device provided outside the document search system 10.
[0079] Next, the search data displayed in step S17 is corrected (step S18). This correction is performed by the user correcting the weight data value of the search data displayed on a display device provided outside the document search system 10.
[0080] Next, a search is executed based on the corrected search data (step S19). The flow of the search execution in step S19 will be explained later with reference to FIG.
[0081] The search data corrected in step S18 is stored in a storage unit or the like (step S20).
[0082] After the search is executed in step S19, it is determined whether or not to end the search (step S21). If the search is to be continued, the process returns to step S14 and the text data is input again. If the search is to be ended, the search ends.
[0083] After the search data corrected in step S20 is saved, the thesaurus data is updated (step S22). That is, the data created in the thesaurus data creation shown in step S13 is updated. The flow of updating the thesaurus data in step S22 will be described later with reference to FIG. 10 etc.
[0084] According to the flow chart in Figure 2, in a document retrieval method according to one embodiment of the present invention, thesaurus data can be updated using search data modified by a user. This provides a document retrieval method that can retrieve documents with high accuracy. Alternatively, a simple input method can be used to achieve high-accuracy document retrieval, particularly for retrieval of documents related to intellectual property.
[0085] FIG. 3 is a diagram showing a flow for generating weight dictionary data shown in step S12 described with reference to FIG.
[0086] First, multiple reference document data (hereinafter referred to as document data TD REF ) is input to the processing unit 30 via the input unit 20 (step S41). Step S41 corresponds to step S11 described above.
[0087] Next, the document data TD REF Then, word separation processing is performed on the character (step S42). After that, it is preferable to perform processing to correct unnecessary word separation processing.
[0088] Next, the document data TD that has been segmented REF is subjected to morphological analysis (step S43).
[0089] Next, the data that underwent morphological analysis was analyzed using sentence analysis data AD. REFIn the morphological analysis, a sentence written in a natural language is divided into morphemes (the smallest units that have meaning in a language), and the parts of speech of the morphemes can be determined. This allows, for example, the generation of document data TD that has undergone word segmentation processing. REF Sentence analysis data AD that extracts only nouns from REF It can be said that:
[0090] Next, text analysis data AD REF For the text analysis data AD REF The IDF of the words included in the list is calculated, and an IDF data ID is generated (step S45). The IDF data ID includes the word and the normalized IDF. The IDF data ID includes the word that is a keyword and the normalized IDF.
[0091] The IDF(t) of a certain word t can be obtained by normalizing the idf(t) of formula (1). The normalization method is not particularly limited, and for example, the idf(t) can be normalized by formula (2). In formula (1), N is the total number of documents (reference text analysis data AD ref df(t) is the number of documents in which a certain word t appears (reference text analysis data AD ref In equation (2), the idf MAX Reference text analysis data AD ref is the maximum value of idf(t) of the words in MIN Reference text analysis data AD ref is the minimum value of idf(t) of the words contained in
[0092]
number
[0093] Words with high IDF are analyzed using text analysis data. REFTherefore, by estimating the standardized IDF data ID for each word, it is possible to extract keywords, which are characteristic words for searching desired documents, and their standardized IDFs.
[0094] Next, the IDF assigned to each keyword in the IDF data ID is used as weight data, and weight dictionary data in which weight data is assigned to each keyword is generated (step S46). As described above, words with high IDFs are considered to be characteristic words in the reference text analysis data. By extracting the IDF, it is possible to estimate the frequency of appearance of each keyword, and it is possible to generate weight dictionary data in which weight data according to the frequency of appearance is linked to each keyword. The generated weight dictionary data can be stored in database 50.
[0095] According to the flow diagram in Figure 3, weight dictionary data can be generated based on reference document data stored in a database. The importance (weight) of each characteristic word (keyword) in the document data can be estimated by using a numerical value normalized by IDF. This makes it possible to provide a document retrieval method that can retrieve documents with high accuracy. Alternatively, a simple input method can be used to achieve high-accuracy document retrieval, particularly for retrieval of documents related to intellectual property.
[0096] FIG. 4 is a diagram showing a flow for generating the thesaurus data shown in step S12 described with reference to FIG.
[0097] First, the document data TD REF is input to the processing unit 30 via the input unit 20 (step S51). Step S51 corresponds to step S11 described above. Note that step S51 corresponds to the same process as step S41.
[0098] Next, the document data TD REF(Step S52). It is preferable to then correct any unnecessary word separation processing. Note that Step S52 corresponds to the same processing as Step S42.
[0099] Next, the document data TD that has been segmented REF (Step S53) Note that step S53 corresponds to the same process as step S43.
[0100] Next, the data that underwent morphological analysis was analyzed using sentence analysis data AD. REF (Reference sentence analysis data) is generated (step S54). Note that step S54 corresponds to the same process as step S44.
[0101] Next, text analysis data AD REF For the text analysis data AD REF The IDF of the words included in the list is calculated, and an IDF data ID is generated (step S55). Note that step S55 corresponds to the same process as step S45. By estimating the normalized IDF data ID for each word, it is possible to extract keywords, which are characteristic words for searching for a desired document, and the normalized IDF.
[0102] Next, text analysis data AD REF Then, words included in the data are extracted, a distributed representation vector is generated for each word, and vector data VD is generated (step S56).
[0103] Word embeddings are also called word embeddings. A word embedding vector is a vector that represents a word using quantified continuous values for each feature element (dimension). Words with similar meanings will have similar vectors.
[0104] The processing unit 30 preferably uses a neural network to generate a distributed representation vector of a word. The neural network is trained using supervised learning. Specifically, a word is provided to the input layer, and the surrounding words of the word are provided to the output layer, so that the neural network learns the probability of the surrounding words for the word. The intermediate layer (hidden layer) preferably has a relatively low-dimensional vector of 10 to 1000 dimensions. The vector after training is the distributed representation vector of the word.
[0105] Distributed representation of words can be achieved, for example, using the open-source algorithm Word2vec, which converts words into vectors, including their features and semantic structure, based on the hypothesis that words used in the same context have the same meaning.
[0106] In word vectorization, by generating distributed representation vectors of words, it is possible to calculate the similarity and distance between words by performing operations between vectors. When the similarity between two vectors is high, it can be said that the two vectors are highly related. Also, when the distance between two vectors is short, it can be said that the two vectors are highly related.
[0107] Furthermore, while one-hot representation assigns one dimension to each word, distributed representation can represent words as low-dimensional real-valued vectors, allowing for representation with fewer dimensions even when the vocabulary size increases. Therefore, even if the corpus contains a large number of words, the amount of calculation does not increase much, and it is possible to process huge amounts of data in a short time.
[0108] Next, text analysis data AD REFFor each keyword, related words are extracted (step S57). Related words corresponding to the keyword are extracted based on the similarity or distance between the distributed representation vector of the keyword and the distributed representation vector of the word. Related word data is then generated by sorting the related words in descending order of similarity or distance. Specifically, it is preferable to extract 1 to 10 related words for one keyword, and more preferably 2 to 5 related words. Related words may be, for example, words with a similarity greater than a predetermined value, words with a distance less than a predetermined value, a predetermined number of words with high similarity, or a predetermined number of words with low distance. The number of synonyms, similar words, antonyms, hypernyms, and hyponyms varies depending on the keyword. Therefore, the number of related words may vary depending on the keyword. Text analysis data AD REF By extracting related words from the words contained in the sentence, AD REF Even if a keyword is expressed in a unique way, the way of writing can be extracted as a related word. Therefore, it is possible to reduce missed searches due to variations in writing, which is preferable.
[0109] The similarity between two vectors can be calculated using cosine similarity, covariance, unbiased covariance, Pearson's product-moment correlation coefficient, etc. Cosine similarity is particularly preferable. The distance between two vectors can be calculated using Euclidean distance, standard (averaged) Euclidean distance, Mahalanobis distance, Manhattan distance, Chebyshev distance, Minkowski distance, etc.
[0110] Next, weight data is assigned to the related words (step S58). The weight data assigned to each related word corresponds to the degree of association (similarity) between the keyword and the related word. Therefore, the weight data assigned to the related word is a value indicating the level of similarity or the closeness of the distance, or a normalized value of these. The weight data assigned to the related word is used to calculate the weight of the related word, which is used later when assigning a score to the search results. Specifically, the product of the normalized IDF of the keyword and the weight data of the related word corresponds to the weight of the related word. Note that the calculation of the weight of the related word only needs to be a value equivalent to the product, and a value equivalent to the intercept of the product may be added to the calculated weight value.
[0111] Using the above-mentioned IDF data ID and vector data VD, thesaurus data consisting of a plurality of keywords and related words to which weight data is attached is generated (step S59). The generated thesaurus data can be stored in database 50.
[0112] According to the flow chart in Figure 4, thesaurus data can be generated based on multiple document data sets stored in a database. The similarity (weight) of each related term associated with a characteristic word (keyword) in the document data can be estimated using a numerical value normalized by the IDF data ID and vector data VD. This provides a document search method that can search for documents with high accuracy. Alternatively, a simple input method can be used to achieve highly accurate document searches, particularly for documents related to intellectual property.
[0113] FIG. 5 is a diagram showing a flow for extracting a search word shown in step S15 described with reference to FIG.
[0114] First, text data (hereinafter referred to as text data TD) is input to the processing unit 30 via the input unit 20 (step S31). Step S31 corresponds to step S14 described above.
[0115] Next, word segmentation processing is performed on the text data TD (step S32), after which it is preferable to perform processing to correct unnecessary word segmentation processing.
[0116] Next, the sentence data TD that has been segmented is subjected to morphological analysis (step S33).
[0117] Next, text analysis data (hereinafter referred to as text analysis data AD) is generated from the data that has been subjected to morphological analysis (step S34). Morphological analysis divides a text written in a natural language into morphemes (the smallest units that have meaning in a language) and determines the parts of speech of the morphemes. This makes it possible to generate text analysis data AD by extracting only nouns from text data TD that has been subjected to word segmentation processing, for example.
[0118] Next, the IDF data calculated when generating the weight dictionary data or thesaurus data is referenced, and an IDF data ID corresponding to the word included in the sentence analysis data AD is obtained (step S35). By obtaining the IDF data ID normalized for each word, it is possible to extract search words, which are characteristic words for searching for a desired document, and the normalized IDF.
[0119] Next, search words are extracted based on the IDF (step S36). Words with high IDF are characteristic words that are unlikely to appear in the text analysis data AD.
[0120] According to the flow chart in Figure 5, search words can be extracted based on the input text data. By estimating characteristic words in the text data using numerical values normalized by IDF, the characteristic words can be extracted as search words. This provides a document search method that can search documents with high accuracy. Alternatively, a simple input method can be used to achieve high-accuracy document searches, particularly for documents related to intellectual property.
[0121] 6A is a diagram showing a schematic representation of the search word (SW) data extracted from the text data TD described above. Table data 21TB shows a schematic representation of the search word (SW) data. Examples of extracted search words include "Word A," "Word B," and "Word C."
[0122] 6B is a diagram showing a model of weight dictionary data in which weight data based on the normalized IDF is assigned to each keyword (KW) generated from the multiple document data described above. Table data 52TB shows a model of weight dictionary data. Examples of keywords are "Word A," "Word B," and "Word C," and the weight data for each keyword is "0.9," "0.9," and "0.8."
[0123] 6C is a diagram showing a schematic representation of thesaurus data in which related words are extracted for each keyword (KW) extracted from the plurality of document data described above, and weight data corresponding to the degree of similarity is assigned to each related word (RW). Table data 53TB shows a schematic representation of thesaurus data.
[0124] Table 53TB lists "Word A," "Word B," "Word C," "Word D," and "Word E" as examples of keywords. Related words for "Word A" include "Word X," "Word Y," "Word Z," and "Word a," with weight data for each related word being "0.9," "0.8," "0.6," and "0.5." Similarly, related words for "Word B" include "Word b," "Word c," "Word d," and "Word e," with weight data for each related word being "0.5," "0.5," "0.45," and "0.3." Related words for "Word C" include "Word f," "Word g," "Word h," and "Word i," with weight data for each related word being "0.75," "0.75," "0.75," and "0.75." Related words for "Word D" include "Word j," "Word k," "Word m," and "Word n," with weight data for each related word being "0.5," "0.3," "0.3," and "0.1." Examples of related words for "Word E" include "Word p," "Word q," "Word r," and "Word s," and the weight data for each related word is "0.75," "0.65," "0.65," and "0.6."
[0125] FIG. 7 is a diagram illustrating search data created with reference to weight dictionary data and thesaurus data. In table data 61TB, the weights of "Word A," "Word B," and "Word C" shown in table data 21TB containing the search word SW are set to "0.9," "0.9," and "0.8" by referencing table data 52TB. Furthermore, by referencing table data 53TB, "Word A" is given examples of related words corresponding to the keyword KW, with the weights of the related words being "0.9," "0.8," "0.6," and "0.5." Similarly, "Word B" is given examples of "Word b," "Word c," "Word d," and "Word e," with the weights of the related words being "0.5," "0.5," "0.45," and "0.3." "Word C" is given examples of "Word f," "Word g," "Word h," and "Word i," with the weights of the related words being "0.75," "0.75," "0.75," and "0.75."
[0126] 7 is displayed on a display device provided outside the document retrieval system 10. As shown in table data 61TB, a user can view the search data displayed on a display device provided outside the document retrieval system 10 and modify the weight data of words that are clearly inappropriate as related terms or the weight data of related terms that are clearly highly related.
[0127] For example, as shown in FIG. 8, in the 61TB table data shown in FIG. 7, if the user determines that the relevance of "Word a" in "Word A" is high, the weight of the related word is modified from "0.5" to "1.0." Similarly, if the user determines that the relevance of "Word c" in "Word B" is low, the weight of the related word is modified from "0.5" to "0.0." Similarly, if the user determines that the relevance of "Word h" in "Word C" is high, the weight of the related word is modified from "0.75" to "1.0." Note that related words whose weight data has been modified are hatched.
[0128] When the user makes the corrections shown in FIG. 8, the search data (first search data: equivalent to 61 TB of table data) becomes corrected search data (second search data: equivalent to 62 TB of table data).
[0129] Note that updating of the thesaurus data is not limited to the example shown in FIG. 8. For example, when correcting the weight data of a related word from "0.5" to "1.0," the correction may take into account the contribution rate. For example, the corrected weight data may be obtained by multiplying the difference between the pre-correction weight data and the post-correction weight data by the contribution rate and adding the result to the pre-correction weight data. In this configuration, if the contribution rate is 0.1, the pre-correction weight data is 0.5, and the post-correction weight data is 1.0, the post-correction weight data is updated to 0.55, which is "0.5 + 0.1 × (1.0 - 0.5)." Therefore, when updating thesaurus data, it is possible to update in accordance with the corrections made by multiple users, regardless of the corrections made by a single user.
[0130] Fig. 9 is a diagram schematically showing the thesaurus data that is updated when the search data shown in Fig. 8 is corrected. As shown in Fig. 8, the thesaurus data for the related words RW (hatched areas) and the corresponding keywords KW whose weight data has been corrected is corrected based on the corrected weight data. Specifically, table data 53TB shown in Fig. 9, which schematically represents the thesaurus data before updating, can be updated as shown in table data 53TB_re.
[0131] As shown in Figure 9, the ranking of related words linked to keywords changes when the weight data of the related words RW is updated. By updating the thesaurus data in this way, it is possible to provide a document retrieval method that can retrieve documents taking into account the user's criteria. It is also possible to provide a document retrieval method that can retrieve documents with high accuracy. Alternatively, it is possible to achieve high-accuracy document retrieval, particularly retrieval of documents related to intellectual property, using a simple input method.
[0132] FIG. 10 is a flowchart illustrating the updating of the thesaurus data shown in step S22 described with reference to FIG.
[0133] First, search data corrected by the user is stored in the storage unit via the input unit (step S61). Step S61 corresponds to step S20 described above with reference to FIG.
[0134] Next, it is determined whether or not to periodically update the thesaurus data (step S62). Periodic updating is performed using a timer or the like. If it is time to update, the thesaurus data is updated (step S63). If not, the process ends. The update of thesaurus data in step S63 is performed regardless of whether the search data is saved in step S61.
[0135] FIG. 11 is a diagram showing a flow for explaining the search execution shown in step S19 described with reference to FIG.
[0136] First, search data is created based on the search word (step S71). Step S71 corresponds to step S16 described above.
[0137] Next, the created search data is corrected (step S72). Step S72 corresponds to step S18 described above. By the user editing (correcting) the weight data in this way, search accuracy can be improved.
[0138] Next, reference text analysis data AD ref The plurality of reference sentence analysis data AD are assigned scores (scoring) based on the weight data assigned to the search data (step S73). ref The scoring process for will be described later with reference to FIG.
[0139] Next, reference text analysis data AD refRanking data is created based on the scores assigned to each of the items (step S74).
[0140] Ranking data includes rankings (Rank), reference text data TD ref The database 50 may contain reference text data TD. ref When the ranking data is saved, the reference sentence data TD ref It is preferable to include a file path to the document, so that a user can easily access a target document from the ranking data.
[0141] Reference Text Analysis Data AD ref The higher the score, the better the sentence analysis data AD ref can be said to be related to or similar to the text data TD.
[0142] A document search system according to one embodiment of the present invention has a function of extracting search words from text data and extracting keywords and related words by referencing the thesaurus data and weight dictionary data. Therefore, a user of the document search system according to one embodiment of the present invention does not need to select the keywords to be used in the search. The user can simply input text data (text data), which is larger than the amount of keywords, directly into the document search system. Furthermore, even if a user wishes to select keywords and related words themselves, they do not need to do so from scratch. They can simply add, modify, or delete keywords and related words by referring to the keywords and related words extracted by the document search system. This reduces the burden on the user in document search and reduces the likelihood of differences in search results due to user skill.
[0143] FIG. 12 shows the reference sentence analysis data AD based on the weight data added to the search data shown in step S73 described in FIG. ref FIG. 10 is a diagram showing a flow for explaining the scoring of the above.
[0144] Unscored reference text analysis data AD ref One of the items is selected (step S81).
[0145] Next, reference text analysis data AD ref In step S82, it is determined whether the keyword KW is found. If it is found, the process proceeds to step S85. If it is not found, the process proceeds to step S83.
[0146] Next, reference text analysis data AD ref In step S83, it is determined whether a related word RW corresponding to the keyword KW is found. If a related word RW is found, the process proceeds to step S85. If a related word RW is not found, the process proceeds to step S84.
[0147] Next, it is determined whether all related words RW corresponding to the keyword KW have been searched (step S84). If a search has been performed, proceed to step S86. If a search has not been performed, proceed to step S83. For example, if there are two related words RW for the keyword KW, and it was determined in the previous step S83 whether the first related word RW was found, the process returns to step S83 and determines whether the second related word RW was found.
[0148] In step S85, the weight corresponding to the hit word is added to the score. If a hit is found in step S82, the weight data of the keyword KW is added to the score. If a hit is found in step S83, the weight data of the keyword KW is added to the score. x The product of the weight data of the related word RW and the weight data of the related word RW is added to the score.
[0149] Next, it is determined whether all keywords KW have been searched (step S86). If a search has been performed, proceed to step S87. If a search has not been performed, proceed to step S82. For example, if there are two keywords KW, and it was determined in the previous step S82 whether the first keyword KW was a hit, return to step S82 and determine whether the second keyword KW was a hit.
[0150] Next, all reference text analysis data ADref It is determined whether or not all the points have been scored (step S87). If all the points have been scored, the process ends. If not, the process proceeds to step S81.
[0151] As described above, a search can be performed using the document search system 10.
[0152] As described above, the document retrieval system of this embodiment can search for documents related to or similar to an input document by using documents prepared in advance as search targets. Since the user does not need to select keywords to use in the search and can search using text data that is larger in volume than keywords, individual differences in search accuracy can be reduced, allowing documents to be searched easily and with high accuracy. Furthermore, since the document retrieval system of this embodiment extracts keywords related to documents prepared in advance, unique expressions contained in the documents can also be extracted as related words, reducing missed searches. Furthermore, the document retrieval system of this embodiment can output search results ranked by relevance or similarity, making it easier for users to find the documents they need from the search results and less likely to overlook them.
[0153] This embodiment mode can be combined with other embodiment modes as appropriate. In addition, in this specification, when a plurality of configuration examples are shown in one embodiment mode, the configuration examples can be combined as appropriate.
[0154] (Embodiment 2) In this embodiment, a configuration example of a semiconductor device that can be used in a neural network will be described.
[0155] The semiconductor device of this embodiment can be used, for example, in a processing unit of a document search system of one embodiment of the present invention.
[0156] As shown in FIG. 13A, a neural network NN can be composed of an input layer IL, an output layer OL, and an intermediate layer (hidden layer) HL. The input layer IL, output layer OL, and intermediate layer HL each have one or more neurons (units). The intermediate layer HL may have one layer or two or more layers. A neural network with two or more intermediate layers HL can also be called a DNN (deep neural network), and learning using a deep neural network can also be called deep learning.
[0157] Input data is input to each neuron in the input layer IL, the output signal of a neuron in the previous or next layer is input to each neuron in the hidden layer HL, and the output signal of a neuron in the previous layer is input to each neuron in the output layer OL. Each neuron may be connected to all neurons in the previous or next layer (fully connected), or may be connected to only a portion of the neurons in the previous or next layer.
[0158] Figure 13B shows an example of a neuron's operation. It shows neuron N and two neurons in the previous layer that output signals to neuron N. Neuron N receives the output x1 of a neuron in the previous layer and the output x2 of a neuron in the previous layer. Neuron N then multiplies the output x1 by the weight w1 (x1w1) and the output x2 by the weight w2 (x2w2), calculating the sum x1w1+x2w2. After that, a bias b is added as necessary, resulting in a value a = x1w1+x2w2+b. The value a is then transformed by the activation function h, and neuron N outputs an output signal y = h(a).
[0159] As described above, the computation performed by a neuron includes the sum of the product of the output of a neuron in the previous layer and the weight, i.e., the sum-of-products computation (x1w1+x2w2 as above). This sum-of-products computation may be performed in software using a program, or by hardware. When performing the sum-of-products computation by hardware, a sum-of-products computation circuit can be used. This sum-of-products computation circuit may be a digital circuit or an analog circuit. When an analog circuit is used for the sum-of-products computation circuit, it is possible to reduce the circuit size of the sum-of-products computation circuit or the number of memory accesses, thereby improving processing speed and reducing power consumption.
[0160] The product-sum operation circuit may be configured using transistors (also referred to as "Si transistors") that contain silicon (such as single crystal silicon) in their channel formation regions, or transistors (also referred to as "OS transistors") that contain an oxide semiconductor, which is a type of metal oxide, in their channel formation regions. OS transistors, in particular, have extremely low off-state current and are therefore suitable as transistors that constitute the memory of the product-sum operation circuit. The product-sum operation circuit may be configured using both Si transistors and OS transistors. Hereinafter, a configuration example of a semiconductor device having the function of a product-sum operation circuit will be described.
[0161] <Configuration example of semiconductor device> 14 shows an example of the configuration of a semiconductor device MAC having a function of performing neural network calculations. The semiconductor device MAC has a function of performing a product-sum operation on first data corresponding to the connection strength (weight) between neurons and second data corresponding to input data. Note that the first data and second data can each be analog data or multi-valued digital data (discrete data). The semiconductor device MAC also has a function of converting the data obtained by the product-sum operation using an activation function.
[0162] The semiconductor device MAC includes a cell array CA, a current source circuit CS, a current mirror circuit CM, a circuit WDD, a circuit WLD, a circuit CLD, an offset circuit OFST, and an activation function circuit ACTV.
[0163] The cell array CA has a plurality of memory cells MC and a plurality of memory cells MCref. FIG. 14 shows an example of a configuration in which the cell array CA has m rows and n columns (m and n are integers equal to or greater than 1) of memory cells MC (MC[1,1] to MC[m,n]) and m memory cells MCref (MCref[1] to MCref[m]). The memory cells MC have a function of storing first data. The memory cells MCref also have a function of storing reference data used in a product-sum operation. The reference data can be analog data or multi-level digital data.
[0164] The memory cell MC[i,j] (i is an integer between 1 and m, and j is an integer between 1 and n) is connected to the wiring WL[i], the wiring RW[i], the wiring WD[j], and the wiring BL[j]. The memory cell MCref[i] is connected to the wiring WL[i], the wiring RW[i], the wiring WDref, and the wiring BLref. Here, the current flowing between the memory cell MC[i,j] and the wiring BL[j] is I MC[i,j] and the current flowing between the memory cell MCref[i] and the wiring BLref is I MCref[i] It is written as follows.
[0165] A specific configuration example of memory cell MC and memory cell MCref is shown in Figure 15. Although Figure 15 shows memory cells MC[1,1], MC[2,1] and memory cells MCref[1], MCref[2] as representative examples, similar configurations can be used for other memory cells MC and memory cells MCref. Memory cell MC and memory cell MCref each have transistor Tr11, transistor Tr12, and capacitance element C11. Here, a case will be described in which transistor Tr11 and transistor Tr12 are n-channel transistors.
[0166] In the memory cell MC, the gate of the transistor Tr11 is connected to the wiring WL, one of the source and the drain is connected to the gate of the transistor Tr12 and the first electrode of the capacitance element C11, and the other of the source and the drain is connected to the wiring WD. One of the source and the drain of the transistor Tr12 is connected to the wiring BL, and the other of the source and the drain is connected to the wiring VR. The second electrode of the capacitance element C11 is connected to the wiring RW. The wiring VR has the function of supplying a predetermined potential. Here, as an example, a case where a low power supply potential (such as a ground potential) is supplied from the wiring VR will be described.
[0167] A node connected to one of the source or drain of transistor Tr11, the gate of transistor Tr12, and the first electrode of capacitive element C11 is referred to as node NM. The nodes NM of memory cells MC[1,1] and MC[2,1] are referred to as nodes NM[1,1] and NM[2,1], respectively.
[0168] The memory cell MCref has the same configuration as the memory cell MC. However, the memory cell MCref is connected to the wiring WDref instead of the wiring WD, and to the wiring BLref instead of the wiring BL. In addition, in the memory cells MCref[1] and MCref[2], the nodes connected to one of the source or drain of the transistor Tr11, the gate of the transistor Tr12, and the first electrode of the capacitance element C11 are denoted as nodes NMref[1] and NMref[2], respectively.
[0169] The node NM and the node NMref function as storage nodes for the memory cell MC and the memory cell MCref, respectively. The node NM stores first data, and the node NMref stores reference data. In addition, a current I flows from the wiring BL[1] to the transistors Tr12 of the memory cells MC[1,1] and MC[2,1]. MC[1,1] , I MC[2,1] In addition, a current I flows from the wiring BLref to the transistors Tr12 of the memory cells MCref[1] and MCref[2]. MCref[1] , IMCref[2] is playing.
[0170] Because the transistor Tr11 has a function of maintaining the potential of the node NM or the node NMref, it is preferable that the off-state current of the transistor Tr11 be small. Therefore, it is preferable to use an OS transistor with an extremely small off-state current as the transistor Tr11. This can suppress fluctuations in the potential of the node NM or the node NMref, thereby improving the accuracy of calculation. Furthermore, it is possible to reduce the frequency of operations to refresh the potential of the node NM or the node NMref, thereby reducing power consumption.
[0171] 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 that of the transistor Tr11, thereby reducing manufacturing costs. The transistor Tr12 may be either an n-channel type or a p-channel type.
[0172] The current source circuit CS is connected to the wirings BL[1] to BL[n] and the wiring BLref. The current source circuit CS has a function of supplying 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] may be different from the current value supplied to the wiring BLref. Here, the current supplied from the current source circuit CS to the wirings BL[1] to BL[n] is referred to as I C , the current supplied from the current source circuit CS to the wiring BLref is I Cref It is written as follows.
[0173] The current mirror circuit CM has wiring IL[1] to IL[n] and wiring ILref. The wiring IL[1] to IL[n] are connected to wiring BL[1] to BL[n], respectively, and the wiring ILref is connected to wiring BLref. Here, the connection points of the wiring IL[1] to IL[n] and the wiring BL[1] to BL[n] are denoted as nodes NP[1] to NP[n]. Also, the connection point of the wiring ILref and the wiring BLref is denoted as node NPref.
[0174] The current mirror circuit CM generates a current I according to the potential of the node NPref. CM The function of flowing this current I CM 14 shows the function of flowing current I from the wiring BLref to the wiring ILref. CM is discharged, and a current I flows from the wirings BL[1] to BL[n] to the wirings IL[1] to IL[n]. CM In addition, the current flowing from the current mirror circuit CM to the cell array CA via the wirings BL[1] to BL[n] is expressed as I B [1]~I B The current flowing from the current mirror circuit CM to the cell array CA via the wiring BLref is expressed as I Bref It is written as follows.
[0175] The circuit WDD is connected to the wirings WD[1] to WD[n] and the wiring WDref. The circuit WDD has a function of supplying a potential corresponding to first data stored in the memory cell MC to the wirings WD[1] to WD[n]. The circuit WDD also has a function of supplying a potential corresponding to reference data stored in the memory cell MCref to the wiring WDref. The circuit WLD is connected to the wirings WL[1] to WL[m]. The circuit WLD has a function of supplying a signal for selecting the memory cell MC or the memory cell MCref to which data is to be written to the wirings WL[1] to WL[m]. The circuit CLD is connected to the wirings RW[1] to RW[m]. The circuit CLD has a function of supplying a potential corresponding to second data to the wirings RW[1] to RW[m].
[0176] 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 has a function of detecting the amount of current flowing from the wirings BL[1] to BL[n] to the offset circuit OFST and / or the amount of change in the current flowing from the wirings BL[1] to BL[n] to the offset circuit OFST. The offset circuit OFST also has a function of outputting the detection result to the wirings OL[1] to OL[n]. Note that the offset circuit OFST may output a current corresponding to the detection result to the wiring OL, or may convert the current corresponding to the detection result into a voltage and output it to the wiring OL. The current flowing between the cell array CA and the offset circuit OFST is expressed as I α [1]~I α It is written as [n].
[0177] An example configuration of the offset circuit OFST is shown in FIG. 16. The offset circuit OFST shown in FIG. 16 includes circuits OC[1] to OC[n]. Each of the circuits OC[1] to OC[n] includes a transistor Tr21, a transistor Tr22, a transistor Tr23, a capacitance element C21, and a resistance element R1. The connection relationship between the elements is as shown in FIG. 16. The node connected to the first electrode of the capacitance element C21 and the first terminal of the resistance element R1 is referred to as node Na. The node connected to the second electrode of the capacitance element C21, one of the source or drain of the transistor Tr21, and the gate of the transistor Tr22 is referred to as node Nb.
[0178] The wiring VrefL has a function of supplying a potential Vref, the wiring VaL has a function of supplying a potential Va, and the wiring VbL has a function of supplying a potential Vb. The wiring VDDL has a function of supplying a potential VDD, and the wiring VSSL has a function of supplying a potential VSS. Here, the case where the potential VDD is a high power supply potential and the potential VSS is a low power supply potential will be described. The wiring RST has a function of supplying a potential for controlling the conduction state of the transistor Tr21. The transistor Tr22, the transistor Tr23, the wiring VDDL, the wiring VSSL, and the wiring VbL form a source follower circuit.
[0179] Next, an example of the operation of the circuits OC[1] to OC[n] will be described. Note that, although an example of the operation of the circuit OC[1] will be described here as a representative example, the circuits OC[2] to OC[n] can also be operated in the same manner. First, when a first current flows through the wiring BL[1], the potential of the node Na becomes a potential corresponding to the first current and the resistance value of the resistor R1. At this time, the transistor Tr21 is in an on state, and a potential Va is supplied to the node Nb. After that, the transistor Tr21 is turned off.
[0180] Next, when a second current flows through the wiring BL[1], the potential of the node Na changes to a potential corresponding to the second current and the resistance value of the resistor R1. At this time, the transistor Tr21 is in an off state and the node Nb is in a floating state, so the potential of the node Nb changes due to capacitive coupling as the potential of the node Na changes. Here, the change in the potential of the node Na is defined as ΔV Na If the capacitance coupling coefficient is 1, the potential of node Nb is Va+ΔV Na Then, the threshold voltage of the transistor Tr22 is V th Then, the potential from the wiring OL[1] is Va+ΔV Na -V th is output, where Va=V th By doing so, the potential ΔV Na can be output.
[0181] Potential ΔV Nais determined according to the change amount from the first current to the second current, the resistance value of the resistor element R1, and the potential Vref. Here, since the resistance value of the resistor element R1 and the potential Vref are known, the potential ΔV Na From this, the amount of change in the current flowing through the wiring BL can be obtained.
[0182] A signal corresponding to the amount of current and / or the amount of change in current detected by the offset circuit OFST as described above is input to the activation function circuit ACTV via lines OL[1] to OL[n].
[0183] The activation function circuit ACTV is connected to the wirings OL[1] to OL[n] and NIL[1] to NIL[n]. The activation function circuit ACTV has a function of performing calculations to convert the signal input from the offset circuit OFST according to a predefined activation function. Examples of the activation function that can be used include a sigmoid function, a tanh function, a softmax function, a ReLU function, and a threshold function. The signal converted by the activation function circuit ACTV is output as output data to the wirings NIL[1] to NIL[n].
[0184] <Example of semiconductor device operation> Using the semiconductor device MAC described above, it is possible to perform a product-sum operation on the first data and the second data. An example of the operation of the semiconductor device MAC when performing a product-sum operation will be described below.
[0185] 17 shows a timing chart of an operation example of the semiconductor device MAC. FIG. 17 shows the transition of the potentials of 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], wiring RW[1], and wiring RW[2] in FIG. 15, and the current I B [1]-I α [1], and the current I Bref The graph shows the transition of the value of the current I B [1]-I α[1] corresponds to the sum of the currents flowing from the wiring BL[1] to the memory cells MC[1,1] and MC[2,1].
[0186] Here, the operation will be explained focusing on the memory cells MC[1,1], MC[2,1] and memory cells MCref[1], MCref[2] shown in Figure 15 as representative examples, but other memory cells MC and memory cells MCref can also be operated in the same way.
[0187] [Storage of first data] First, during the period from time T01 to time T02, the potential of the wiring WL[1] becomes high level (High), 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 The potential of the wiring RW[1] and the wiring RW[2] becomes the reference potential (REFP). W[1,1] is a potential corresponding to the first data stored in the memory cell MC[1,1]. PR is a potential corresponding to the reference data. As a result, the transistors Tr11 included in the memory cells MC[1,1] and MCref[1] are turned on, and the potential of the node NM[1,1] becomes V PR -V W[1,1] , the potential of node NMref[1] is V PR This becomes:
[0188] At this time, a current I flows from the wiring BL[1] to the transistor Tr12 of the memory cell MC[1,1]. MC[1,1],0 can be expressed by the following equation: where k is a constant determined by the channel length, channel width, mobility, and capacitance of the gate insulating film of the transistor Tr12. th is the threshold voltage of transistor Tr12.
[0189] I MC[1,1],0 =k(V PR -V W[1,1] -V th ) 2(E1)
[0190] In addition, the current I flows from the wiring BLref to the transistor Tr12 of the memory cell MCref[1]. MCref[1],0 can be expressed by the following formula:
[0191] I MCref[1],0 =k(V PR -V th ) 2 (E2)
[0192] Next, during the period from time T02 to time T03, the potential of the line WL[1] becomes low, which turns off the transistors Tr11 of the memory cells MC[1,1] and MCref[1], and maintains the potentials of the nodes NM[1,1] and NMref[1].
[0193] As described above, it is preferable to use an OS transistor as the transistor Tr11, which can suppress leakage current of the transistor Tr11 and accurately maintain the potentials of the nodes NM[1,1] and NMref[1].
[0194] Next, during the period from time T03 to time T04, the potential of the wiring WL[2] becomes high level, and the potential of the wiring WD[1] becomes V higher than the ground potential. PR -V W[2,1] The potential of the wiring WDref becomes 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 transistor Tr11 included in the memory cell MC[2,1] and the memory cell MCref[2] is turned on, and the potential of the node NM[2,1] becomes V PR -V W[2,1] , the potential of node NMref[2] is V PR This becomes:
[0195] At this time, a current I flows from the wiring BL[1] to the transistor Tr12 of the memory cell MC[2,1].MC[2,1],0 can be expressed by the following formula:
[0196] I MC[2,1],0 =k(V PR -V W[2,1] -V th ) 2 (E3)
[0197] In addition, the current I flows from the wiring BLref to the transistor Tr12 of the memory cell MCref[2]. MCref[2],0 can be expressed by the following formula:
[0198] I MCref[2],0 =k(V PR -V th ) 2 (E4)
[0199] Next, during the period from time T04 to time T05, the potential of the line WL[2] becomes low, which turns off the transistors Tr11 of the memory cells MC[2,1] and MCref[2], and maintains the potentials of the nodes NM[2,1] and NMref[2].
[0200] Through the above operations, the first data is stored in the memory cells MC[1,1] and MC[2,1], and the reference data is stored in the memory cells MCref[1] and MCref[2].
[0201] Here, consider the current flowing through the wiring BL[1] and the wiring BLref during the period from time T04 to time T05. A current is supplied to the wiring BLref from the current source circuit CS. The current flowing through the wiring BLref is discharged to the current mirror circuit CM and the memory cells MCref[1] and MCref[2]. The current supplied from the current source circuit CS to the wiring BLref is referred to as I Cref , the current flowing from the wiring BLref to the current mirror circuit CM is I CM,0 Then, the following formula holds:
[0202] I Cref -I CM,0 =I MCref[1],0+I MCref[2],0 (E5)
[0203] A current is supplied to the wiring BL[1] from the current source circuit CS. The current flowing through the wiring BL[1] is discharged to the current mirror circuit CM and memory cells MC[1,1] and MC[2,1]. A current also flows from the wiring BL[1] to the offset circuit OFST. The current supplied from the current source circuit CS to the wiring BL[1] is referred to as I C,0 , the current flowing from the wiring BL[1] to the offset circuit OFST is I α,0 Then, the following formula holds:
[0204] I C -I CM,0 =I MC[1,1],0 +I MC[2,1],0 +I α,0 (E6)
[0205] [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 V X[1] At this time, the potential V X[1] is supplied, and the potential of the gate of the transistor Tr12 rises due to capacitive coupling. X[1] is a potential corresponding to the second data supplied to the memory cell MC[1,1] and the memory cell MCref[1].
[0206] The change in the potential of the gate of transistor Tr12 is a value obtained by multiplying the change in the potential of the wiring RW by a capacitance coupling coefficient determined by the configuration of the memory cell. The capacitance coupling coefficient is calculated based on the capacitance of the capacitance element C11, the gate capacitance of transistor Tr12, and parasitic capacitance. For convenience, the following description will be given assuming that the change in the potential of the wiring RW and the change in the potential of the gate of transistor Tr12 are the same, i.e., the capacitance coupling coefficient is 1. In practice, the potential V is calculated by taking the capacitance coupling coefficient into consideration. X It is sufficient to determine the following.
[0207] The potential V X[1] is supplied, the potentials of the nodes NM[1,1] and NMref[1] become V X[1] Rise.
[0208] Here, during the period from time T05 to time T06, a current I flows from the wiring BL[1] to the transistor Tr12 of the memory cell MC[1,1]. MC[1,1],1 can be expressed by the following formula:
[0209] I MC[1,1],1 =k(V PR -V W[1,1] +V X[1] -V th ) 2 (E7)
[0210] That is, the potential V X[1] By supplying the current, the current flowing from the wiring BL[1] to 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.
[0211] In addition, during the period from time T05 to time T06, a current I flows from the wiring BLref to the transistor Tr12 of the memory cell MCref[1]. MCref[1],1 can be expressed by the following formula:
[0212] I MCref[1],1 =k(V PR +V X[1] -V th ) 2 (E8)
[0213] That is, the potential V X[1] By supplying the current, the current flowing from the wiring BLref to the transistor Tr12 of the memory cell MCref[1] is ΔI MCref[1] =I MCref[1],1 -I MCref[1],0 Increase.
[0214] Next, consider the current flowing through the wire BL[1] and the wire BLref. The wire BLref is supplied with a current I Cref The current flowing through the wiring BLref is discharged to the current mirror circuit CM and memory cells MCref[1] and MCref[2]. The current discharged from the wiring BLref to the current mirror circuit CM is I CM,1 Then, the following formula holds:
[0215] I Cref -I CM,1 =I MCref[1],1 +I MCref[2],0 (E9)
[0216] The wire BL[1] carries the current I from the current source circuit CS. C The current flowing through the wiring BL[1] is discharged to the current mirror circuit CM and memory cells MC[1,1] and MC[2,1]. Furthermore, a 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 referred to as I α,1 Then, the following formula holds:
[0217] I C -I CM,1 =I MC[1,1],1 +I MC[2,1],1 +I α,1 (E10)
[0218] Then, from equations (E1) to (E10), the current I α,0 and current I α,1 Difference between the current difference (ΔI α ) can be expressed as follows:
[0219] ΔI α =I α,1 -I α,0 =2kV W[1,1] V X[1] (E11)
[0220] In this way, the differential current ΔI α is the potential V W[1,1] and V X[1]The value depends on the product of these.
[0221] Thereafter, during the period from time T06 to time T07, the potential of the wire RW[1] becomes the reference potential, and the potentials of the nodes NM[1,1] and NMref[1] become the same as during the period from time T04 to time T05.
[0222] Next, during the period from time T07 to time T08, the potential of the wiring RW[1] becomes V X[1] The potential of the wiring RW[2] becomes V higher than the reference potential. X[2] As a result, the potential V X[1] is supplied, and the potentials of the nodes NM[1,1] and NMref[1] are V X[1] In addition, a potential V X[2] is supplied, and the potentials of the nodes NM[2,1] and NMref[2] are V X[2] Rise.
[0223] Here, during the period from time T07 to time T08, the current I MC[2,1],1 can be expressed by the following formula:
[0224] I MC[2,1],1 =k(V PR -V W[2,1] +V X[2] -V th ) 2 (E12)
[0225] That is, the potential V X[2] By supplying the current, the current flowing from the wiring BL[1] to 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.
[0226] In addition, during the period from time T07 to time T08, a current I flows from the wiring BLref to the transistor Tr12 of the memory cell MCref[2]. MCref[2],1 can be expressed by the following formula:
[0227] I MCref[2],1 =k(V PR +V X[2] -V th ) 2 (E13)
[0228] That is, the potential V X[2] By supplying the current, the current flowing from the wiring BLref to the transistor Tr12 of the memory cell MCref[2] is ΔI MCref[2] =I MCref[2],1 -I MCref[2],0 Increase.
[0229] Next, consider the current flowing through the wire BL[1] and the wire BLref. The wire BLref is supplied with a current I Cref The current flowing through the wiring BLref is discharged to the current mirror circuit CM and memory cells MCref[1] and MCref[2]. The current discharged from the wiring BLref to the current mirror circuit CM is I CM,2 Then, the following formula holds:
[0230] I Cref -I CM,2 =I MCref[1],1 +I MCref[2],1 (E14)
[0231] The wire BL[1] carries the current I from the current source circuit CS. C The current flowing through the wiring BL[1] is discharged to the current mirror circuit CM and memory cells MC[1,1] and MC[2,1]. Furthermore, a 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 referred to as I α,2 Then, the following formula holds:
[0232] I C-I CM,2 =I MC[1,1],1 +I MC[2,1],1 +I α,2 (E15)
[0233] 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:
[0234] ΔI α =I α,2 -I α,0 =2k(V W[1,1] V X[1] +V W[2,1] V X[2] ) (E16)
[0235] 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 .
[0236] Then, during the period from time T08 to time T09, the potentials of the wirings RW[1] and [2] become the reference potential, and the potentials of the nodes NM[1,1], NM[2,1] and the nodes NMref[1] and NMref[2] become the same as during the period from time T04 to time T05.
[0237] As shown in equations (E11) and (E16), the differential current ΔI input to the offset circuit OFST is α is the potential V corresponding to the first data (weight) W and the potential V corresponding to the second data (input data) X That is, the differential current ΔI α By measuring this with the offset circuit OFST, the result of the product-sum operation of the first data and the second data can be obtained.
[0238] Although the above focuses on memory cells MC[1,1], MC[2,1] and memory cells MCref[1], MCref[2], the number of memory cells MC and memory cells MCref can be set arbitrarily. When the number of rows m of memory cells MC and memory cells MCref is set to an arbitrary number i, the differential current ΔIα can be expressed by the following equation.
[0239] ΔI α =2kΣ i V W[i,1] V X[i] (E17)
[0240] Moreover, by increasing the number n of columns of memory cells MC and memory cells MCref, the number of product-sum operations executed in parallel can be increased.
[0241] As described above, by using the semiconductor device MAC, it is possible to perform a product-sum operation on the first data and the second data. Note that by using the configuration shown in FIG. 15 for the memory cells MC and the memory cells MCref, it is possible to configure a product-sum operation circuit with a small number of transistors. Therefore, it is possible to reduce the circuit scale of the semiconductor device MAC.
[0242] When the semiconductor device MAC is used for calculations in a neural network, the number of rows m of the memory cells MC can be set to correspond to the number of input data supplied to one neuron, and the number of columns n of the memory cells MC can be set to correspond to the number of neurons. For example, consider a case where a product-sum calculation is performed using the semiconductor device MAC in the hidden layer HL shown in Figure 13A. In this case, the number of rows m of the memory cells MC can be set to the number of input data supplied from the input layer IL (the number of neurons in the input layer IL), and the number of columns n of the memory cells MC can be set to the number of neurons in the hidden layer HL.
[0243] The structure of the neural network to which the semiconductor device MAC is applied is not particularly limited. For example, the semiconductor device MAC can be used in a convolutional neural network (CNN), a recurrent neural network (RNN), an autoencoder, a Boltzmann machine (including a restricted Boltzmann machine), etc.
[0244] As described above, by using the semiconductor device MAC, it is possible to perform product-sum operations of a neural network. Furthermore, by using the memory cells MC and MCref shown in Fig. 15 in the cell array CA, it is possible to provide an integrated circuit that can improve operation accuracy, reduce power consumption, and reduce the circuit scale.
[0245] This embodiment mode can be combined with other embodiment modes as appropriate.
[0246] (Notes regarding the present specification) The above-described embodiment and each configuration in the embodiment will be described below with additional notes.
[0247] The configurations shown in each embodiment can be combined as appropriate with configurations shown in other embodiments or examples to form one aspect of the present invention. Furthermore, when multiple configuration examples are shown in one embodiment, the configuration examples can be combined as appropriate.
[0248] In addition, the content (or even a part of the content) described in one embodiment can be applied to, combined with, or replaced with another content (or even a part of the content) described in that embodiment, and / or with the content (or even a part of the content) described in one or more other embodiments.
[0249] The contents described in the embodiments refer to the contents described in each embodiment using various figures or the contents described using text in the specification.
[0250] Furthermore, a figure (or even a part thereof) described in one embodiment can be combined with another part of that figure, another figure (or even a part thereof) described in that embodiment, and / or a figure (or even a part thereof) described in one or more other embodiments to form even more figures.
[0251] In addition, in the present specification and the like, in the block diagrams, components are classified by function and shown as independent blocks. However, in actual circuits, etc., it is difficult to separate components by function, and there may be cases where one circuit is involved in multiple functions, or where one function is involved across multiple circuits. Therefore, the blocks in the block diagrams are not limited to the components described in the specification, but may be rephrased appropriately depending on the situation.
[0252] In addition, in the drawings, the size, layer thickness, or region is shown at an arbitrary size for convenience of explanation. Therefore, it is not necessarily limited to the scale. Note that the drawings are shown schematically for clarity, and are not limited to the shapes or values shown in the drawings. For example, it is possible to include variations in signal, voltage, or current due to noise, or variations in signal, voltage, or current due to timing deviations.
[0253] Furthermore, the positional relationships of components shown in the drawings are relative. Therefore, when describing components with reference to the drawings, terms such as "above" and "below" indicating the positional relationships may be used for convenience. The positional relationships of components are not limited to the content described in this specification, and can be rephrased appropriately depending on the situation.
[0254] In this specification and the like, when describing the connection relationship of a transistor, the term "one of the source or drain" (or first electrode or first terminal) is used, and the other of the source and drain is referred to as "the other of the source or drain" (or second electrode or second terminal). This is because the source and drain of a transistor vary depending on the structure or operating conditions of the transistor. Note that the names of the source and drain of a transistor can be appropriately changed to source (drain) terminal, source (drain) electrode, etc. depending on the situation.
[0255] Furthermore, the terms "electrode" and "wiring" used in this specification and elsewhere do not limit the functionality of these components. For example, an "electrode" may be used as part of a "wiring," and vice versa. Furthermore, the terms "electrode" and "wiring" also include cases where multiple "electrodes" or "wirings" are integrally formed.
[0256] Furthermore, in this specification and the like, voltage and potential can be interchanged as appropriate. Voltage refers to the potential difference from a reference potential. For example, if the reference potential is a ground voltage (earth voltage), voltage can be interchanged with potential. Ground potential does not necessarily mean 0 V. Note that potential is relative, and the potential applied to wiring, etc. may change depending on the reference potential.
[0257] In this specification and the like, a node can be referred to as a terminal, a wiring, an electrode, a conductive layer, a conductor, an impurity region, etc. depending on the circuit configuration, device structure, etc. Furthermore, a terminal, a wiring, etc. can be referred to as a node.
[0258] In this specification, "A and B are connected" means that A and B are electrically connected. Here, "A and B are electrically connected" means a connection in which an electrical signal can be transmitted between A and B when an object (such as a switch, transistor element, or diode, or a circuit including such an object and wiring) is present between A and B. Note that "A and B are electrically connected" also includes a case in which A and B are directly connected. Here, "A and B are directly connected" means a connection in which an electrical signal can be transmitted between A and B via wiring (or electrodes) or the like, without passing through the object. In other words, a direct connection means a connection that can be regarded as the same circuit diagram when represented by an equivalent circuit.
[0259] In this specification, a switch refers to a device that has the function of controlling whether a current flows by being in a conductive state (on state) or a non-conductive state (off state), or a device that has the function of selecting and switching a path for a current to flow.
[0260] In this specification, the channel length refers to, for example, in a top view of a transistor, a region where a semiconductor (or a portion in the semiconductor through which current flows when the transistor is on) and a gate overlap, or a distance between a source and a drain in a region where a channel is formed.
[0261] In this specification, the channel width refers to, for example, the length of the region where the semiconductor (or the portion in the semiconductor through which current flows when the transistor is on) and the gate electrode overlap, or the length of the portion where the source and drain face each other in the region where the channel is formed.
[0262] In this specification and the like, terms such as "film" and "layer" can be interchangeable depending on the circumstances. For example, the term "conductive layer" can be changed to the term "conductive film." Or, for example, the term "insulating film" can be changed to the term "insulating layer." [Explanation of symbols]
[0263] C11: Capacitor, C21: Capacitor, R1: Resistor, Tr11: Transistor, Tr12: Transistor, Tr21: Transistor, Tr22: Transistor, Tr23: Transistor, 10: Document retrieval system, 20: Input unit, 21: Text data, 21TB: Table data, 30: Processing unit, 40: Memory unit, 50: Database, 51: Reference document data, 52: Weight dictionary data, 52TB: Table data, 53: Synonym search data, 53TB: Table data, 53TB_re: Table data, 60: Output unit, 61: Search data, 61TB: Table data, 62: Search data, 62TB: Table data, 70: Transmission path
Claims
1. A semiconductor device, The semiconductor device stores instructions that, when executed by a processor, cause the processor to perform steps for a document retrieval system; The steps include: generating weight dictionary data and thesaurus data based on a plurality of reference document data; Generate text analysis data from the text data, extracting search words from the words included in the text analysis data; generating first search data from the search word based on the weight dictionary data and the thesaurus data; updating the thesaurus data in accordance with second search data generated by a user modifying the first search data; assigning scores to the reference document data based on the second search data, and ranking the plurality of reference document data based on the scores, thereby generating ranking data; A semiconductor device comprising:
2. In claim 1, The step further comprises: generating reference sentence analysis data from the reference document data; extracting a plurality of keywords and related words of the keywords from the words included in the reference sentence analysis data; A semiconductor device comprising:
Citation Information
Patent Citations
Document retrieving method / device using syntax information of natural language
JP1993342255A
Device and method for keyword weight generation and program storage medium
JP1999143892A
Document search device, document search method, program, and recording medium
JP2002288215A
Document retrieval device and document retrieval program
JP2008070921A
Information processing apparatus, and information processing method and program
JP2013232090A