WO2016103409A1 - 検索システム - Google Patents

検索システム Download PDF

Info

Publication number
WO2016103409A1
WO2016103409A1 PCT/JP2014/084349 JP2014084349W WO2016103409A1 WO 2016103409 A1 WO2016103409 A1 WO 2016103409A1 JP 2014084349 W JP2014084349 W JP 2014084349W WO 2016103409 A1 WO2016103409 A1 WO 2016103409A1
Authority
WO
WIPO (PCT)
Prior art keywords
query
word
document
category
database
Prior art date
Application number
PCT/JP2014/084349
Other languages
English (en)
French (fr)
Inventor
彬 童
利彦 柳瀬
真 岩山
Original Assignee
株式会社日立製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2014/084349 priority Critical patent/WO2016103409A1/ja
Publication of WO2016103409A1 publication Critical patent/WO2016103409A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Definitions

  • the present invention relates to a search system.
  • O & M refers to decisions and actions related to the control and maintenance of assets and equipment.
  • the decisions and actions are directed to scheduling, procedures, system control and system optimization. They further aim to prevent equipment failures and improve efficiency, reliability and safety.
  • O & M business is related to a wide variety of industries such as power generation, water treatment plants, and railways.
  • Maintenance inspection documentation is one of the essential elements in O & M and plays the role of a domain knowledge database for maintenance inspection actions.
  • One way to ensure the effectiveness of maintenance actions is to extract useful domain knowledge by analyzing many maintenance reports.
  • the operator can assign specific categories and values to problem titles and their resolution documents. Examples of categories are model code, trouble code, phenomenon code, countermeasure code.
  • the field operator searches for related documents using queries with categories such as model codes. Therefore, a method of finding a related document by specifying a query title and a category is a key problem in a search system for dealing with defects.
  • U.S. Patent Application Publication No. 2010/0235165 describes: "A system and method for automatically semantic labeling of natural language documents provided in electronic or digital form includes a semantic processor; The semantic processor performs basic linguistic analysis, which recognizes facts and causal relationships in the semantic relationship of text between type objects and / or classes of objects and identifies linguistically analyzed text. The target semantic relationship pattern case is matched with the target semantic relationship pattern created by generalizing, and a semantic relationship label is generated based on the linguistically analyzed text and the matching result. "(Summary ).
  • the user is not necessarily able to specify an optimal query title and category value for the information (document) desired by the user. Since the conventional method extracts information assigned with the same category value as the category value used in the query title, the user-desired category value cannot be extracted when the user-specified category value is not optimal. There is. Therefore, a system that can appropriately search for a document desired by the user from the query title and category value specified by the user is desired.
  • a typical example of the present invention is a search system for searching a document related to a query in a database, wherein the query title, a document assigned to the query title, a query category value assigned to the query title, And a document category value assigned to the document, a database, a word-category relationship graph indicating a connection relationship between a document word in the document in the database and the document category value, and the database in the database
  • An inter-category relationship graph showing a connection relationship between a document category value and the query category value, and a processor, the processor receiving a query specifying a query title and a query category value; Selecting a document from the database and the selected document Determining the score for the query, ranking the documents based on the score of the documents, and determining the score of the selected documents in the word-category relationship graph,
  • the document category value to be linked to the document word is determined, and the query of the selected document is determined based on the linkage relationship between the determined document category value and the designated query category value in
  • FIG. 2 shows a logical configuration example of a search system according to the present embodiment.
  • the example of a hardware configuration of a search system is shown.
  • a configuration example of a database is shown.
  • the flowchart of the process in which an indexing part indexes the query title, document, and category which are stored in the database is shown.
  • An example of the relationship graph between words which an indexing part produces is shown.
  • An example of the configuration of the inter-word relationship table created by the indexing unit The example of the relationship graph between word categories which an indexing part produces is shown.
  • the structural example of the relationship table between word categories produced by the indexing part is shown.
  • the structural example of the relationship table between word categories which an indexing part produces is shown.
  • the example of the inter-category relation graph which an indexing part produces is shown.
  • the structural example of the relationship table between categories which an indexing part produces is shown.
  • An outline of a search process for a query from a user by the search system is shown.
  • An example of the GUI image which a user interface presents in order for a user to input a query is shown.
  • 5 shows a flowchart of processing for calculating lexical similarity between a query input by a user and one document selected from a database.
  • 5 shows a flowchart of processing for calculating a lexical connectivity score between a query input by a user and one document selected from a database.
  • the flowchart of the process which calculates a category connectivity score is shown.
  • 5 shows a flowchart of a process for calculating a hyper lexical connectivity score between a query input by a user and one document selected from a database.
  • the process by a ranking aggregation part is shown.
  • the following shows a search system that makes it easy to rank documents in search results based on the category value specified in the query and the category value assigned to the document.
  • the search system of the present embodiment is suitable for O & M business, but can be applied to a different use.
  • the search system includes a database that stores query titles, documents, and category values.
  • the database associates the query title with the document. Further, the database includes a query category value associated with the query title and a document category value associated with the document. The document category type is different from the query category type.
  • the search system When a query including a query title and a category value is given by the user, the search system displays a document highly relevant to the given query title and category value, and the category value specified in the query and the document in the database. Select from database based on category value.
  • This search system can specify a document highly relevant to the query by using the category value given by the user. Furthermore, even if the user gives an inappropriate category value, a document highly relevant to the information desired by the user can be provided through the relationship between the query category value and the document category value in the database. .
  • FIG. 1A shows a logical configuration example of the search system 100 of the present embodiment.
  • the search system 100 is used in connection with the user interface 140.
  • the user interface 140 receives a search query including a query title and a category value from the user, and transmits it to the search system 100.
  • the search system 100 outputs a search result to the user interface 140 according to the specified query title and category value.
  • the user interface 140 includes, for example, a web browser, a desktop search application, or a smartphone search application.
  • the search system 100 includes a database 110, an indexing unit 130, a relevance score calculation unit 150, and a ranking aggregation unit 160.
  • the database 110 stores a plurality of query titles, a plurality of documents, and a plurality of categories in association with each other. Each of the plurality of query titles is associated with at least one document. Furthermore, at least one category value is assigned to each of the plurality of query titles, and at least one category value is assigned to each of the plurality of documents. Details of the database 110 will be described later with reference to FIG.
  • the indexing unit 130 processes query titles, documents, and categories stored in the database 110.
  • the indexing unit 130 creates from the database 110 a word relationship graph 300 (FIG. 4), a word category relationship graph 500 (FIG. 6), and a category relationship graph 700 (FIG. 8), which will be described later.
  • Each graph shows a connection relationship between elements.
  • the indexing unit 130 can be executed offline and maintains the efficiency of the search system 100. Alternatively, the indexing unit 130 may be executed on a regular schedule in the background of the search system 100.
  • the relevance score calculation unit 150 receives one query title and one or more category values from the user interface 140, and the inter-word relationship graph 300, the word-category relationship graph 500, and the inter-category relationship generated by the indexing unit 130.
  • a graph 700 is used to calculate a plurality of relevance scores. Based on the plurality of relevance scores, the documents in the database are ranked for the entered query.
  • the plurality of calculated relevance scores may include, for example, an element (score) indicating lexical similarity, lexical connectivity, and category connectivity.
  • One relevance score may be a single numerical value including a plurality of elements, for example, a combination of lexical connectivity and category connectivity, as will be described later, the score of the combination is a hyper-lexical connectivity. Also called a score.
  • the number of relevance scores calculated may be an arbitrary number of 1 or more, and the types of relevance scores used by the search system 100 are not limited to the above four types.
  • search results of some search engine systems are lexically similar to the query title.
  • the words in the query title specified by the user may have a lexical gap (different) to the words in the document that the user wants to find.
  • the lexical connectivity score is determined via the inter-word relationship graph 300 described later in consideration of lexical connectivity between a word group in one query title and a word group in one document. Using the lexical connectivity score can alleviate the problem of lexical gaps. In other words, the search system 100 of the present embodiment allows the user to give a query title with low accuracy that reduces search performance such as search accuracy. A method of calculating the lexical connectivity score will be described later with reference to FIG.
  • category information acts as a filter for obtaining ranked search results from documents that strictly belong to the category specified by the user.
  • the ranked search results show the relationship between the query title specified by the user and one or more category values to some extent, instead of retaining such limited constraints. Have.
  • Such a search result is obtained through a category connectivity score or a hyper-vocabulary connectivity score considering both lexical connectivity and category connectivity.
  • the category connectivity score and the hyper lexical connectivity score can be determined via a word category relationship graph 500 and a category relationship graph 700 described later.
  • the category connectivity score calculation method will be described later with reference to FIG. 14, and the hyper lexical connectivity score calculation method will be described later with reference to FIG.
  • the system 100 further includes a ranking aggregation unit 160.
  • the ranking aggregation unit 160 receives the relevance score determined by the calculation unit 150, generates a ranking list 170 of documents based on the relevance score, and presents it to the user.
  • FIG. 1B shows a hardware configuration example of the search system 100.
  • the search system 100 is composed of, for example, one or a plurality of server computers.
  • the search system 100 is configured with one server computer 200.
  • the server computer 200 includes a processor 201, a memory 202, a disk device 203, an input device 204, an output device 205, and a network interface 206.
  • the input device 204 is a device for inputting information to the server computer 200.
  • the input device 204 is, for example, a keyboard, a pointing device, a switch, a touch panel, a microphone, or the like.
  • the output device 205 is a device for the server computer 200 to output information to the user.
  • the output device 205 is, for example, a monitor display, a speaker, a printer, or the like.
  • the hardware configuration of the user interface 140 includes an input device 204 and an output device 205, for example.
  • the hardware configuration of the user interface 140 is a user terminal that communicates with the server computer 200 via the network interface 206.
  • the user terminal includes an input device and an output device.
  • the processor 201 controls the operation of the server computer 200 in accordance with programs, calculation parameters, and the like stored in the memory 202 to realize various functions described later.
  • the disk device 203 is a nonvolatile physical storage device.
  • the disk device 203 is, for example, an HDD (Hard Disk Drive), an SSD (Solid State Drive), or the like.
  • the disk device 203 stores the database 110.
  • the memory 202 stores an indexing program 207, a relevance score calculation program 208, and a ranking aggregation program 209. In addition, the memory 202 stores a program (not shown) necessary for operation in the system including the OS. Data (including programs) stored in the memory 202 is loaded into the memory 202 from the disk device 203 or an external server.
  • the processor 201 executes a program stored in the memory 202 to perform a predetermined process using a storage resource and / or a communication interface as appropriate.
  • the processor 201 operates as the indexing unit 130, the relevance score calculation unit 150, and the ranking aggregation unit 160 by operating according to the indexing program 207, the relevance score calculation program 208, and the ranking aggregation program 209. To do.
  • each functional unit is realized by the processor 201 that operates according to the program stored in the memory 202, the processing subject is the processor 201 or the program. May be.
  • FIG. 2 shows a configuration example of the database 110.
  • the database 110 stores a plurality of query titles, a plurality of documents, and a plurality of categories in association with each other.
  • the database 110 includes a title column 111, a query category column 112, a document column 113, and a document category column 114.
  • the title column 111 stores the query title.
  • the query category column 112 stores the category value assigned to the query title.
  • the document column 113 stores a document associated with the query title.
  • the document category column 114 stores category values assigned to documents.
  • Each query title is associated with one or more documents. Furthermore, one or more category values are assigned to each of the plurality of query titles, and one or more category values are assigned to each of the plurality of documents.
  • category types are divided into two groups.
  • One group of category types is a category type assigned to a query title set in the database 110.
  • Another group of category types is a category type assigned to a document set in the database 110. In this system, the category type assigned to the query title and the category type assigned to the document are different.
  • An example of a query title in the maintenance inspection act shows a problem summary created by the operator at the site.
  • An example of a document is a record of problem solving. Therefore, as shown in FIG. 2, examples of category types for the query title set are trouble codes and model codes, and examples of category types for the document set are phenomenon codes and countermeasure codes.
  • the query title “Oil leak” is associated with two documents “Document1” and “Document2”.
  • Two title category values “mc_1” and “tc_2” are assigned to the query title “Oil leak”.
  • Two document category values “pc_4” and “cc_2” are assigned to the document “Document1” associated with the query title “Oil leak”.
  • Categorical value represents the value of category type.
  • the value of the trouble code is “leak”, “crack”, or the like.
  • the category type and the category value are defined in advance in the database 110.
  • the semantic meaning between the query title and the document in the database 110 may be extracted by a learning algorithm.
  • FIG. 3 shows a flowchart of processing in which the indexing unit 130 indexes query titles, documents, and categories stored in the database 110.
  • the indexing unit 130 executes the process independently of the query input from the user.
  • the indexing unit 130 creates an inter-word relationship graph 300 that shows a relationship between a word in the query title (query word) and a word in the document (document word) in the database 110.
  • the indexing unit 130 creates a relationship graph 500 between word categories. Specifically, the indexing unit 130 creates a word category relationship graph 501 showing the relationship between the words in the query title in the database 110 and the query category assigned to the query title. The indexing unit 130 also creates a word category relationship graph 502 that indicates the relationship between the words in the document in the database 110 and the document category assigned to the document.
  • step 103 the indexing unit 130 creates an inter-category relationship graph 700 showing the relationship between the query titles associated with each other, the query category assigned to the document, and the document category.
  • the indexing unit 130 updates the inter-word relationship graph 300, the word category relationship graph 500, and the inter-category relationship graph 700 according to the update of the database 110. For example, when a prescribed number of records in the database 110 are updated, the indexing unit 130 updates the graphs 300, 500, and 700.
  • FIG. 4 shows an example of the inter-word relationship graph 300 created by the indexing unit 130.
  • FIG. 5 shows a configuration example of the inter-word relationship table 400 created by the indexing unit 130.
  • the indexing unit 130 creates the word relationship table 400 and stores it in the memory 202 or the disk device 203.
  • the word set 310 includes a plurality of words q (for example, a node 340) existing in the query title set.
  • the word q is called a Q word.
  • the word set 320 includes a plurality of words r1 (for example, a node 350).
  • the word r1 is a word that co-occurs with any Q word in one sentence of the document.
  • the word r1 is called R1 word.
  • a word included in both the document and the query title is included in the R1 word.
  • the word set 330 includes a plurality of words r2 (for example, a node 360).
  • the word r2 is a word that co-occurs with any one of the words r1 in one sentence of the document, excluding the Q word.
  • the word r2 is called R2 word.
  • two co-occurring words are in the same sentence.
  • co-occurring pairs of the word q and the word r1 are connected by an edge (for example, an edge 370).
  • Co-occurring pairs of word r1 and word r2 are connected by an edge (for example, edge 380).
  • the query title is “What about ⁇ Tokyo? ”
  • a document containing two sentences is“ Tokyo is in Japan. It is the biggest city in Japan.
  • “What”, “about”, and “Tokyo” are Q words.
  • the word “Japan” co-occurs with the Q word “Tokyo” in the first sentence of the document. Therefore, the word “Japan” is the R1 word.
  • the word “Tokyo” is the R1 word in the document.
  • the two words “biggest” and “city” are not Q words, but co-occur with the R1 word “Japan” in the second sentence of the document.
  • the two words “biggest” and “city” are R2 words.
  • the inter-word relationship graph is not limited to a configuration having word nodes in three layers including a Q word layer, an R1 word layer, and an R2 word layer.
  • the inter-word relationship graph may have two layers, and can be easily expanded to more than three layers.
  • the R3 word can be defined as a word that co-occurs with the R2 word in the same sentence, not the Q word and the R1 word.
  • the indexing unit 130 may store only the index words in the inter-word relationship table 400, excluding the predefined words. The same applies to the processing of other tables and the relevance score calculation unit 150. For example, particles and articles are excluded from index words.
  • an edge exists in the inter-word relationship graph 300 between the word node “Tokyo” belonging to the Q word set and the word nodes “Japan” and “Tokyo” belonging to the R1 word set.
  • an edge exists in the inter-word relationship graph between the word node “biggest” belonging to the R2 word set and the word node “Japan” belonging to the R1 word set.
  • FIG. 5 shows a configuration example of the inter-word relationship table 400 created by the indexing unit 130.
  • the inter-word relationship graph 300 is created and held as an inter-word relationship table 400.
  • the inter-word relationship table 400 shows the relationship between the query title set in the database 110 and the word pairs in the document set.
  • the inter-word relationship table 400 includes word columns 401 and 402, a distance column 403, and a frequency column 404.
  • the word columns 401 and 402 indicate word pairs that co-occur in the database 110.
  • One document is composed of one or more sentences.
  • each document word is represented using q, r1, or r2.
  • Words represented using q are words in the query title set, and other words are words in the document set.
  • the distance column 403 indicates the lexical distance between two document words.
  • An example of lexical distance is the minimum dependent distance between two words.
  • the dependence distance is a path distance between two words (nodes) in the dependence tree.
  • the minimum dependency distance is the minimum dependency distance in the entire dependency tree including two words that co-occur in the database 110.
  • the lexical distance between two words may be determined from a widely used corpus.
  • the frequency column 404 indicates the frequency of word pairs.
  • the frequency indicates how often the word pair appears in the database 110.
  • the frequency column 404 indicates the intra-sentence co-occurrence frequency of the word pair.
  • the intra-sentence co-occurrence frequency can be defined as a value obtained by dividing the number of center sentences in which a word pair exists in the document set of the database 110 by the total number of sentences in the database 110.
  • inter-word relationship table 400 is not limited to the information described with reference to FIG.
  • the inter-word relationship table 400 may include other information of two words, and can be easily expanded via the inter-word relationship graph 300.
  • FIG. 6 shows an example of the inter-word category relationship graph 500 created by the indexing unit 130.
  • the word category relationship graph 500 includes two graphs 501 and 502.
  • a graph 501 shows the relationship between the query word of the query title set and the query category value in the database 110.
  • a graph 502 shows the relationship between document words in the document set and document category values in the database 110.
  • the graph 501 includes a plurality of pairs connected by edges, and each pair includes a word q (for example, a node 503) existing in one query title and a query category value (for example, a node assigned to the query title). Node 504). Connections in each pair are indicated by edges.
  • One query category value can be paired with a plurality of query words, and one query word can be paired with a plurality of query category values.
  • the graph 502 is composed of a plurality of pairs connected by edges. Each pair includes a word r1 (for example, node 506) or a word r2 (for example, node 507) existing in one document and a query category value (for example, node 508) assigned to the document. Connections in each pair are indicated by edges.
  • One document category value can form a pair with a plurality of document words, and one document word can form a pair with a plurality of document category values.
  • FIG. 7A and 7B show a configuration example of the relationship table between word categories created by the indexing unit 130.
  • FIG. The word category relationship graph 500 is created and held as a word relationship table. Specifically, the word category relationship graph 501 of the query title set is created as a word relationship table (query) 600, and the word category relationship graph 502 of the document set is created as a word relationship table (document) 605. Is done.
  • FIG. 7A shows a configuration example of a word category relationship table (query) 600 in the query title set in the database 110.
  • FIG. 7B shows a configuration example of the inter-word category relationship table (document) 605 in the document set in the database 110.
  • Each record indicates information of a pair of a query word and a query category value.
  • Each pair is composed of a query word included in one query title and a query category value assigned to the query title.
  • One query word can be paired with each of a plurality of query category values, and one query category value can be paired with each of a plurality of query words.
  • the word category relationship table (query) 600 includes a query word column 601, a query category value column 602, a frequency column 603, and a mutual frequency column 604.
  • the query word column 601 indicates the words of the query title set in the database 110.
  • the query category value column 602 indicates a category value assigned to each query title in the database 110. As described above, the query category value of the same record as the query word is assigned to the query title including the query word.
  • the frequency column 603 indicates the frequency at which the query category value appears in the database 110.
  • the frequency column 603 can be defined by the ratio of the number of query titles to which a query category value is assigned to the total number of titles in the query title set.
  • the mutual frequency column 604 indicates the frequency (mutual frequency) in which a pair of a query word and a query category value appears in the database 110. For example, it can be defined by the ratio of the number of appearances of the pair (number of corresponding titles) in the query title set to the total number of appearances of all pairs. Alternatively, the mutual frequency of one pair of query word and query category value can be defined by the ratio of the number of query titles corresponding to the pair to the total number of titles in the query title set.
  • FIG. 7B shows a relationship between a document word (word in the document set) in the database 110 and a document category value.
  • Each record indicates information on a pair of a document word and a document category value.
  • Each pair includes a document word included in one document and a document category value assigned to the document.
  • One document word can form a pair with each of a plurality of document category values, and one document category value can form a pair with each of a plurality of document words.
  • the word category relationship table (document) 605 has a document word column 606, a document category value column 607, a frequency column 608, and a mutual frequency column 609.
  • the document word column 606 shows the words of the document set in the database 110.
  • a document category value column 607 indicates the category value assigned to each document in the database 110. The document category value of the same record as the document word is assigned to the document including the document word.
  • the frequency column 608 indicates the frequency at which the document category value appears in the database 110.
  • the frequency column 608 can be defined by the ratio of the number of documents to which document category values are assigned to the total number of documents in the document set.
  • the mutual frequency column 609 indicates the frequency (mutual frequency) at which a pair of document word and document category value appears in the database 110.
  • it can be defined by the ratio of the number of appearances of the pair in the document set (number of corresponding documents) to the total number of appearances of all pairs.
  • the mutual frequency of one pair of document word and document category value can be defined by the ratio of the total number of documents in the document set to the number of documents corresponding to the pair.
  • the word category relationship tables 600 and 605 may store information different from the above information.
  • FIG. 8 shows an example of the inter-category relation graph 700 created by the indexing unit 130.
  • the inter-category relationship graph 700 shows the relationship between the multiple query category values and the multiple document category values in the database 110.
  • the inter-category relationship graph 700 shows a set of query category values 701 including query category values (for example, node 703) and a set of query category values 702 including document category values (for example, node 704).
  • the connection between the query category value and the document category value constituting the pair is represented by an edge (for example, edge 705).
  • the associated query title, document query category value, and document category value are linked to form a pair.
  • FIG. 9 shows a configuration example of the inter-category relationship table 800 created by the indexing unit 130.
  • the inter-category relationship graph 700 is created and held as an inter-category relationship table 800.
  • the inter-category relationship table 800 shows a relationship between the document category value assigned to the document set in the database 110 and the query category value assigned to the query title set.
  • Each record indicates information on a pair of a query category value and a document category value.
  • Each pair consists of a category value of a document and a query title associated with each other.
  • One document category value can form a pair with each of a plurality of query category values, and one query category value can form a pair with each of a plurality of document category values.
  • the inter-category relationship table 800 includes a query category value column 801, a document category value column 802, a frequency column 803, and a mutual frequency column 804.
  • a query category value column 801 indicates query category values assigned to query titles in the database 110.
  • a document category value column 802 indicates query category values assigned to documents in the database 110.
  • the frequency column 803 indicates the frequency at which the document category value appears in the database 110.
  • the frequency column 803 can be defined by the ratio of the total number of documents in the database 110 to the number of documents to which document category values are assigned.
  • the mutual frequency column 804 indicates the frequency at which a pair of a query category value and a document category value appears in the database 110.
  • the mutual frequency column 804 can be defined by the ratio of the total number of documents in the database 110 to the number of documents corresponding to document word / document category value pairs.
  • FIG. 10 shows an overview of search processing for a query from a user by the search system 100.
  • the relevance score calculation unit 150 acquires a query title and a category value from the user interface 140 (S101).
  • the relevance score calculation unit 150 calculates three relevance scores in consideration of the elements of lexical similarity, lexical connectivity, and category connectivity from the query title and category value specified by the user ( S110).
  • the relevance score calculation unit 150 calculates the lexical similarity score of each document in the database 110 based on the query title specified by the user and the analysis result of the data stored in the database 110. Calculate (S111).
  • the relevance score calculation unit 150 calculates the lexical connectivity score of each document in the database 110 based on the query title specified by the user and the inter-word relationship graph 300 (inter-word relationship table 400) ( S112).
  • the relevance score calculation unit 150 includes a query title and category value designated by the user, a word relationship graph 300 (word relationship table 400), a word category relationship graph 500 (word category relationship table 600, 605), and a category connectivity score of each document in the database 110 is calculated based on the inter-category relationship graph 700 (inter-category relationship table 800) (S113).
  • the ranking aggregation unit 160 acquires the lexical similarity score, lexical connectivity score, and category connectivity score of each document word from the relevance score calculation unit 150, and creates a ranking list (S106). The ranking aggregation unit 160 determines the rank of each document from the relevance score of each document, and creates a list of documents indicating search results according to the determined rank.
  • the relevance score calculation unit 150 calculates three relevance scores in consideration of elements of lexical similarity, lexical connectivity, and category connectivity. By calculating different types of scores for each document and ranking the documents against the query according to those scores, you can search for the documents you want more appropriately, not limited to the query words and category values specified in the query can do. Note that the relevance score calculation unit 150 may use only a part of the three scores. For example, a lexical similarity score or lexical connectivity score may not be used.
  • the score calculated by the relevance score calculation unit 150 is not limited to the above three scores. Other scores obtained from the inter-word relationship graph 300, the word-category relationship graph 500, and the inter-category relationship graph 700 may be calculated by the relevance score calculation unit 150.
  • FIG. 11 shows an example of a GUI image 180 presented by the user interface 140 in order for the user to input a query.
  • the GUI image 180 includes a text field 181 for inputting a query title. The user enters the query title in field 181 by text.
  • the GUI image 180 further includes fields 182 and 183 for inputting a query category value.
  • a field 182 is a field for inputting a model code
  • a field 183 is a field for inputting a trouble code.
  • the user interface 140 allows the user to select a model code and a trouble code from a pull-down list.
  • the GUI image 180 further includes fields 184 and 185 for inputting document category values.
  • a field 184 is a field for inputting a countermeasure code
  • a field 185 is a field for inputting a phenomenon code.
  • the user interface 140 allows the user to select a countermeasure code and a phenomenon code from a pull-down list.
  • FIGS. 12 to 14 show flowcharts of processing for calculating a lexical similarity score, a lexical connectivity score, and a category connectivity score, respectively.
  • FIG. 12 shows a flowchart of processing (S111) for calculating lexical similarity between a query input by the user and one document selected from the database 110.
  • the relevance score calculation unit 150 sequentially selects documents in the database 110 and calculates a lexical similarity score for each document.
  • the lexical similarity score is calculated by a widely known technique, and an example will be described here.
  • the relevance score calculation unit 150 analyzes the document set and query title in the database 110, and removes unnecessary words (non-characteristic words) to determine an index word (S151).
  • the relevance score calculation unit 150 receives a query from the user interface 140 (S152).
  • the relevance score calculation unit 150 creates a numerical vector using the index word from the query title in the received query (S153).
  • Each element of the numerical vector is calculated from, for example, the number of occurrences of the index word in the query title and the number of documents and query titles in which the search word appears in the database 110. Each element may be 1 or 0 indicating the presence or absence of an index word.
  • the relevance score calculation unit 150 selects one document from the database 110, and creates a numerical vector using the index word from the selected document (S154). Each element of the numerical vector is calculated from, for example, the number of occurrences of the index word in the document and the number of documents and query titles in which the search word appears in the database 110.
  • the relevance score calculation unit 150 calculates the similarity between the numerical value vector of the query title and the numerical value vector of the document (S155).
  • An example of similarity calculation uses cosine similarity.
  • FIG. 13 shows a flowchart of processing (S112) for calculating a lexical connectivity score between a query input by the user and one document selected from the database 110.
  • the relevance score calculation unit 150 sequentially selects documents from the database 110 and calculates a lexical connectivity score for each document.
  • the relevance score calculation unit 150 receives a query from the user interface 140 (S152). The relevance score calculation unit 150 selects the R1 word and the R2 word for the Q word of the received query title from the selected document (S202). Hereinafter, the R1 word and the R2 word are collectively referred to as the R word.
  • the relevance score calculation unit 150 creates a plurality of R word pairs from the selected R words (S203). Each pair is composed of two R1 words, two R2 words, or an R1 word and an R2 word.
  • the relevance score calculation unit 150 calculates the lexical connectivity score of each pair using the inter-word relationship graph 300 (S204). The calculation method will be described later. Next, the relevance score calculation unit 150 adds up the calculated lexical connectivity score of the pair, and determines the lexical connectivity score of the document (S205).
  • a lexical connectivity score S_p (w1, w2) of a pair consisting of two arbitrary words w1, w2 is expressed by Equation 1.
  • S_r (w) is the lexical connectivity score of word w.
  • the lexical connectivity score S_r (r1) of one R1 word is calculated by Equation 2.
  • lexical connectivity score S_r (r1) of one R2 word is calculated by Equation 3.
  • Equation 1 the sum is the sum of Q words in the query title specified by the user.
  • Equation 2 the sum is the product sum of the R1 word in the document for the query title specified by the user.
  • S_b (w) is a base score of the word w, which can be calculated from the word frequency or the reverse document frequency of the word w in the database 110 or another corpus, and is calculated in advance.
  • Freq (w1, w2) is the mutual frequency of the word pair (w1, w2)
  • dist (w1, w2) is the lexical distance (minimum dependency distance) of the word pair (w1, w2).
  • the relevance score calculation unit 150 can determine the values of freq (w1, w2) and dist (w1, w2) from the inter-word relationship graph 300 (inter-word relationship table 400).
  • the relevance score calculation unit 150 obtains freq and dist of each word from the inter-word relationship graph 300 (inter-word relationship table 400) in the calculation of the lexical connectivity score S_p of each word pair.
  • the relevance score calculation unit 150 calculates the lexical connectivity score S_r of each word from the acquired information, adds them, and calculates the lexical connectivity score S_p of the word pair.
  • the first method calculates a score considering only the category relationship. This score is called a category connectivity score.
  • the second method calculates in consideration of both category connectivity and lexical connectivity. It is called the hyper lexical connectivity score.
  • the first method (S113) for calculating the category connectivity score will be described.
  • FIG. 14 shows a flowchart of the process (S113) for calculating the category connectivity score.
  • the relevance score calculation unit 150 sequentially selects documents from the database 110 and calculates a category connectivity score for each document.
  • the relevance score calculation unit 150 receives a query from the user interface 140 (S152). The relevance score calculation unit 150 selects the R1 word and the R2 word for the Q word of the received query title from the selected document (S252).
  • the relevance score calculation unit 150 uses the inter-word relationship graph 300, the word-category relationship graph 500, and the inter-category relationship graph 700 to calculate a category connectivity score for each of the selected R1 word and R2 word. Calculate (S253). A method for calculating the category connectivity score of each word will be described later. Next, the relevance score calculation unit 150 totals the calculated category connectivity scores and determines the category connectivity score of the document (S254).
  • the relevance score calculation unit 150 calculates the category connectivity score srel (r1, C_M, Q_r1, C_M) of the R1 word r1 according to Equation 4.
  • C_M represents a query category value set designated by the user in the query.
  • Q_r 1 and C_M indicate a Q word set including k Q words in the database 110. k is a specified number.
  • the Q word set has the highest mutual frequency between the R1 word r1 and the R1 word r1 among the Q category having an edge and any one of the query category values C_M specified by the user in the query. Q words.
  • the relevance score calculation unit 150 can determine the Q word sets Q_r1, C_M from the inter-word relationship graph 300 (inter-word relationship table 400) and the inter-word category relationship graph 501 (the inter-word category relationship table 600).
  • the R1 word category connectivity score calculation formula (Formula 4) includes two terms.
  • the first term rel (r1, C_M, Q_r1, C_M) indicates the association between the R1 word r1 and its corresponding Q word set Q_r1, C_M.
  • the second term crel (r1, Q_r1, C_M) indicates the association between the category values relating to the word r1 and the Q word set Q_r1, C_M.
  • Equation 5 the first term rel (r1, C_M, Q_r1, C_M) is calculated by Equation 5.
  • C_i is a query category value in the database 110
  • C_MN is a query category value set.
  • C ⁇ (q_k) _ (C_MN) is a set of query categories where C ⁇ (q_k) _ (C_MN) belongs to C_MN and has Q word q_k and an edge. ⁇ is a positive number of 1 or less, for example, greater than 0.5 and 1 or less.
  • q_k is a Q word in the Q word set Q_r1, C_M.
  • freq (c_i) indicates the frequency of the query category value c_i
  • freq (c_i, q_k) indicates the mutual frequency of the query category value c_i and the Q word q_k.
  • the relevance score calculation unit 150 can determine freq (c_i) and freq (c_i, q_k) from the inter-word relationship graph 300 (inter-word relationship table 400).
  • the first term rel (r1, C_M, Q_r1, C_M) calculates the relevance between one R1 word r1 and the user-specified query category value set C_M via the Q word set Q_r1, C_M.
  • the term takes into account the relationship (mutual frequency) between the query category values not belonging to the query category value set C_M specified in the query, that is, the query category values not specified in the query, and the Q word q_k. ing. Further, the Q word set Q_r1, C_M may include Q words that are not specified in the query. In this way, the term is not limited to the query word and query category value specified directly in the query, and the relevance of the document to the query can be calculated in consideration of the query word and query category value not specified. .
  • crel (r1, Q_r1, C_M) is calculated by, for example, Equation 6.
  • the calculation formula (formula 6) of crel (r1, Q_r1, C_M) includes two terms.
  • the first term rel (C ⁇ r1_J, C ⁇ q_M) is calculated by Equation 7.
  • Equation 9 The coefficients and terms in Equations 6 to 8 are defined as Equation 9 respectively.
  • C ⁇ r1_J is a document category value set having an edge in the relationship graph 500 between the R1 word r1 and the word category in the document category value set specified by the user in the query.
  • C ⁇ q_M is a query category value set having edges in the Q word q of the Q word sets Q_r1 and C_M and the word category relationship graph 500 in the query category value set specified by the user in the query.
  • C_JK is a document category value set.
  • C ⁇ r1_JK is a document category value set having an R1 word r1 and an edge in the document category value set in the database 110.
  • C ⁇ (-r1) _JK is a set of document category values having no r1 word and no edge.
  • C ⁇ q_MN is a query category value set having Q words q and edges of the Q word sets Q_r1 and C_M in the query category value set in the database 110.
  • C ⁇ (-q) _MN is a query category value set that does not have an edge with the word q in the query category value set in the database 110.
  • the relevance score calculation unit 150 can identify a document category value set having an edge with the R1 word r1 by referring to the word category relationship graph 502 (word category relationship table 605). Furthermore, the relevance score calculation unit 150 can identify a query category value set having an edge with a Q word q from the word category relationship graph 501 (word category relationship table 600).
  • Freq (c_i) indicates the frequency of the document category value c_i.
  • freq (c_i, c_j) indicates the mutual frequency between the document category value c_i and the query category value c_j.
  • the relevance score calculation unit 150 can determine the document category value frequency freq (c_i) and the mutual frequency freq (c_i, c_j) from the inter-category relationship graph 700 (inter-category relationship table 800).
  • crel (r1, Q_r1, C_M) of the category connectivity score srel of the R1 word r1 is between the query category value and the document category value related to the R1 word r1 and the Q word set Q_r1, C_M. Calculate connectivity.
  • crel (r1, Q_r1, C_M) includes two terms.
  • the first term ⁇ rel (C ⁇ r1_J, C ⁇ q_M) calculated using Expression 7 indicates connectivity between the category values connected to C ⁇ r1_J and C ⁇ q_M.
  • the term is linked to the document category value concatenated with the R1 word r1 in the document category value designated by the user in the query and the Q word sets Q_r1 and C_M in the query category value designated to the user in the query.
  • the second term (1- ⁇ ) rel (C ⁇ (-r1) _JK, C ⁇ (-q) _MN) calculated using Equation 8 is not connected to C ⁇ r1_J and C ⁇ q_M. It is a balance term indicating the relationship between category value groups. Specifically, in the document category value not specified in the query, the document category value concatenated with the R1 word r1, in the query category value not specified in the query, the query category value concatenated with the Q word sets Q_r1, C_M, Show the relationship between.
  • the category value specified by the user In addition to the category value specified by the user, it is limited to the query category value specified directly in the query by considering the linkage relationship between the category value not specified by the user and linked with the document word or query word. First, the relevance of the document to the query can be calculated in consideration of the unspecified query category value.
  • the relevance score calculation unit 150 calculates the category connectivity score srel (r2, R ⁇ 1_r2, C_M, Q_r2, C_M) of the R2 word r2 according to Equation 10.
  • the R1 word set R ⁇ 1_r2 indicates k R1 words having the highest mutual frequency with the R2 word r2 among the R1 words selected from the database 110 for the query.
  • the relevance score calculation unit 150 can determine the mutual frequency of the R1 word and the R2 word from the inter-word relationship graph 300 (inter-word relationship table 400).
  • Q word set Q_r2 is a Q word in database 110 having an edge with R2 word r2, query category value set C_M, and indicates k Q words having the highest connectivity with R2 word r2.
  • the R2 word r2 is not directly connected to the Q word in the inter-word relationship graph 300. Therefore, the connectivity between the R2 word r2 and the Q word is indicated via the R1 word.
  • the connectivity between the R2 word r2 and the Q word uses the mutual frequency of the R1 word and the R2 word (freq (r1, r2)) and the mutual frequency of the R1 word and the Q word (freq (r1, q)). Can be calculated. As an example, it is represented by the product of freq (r1, r2) and freq (r1, q).
  • the mutual frequency information is stored in the inter-word relationship graph 300 (inter-word relationship table 400).
  • the arithmetic expression (Formula 10) of the category connectivity score of the R2 word r2 includes two terms.
  • the first term rel (R ⁇ 1_r2, C_M, Q_r2, C_M) calculates the association between the R2 word r2 and its corresponding Q word set Q_r1, C_M via the R1 word set.
  • the second term crel (r2, Q_r2, C_M) indicates the association between the category values related to the R2 word r2 and the Q word set Q_r2, C_M.
  • Equation 11 the first term rel (R ⁇ 1_r2, C_M, Q_r2, C_M) is calculated by Equation 11.
  • Rel (r1, C_M, Q_r2, C_M) is calculated according to Equation 5.
  • the relevance score calculation unit 150 performs the calculation of Expression 5 for the Q word sets Q_r2 and C_M.
  • the term indicates the relationship between the R2 word R2, the R1 word set R ⁇ 1_r2, and the Q word set Q_r2, C_M.
  • the term calculates the association between the R2 word r2 and the query category value set C_M specified by the user in the query via the R1 word set R ⁇ 1_r2 and the Q word sets Q_r2, C_M. it can.
  • crel (r2, Q_r2, C_M) is calculated by, for example, Expression 12.
  • the calculation formula (formula 12) of crel (r2, Q_r2, C_M) includes two terms.
  • the first term rel (C ⁇ r2_J, C ⁇ q_M) is calculated by Equation 13.
  • Equation 9 The coefficients and terms in Equations 12 to 14 are defined as Equation 9 respectively.
  • C ⁇ r2_J is a document category value set having an edge in the relationship graph 500 between the R2 word r2 and the word category in the document category value set specified by the user in the query.
  • C ⁇ q_M is a query category value set having edges in the Q word q of the Q word sets Q_r2 and C_M and the word category relationship graph 500 in the query category value set specified by the user in the query.
  • C ⁇ r2_JK is a document category value set having an R2 word r2 and an edge in the document category value set in the database 110.
  • C ⁇ q_MN is a query category value set having Q words q and edges of Q word sets Q_r2 and C_M in the query category value set in the database 110.
  • the relevance score calculation unit 150 can identify a document category value set having an edge with the R2 word r2 by referring to the word category relationship graph 502 (word category relationship table 605). Furthermore, the relevance score calculation unit 150 can identify a query category value set having an edge with a Q word q from the word category relationship graph 501 (word category relationship table 600).
  • the method of calculating the frequency of the category value and the mutual frequency of the category value can be determined from the inter-category relationship graph 700 (inter-category relationship table 800), similarly to the calculation of the category relevance score of the R1 word r1.
  • crel (r2, Q_r2, C_M) of the category connectivity score srel of the R2 word r2 is between the query category value and the document category value related to the R2 word r2 and the Q word set Q_r2, C_M. Calculate connectivity.
  • crel (r2, Q_r2, C_M) includes two terms.
  • the first term ⁇ rel (C ⁇ r2_J, C ⁇ q_M) calculated using Expression 13 indicates connectivity between category values connected to C ⁇ r2_J and C ⁇ q_M. Specifically, the term is linked to the document category value concatenated with the R2 word r2 in the document category value designated by the user in the query and the Q word set Q_r2, C_M in the query category value designated to the user in the query. The connectivity between the query category value to be displayed.
  • the second term (1- ⁇ ) rel (C ⁇ (-r2) _JK, C ⁇ (-q) _MN) calculated using Equation 14 is not connected to C ⁇ r2_J and C ⁇ q_M. It is a balance term indicating the relationship between category value groups. Specifically, a document category value concatenated with the R2 word r2 in the document category value not specified in the query, a query category value concatenated with the Q word set Q_r2, C_M in the query category value not specified in the query, Show the relationship between.
  • the relevance score calculation unit 150 may give different weights to the category connectivity scores of the R1 word and the R2 word in the calculation of the category connectivity score of the document.
  • the category connectivity score for the R2 word may be omitted.
  • the document category value in the query may be omitted.
  • the relevance score calculation unit 150 may calculate the category connectivity score of the R word according to an expression different from the above expression. For example, in Equation 6, freq (C_M, C ⁇ ( ⁇ r1) _JK) or freq (C ⁇ q_M, C ⁇ ( ⁇ r1) _JK) may be used in addition to or in place of other terms. That is, the connectivity between the query category value specified by the query and the document category value not specified by the query linked to the R1 word r1 may be incorporated into the score. In Equation 12, a similar term may be used for the R2 word.
  • Freq (C_M, C ⁇ (-r1) _JK) indicates the connectivity between the query category value specified by the query and the document category value not specified by the query.
  • freq (C ⁇ q_M, C ⁇ ( ⁇ r1) _JK) is a query category value set specified by the user in the query, a query category value having an edge with Q word set Q_r1, C_M, and a document not specified in the query Indicates connectivity with category values.
  • FIG. 15 shows a flowchart of processing for calculating a hyper lexical connectivity score between a query input by the user and one document selected from the database 110.
  • the relevance score calculation unit 150 calculates a hyper lexical connectivity score for each document in the database 110.
  • the relevance score calculation unit 150 calculates a hyper lexical connectivity score in addition to the above three scores.
  • the calculation unit 150 calculates a hyper lexical connectivity score instead of the lexical connectivity score and / or the category connectivity score.
  • the relevance score calculation unit 150 receives a query from the user interface 140 (S152). The relevance score calculation unit 150 selects the R1 word and the R2 word for the Q word of the received query title from the selected document (S302).
  • the relevance score calculation unit 150 creates a plurality of R word pairs from the selected R words (S303). Each pair is composed of two R1 words, two R2 words, or an R1 word and an R2 word.
  • the relevance score calculation unit 150 calculates the hyper lexical connectivity score of each pair from the inter-word relationship graph 300 (inter-word relationship table 400), the inter-word category relationship graph 500 (the inter-word category relationship tables 600, 605). ) And the inter-category relationship graph 700 (inter-category relationship table 800) (S304). The calculation method will be described later. Next, the relevance score calculation unit 150 totals the calculated lexical connectivity scores of the pairs, and determines a hyper lexical connectivity score of the document (S305).
  • the relevance score calculation unit 150 calculates a hyper lexical connectivity score p (r1, C_M, C_J) of the R1 word r1 according to Equation 16, and a hyper lexical connectivity score (r2, C_M, C_J) of the R2 word r2. Is calculated according to Equation 17.
  • Formula 16 calculates the sum of the Q words of the query title specified in the query
  • Formula 17 calculates the sum of the R1 words for the query title specified in the query.
  • the hyper lexical connectivity score includes a product of the lexical connectivity and category connectivity (exponential function value) of the R word, and a score that considers both of these factors. Can show. Different weights may be given to the hyper-lexical connectivity scores of the R1 word and the R2 word. In the hyper lexical connectivity score, the document category value and the query category value in the query may be omitted.
  • FIG. 16 shows processing by the ranking aggregation unit 160.
  • the ranking aggregation unit 160 acquires the lexical similarity score 651, the lexical connectivity score 652, and the category connectivity score 653 of the document from the relevance score calculation unit 150.
  • the ranking aggregation unit 160 creates an order list 654 of these documents from the lexical similarity score 651 of the documents.
  • the ranking aggregation unit 160 creates an order list 655 of these documents from the lexical connectivity score 652 of the documents.
  • the ranking aggregation unit 160 creates an order list 656 of the documents from the category connectivity score 653 of the documents.
  • the order lists 654 to 656 show documents in descending or ascending order of the score, respectively.
  • the ranking aggregation unit 160 aggregates the three order lists 654 to 656 to create one ranking list 170.
  • the user interface 140 displays a ranking list 170.
  • the ranking aggregation unit 160 determines the final score of the document based on the product sum of the order of the order lists 654 to 656 of one document and a predetermined weighting factor. Thereby, the difference in the scale of each score can be absorbed.
  • the ranking aggregation unit 160 may calculate one score by aggregating three scores. For example, the ranking and aggregating unit 160 simply adds three scores, or adds each score with a prescribed weight.
  • the present invention is not limited to the above-described embodiments, and includes various modifications.
  • the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described.
  • a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment.
  • each of the above-described configurations, functions, processing units, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit.
  • Each of the above-described configurations, functions, and the like may be realized by software by interpreting and executing a program that realizes each function by the processor.
  • Information such as programs, tables, and files for realizing each function can be stored in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), or a recording medium such as an IC card or an SD card.
  • control lines and information lines indicate what is considered necessary for the explanation, and not all control lines and information lines on the product are necessarily shown. In practice, it may be considered that almost all the components are connected to each other.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

 検索システムは、データベースにおける文書内の文書単語と前記文書カテゴリ値との連結関係を示す、単語カテゴリ間関係グラフと、データベースにおける文書カテゴリ値とクエリカテゴリ値との間の連結関係を示す、カテゴリ間関係グラフと、を含む。検索システムは、単語カテゴリ間関係グラフにおいて、選択された文書内の文書単語に連結する文書カテゴリ値を決定し、カテゴリ間関係グラフにおける前記決定された文書カテゴリ値と前記指定されたクエリカテゴリ値との連結関係に基づいて、前記選択された文書のクエリに対するスコアを決定する。

Description

検索システム
 本発明は、検索システムに関する。
 多くの分野において文書検索システムが利用されている。例えば、運用及び保守点検(O&M)ビジネスにおいて、保守点検のための検索システムが利用されている。O&Mは、資産や設備の制御及び維持に関する決定並びに行為を意味する。その決定及び行為は、スケジューリング、手順、システム制御及びシステム最適化に向けられる。それらは、さらに、設備の故障を防ぎ、効率化、信頼性及び安全性を向上することを目的とする。
 O&Mビジネスは、発電、水処理プラント、鉄道等、広く様々な産業に関連している。保守点検の文書化は、O&Mにおける必須要素の一つであり、保守点検行為のためのドメイン知識データベースの役割を担う。保守点検行為の効果をより確実なものにする方法の一つは、多くの保守点検レポートを解析することによって有益なドメイン知識を抽出することである。
 保守点検行為において強く求められていることは、現場の運用者が手元の問題についての情報を検索システムに入力した場合に、同様の問題及びその解決方法にすぐにアクセスできることである。そうすることで、保守点検の実効性を上げることができる。
 保守点検記録において、運用者は、特定のカテゴリと値とを問題タイトルやその解決文書に割り当てることができる。カテゴリの例は、モデルコード、トラブルコード、現象コード、対抗策コードである。現場の運用者は、モデルコードのようなカテゴリを伴うクエリを使用して、関連文書を検索する。したがって、クエリタイトルとカテゴリを指定することによって関連文書を見つけ出す方法は、不具合対応のための検索システムにおいてキーとなる問題である。
 たとえば、米国特許出願公開第2010/0235165号(特許文献1)は、「電子的又はデジタル形式で提供される自然言語文書を自動的に意味ラベリングするためのシステム及び方法は、セマンティックプロセッサを含み、セマンティックプロセッサは基本的な言語分析を行う。当該言語分析は、タイプオブジェクト及び/又はオブジェクトのクラスの間のテキストの意味関係において、事実と因果関係とを認識し、言語的に分析したテキストを特定の対象意味関係パターンケースを一般化することによって作成された対象意味関係パターンにマッチングし、そして言語的に分析されたテキストとマッチング結果とに基づいて、意味関係のラベルを生成する。」(要約)ことを開示している。
米国特許出願公開第2010/0235165号
 ユーザは、必ずしも、ユーザが望む情報(文書)に対して最適なクエリタイトル及びカテゴリ値を指定できるわけではない。従来の方法は、クエリタイトルで使用されているカテゴリ値と同一のカタゴリ値が割り当てられた情報を抽出するため、ユーザ指定されたカテゴリ値が最適ではない場合に、ユーザが望む情報を抽出できないことがある。したがって、ユーザにより指定されたクエリタイトル及びカテゴリ値から、ユーザが望む文書を適切に検索することができるシステムが望まれる。
 本発明の代表的な一例は、データベースにおいてクエリに関係する文書を検索する、検索システムであって、クエリタイトル、前記クエリタイトルに割り当てられた文書、前記クエリタイトルに割り当てられているクエリカテゴリ値、及び前記文書に割り当てられている文書カテゴリ値、を格納する、データベース と、前記データベースにおける文書内の文書単語と前記文書カテゴリ値との連結関係を示す、単語カテゴリ間関係グラフと、前記データベースにおける前記文書カテゴリ値と前記クエリカテゴリ値との間の連結関係を示す、カテゴリ間関係グラフと、プロセッサと、を含み、前記プロセッサは、クエリタイトルと、クエリカテゴリ値と、を指定するクエリを受信し、前記データベースからの文書の選択と、前記選択した文書の前記クエリに対するスコアの決定と、を繰り返し、前記文書のスコアに基づいて前記文書をランク付けし、前記選択された文書のスコアの決定において、前記単語カテゴリ間関係グラフにおいて、前記選択された文書内の文書単語に連結する文書カテゴリ値を決定し、前記カテゴリ間関係グラフにおける前記決定された文書カテゴリ値と前記指定されたクエリカテゴリ値との連結関係に基づいて、前記選択された文書の前記クエリに対するスコアを決定する。
 本発明の一態様によれば、ユーザにより指定されたクエリタイトル及びカテゴリ値から、ユーザが望む文書を適切に検索することができる。
本実施形態の検索システムの論理構成例を示す。 検索システムのハードウェア構成例を示す。 データベースの構成例を示す。 索引付け部が、データベースに格納されているクエリタイトル、文書及びカテゴリの索引付けを行う処理のフローチャートを示す。 索引付け部が作成する単語間関係グラフの一例を示す。 索引付け部が作成する単語間関係テーブルの構成例を示す 索引付け部が作成する単語カテゴリ間関係グラフの例を示す。 索引付け部作成する単語カテゴリ間関係テーブルの構成例を示す。 索引付け部が作成する単語カテゴリ間関係テーブルの構成例を示す。 索引付け部が作成するカテゴリ間関係グラフの例を示す。 索引付け部が作成するカテゴリ間関係テーブルの構成例を示す。 検索システムによる、ユーザからのクエリに対する検索処理の概要を示す。 ユーザがクエリを入力するために、ユーザインタフェースが提示するGUI画像の一例を示す。 ユーザが入力したクエリと、データベースから選択した一つの文書との間の語彙的類似性を算出する処理のフローチャートを示す。 ユーザが入力したクエリと、データベースから選択した一つの文書との間の語彙的連結性スコアを算出する処理のフローチャートを示す。 カテゴリ連結性スコアを算出する処理のフローチャートを示す。 ユーザが入力したクエリと、データベースから選択した一つの文書との間のハイパ語彙的連結性スコアを算出する処理のフローチャートを示す。 ランク付け集約部による処理を示す。
 実施例を、図面を参照して説明する。なお、以下に説明する実施例は特許請求の範囲にかかる発明を限定するものではなく、また実施例で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。以下の説明では、「XXテーブル」の表現にて各種情報を説明することがあるが、各種情報は、テーブル以外のデータ構造で表現されていてもよい。データ構造に依存しないことを示すために、「XXテーブル」を「XX情報」と呼ぶことができる。
 以下において、クエリで指定されるカテゴリ値と文書に割り当てられているカテゴリ値とに基づき、検索結果における文書のランク付けを容易なものとする検索システムを示す。本実施形態の検索システムは、O&Mビジネスに好適であるが、これとは異なる用途に適用することができる。
 検索システムは、クエリタイトル、文書、及びカテゴリ値を格納するデータベースを含む。データベースは、クエリタイトルと文書とを対応付ける。さらに、データベースは、クエリタイトルに対応付けられたクエリカテゴリ値及び文書に対応付けられた文書カテゴリ値を含む。文書カテゴリのタイプは、クエリカテゴリのタイプとは異なる。
 ユーザによってクエリタイトルとカテゴリ値とを含むクエリが与えられると、検索システムは、与えられたクエリタイトル及びカテゴリ値に対して関連性が高い文書を、クエリで指定されたカテゴリ値とデータベース内の文書カテゴリ値とに基づき、データベースから選択する。
 本検索システムは、ユーザから与えられたカテゴリ値を使用することによって、クエリに対して関連性の高い文書を特定することができる。さらに、ユーザが不適切なカタゴリ値を与えたとしても、データベース内のクエリカテゴリ値と文書カテゴリ値との間の関係を介して、ユーザが望む情報に関連性が高い文書を提供することができる。
 図1Aは、本実施形態の検索システム100の論理構成例を示す。検索システム100は、ユーザインタフェース140と接続されて使用される。ユーザインタフェース140は、ユーザからのクエリタイトルとカテゴリ値とを含む検索クエリを受け付け、検索システム100に送信する。
 検索システム100は、指定されたクエリタイトルとカテゴリ値とに応じて、検索結果をユーザインタフェース140に出力する。ユーザインタフェース140、例えば、ウェブブラウザ、デスクトップ検索アプリケーション、又はスマートフォンの検索アプリケーションを含む。検索システム100は、データベース110、索引付け部130、関連性スコア演算部150、及びランク付け集約部160を含む。
 データベース110は、複数のクエリタイトル、複数の文書、及び複数のカテゴリを対応付けて格納する。複数のクエリタイトルのそれぞれは、少なくとも一つの文書に対応付けられる。さらに、複数のクエリタイトルのそれぞれには、少なくとも一つのカテゴリ値が割り当てられ、複数の文書のそれぞれに、少なくとも一つのカテゴリ値が割り当てられる。データベース110の詳細は、図2を参照して後述する。
 索引付け部130は、データベース110に格納されているクエリタイトル、文書及びカテゴリを処理する。索引付け部130は、データベース110から、後述する単語間関係グラフ300(図4)、単語カテゴリ間関係グラフ500(図6)、及びカテゴリ間関係グラフ700(図8)を作成する。各グラフは、要素間の連結関係を示す。
 索引付け部130はオフラインで実行可能であり、検索システム100の効率性を維持する。または、索引付け部130は、検索システム100のバックグランドで、定期的なスケジュールの下で実行され得る。
 関連性スコア演算部150は、ユーザインタフェース140から一つのクエリタイトルと1又は複数カテゴリ値を受信し、索引付け部130が生成した単語間関係グラフ300、単語カテゴリ間関係グラフ500、及びカテゴリ間関係グラフ700を使用して、複数の関連性スコアを算出する。複数の関連性スコアに基づいて、入力されたクエリに対して、データベース内の文書がランク付けされる。
 算出される複数の関連性スコアは、例えば、語彙的類似性、語彙的連結性、及びカテゴリ連結性を示す要素(スコア)を含んでもよい。一つの関連性スコアは、複数の要素を含む一つの数値、例えば、語彙的連結性とカテゴリ連結性との組み合わせであってもよい後述するように、当該組み合わせのスコアは、ハイパ語彙的連結性スコアとも呼ばれる。なお、算出される関連性スコアの数は1以上の任意数でよく、検索システム100が使用する関連性スコアの種類は、上記四つの種類に限定されない。
 いくつかの検索エンジンシステムの検索結果は、クエリタイトルに対して語彙的に類似する。しかし、ユーザによって指定されるクエリタイトルにおける単語が、ユーザが探し出したい文書における単語に対して語彙的ギャップを持つ(異なる)ことがある。
 語彙的連結性スコアは、一つのクエリタイトルにおける単語群と一つの文書における単語群との間の語彙的連結性を考慮し、後述する単語間関係グラフ300を介して決定される。語彙的連結性についてのスコアを使用することで、語彙的ギャップの問題を軽減することができる。言い換えれば、本実施形態の検索システム100によって、ユーザは、検索精度のような検索性能を低下させる正確性の低いクエリタイトルを、与えることが可能となる。語彙的連結性スコアの計算方法は、図13を参照して後述される。
 いくつかの検索エンジンシステムにおいて、カテゴリの情報は、ユーザによって指定されるカテゴリに厳密に属する文書から、ランク付けされた検索結果を得るためのフィルタとして働く。本実施形態の検索システム100において、ランク付けされた検索結果は、そのような制限された制約を保持する代わりに、ユーザに指定されたクエリタイトルと1又は複数カテゴリ値との関係を、ある程度において有している。このような検索結果は、カテゴリ連結性スコア、又は、語彙的連結性とカテゴリ連結性の双方を考慮したハイパ語彙的連結性スコア、を介して得られる。
 カテゴリ連結性スコア及びハイパ語彙的連結性スコアは、後述する単語カテゴリ間関係グラフ500及びカテゴリ間関係グラフ700を介して決定され得る。また、カテゴリ連結性スコアの計算方法は図14を参照して後述され、ハイパ語彙的連結性スコアの計算方法は図15を参照して後述される。
 システム100は、さらに、ランク付け集約部160を含む。ランク付け集約部160は、演算部150によって決定された関連性スコアを受信し、関連性スコアに基づいて、文書のランク付けリスト170を生成し、ユーザに提示する。
 図1Bは、検索システム100のハードウェア構成例を示す。検索システム100は、例えば、1又は複数のサーバ計算機で構成される。図1Bの例において、検索システム100は、1台のサーバ計算機200で構成される。サーバ計算機200は、プロセッサ201と、メモリ202と、ディスクデバイス203と、入力デバイス204と、出力デバイス205と、ネットワークインタフェース206とを含む。
 入力デバイス204は、サーバ計算機200に情報を入力するためのデバイスである。入力デバイス204は、例えば、キーボード、ポインティングデバイス、スイッチ、タッチパネル、マイクロホン等である。出力デバイス205は、サーバ計算機200がユーザに情報を出力するためのデバイスである。出力デバイス205は、例えば、モニタディスプレイ、スピーカ、プリンタ等である。
 ユーザインタフェース140のハードウェア構成は、例えば、入力デバイス204及び出力デバイス205を含む。または、ユーザインタフェース140のハードウェア構成は、ネットワークインタフェース206を介してサーバ計算機200と通信するユーザ端末である。ユーザ端末は、入力デバイス及び出力デバイスを含む。
 プロセッサ201は、メモリ202に記憶されたプログラムや演算パラメータ等に従って、サーバ計算機200の動作を制御して、後述する各種機能を実現する。ディスクデバイス203は、不揮発性の物理記憶デバイスである。ディスクデバイス203は、例えば、HDD(Hard Disk Drive)や、SSD(Solid State Drive)等である。ディスクデバイス203は、データベース110を格納する。
 メモリ202は、索引付けプログラム207、関連性スコア演算プログラム208、及びランク付け集約プログラム209を格納している。メモリ202は、この他、OSを含む本システムにおける動作に必要な不図示のプログラムを格納している。メモリ202に格納されるデータ(プログラムを含む)は、ディスクデバイス203又は外部のサーバからメモリ202にロードされる。
 プロセッサ201は、メモリ202に格納されているプログラムを実行することで、定められた処理を、適宜に記憶資源及び/又は通信インターフェースを用いながら行う。例えば、プロセッサ201は、索引付けプログラム207、関連性スコア演算プログラム208、及びランク付け集約プログラム209に従って動作することで、索引付け部130、関連性スコア演算部150、及びランク付け集約部160として動作する。
 以下の説明では、機能部を主語として処理を説明するが、各機能部はメモリ202に格納されているプログラムに従って動作するプロセッサ201によって実現されるため、処理の主語は、プロセッサ201又はプログラムであってもよい。
 図2は、データベース110の構成例を示す。データベース110は、複数のクエリタイトル、複数の文書、及び複数のカテゴリを対応付けて格納する。図2の例において、データベース110は、タイトルカラム111、クエリカテゴリカラム112、文書カラム113、及び文書カテゴリカラム114を有する。
 タイトルカラム111は、クエリタイトルを格納する。クエリカテゴリカラム112は、クエリタイトルに割り当てられているカテゴリ値を格納する。文書カラム113は、クエリタイトルに対応付けられている文書を格納する。文書カテゴリカラム114は、文書に割り当てられているカテゴリ値を格納する。
 複数のクエリタイトルのそれぞれは、1以上の文書に対応付けられる。さらに、複数のクエリタイトルのそれぞれには、1以上のカテゴリ値が割り当てられ、複数の文書のそれぞれに、1以上のカテゴリ値が割り当てられる。
 データベース110において、カテゴリタイプは、二つのグループに分けられる。カテゴリタイプの一つのグループは、データベース110のクエリタイトルセットに割り当てられるカテゴリタイプである。カテゴリタイプの他のグループは、データベース110の文書セットに割り当てられるカテゴリタイプである。本システムにおいて、クエリタイトルに割り当てられるカテゴリタイプと、文書に割り当てられるカテゴリタイプは異なる。
 保守点検行為におけるクエリタイトルの一例は、現場の運用者により作成される問題概要を示す。文書の一例は、問題解決の記録である。したがって、図2に示すように、クエリタイトルセットに対するカテゴリタイプの一例は、トラブルコードやモデルコードであり、文書セットに対するカテゴリタイプの一例は、現象コードや対抗策コードである。
 例えば、図2において、クエリタイトル「Oil leak」は、二つの文書「Document1」、「Document2」に対応付けられている。クエリタイトル「Oil leak」には、二つのタイトルカテゴリ値「mc_1」、「tc_2」が割り当てられている。クエリタイトル「Oil leak」に対応付けられている文書「Document1」には、二つの文書カテゴリ値「pc_4」、「cc_2」が割り当てられている。
 カテゴリ値は、カテゴリタイプの値を表す。例えば、トラブルコードの値は、「リーク」や「クラック」等である。本例において、カテゴリタイプとカテゴリ値とは、データベース110において予め定義されている。学習アルゴリズムによって、データベース110におけるクエリタイトルと文書との意味論的意味を抽出してもよい。
 図3は、索引付け部130が、データベース110に格納されているクエリタイトル、文書及びカテゴリの索引付けを行う処理のフローチャートを示す。索引付け部130は、ユーザからのクエリ入力とは独立に、当該処理を実行する。ステップ101において、索引付け部130は、データベース110におけるクエリタイトル内の単語(クエリ単語)と文書内の単語(文書単語)との間の関係を示す、単語間関係グラフ300を作成する。
 ステップ102において、索引付け部130は、単語カテゴリ間関係グラフ500を作成する。具体的には、索引付け部130は、データベース110におけるクエリタイトル内の単語と、クエリタイトルに割り当てられているクエリカテゴリとの関係を示す、単語カテゴリ間関係グラフ501を作成する。索引付け部130は、さらに、データベース110における文書内の単語と、文書に割り当てられている文書カテゴリとの関係を示す、単語カテゴリ間関係グラフ502を作成する。
 ステップ103において、索引付け部130は、互いに対応付けられているクエリタイトルと文書に割り当てられているクエリカテゴリと文書カテゴリとの間の関係を示すカテゴリ間関係グラフ700を作成する。
 索引付け部130は、データベース110の更新に応じて、単語間関係グラフ300、単語カテゴリ間関係グラフ500、及びカテゴリ間関係グラフ700を更新する。例えば、データベース110の規定数のレコードが更新されると、索引付け部130は、グラフ300、500、700を更新する。
 図4は、索引付け部130が作成する単語間関係グラフ300の一例を示す。図5は、索引付け部130が作成する単語間関係テーブル400の構成例を示す。索引付け部130は、単語間関係グラフ300の作成において、単語間関係テーブル400を作成し、メモリ202又はディスクデバイス203に格納する。
 図4の単語間関係グラフ300は、データベース110における、クエリタイトルセット内の単語と文書セット内の単語との関係、及び文書セット内の単語の間の関係を示す。単語セット310は、クエリタイトルセット内に存在する複数単語q(例えばノード340)で構成されている。単語qを、Q単語と呼ぶ。
 単語セット320は、複数単語r1(例えばノード350)で構成されている。単語r1は、文書の一つのセンテンスにおいて、いずれかのQ単語と共起する単語である。単語r1を、R1単語と呼ぶ。以下に説明する例は、文書及びクエリタイトルの双方に含まれる単語を、R1単語に含める。
 単語セット330は、複数単語r2(例えばノード360)で構成されている。単語r2は、文書の一つのセンテンスにおいて、いずれかの単語r1と共起する単語であって、Q単語を除いた単語である。単語r2を、R2単語と呼ぶ。本例において、共起する二つの単語は、同一センテンス内に存在する。
 単語間関係グラフ300において、共起する単語qと単語r1のペアは、エッジ(例えばエッジ370)で連結されている。共起する単語r1と単語r2のペアは、エッジ(例えばエッジ380)で連結されている。
 例えば、クエリタイトルが、「What about Tokyo?」であり、二つのセンテンスを含む文書は、「Tokyo is in Japan.  It is the biggest city in Japan.」であるとする。「What」、「about」、「Tokyo」は、Q単語である。単語「Japan」は、Q単語である「Tokyo」と、文書の第1センテンスにおいて共起している。したがって、単語「日本」は、R1単語である。また、単語「Tokyo」は、当該文書におけるR1単語である。
 二つの単語「biggest」と「city」とは、Q単語ではなく、文書の第2センテンスにおいて、R1単語「Japan」と共起している。したがって、二つの単語「biggest」と「city」とは、R2単語である。
 なお、単語間関係グラフは、Q単語階層、R1単語階層、及びR2単語階層を含む3階層の単語ノードを有する構成に限定されない。単語間関係グラフは、2階層でもよく、また、3階層より多くの階層に容易に拡張できる。例えば、R3単語は、Q単語及びR1単語ではなく、同一センテンスにおいてR2単語と共起している単語と定義することができる。索引付け部130は、予め定義されている単語を除く、索引語のみを単語間関係テーブル400に格納してもよい。他のテーブル及び関連性スコア演算部150の処理においても同様である。例えば、助詞や冠詞は索引語から除かれる。
 文書内の一つのセンテンスにおいて、Q単語とR1単語が共起する場合、Q1単語とR1単語との間のエッジが生成される。同様に、文書内の一つのセンテンスにおいてR1単語とR2単語が共起する場合、R1単語とR2単語との間のエッジが生成される。
 上記例文を使用すると、Q単語セットに属する単語ノード「Tokyo」と、R1単語セットに属する単語ノード「Japan」及び「Tokyo」との間に、エッジが、単語間関係グラフ300において存在する。同様に、R2単語セットに属する単語ノード「biggest」と、R1単語セットに属する単語ノード「Japan」との間に、エッジが、単語間関係グラフにおいて存在する。
 図5は、索引付け部130が作成する単語間関係テーブル400の構成例を示す。単語間関係グラフ300は、単語間関係テーブル400として作成され保持される。単語間関係テーブル400は、データベース110におけるクエリタイトルセット及び文書セット内の単語ペアの関係性を示す。図4の例において、単語間関係テーブル400は、単語カラム401、402、距離カラム403、及び頻度カラム404を有する。
 単語カラム401、402は、データベース110において共起する単語のペアを示す。一つの文書は1又は複数のセンテンスで構成される。図4において、各文書単語は、q、r1又はr2を使用して表わされている。qを使用して表わされている単語は、クエリタイトルセット内の単語であり、その他の単語は文書セット内の単語である。
 距離カラム403は、二つの文書単語間の語彙的距離を示す。語彙的距離の一例は、二つの単語間の最小依存距離である。依存距離は、依存木における二つの単語(ノード)間のパスの距離である。最小依存距離は、データベース110内で共起する二つの単語を含む全依存木における、最小の依存距離である。二つの単語の語彙的距離は、一般に広く利用されているコーパスから決定してもよい。
 頻度カラム404は、単語ペアの頻度を示す。頻度は、単語ペアがデータベース110内において現れる頻度を示す。本例において、頻度カラム404は、単語ペアのセンテンス内共起頻度を示す。センテンス内共起頻度は、データベース110の文書セットにおいて、単語ペアが存在するセンタテンス数を、データベース110の全センテンス数を割った値と定義できる。
 なお、単語間関係テーブル400が格納する情報は、図4を参照して説明した情報に限定されない。単語間関係テーブル400は、二つの単語の他の情報を含んでもよく、単語間関係グラフ300を介して容易に拡張され得る。
 図6は、索引付け部130が作成する単語カテゴリ間関係グラフ500の例を示す。単語カテゴリ間関係グラフ500は、二つのグラフ501、502を含む。グラフ501は、データベース110内の、クエリタイトルセットのクエリ単語とクエリカテゴリ値との関係を示す。グラフ502は、データベース110内の、文書セット内の文書単語と文書カテゴリ値との関係を示す。
 グラフ501は、エッジで連結された複数のペアで構成され、各ペアは、一つのクエリタイトル内に存在する単語q(例えばノード503)と、当該クエリタイトルに割り当てられているクエリカテゴリ値(例えばノード504)とで構成されている。各ペアにおける連結はエッジで示されている。一つのクエリカテゴリ値は複数のクエリ単語とペアを構成でき、一つのクエリ単語は複数のクエリカテゴリ値とペアを構成できる。
 グラフ502は、エッジで連結された複数のペアで構成されている。各ペアは、一つの文書内に存在する単語r1(例えばノード506)又は単語r2(例えばノード507)と、当該文書に割り当てられているクエリカテゴリ値(例えばノード508)とで構成されている。各ペアにおける連結はエッジで示されている。一つの文書カテゴリ値は複数の文書単語とペアを構成でき、一つの文書単語は複数の文書カテゴリ値とペアを構成できる。
 例えば、カテゴリ値「AA」がクエリタイトル「What about Tokyo?」に割り当てられている場合、「AA」と「Tokyo」との間に、エッジが生成される。カテゴリ値「BB」が、センテンス「Tokyo is in Japan.」を含む文書に割り当てられている場合、二つの単語「BB」、「Japan」の間に、エッジが生成される。
 図7A、7Bは、索引付け部130が作成する単語カテゴリ間関係テーブルの構成例を示す。単語カテゴリ間関係グラフ500は、単語間関係テーブルとして作成され保持される。具体的には、クエリタイトルセットの単語カテゴリ間関係グラフ501は、単語間関係テーブル(クエリ)600として作成され、文書セットの単語カテゴリ間関係グラフ502は、単語間関係テーブル(文書)605として作成される。
 図7A、データベース110内のクエリタイトルセットにおける、単語カテゴリ間関係テーブル(クエリ)600の構成例を示す。図7Bは、データベース110内の文書セットにおける、単語カテゴリ間関係テーブル(文書)605の構成例を示す。
 図7Aに示す単語カテゴリ間関係テーブル(クエリ)600は、データベース110内のクエリ単語(クエリセット内の単語)とクエリカテゴリ値との間の関係を示す。各レコードは、クエリ単語とクエリカテゴリ値のペアの情報を示す。
 各ペアは、一つのクエリタイトルに含まれるクエリ単語と、当該クエリタイトルに割り当てられているクエリカテゴリ値とで構成される。一つのクエリ単語は複数のクエリカテゴリ値それぞれとペアを構成することができ、また、一つのクエリカテゴリ値は複数のクエリ単語それぞれとペアを構成することができる。
 単語カテゴリ間関係テーブル(クエリ)600は、クエリ単語カラム601、クエリカテゴリ値カラム602、頻度カラム603、及び相互頻度カラム604を有する。クエリ単語カラム601は、データベース110内のクエリタイトルセットの単語を示す。
 クエリカテゴリ値カラム602は、データベース110において、クエリタイトルそれぞれに割り当てられているカテゴリ値を示す。上述のように、クエリ単語と同一レコードのクエリカテゴリ値は、当該クエリ単語が含まれるクエリタイトルに割り当てられている。
 頻度カラム603は、データベース110において、クエリカテゴリ値が現れる頻度を示す。例えば、頻度カラム603は、クエリカテゴリ値が割り当てられているクエリタイトルの数の、クエリタイトルセット内の総タイトル数の比で定義できる。
 相互頻度カラム604は、データベース110において、クエリ単語とクエリカテゴリ値のペアが現れる頻度(相互頻度)を示す。例えば、クエリタイトルセットにおける当該ペアの出現回数(対応タイトル数)の、全ペアの出現回数の総和に対する比で定義できる。または、クエリ単語とクエリカテゴリ値の一つのペアの相互頻度は、当該ペアが対応するクエリタイトルの数の、クエリタイトルセット内の総タイトル数に対する比で定義できる。
 図7Bに示す単語カテゴリ間関係テーブル(文書)605は、データベース110内の文書単語(文書セット内の単語)と文書カテゴリ値との間の関係を示す。各レコードは、文書単語と文書カテゴリ値のペアの情報を示す。各ペアは、一つの文書に含まれる文書単語と、当該文書に割り当てられている文書カテゴリ値とで構成される。一つの文書単語は複数の文書カテゴリ値それぞれとペアを構成することができ、また、一つの文書カテゴリ値は複数の文書単語それぞれとペアを構成することができる。
 単語カテゴリ間関係テーブル(文書)605は、文書単語カラム606、文書カテゴリ値カラム607、頻度カラム608、及び相互頻度カラム609を有する。
 文書単語カラム606は、データベース110内の文書セットの単語を示す。文書カテゴリ値カラム607は、データベース110において、文書それぞれに割り当てられているカテゴリ値を示す。文書単語と同一レコードの文書カテゴリ値は、当該文書単語が含まれる文書に割り当てられている。
 頻度カラム608は、データベース110において、文書カテゴリ値が現れる頻度を示す。例えば、頻度カラム608は、文書カテゴリ値が割り当てられている文書の数の、文書セット内の総文書数の比で定義できる。
 相互頻度カラム609は、データベース110において、文書単語と文書カテゴリ値のペアが現れる頻度(相互頻度)を示す。例えば、文書セットにおける当該ペアの出現回数(対応文書数)の、全ペアの出現回数の総和に対する比で定義できる。または、文書単語と文書カテゴリ値の一つのペアの相互頻度は、当該ペアが対応する文書の数の、文書セット内の総文書数の比で定義できる。
 なお、単語カテゴリ間関係テーブル600、605は、上記情報と異なる情報を格納してもよい。
 図8は、索引付け部130が作成するカテゴリ間関係グラフ700の例を示す。カテゴリ間関係グラフ700は、データベース110における、複数クエリカテゴリ値と複数文書カテゴリ値との関係を示す。
 図8において、カテゴリ間関係グラフ700は、クエリカテゴリ値(例えばノード703)を含むクエリカテゴリ値のセット701と、文書カテゴリ値(例えばノード704)を含むクエリカテゴリ値のセット702と、を示す。ペアを構成するクエリカテゴリ値と文書カテゴリ値との連結は、エッジ(例えばエッジ705)で表わされている。対応付けられているクエリタイトルと文書のクエリカテゴリ値と文書カテゴリ値とが連結され、ペアを構成する。
 例えば、一つのクエリタイトルと二つの文書が関連づけられているとする。さらに、クエリタイトルに二つのクエリカテゴリ値「CC1」、「CC2」が割り当てられており、一方の文書に文書カテゴリ値「DC1」、他方の文書に文書カテゴリ値「DC2」が割り当てられているとする。これらから、四つのペア「CC1、DC1」、「CC1、DC2」、「CC2、DC1」、「CC2、DC2」が作成される。
 図9は、索引付け部130が作成するカテゴリ間関係テーブル800の構成例を示す。カテゴリ間関係グラフ700は、カテゴリ間関係テーブル800として作成され保持される。
 カテゴリ間関係テーブル800は、データベース110における文書セットに割り当てられている文書カテゴリ値と、クエリタイトルセットに割り当てられているクエリカテゴリ値との間の関係を示す。
 各レコードは、クエリカテゴリ値と文書カテゴリ値とのペアの情報を示す。各ペアは、互いに関連づけられている文書とクエリタイトルの、カテゴリ値で構成されている。一つの文書カテゴリ値は複数のクエリカテゴリ値それぞれとペアを構成することができ、また、一つのクエリカテゴリ値は複数の文書カテゴリ値それぞれとペアを構成することができる。
 カテゴリ間関係テーブル800は、クエリカテゴリ値カラム801、文書カテゴリ値カラム802、頻度カラム803、相互頻度カラム804を有する。クエリカテゴリ値カラム801は、データベース110におけるクエリタイトルに割り当てられているクエリカテゴリ値を示す。文書カテゴリ値カラム802は、データベース110における文書に割り当てられているクエリカテゴリ値を示す。
 頻度カラム803は、データベース110において文書カテゴリ値が現れる頻度を示す。例えば、頻度カラム803は、文書カテゴリ値が割り当てられている文書の数の、データベース110内の総文書数の比で定義できる。相互頻度カラム804は、データベース110において、クエリカテゴリ値と文書カテゴリ値とのペアが現れる頻度を示す。例えば、相互頻度カラム804は、文書単語と文書カテゴリ値のペアが対応する文書の数の、データベース110内の総文書数の比で定義できる。
 図10は、検索システム100による、ユーザからのクエリに対する検索処理の概要を示す。関連性スコア演算部150は、ユーザインタフェース140からクエリタイトルとカテゴリ値を取得する(S101)。関連性スコア演算部150は、ユーザに指定されたクエリタイトルとカテゴリ値とから、語彙的類似性、語彙的連結性、そしてカテゴリ連結性の要素を考慮した、三つの関連性スコアを算出する(S110)。
 具体的には、関連性スコア演算部150は、ユーザに指定されたクエリタイトルと、データベース110に格納されているデータの解析結果とに基づき、データベース110内の各文書の語彙的類似性スコアを算出する(S111)。
 さらに、関連性スコア演算部150は、ユーザに指定されたクエリタイトルと単語間関係グラフ300(単語間関係テーブル400)とに基づき、データベース110内の各文書の語彙的連結性スコアを算出する(S112)。
 さらに、関連性スコア演算部150は、ユーザに指定されたクエリタイトル及びカテゴリ値、並びに、単語間関係グラフ300(単語間関係テーブル400)、単語カテゴリ間関係グラフ500(単語カテゴリ間関係テーブル600、605)、及びカテゴリ間関係グラフ700(カテゴリ間関係テーブル800)に基づき、データベース110内の各文書のカテゴリ連結性スコアを算出する(S113)。
 ランク付け集約部160は、関連性スコア演算部150から、各文書語の彙的類似性スコア、語彙的連結性スコア、及びカテゴリ連結性スコアを取得し、ランク付けリストを作成する(S106)。ランク付け集約部160は、各文書の関連性スコアから各文書のランクを決定し、決定されたランクに従って検索結果を示す文書のリストを作成する。
 本例において、関連性スコア演算部150は、語彙的類似性、語彙的連結性、そしてカテゴリ連結性の要素を考慮して、三つの関連性スコアを算出する。各文書の異なる種類のスコアを算出し、それらスコアに従ってクエリに対して文書をランク付けすることで、クエリで指定されたクエリ単語及びカテゴリ値に限定されず、ユーザが望む文書をより適切に検索することができる。なお、関連性スコア演算部150は、上記三つのスコアの一部のみを使用してもよい。例えば、語彙的類似性スコア又は語彙的連結性スコアを使用しなくてもよい。
 関連性スコア演算部150が算出するスコアは、上記三つのスコアに限定されない。単語間関係グラフ300、単語カテゴリ間関係グラフ500及びカテゴリ間関係グラフ700から得られる他のスコアが、関連性スコア演算部150により算出されてもよい。
 図11は、ユーザがクエリを入力するために、ユーザインタフェース140が提示するGUI画像180の一例を示す。GUI画像180は、クエリタイトルを入力するためのテキストフィールド181を含む。ユーザは、テキストによって、クエリタイトルをフィールド181に入力する。
 GUI画像180は、さらに、クエリカテゴリ値を入力するためのフィールド182、183を含む。図11の例において、フィールド182はモデルコードを入力するためのフィールドであり、フィールド183はトラブルコードを入力するためのフィールドある。ユーザインタフェース140は、例えば、ユーザに、プルダウンリストから、モデルコード及びトラブルコードを選択させる。
 GUI画像180は、さらに、文書カテゴリ値を入力するためのフィールド184、185を含む。図11の例において、フィールド184は対向策コードを入力するためのフィールドであり、フィールド185は現象コードを入力するためのフィールドある。ユーザインタフェース140は、例えば、ユーザに、プルダウンリストから、対向策コード及び現象コードを選択させる。
 図12~図14は、それぞれ、語彙的類似性スコア、語彙的連結性スコア、そしてカテゴリ連結性スコアを算出する処理のフローチャートを示す。図12は、ユーザが入力したクエリと、データベース110から選択した一つの文書との間の語彙的類似性を算出する処理(S111)のフローチャートを示す。関連性スコア演算部150は、データベース110における文書を順次選択し、文書それぞれの語彙的類似性スコアを算出する。語彙的類似性スコアは、広く知られた技術により算出され、ここでは一例を説明する。
 関連性スコア演算部150は、データベース110の文書セット及びクエリタイトルを解析し、不要語(無特徴語)を除去して索引語を決定する(S151)。関連性スコア演算部150は、ユーザインタフェース140からクエリを受信する(S152)。関連性スコア演算部150は、受信したクエリ内のクエリタイトルから、索引語を使用して数値ベクトルを作成する(S153)。数値ベクトルの各要素は、例えば、索引語の当該クエリタイトルにおける出現数とデータベース110において当該検索語が出現する文書及びクエリタイトルの数から算出される。各要素は、索引語の有無を示す1又は0でもよい。
 関連性スコア演算部150は、データベース110から一つの文書を選択し、当該選択した文書から、索引語を使用して数値ベクトルを作成する(S154)。数値ベクトルの各要素は、例えば、索引語の当該文書における出現数とデータベース110において当該検索語が出現する文書及びクエリタイトルの数から算出される。
 関連性スコア演算部150は、クエリタイトルの数値ベクトルと、文書の数値ベクトルと、の間の類似性を計算する(S155)。類似性計算の一例は、コサイン類似度を使用する。
 図13は、ユーザが入力したクエリと、データベース110から選択した一つの文書との間の語彙的連結性スコアを算出する処理(S112)のフローチャートを示す。関連性スコア演算部150は、データベース110から文書を順次選択し、文書それぞれの語彙的連結性スコアを算出する。
 関連性スコア演算部150は、ユーザインタフェース140からクエリを受信する(S152)。関連性スコア演算部150は、選択した文書から、受信したクエリタイトルのQ単語に対するR1単語とR2単語を選択する(S202)。以下において、R1単語とR2単語をR単語と総称する。
 次に、関連性スコア演算部150は、選択したR単語から、複数のR単語ペアを作成する(S203)。各ペアは、二つのR1単語、二つのR2単語、又はR1単語とR2単語とで構成されている。
 例えば、入力されたクエリタイトルが「What about Tokyo?」であり、選択されている文書が「Tokyo is in Japan」というセンテンスを含むとする。当該センテンスにおいて、「Tokyo」はQ単語(R1単語)であり、3単語「is」、「in」、「Japan」はR1単語である。本センテンスにおけるR単語のペアの組み合わせの例は、(「Tokyo」、「is」)、(「Tokyo」、「in」)、(「Tokyo」、「Japan」)、(「is」、「in」)、(「is」、「Japan」)、(「in」、「Japan」)である。
 次に、関連性スコア演算部150は、各ペアの語彙的連結性スコアを、単語間関係グラフ300を使用して算出する(S204)。算出方法は後述する。次に、関連性スコア演算部150は、算出したペアの語彙的連結性スコアを総計し、当該文書の語彙的連結性スコアを決定する(S205)。
 以下において、ペアの語彙的連結性スコアの算出方法を説明する。以下において、「_」は下付き文字、「^」は上付き文字を意味する。二つの任意単語w1、w2からなるペアの語彙的連結性スコアS_p(w1、w2)は、数式1で表わされる。
Figure JPOXMLDOC01-appb-M000001
 S_r(w)は、単語wの語彙的連結性スコアである。一つのR1単語の語彙的連結性スコアS_r(r1)は、数式2によって計算される。
Figure JPOXMLDOC01-appb-M000002
 さらに、一つのR2単語の語彙的連結性スコアS_r(r1)は、数式3によって計算される。
Figure JPOXMLDOC01-appb-M000003
 数式1において、総和は、ユーザが指定したクエリタイトル内のQ単語についての総和である。数式2において、総和は、ユーザが指定したクエリタイトルに対する、文書内のR1単語についての積和である。S_b(w)は、単語wのベーススコアであり、データベース110又は他のコーパスにおける単語wの単語頻度又は逆文書頻度から算出でき、予め計算されている。
 freq(w1、w2)は、単語ペア(w1、w2)の相互頻度であり、dist(w1、w2)は、単語ペア(w1、w2)の語彙的距離(最小依存距離)である。関連性スコア演算部150は、単語間関係グラフ300(単語間関係テーブル400)から、freq(w1、w2)及びdist(w1、w2)の値を決定できる。
 関連性スコア演算部150は、各単語ペアの語彙的連結性スコアS_pの計算において、単語間関係グラフ300(単語間関係テーブル400)から単語それぞれのfreq及びdistを取得する。関連性スコア演算部150は、取得した情報から単語それぞれの語彙的連結性スコアS_rを算出し、それらを積算して、当該単語ペアの語彙的連結性スコアS_pを算出する。
 R単語を使用した語彙的連結性スコアを算出することで、クエリにおいて指定されたクエリ単語に限定されず、ユーザが望む情報に関連する文書を提示することができる。なお、R1単語とR2単語の語彙的連結性スコアに異なる重みを与えてもよい。
 次に、文書のカテゴリ関係に関するスコアの算出方法を説明する。カテゴリ関係に関するスコアの二つの計算方法が存在する。第1の方法は、カテゴリ関係のみを考慮してスコアを計算する。当該スコアは、カテゴリ連結性スコアと呼ばれる。第2の方法は、カテゴリ連結性と語彙的連結性の双方を考慮して計算する。それは、ハイパ語彙的連結性スコアと呼ばれる。ここでは、カテゴリ連結性スコアを算出する第1の方法(S113)を説明する。
 図14は、カテゴリ連結性スコアを算出する処理(S113)のフローチャートを示す。関連性スコア演算部150は、データベース110から文書を順次選択し、文書それぞれのカテゴリ連結性スコアを算出する。
 関連性スコア演算部150は、ユーザインタフェース140からクエリを受信する(S152)。関連性スコア演算部150は、選択した文書から、受信したクエリタイトルのQ単語に対するR1単語とR2単語を選択する(S252)。
 次に、関連性スコア演算部150は、単語間関係グラフ300、単語カテゴリ間関係グラフ500、及びカテゴリ間関係グラフ700を使用して、選択したR1単語及びR2単語それぞれについて、カテゴリ連結性スコアを算出する(S253)。各単語のカテゴリ連結性スコアの算出方法は後述する。次に、関連性スコア演算部150は、算出したカテゴリ連結性スコアを総計し、当該文書のカテゴリ連結性スコアを決定する(S254)。
 以下において、単語のカテゴリ連結性スコアの算出方法(S253)を説明する。関連性スコア演算部150は、R1単語r1のカテゴリ連結性スコアsrel(r1、C_M、Q_r1,C_M)を、数式4に従って算出する。
Figure JPOXMLDOC01-appb-M000004
 数式4において、C_Mは、クエリにおいてユーザに指定されたクエリカテゴリ値セットを示す。Q_r1,C_Mは、データベース110内のk個のQ単語からなるQ単語セットを示す。kは規定数である。Q単語セットは、R1単語r1と、クエリにおいてユーザに指定されたクエリカテゴリ値セットC_Mのいずれかのクエリカテゴリ値とエッジを有するQ単語のうち、R1単語r1との相互頻度が最も高いk個のQ単語を示す。関連性スコア演算部150は、単語間関係グラフ300(単語間関係テーブル400)及び単語カテゴリ間関係グラフ501(単語カテゴリ間関係テーブル600)から、Q単語セットQ_r1,C_Mを決定できる。
 R1単語のカテゴリ連結性スコアの演算式(数式4)は、二つの項を含む。第1の項rel(r1、C_M、Q_r1,C_M)は、R1単語r1と、その対応Q単語セットQ_r1,C_Mとの間の関連性を示す。第2の項crel(r1、Q_r1,C_M)は、単語r1とQ単語セットQ_r1,C_Mとに関係するカテゴリ値の間の関連性を示す。
 例として、第1の項rel(r1、C_M、Q_r1,C_M)は、数式5で計算される。
Figure JPOXMLDOC01-appb-M000005
 c_iは、データベース110におけるクエリカテゴリ値であり、C_MNはクエリカテゴリ値セットである。C^(q_k)_(C_MN)は、C^(q_k)_(C_MN)は、C_MNに属し、Q単語q_kとエッジを有するクエリカテゴリのセットである。βは、1以下の正の数であり、例えば、0.5より大きく1以下である。q_kは、Q単語セットQ_r1,C_M内のQ単語である。freq(c_i)は、クエリカテゴリ値c_iの頻度を示し、freq(c_i、q_k)は、クエリカテゴリ値c_iとQ単語q_kの相互頻度を示す。関連性スコア演算部150は、freq(c_i)及びfreq(c_i、q_k)を、単語間関係グラフ300(単語間関係テーブル400)から決定できる。
 第1の項rel(r1、C_M、Q_r1,C_M)は、一つのR1単語r1とユーザ指定クエリカテゴリ値セットC_Mとの間の関連性を、Q単語セットQ_r1,C_Mを介して計算する。クエリ単語と文書単語との間の関係性のみならず、文書単語とカテゴリ値との間関係を考慮することで、よりユーザの望みに合致した検索結果を提示することができる。
 当該項は、クエリで指定されたクエリカテゴリ値セットC_Mに属さないクエリカテゴリ値、つまり、クエリで指定されていないクエリカタゴリ値と、Q単語q_kと、の間の関連性(相互頻度)を考慮している。また、Q単語セットQ_r1,C_Mは、クエリで指定されていないQ単語を含み得る。このように、当該項は、クエリで直接に指定されたクエリ単語及びクエリカテゴリ値に限定せず、指定されていないクエリ単語及びクエリカテゴリ値を考慮して、クエリに対する文書の関連性を算出できる。
 第2の項crel(r1、Q_r1,C_M)は、例えば、数式6で計算される。
Figure JPOXMLDOC01-appb-M000006
 crel(r1、Q_r1,C_M)の計算式(数式6)は、二つの項を含む。第1の項のrel(C^r1_J、C^q_M)は数式7で計算される。
Figure JPOXMLDOC01-appb-M000007
 さらに、第2の項のrel(C^(-r1)_JK、C^(-q)_MN)は数式8で計算される。
Figure JPOXMLDOC01-appb-M000008
 数式6~数式8における係数及び項は、それぞれ、数式9のように定義される。
Figure JPOXMLDOC01-appb-M000009
 C^r1_Jは、クエリにおいてユーザが指定した文書カテゴリ値セットにおいて、R1単語r1と単語カテゴリ間関係グラフ500でのエッジを有する文書カテゴリ値セットである。C^q_Mは、クエリにおいてユーザが指定したクエリカテゴリ値セットにおいて、Q単語セットQ_r1,C_MのQ単語qと単語カテゴリ間関係グラフ500でのエッジを有するクエリカテゴリ値セットである。
 C_JKは文書カテゴリ値セットである。C^r1_JKは、データベース110における文書カテゴリ値セットにおいて、R1単語r1とエッジを有する文書カテゴリ値セットである。C^(-r1)_JKは、r1単語とエッジを有していない文書カテゴリ値のセットである。C^q_MNは、データベース110におけるクエリカテゴリ値セットにおいて、Q単語セットQ_r1,C_MのQ単語qとエッジを有するクエリカテゴリ値セットである。C^(-q)_MNは、データベース110におけるクエリカテゴリ値セットにおいて、単語qとエッジを有していないクエリカテゴリ値セットである。
 関連性スコア演算部150は、単語カテゴリ間関係グラフ502(単語カテゴリ間関係テーブル605)を参照して、R1単語r1とエッジを有する文書カテゴリ値セットを同定できる。さらに、関連性スコア演算部150は、単語カテゴリ間関係グラフ501(単語カテゴリ間関係テーブル600)から、Q単語qとエッジを有するクエリカテゴリ値セットを同定できる。
 freq(c_i)は、文書カテゴリ値c_iの頻度を示す。freq(c_i、c_j)は、文書カテゴリ値c_iとクエリカテゴリ値c_jとの相互頻度を示す。関連性スコア演算部150は、文書カテゴリ値頻度freq(c_i)及び相互頻度freq(c_i、c_j)を、カテゴリ間関係グラフ700(カテゴリ間関係テーブル800)から決定できる。
 R1単語r1のカテゴリ連結性スコアsrelの第2の項crel(r1、Q_r1,C_M)は、R1単語r1とQ単語セットQ_r1,C_Mとに関係する、クエリカテゴリ値と文書カテゴリ値との間の連結性を計算する。
 上述のように、crel(r1、Q_r1,C_M)の数式6は、二つの項を含む。数式7を使用して算出される第1の項βrel(C^r1_J、C^q_M)は、C^r1_JとC^q_Mとに連結するカテゴリ値間の連結性を示す。具体的には、当該項は、クエリにおいてユーザに指定された文書カテゴリ値においてR1単語r1と連結する文書カテゴリ値と、クエリにおいてユーザに指定されたクエリカテゴリ値においてQ単語セットQ_r1,C_Mと連結するクエリカテゴリ値と、の間の連結性を示す。
 数式8を使用して算出される第2の項の(1-β)rel(C^(-r1)_JK、C^(-q)_MN)は、C^r1_JとC^q_Mとに連結しないカテゴリ値群間の関連性を示すバランス項である。具体的には、クエリで指定されていない文書カテゴリ値においてR1単語r1と連結する文書カテゴリ値と、クエリにおいて指定されていないクエリカテゴリ値においてQ単語セットQ_r1,C_Mと連結するクエリカテゴリ値と、の間の関連性を示す。
 上述のように、データベース110内のクエリカテゴリ値と文書カテゴリ値との間の連結関係を考慮することで、より適切な検索結果を提示することができ、また、ユーザが指定したカテゴリ値が不適切であっても、ユーザが望む情報に関連する文書を提示できる。
 ユーザが指定したカテゴリ値に加え、文書単語又はクエリ単語と連結する、ユーザに指定されていないカテゴリ値間の連結関係を考慮することで、クエリで直接に指定されたクエリカテゴリ値のみに限定されず、指定されていないクエリカテゴリ値を考慮して、クエリに対する文書の関連性を算出できる。
 以下において、R2単語r2のカテゴリ連結性スコアの算出方法を説明する。関連性スコア演算部150は、R2単語r2のカテゴリ連結性スコアsrel(r2、R^1_r2、C_M、Q_r2,C_M)を、数式10に従って算出する。
Figure JPOXMLDOC01-appb-M000010
 数式10において、R1単語セットR^1_r2は、クエリに対してデータベース110から選択されたR1単語において、R2単語r2との相互頻度が最も高いk個のR1単語を示す。関連性スコア演算部150は、単語間関係グラフ300(単語間関係テーブル400)から、R1単語とR2単語との相互頻度を決定できる。
 Q単語セットQ_r2,C_Mは、R2単語r2とクエリカテゴリ値セットC_Mとエッジを有するデータベース110内のQ単語であって、R2単語r2との連結性が最も高いk個のQ単語を示す。
 ここで、R2単語r2は、単語間関係グラフ300において、Q単語と直接に連結していない。したがって、R2単語r2とQ単語との連結性は、R1単語を介して示される。例えば、R2単語r2とQ単語との連結性は、R1単語とR2単語の相互頻度(freq(r1、r2))及びR1単語とQ単語の相互頻(freq(r1、q))を使用して計算できる。一例として、freq(r1、r2)とfreq(r1、q)の積で示される。相互頻度の情報は、単語間関係グラフ300(単語間関係テーブル400)に格納されている。
 R2単語r2のカテゴリ連結性スコアの演算式(数式10)は、二つの項を含む。第1の項rel(R^1_r2、C_M、Q_r2,C_M)は、R2単語r2と、その対応Q単語セットQ_r1,C_Mとの間の関連性を、R1単語セットを介して計算する。第2の項crel(r2、Q_r2,C_M)は、R2単語r2とQ単語セットQ_r2,C_Mとに関係するカテゴリ値の間の関連性を示す。
 例として、第1の項rel(R^1_r2、C_M、Q_r2,C_M)は、数式11で計算される。
Figure JPOXMLDOC01-appb-M000011
 rel(r1、C_M、Q_r2,C_M)は、数式5に従って計算される。関連性スコア演算部150は、Q単語セットQ_r2,C_Mについて、数式5の計算を実行する。当該項は、R2単語R2、R1単語セットR^1_r2、及びQ単語セットQ_r2,C_Mの間の関連性を示す。言い換えれば、当該項は、R2単語r2と、クエリにおいてユーザに指定されたクエリカテゴリ値セットC_Mとの間の関連性を、R1単語セットR^1_r2とQ単語セットQ_r2,C_Mとを介して計算できる。
 第2の項crel(r2、Q_r2,C_M)は、例えば、数式12で計算される。
Figure JPOXMLDOC01-appb-M000012
 crel(r2、Q_r2,C_M)の計算式(数式12)は、二つの項を含む。第1の項のrel(C^r2_J、C^q_M)は数式13で計算される。
Figure JPOXMLDOC01-appb-M000013
 さらに、第2の項のrel(C^(-r2)_JK、C^(-q)_MN)は数式14で計算される。
Figure JPOXMLDOC01-appb-M000014
 数式12~数式14における係数及び項は、それぞれ、数式9のように定義される。
Figure JPOXMLDOC01-appb-M000015
 C^r2_Jは、クエリにおいてユーザが指定した文書カテゴリ値セットにおいて、R2単語r2と単語カテゴリ間関係グラフ500でのエッジを有する文書カテゴリ値セットである。C^q_Mは、クエリにおいてユーザが指定したクエリカテゴリ値セットにおいて、Q単語セットQ_r2,C_MのQ単語qと単語カテゴリ間関係グラフ500でのエッジを有するクエリカテゴリ値セットである。
 C^r2_JKは、データベース110における文書カテゴリ値セットにおいて、R2単語r2とエッジを有する文書カテゴリ値セットである。C^q_MNは、データベース110におけるクエリカテゴリ値セットにおいて、Q単語セットQ_r2,C_MのQ単語qとエッジを有するクエリカテゴリ値セットである。
 関連性スコア演算部150は、単語カテゴリ間関係グラフ502(単語カテゴリ間関係テーブル605)を参照して、R2単語r2とエッジを有する文書カテゴリ値セットを同定できる。さらに、関連性スコア演算部150は、単語カテゴリ間関係グラフ501(単語カテゴリ間関係テーブル600)から、Q単語qとエッジを有するクエリカテゴリ値セットを同定できる。
 カテゴリ値の頻度及びカテゴリ値の相互頻度の計算方法は、R1単語r1のカテゴリ関連性スコアの演算と同様に、カテゴリ間関係グラフ700(カテゴリ間関係テーブル800)から決定できる。
 R2単語r2のカテゴリ連結性スコアsrelの第2の項crel(r2、Q_r2,C_M)は、R2単語r2とQ単語セットQ_r2,C_Mとに関係する、クエリカテゴリ値と文書カテゴリ値との間の連結性を計算する。
 上述のように、crel(r2、Q_r2,C_M)の数式12は、二つの項を含む。数式13を使用して算出される第1の項βrel(C^r2_J、C^q_M)は、C^r2_JとC^q_Mとに連結するカテゴリ値間の連結性を示す。具体的には、当該項は、クエリにおいてユーザに指定された文書カテゴリ値においてR2単語r2と連結する文書カテゴリ値と、クエリにおいてユーザに指定されたクエリカテゴリ値においてQ単語セットQ_r2,C_Mと連結するクエリカテゴリ値と、の間の連結性を示す。
 数式14を使用して算出される第2の項の(1-β)rel(C^(-r2)_JK、C^(-q)_MN)は、C^r2_JとC^q_Mとに連結しないカテゴリ値群間の関連性を示すバランス項である。具体的には、クエリで指定されていない文書カテゴリ値においてR2単語r2と連結する文書カテゴリ値と、クエリにおいて指定されていないクエリカテゴリ値においてQ単語セットQ_r2,C_Mと連結するクエリカテゴリ値と、の間の関連性を示す。
 R1単語のカテゴリ連結性スコアに加え、R2単語r2のカテゴリ連結性スコアを算出することで、よりユーザの望みに合致した検索結果を提示することができる。
 R1単語に加えR2単語のカテゴリ連結性スコアを算出することで、クエリでの指定単語及び指定カテゴリ値のみに限定されず、よりユーザの望みに合致した検索結果を提示することができる。関連性スコア演算部150は、文書のカテゴリ連結性スコアの算出において、R1単語とR2単語のカテゴリ連結性スコアに異なる重み与えてもよい。R2単語のカテゴリ連結性スコアを省略してもよい。クエリにおける文書カテゴリ値は省略してもよい。
 関連性スコア演算部150は、上記式とは異なる式に従って、R単語のカテゴリ連結性スコアを算出してもよい。例えば、数式6において、freq(C_M、C^(-r1)_JK)又はfreq(C^q_M、C^(-r1)_JK)を他の項に加えて又は代えて使用してもよい。つまり、クエリで指定されたクエリカテゴリ値とR1単語r1と連結するクエリで指定されていない文書カテゴリ値との連結性をスコアに組み込んでもよい。数式12においても、R2単語について同様の項を使用してもよい。
 freq(C_M、C^(-r1)_JK)は、クエリで指定されたクエリカテゴリ値とクエリで指定されなかった文書カテゴリ値との連結性を示す。freq(C^q_M、C^(-r1)_JK)は、クエリにおいてユーザが指定したクエリカテゴリ値セットにおいて、Q単語セットQ_r1,C_Mとエッジを有するクエリカテゴリ値と、クエリで指定されなかった文書カテゴリ値との連結性を示す。
 図15は、ユーザが入力したクエリと、データベース110から選択した一つの文書との間のハイパ語彙的連結性スコアを算出する処理のフローチャートを示す。関連性スコア演算部150は、データベース110の文書それぞれについて、ハイパ語彙的連結性スコアを算出する。関連性スコア演算部150は、上記三つのスコアに加えてハイパ語彙的連結性スコアを算出する。または、演算部150は、語彙的連結性スコア及び/若しくはカテゴリ連結性スコアに代えてハイパ語彙的連結性スコアを算出する。
 関連性スコア演算部150は、ユーザインタフェース140からクエリを受信する(S152)。関連性スコア演算部150は、選択した文書から、受信したクエリタイトルのQ単語に対するR1単語とR2単語を選択する(S302)。
 次に、関連性スコア演算部150は、選択したR単語から、複数のR単語ペアを作成する(S303)。各ペアは、二つのR1単語、二つのR2単語、又はR1単語とR2単語とで構成されている。
 次に、関連性スコア演算部150は、各ペアのハイパ語彙的連結性スコアを、単語間関係グラフ300(単語間関係テーブル400)、単語カテゴリ間関係グラフ500(単語カテゴリ間関係テーブル600、605)、及びカテゴリ間関係グラフ700(カテゴリ間関係テーブル800)を使用して算出する(S304)。算出方法は後述する。次に、関連性スコア演算部150は、算出したペアの語彙的連結性スコアを総計し、当該文書のハイパ語彙的連結性スコアを決定する(S305)。
 次に、ハイパ語彙的連結性スコアの算出方法を説明する。関連性スコア演算部150は、R1単語r1のハイパ語彙的連結性スコアp(r1、C_M、C_J)を数式16に従って計算し、R2単語r2のハイパ語彙的連結性スコア(r2、C_M、C_J)を数式17に従って計算する。
Figure JPOXMLDOC01-appb-M000016
Figure JPOXMLDOC01-appb-M000017
 数式16は、クエリで指定されたクエリタイトルのQ単語についての総和を計算し、数式17は、クエリで指定されたクエリタイトルに対するR1単語についての総和を計算する。
 数式16、17から理解されるように、ハイパ語彙的連結性スコアは、R単語の語彙的連結性とカテゴリ連結性(の指数関数値)との積を含み、これら双方の要素を考慮したスコア示すことができる。なお、R1単語とR2単語のハイパ語彙的連結性スコアに、異なる重み与えてもよい。ハイパ語彙的連結性スコアにおいて、クエリにおける文書カテゴリ値やクエリカテゴリ値を省略してもよい。
 図16は、ランク付け集約部160による処理を示す。ランク付け集約部160は、関連性スコア演算部150から、文書の語彙的類似性スコア651、語彙的連結性スコア652、及びカテゴリ連結性スコア653を取得する。
 ランク付け集約部160は、文書の語彙的類似性スコア651から、これら文書の順序リスト654を作成する。ランク付け集約部160は、文書の語彙的連結性スコア652から、これら文書の順序リスト655を作成する。ランク付け集約部160は、文書のカテゴリ連結性スコア653から、これら文書の順序リスト656を作成する。順序リスト654~656は、それぞれ、スコアの降順又は昇順で文書を示す。
 ランク付け集約部160は、三つの順序リスト654~656を集約して、一つのランク付けリスト170を作成する。ユーザインタフェース140は、ランク付けリスト170を表示する。
 例えば、ランク付け集約部160は一つの文書の順序リスト654~656の順位と所定の重み係数の積和により、当該文書の最終的なスコアを決定する。これにより、各スコアのスケールの違いを吸収できる。ランク付け集約部160は、三つのスコアを集約して一つのスコアを算出してもよい。例えば、ランク付け集約部160は、三つのスコアを単に加算する、又は、各スコアに規定の重み付けを行って加算する。
 本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明したすべての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
 また、上記の各構成・機能・処理部等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード等の記録媒体に置くことができる。
 また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしもすべての制御線や情報線を示すとは限らない。実際には殆どすべての構成が相互に接続されていると考えてもよい。

Claims (14)

  1.  データベースにおいてクエリに関係する文書を検索する、検索システムであって、
     クエリタイトル、前記クエリタイトルに割り当てられている文書、前記クエリタイトルに割り当てられているクエリカテゴリ値、及び前記文書に割り当てられている文書カテゴリ値、を格納する、データベースと、
     前記データベースにおける文書内の文書単語と前記文書カテゴリ値との連結関係を示す、単語カテゴリ間関係グラフと、
     前記データベースにおける前記文書カテゴリ値と前記クエリカテゴリ値との間の連結関係を示す、カテゴリ間関係グラフと、
     プロセッサと、を含み、
     前記プロセッサは、
     クエリタイトルと、クエリカテゴリ値と、を指定するクエリを受信し、
     前記データベースからの文書の選択と、前記選択した文書の前記クエリに対するスコアの決定と、を繰り返し、
     前記文書のスコアに基づいて前記文書をランク付けし、
     前記選択された文書のスコアの決定において、
     前記単語カテゴリ間関係グラフにおいて、前記選択された文書内の文書単語に連結する文書カテゴリ値を決定し、
     前記カテゴリ間関係グラフにおける前記決定された文書カテゴリ値と前記指定されたクエリカテゴリ値との連結関係に基づいて、前記選択された文書の前記クエリに対するスコアを決定する、検索システム。
  2.  請求項1に記載の検索システムであって、
     前記データベースにおける文書及びクエリタイトル内の単語間の連結関係を示す、単語間関係グラフをさらに含み、
     前記単語カテゴリ間関係グラフは、前記データベースにおけるクエリタイトル内のクエリ単語とクエリカテゴリ値との間の連結関係をさらに示し、
     前記プロセッサは、
     前記単語間関係グラフ及び前記単語カテゴリ間関係グラフに基づき、前記クエリで指定されたクエリカテゴリ値及び前記選択された文書内の文書単語と連結するクエリ単語を決定し、
     前記単語カテゴリ間関係グラフにおける、前記決定されたクエリ単語と、当該決定されたクエリ単語と連結するクエリカテゴリ値と、の連結関係に基づいて、前記選択された文書の前記クエリに対するスコアを決定する、検索システム。
  3.  請求項2に記載の検索システムであって、
     前記プロセッサは、
     前記単語カテゴリ間関係グラフにおいて、前記クエリで指定されたクエリタイトル内のクエリ単語と連結するクエリカテゴリ値を決定し
     前記カテゴリ間関係グラフにおける前記決定された文書カテゴリ値とクエリカテゴリ値との連結関係に基づいて、前記選択された文書の前記クエリに対するスコアを決定する、検索システム。
  4.  請求項1に記載の検索システムであって、
     前記プロセッサは、
     前記データベースにおいて前記クエリで指定されたクエリタイトル内のクエリ単語と共起する第1種文書単語、及び前記データベースにおいて前記第1種文書単語と共起する第2種文書単語を、前記選択された文書から選択し、
     前記選択された文書から選択された第1種文書単語及び第2種文書単語に基づいて、前記選択された文書のスコアを決定する、検索システム。
  5.  請求項1に記載の検索システムであって、
     前記データベースにおける文書及びクエリタイトル内の単語間の連結関係を示す、単語間関係グラフをさらに含み、
     前記プロセッサは、
     前記データベースにおいて前記クエリで指定されたクエリタイトル内のクエリ単語と共起する第1種文書単語、及び前記データベースにおいて前記第1種文書単語と共起する第2種文書単語を、前記選択された文書から選択し、
     前記単語間関係グラフにおける、前記指定されたクエリタイトル内のクエリ単語と前記第1種文書単語と間の連結関係、及び、前記第1種文書単語と前記第2種文書単語との連結関係、に基づき、前記選択された文書の前記クエリに対する第2スコアを決定し、
     前記第2スコアに基づき前記文書をランク付けする、検索システム。
  6.  請求項1に記載の検索システムであって、
     前記プロセッサは、前記クエリにおいて指定されたクエリタイトル内の索引語による数値ベクトルと、前記選択された文書内の前記索引語による数値ベクトルとに基づき、前記選択された文書の前記クエリに対する第2スコアを決定し、
     前記第2スコアに基づき前記文書をランク付けする、検索システム。
  7.  請求項1に記載の検索システムであって、
     前記データベースにおける文書及びクエリタイトル内の単語間の連結関係を示す、単語間関係グラフをさらに含み、
     前記プロセッサは、前記クエリで指定されたクエリタイトル内のクエリ単語と前記選択された文書内の文書単語との前記単語間関係グラフにおける連結関係に基づき、前記選択された文書の前記クエリに対するスコアを算出する、検索システム。
  8.  データベースにおいてクエリに関係する文書を検索する検索システムが実行する、検索方法であって、
     前記検索システムは、
     クエリタイトル、前記クエリタイトルに割り当てられた文書、前記クエリタイトルに割り当てられているクエリカテゴリ値、及び前記文書に割り当てられている文書カテゴリ値、を格納する、データベースと、
     前記データベースにおける文書内の文書単語と前記文書カテゴリ値との連結関係を示す、単語カテゴリ間関係グラフと、
     前記データベースにおける前記文書カテゴリ値と前記クエリカテゴリ値との間の連結関係を示す、カテゴリ間関係グラフと、を含み、
     前記検索方法は、前記検索システムが、
     クエリタイトルと、クエリカテゴリ値と、を指定するクエリを受信し、
     前記データベースからの文書の選択と、前記選択した文書の前記クエリに対するスコアの決定と、を繰り返し、
     前記文書のスコアに基づいて前記文書をランク付けし、
     前記選択された文書のスコアの決定において、
     前記単語カテゴリ間関係グラフに基づいて、前記選択された文書内の文書単語に連結する文書カテゴリ値を決定し、
     前記カテゴリ間関係グラフにおける前記決定された文書カテゴリ値と前記指定されたクエリカテゴリ値との連結関係に基づいて、前記選択された文書の前記クエリに対するスコアを決定する、検索方法。
  9.  請求項8に記載の検索方法であって、
     前記検索システムは、前記データベースにおける文書及びクエリタイトル内の単語間の連結関係を示す、単語間関係グラフをさらに含み、
     前記単語カテゴリ間関係グラフは、前記データベースにおけるクエリタイトル内のクエリ単語とクエリカテゴリ値との間の連結関係をさらに示し、
     前記検索方法は、前記検索システムが、
     前記単語間関係グラフ及び前記単語カテゴリ間関係グラフに基づき、前記クエリで指定されたクエリカテゴリ値及び前記選択された文書内の文書単語と連結するクエリ単語を決定し、
     前記単語カテゴリ間関係グラフにおける、前記決定されたクエリ単語と、当該決定された連結するクエリ単語と連結するクエリカテゴリ値と、の連結関係に基づいて、前記選択された文書の前記クエリに対するスコアを決定する、検索方法。
  10.  請求項9に記載の検索方法であって、前記検索システムが、
     前記単語カテゴリ間関係グラフにおいて、前記選択された文書内の文書単語と連結する文書カテゴリ値を決定し、
     前記単語カテゴリ間関係グラフにおいて、前記クエリで指定されたクエリタイトル内のクエリ単語と連結するクエリカテゴリ値を決定し
     前記カテゴリ間関係グラフにおける前記決定された文書カテゴリ値とクエリカテゴリ値との連結関係に基づいて、前記選択された文書の前記クエリに対するスコアを決定する、検索方法。
  11.  請求項8に記載の検索方法であって、前記検索システムが、
     前記データベースにおいて前記クエリで指定されたクエリタイトル内のクエリ単語と共起する第1種文書単語、及び前記データベースにおいて前記第1種文書単語と共起する第2種文書単語を、前記選択された文書から選択し、
     前記選択された文書から選択された第1種文書単語及び第2種文書単語に基づいて、前記選択された文書のスコアを決定する、検索方法。
  12.  請求項8に記載の検索方法であって、
     前記検索システムは、前記データベースにおける文書及びクエリタイトル内の単語間の連結関係を示す、単語間関係グラフをさらに含み、
     前記検索方法は、前記検索システムが、
     前記データベースにおいて前記クエリで指定されたクエリタイトル内のクエリ単語と共起する第1種文書単語、及び前記データベースにおいて前記第1種文書単語と共起する第2種文書単語を、前記選択された文書から選択し、
     前記単語間関係グラフにおける、前記指定されたクエリタイトル内のクエリ単語と前記第1種文書単語と間の連結関係、及び、前記第1種文書単語と前記第2種文書単語との連結関係、に基づき、前記選択された文書の前記クエリに対する第2スコアを決定し、
     前記第2スコアに基づき前記文書をランク付けする、検索方法。
  13.  請求項8に記載の検索方法であって、前記検索システムが、
     前記クエリにおいて指定されたクエリタイトルの索引語による数値ベクトルと、前記選択された文書の前記索引語による数値ベクトルとに基づき、前記選択された文書の前記クエリに対する第2スコアを決定し、
     前記第2スコアに基づき前記文書をランク付けする、検索方法。
  14.  請求項8に記載の検索方法であって、
     前記検索システムは、前記データベースにおける文書及びクエリタイトル内の単語間の連結関係を示す、単語間関係グラフをさらに含み、
     前記検索方法は、前記検索システムが、前記クエリで指定されたクエリタイトル内のクエリ単語と前記選択された文書内の文書単語との前記単語間関係グラフにおける連結関係に基づき、前記スコアを算出する、検索方法。
PCT/JP2014/084349 2014-12-25 2014-12-25 検索システム WO2016103409A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/084349 WO2016103409A1 (ja) 2014-12-25 2014-12-25 検索システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/084349 WO2016103409A1 (ja) 2014-12-25 2014-12-25 検索システム

Publications (1)

Publication Number Publication Date
WO2016103409A1 true WO2016103409A1 (ja) 2016-06-30

Family

ID=56149504

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/084349 WO2016103409A1 (ja) 2014-12-25 2014-12-25 検索システム

Country Status (1)

Country Link
WO (1) WO2016103409A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220253447A1 (en) * 2021-02-08 2022-08-11 Robert Bosch Gmbh Interaction layer neural network for search, retrieval, and ranking

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003162531A (ja) * 2001-11-27 2003-06-06 Matsushita Electric Works Ltd 文書検索システムおよび文書検索方法
JP2008282111A (ja) * 2007-05-09 2008-11-20 Hitachi Ltd 類似文書検索方法、プログラムおよび装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003162531A (ja) * 2001-11-27 2003-06-06 Matsushita Electric Works Ltd 文書検索システムおよび文書検索方法
JP2008282111A (ja) * 2007-05-09 2008-11-20 Hitachi Ltd 類似文書検索方法、プログラムおよび装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BALOG, KRISZTIAN ET AL.: "Query Modeling for Entity Search Based on Terms, Categories, and examples", ACM TRANSACTIONS ON INFORMATION SYSTEMS, vol. 29, no. 4, 2011 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220253447A1 (en) * 2021-02-08 2022-08-11 Robert Bosch Gmbh Interaction layer neural network for search, retrieval, and ranking

Similar Documents

Publication Publication Date Title
US11645317B2 (en) Recommending topic clusters for unstructured text documents
US8874583B2 (en) Generating a taxonomy for documents from tag data
EP2823410B1 (en) Entity augmentation service from latent relational data
JP5620913B2 (ja) 検索結果のランク付けのための静的な関連性の特性としてのドキュメント長
JP5316158B2 (ja) 情報処理装置、全文検索方法、全文検索プログラム、及び記録媒体
US10162892B2 (en) Identifying information assets within an enterprise using a semantic graph created using feedback re-enforced search and navigation
US9703860B2 (en) Returning related previously answered questions based on question affinity
US9497277B2 (en) Interest graph-powered search
US20150363476A1 (en) Linking documents with entities, actions and applications
US20110282855A1 (en) Scoring relationships between objects in information retrieval
US20160098444A1 (en) Corpus Management Based on Question Affinity
Enríquez et al. Entity reconciliation in big data sources: A systematic mapping study
US10747759B2 (en) System and method for conducting a textual data search
WO2012117318A1 (en) Generating a semantic graph relating information assets
Sisodia et al. Fast prediction of web user browsing behaviours using most interesting patterns
JP2015106354A (ja) 検索サジェスト装置、検索サジェスト方法、及び、プログラム
Nikas et al. Open domain question answering over knowledge graphs using keyword search, answer type prediction, SPARQL and pre-trained neural models
US10229186B1 (en) Data set discovery engine comprising relativistic retriever
Reddy et al. Text document clustering: the application of cluster analysis to textual document
Lomotey et al. Terms mining in document-based nosql: Response to unstructured data
WO2016103409A1 (ja) 検索システム
Huang et al. Category-level transfer learning from knowledge base to microblog stream for accurate event detection
JP5757187B2 (ja) ファイル格納先候補決定装置、ファイル格納先候補の決定方法、ファイル格納先決定支援システム、並びにコンピュータ・プログラム
EP4184395A1 (en) Recommendations using graph machine learning-based regression
US11500933B2 (en) Techniques to generate and store graph models from structured and unstructured data in a cloud-based graph database system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14909016

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14909016

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP