WO2019239543A1 - 質問応答装置、質問応答方法および記録媒体 - Google Patents

質問応答装置、質問応答方法および記録媒体 Download PDF

Info

Publication number
WO2019239543A1
WO2019239543A1 PCT/JP2018/022712 JP2018022712W WO2019239543A1 WO 2019239543 A1 WO2019239543 A1 WO 2019239543A1 JP 2018022712 W JP2018022712 W JP 2018022712W WO 2019239543 A1 WO2019239543 A1 WO 2019239543A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
user
route
option
unit
Prior art date
Application number
PCT/JP2018/022712
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 JP2020525028A priority Critical patent/JP7259854B2/ja
Priority to US16/973,581 priority patent/US12013849B2/en
Priority to PCT/JP2018/022712 priority patent/WO2019239543A1/ja
Publication of WO2019239543A1 publication Critical patent/WO2019239543A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2452Query translation
    • G06F16/24522Translation of natural language queries to structured queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/282Hierarchical databases, e.g. IMS, LDAP data stores or Lotus Notes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • G06F16/287Visualization; Browsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems

Definitions

  • the present invention relates to a question answering apparatus, a question answering method, and a recording medium.
  • Patent Document 1 describes a dialogue scenario generation system that extracts an operation content from a television operation manual written in a natural language and generates a dialogue scenario. Has been.
  • This dialogue scenario generation system stores in advance information regarding the format of the operation manual and rules for extracting a character string from the operation manual.
  • this interactive scenario generation system extracts user requests such as “turn on TV” and operation procedures such as “press the [Power] button on the remote control” from the operation manual.
  • user requests such as “turn on TV”
  • operation procedures such as “press the [Power] button on the remote control”
  • the developer of the natural language dialogue system inputs processing to be executed by the natural language dialogue system in a format that can be interpreted by the natural language dialogue system according to the user request and the operation procedure.
  • the question answering device When the question answering device extracts an answer to the question from the user from the document, it may be necessary to answer the user. For example, when the question answering device asks about the number of vacation days from the user, the number of days of vacation varies depending on the type of vacation, so the question answering device may ask the user about the type of vacation.
  • the question answering apparatus answers the user and extracts the answer from the document, it is preferable that the processing is relatively small.
  • Patent Document 1 does not describe that the device asks the user for information extraction.
  • the dialogue scenario generation system automatically generates a dialogue scenario without asking a user a question.
  • “options” such as “press any of the [Ground] button, [BS] button, or [CS] button” are included in the dialogue scenario. Is not for extracting information.
  • Patent Document 1 does not describe reducing the burden on the user when the apparatus asks the user for information extraction.
  • An example of an object of the present invention is to provide a question answering apparatus, a question answering method, and a recording medium that can solve the above-described problems.
  • the question answering apparatus includes a type determination unit that determines the type of answer to the question based on a question from a user, and a current position selected from nodes in a hierarchical structure of information.
  • a route selection unit that selects any one of the routes from a node to a matching node that matches the answer type, and an option that presents information indicating the node included in the selected route to the user as an option A processing unit.
  • the question answering method includes the step of determining the type of answer to the question based on the question from the user, and the current position node selected from the nodes in the hierarchical structure of information. Setting a route to a matching node that matches the answer type, and presenting the node included in the route as an option to the user.
  • the recording medium is a computer for determining a type of an answer to the question based on a question from the user, and a current position selected from nodes in the hierarchical structure of information.
  • a recording medium recording a program for executing a step of setting a route from a node to a matching node that matches the answer type and a step of presenting a node included in the route as an option to the user .
  • the question answering device when the question answering device answers the user and extracts the answer from the document, the question answering device requires relatively little processing.
  • FIG. 1 is a schematic configuration diagram illustrating an example of a device configuration of the question answering system according to the first embodiment.
  • the question answering system 1 includes a question answering device 100, a document data management device 200, an auxiliary information providing device 300, a user terminal device 400, and a communication network 900.
  • the question answering system 1 is a system that answers a user's question.
  • the document data management apparatus 200 stores a document serving as an information source for answering a user's question as document data, and functions as a data server.
  • the document data management apparatus 200 is configured using a computer such as a workstation or a personal computer (PC).
  • the document data management apparatus 200 stores document data that can extract a hierarchical structure of a document, such as document data of a structured document (Structured Documents) or document data of a semi-structured document (Semi-Structured Documents).
  • document data such as document data of a structured document (Structured Documents) or document data of a semi-structured document (Semi-Structured Documents).
  • in-house documents such as work rules as document data
  • the document data stored in the document data management apparatus 200 is not limited to the document data of the in-house document.
  • there are various types of documents such as a document used in a system for diagnosing a system failure and a document used in education. It can be a kind of document data.
  • the document data includes information about the question from the user.
  • the document data includes information such as answers to questions or candidates that may be answers to questions.
  • the document data includes information associated with the user's question, such as a user query node described later.
  • the question answering device 100 traces the structure of the document data using information associated with the user's question, thereby acquiring information that becomes an answer to the user's question among the answer candidate information and answers the user.
  • information is recorded in a hierarchy of upper items, lower items, and the like.
  • information represented in a table format such as a table element of HTML (Hypertext Markup Language) may also be represented in a hierarchical structure.
  • the document data management apparatus 200 extracts information that is an answer to the question from the user from the document data in accordance with the operation performed by the user on the question answering apparatus 100. In other words, the document data management apparatus 200 selects information that matches the question and operation performed by the user from the information indicated by the document data. That is, the user operates the question answering apparatus 100 and inputs a question in order to obtain an answer to the question from the document data. The document data management apparatus 200 selects information that matches the operation performed by the user and the question from the information indicated by the document data. As will be described later, the number of items of information selected by the document data management apparatus 200 from the information indicated by the document data is not limited to one, and may be a plurality of items.
  • the question answering apparatus 100 executes processing for answering a user's question.
  • the question answering apparatus 100 is configured using a computer such as a workstation or a personal computer.
  • the question answering apparatus 100 extracts the hierarchical structure of the document based on the inter-document relation and the intra-document relation of the document data stored in the document data management apparatus 200, and forms the hierarchical structure of the document data. deep.
  • the document data hierarchically structured by the question answering apparatus 100 is referred to as hierarchical structure data.
  • the question answering apparatus 100 may store the hierarchical structure data, or a device other than the question answering apparatus 100 such as the document data management apparatus 200 may store the hierarchical structure data.
  • the question answering apparatus 100 converts document data into data having a tree structure in a hierarchical structure
  • the question answering apparatus 100 When there are a plurality of documents to search for answers, for example, the question answering apparatus 100 generates one tree obtained by merging trees for each document as hierarchical structure data.
  • Various information on a document for which an answer is to be searched is arranged in a node (Node) of the tree structure generated by the question answering apparatus 100.
  • An edge between two nodes indicates that the information indicated by each of these two nodes is associated. For example, when there is an inclusion relationship between two pieces of information, an edge is set between the two pieces of information. Alternatively, an edge is set between a node indicating certain information and a node indicating a value related to the information.
  • the information regarding the node is not limited to the example described above.
  • the hierarchical structure data handled by the question answering apparatus 100 is not limited to tree-structured data, and can be data having various structures in which a partial order (Partially Order) is determined between nodes and there is no loop.
  • the question answering apparatus 100 may handle hierarchical data having a directed acyclic graph (Directed Acyclic Graph) structure.
  • the question answering apparatus 100 Upon receiving a question from the user, the question answering apparatus 100 traces the node according to the data structure of the hierarchical structure data, reaches the node indicating the answer, and outputs the answer. When there are a plurality of node candidates to be traced, the question answering apparatus 100 asks the user a question and selects a node according to the user's response. Below, the question from a user is called a user query. A question from the question answering device 100 to the user is referred to as a question answer.
  • the question answering apparatus 100 determines the type of answer based on the question from the user. Then, the question answering apparatus 100 determines whether or not the information indicated by the node reachable from the current node matches the answer type. When the information indicated by the reachable node does not match the answer type, the question answering apparatus 100 narrows down the answer candidates by not including the node in the candidate nodes indicating the answer.
  • the type here is a condition for selecting information in the document.
  • the type of answer here is the type assumed for the answer.
  • the type determination unit 184 sets the answer type based on the user query. Units can be used as types. For example, when the user query is an inquiry about the number of days off, the type determination unit 184 sets the answer type to indicate that the unit is a day, such as 1 day, 2 days, or 3 days.
  • the answer type is referred to as an answer type.
  • the auxiliary information providing apparatus 300 stores auxiliary information.
  • the auxiliary information here is information for selecting one of the candidates when there are a plurality of candidate nodes to be traced by the question answering apparatus 100. Since the question answering apparatus 100 does not need to ask a question by selecting a node using auxiliary information, for example, in the question answering apparatus 100 as an expert system, the processing required for interactive processing with the user is reduced. Can do.
  • auxiliary information used by the question answering apparatus 100 is not limited to the information on the number of years of service of the employee, and may be any information that can select any of the node candidates that the question answering apparatus 100 follows.
  • the user terminal device 400 functions as a user interface in the question answering system 1.
  • the user terminal device 400 displays various images in accordance with instructions from the question answering device 100.
  • the user terminal device 400 receives a user operation and transmits data indicating the performed user operation to the question answering device 100.
  • data indicating a user operation is referred to as input data.
  • the user terminal device 400 is configured using a computer such as a personal computer, a tablet terminal device, or a smartphone.
  • the number of user terminal devices 400 should just be one or more.
  • the communication network 900 mediates communication among the question answering device 100, the document data management device 200, and the user terminal device 400.
  • Various types of communication networks can be used as the communication network 900.
  • the communication network 900 may be a local area network (LAN) such as an in-house network.
  • the communication network 900 may be the Internet.
  • any one or more of the document data management apparatus 200, the auxiliary information providing apparatus 300, the user terminal apparatus 400, and the communication network 900 may be configured as an apparatus outside the question answering system 1.
  • any one or more of the question answering device 100, the document data management device 200, the auxiliary information providing device 300, the user terminal device 400, and the communication network 900 may be configured as one device.
  • the question answering device 100 may be configured to include the function of the user terminal device 400.
  • the auxiliary information providing apparatus 300 is not essential for the question answering system 1.
  • the question answering apparatus 100 cannot use auxiliary information.
  • the question answering apparatus 100 can narrow down the candidates of the nodes to be traced without performing the auxiliary information by performing the inquiry.
  • the question answering apparatus 100 directly obtains hierarchical structure data instead of obtaining document data, the document data management apparatus 200 is not essential for the question answering system 1.
  • FIG. 2 is a schematic block diagram illustrating an example of a functional configuration of the question answering apparatus 100 according to the first embodiment.
  • the question answering apparatus 100 includes a response side communication unit 110, a response side storage unit 170, and a response side control unit 180.
  • the response side control unit 180 includes a hierarchical structure data generation unit 181, a user query processing unit 182, a route selection unit 185, an option processing unit 186, and an information search unit 187.
  • the user query processing unit 182 includes a topic processing unit 183 and a type determination unit 184.
  • the responding communication unit 110 communicates with other devices.
  • the responding communication unit 110 receives document data from the document data management apparatus 200.
  • the responding communication unit 110 transmits various data to be displayed on the user terminal device 400 to the user terminal device 400 and receives input data from the user terminal device 400.
  • the input data is data indicating a user operation accepted by the user terminal device 400.
  • the response side communication unit 110 transmits image data to the user terminal device 400 according to the control of the response side control unit 180 to display an image
  • the data transmitted from the responding communication unit 110 to the user terminal device 400 is not limited to image data.
  • the responding communication unit 110 transmits data such as a character string or a numerical value to the user terminal device 400, and the user terminal device 400 generates image data using these data and displays the image. Also good.
  • the responding communication unit 110 transmits data in a display format (Format) to the user terminal device 400 in addition to data such as a character string or a numerical value, and the user terminal device 400 displays an image according to the display format. It may be.
  • a display format Form
  • the response side storage unit 170 stores various data.
  • the response side storage unit 170 stores hierarchical structure data.
  • the response side storage unit 170 is configured using a storage device provided in the question answering apparatus 100.
  • the response side control unit 180 controls each unit of the question answering apparatus 100 to execute various processes.
  • the response side control unit 180 is configured by a CPU (Central Processing Unit) included in the question answering apparatus 100 reading out and executing a program from the response side storage unit 170.
  • a CPU Central Processing Unit
  • the hierarchical structure data generation unit 181 performs the hierarchical structure of the document data described above.
  • a known method can be used as a method for the hierarchical structure data generation unit 181 to hierarchically structure the document data.
  • the hierarchical structure of the document may be extracted based on the heading tag (from the h1 tag to the h6 tag) in the document data.
  • the hierarchical structure data generation unit 181 determines whether the document data is based on the class attribute such as the P element or the DIV element or the font designation.
  • a hierarchical structure may be extracted.
  • the user query processing unit 182 processes a user query.
  • the topic processing unit 183 extracts a topic from the user query, detects a node most similar to the topic among the nodes of the hierarchical structure data, and sets it as a user query node.
  • the topic here is the subject of the question (that is, a keyword indicating the content of the question). For example, when the user query is “What is the number of days off?”, The topic processing unit 183 extracts “vacation” as a topic.
  • the topic processing unit 183 may analyze the syntax of the user query and specify the topic in the user query by comparing the result of the syntax analysis with a template stored in advance.
  • the method by which the topic processing unit 183 extracts topics from the user query is not limited to this, and various methods can be used.
  • the topic processing unit 183 calculates the degree of morpheme matching between the node and the user query for each node of the solution layer structure data using, for example, a Jaccard coefficient. Specifically, the topic processing unit 183 calculates Expression (1) as the degree of morpheme match between the node and the user query.
  • setX indicates a set of morphemes included in the user query.
  • setY indicates a set of morphemes included in the node.
  • the number of elements in the set is indicated by
  • the number of elements in the set “S” is expressed as “
  • Expression (1) represents a value obtained by dividing the number of morphemes common to the node and the user query by the number of morphemes included in at least one of the user query and the node.
  • the method by which the topic processing unit 183 calculates the similarity between the user query and the node is not limited to the method using the formula (1), and various methods can be used.
  • the type determination unit 184 determines the type of answer to the question based on the question (user query) from the user. As described above, the type here is a condition for selecting information in the document.
  • the route selection unit 185 selects one of the routes from the selected current position node to the matching node matching the answer type among the nodes in the information hierarchical structure (hierarchical structure data). Then, the route selection unit 185 reselects the route in accordance with the user's response to the option presented by the option processing unit 186 by asking the user.
  • the route selected by the route selection unit 185 is a sequence of edges from the current node to a node that matches the answer type. Therefore, the route selection by the route selection unit 185 corresponds to selecting an information group including information indicated by the current node and information suitable for the answer type from the background knowledge (information). That is, the route selection by the route selection unit 185 corresponds to selecting the information indicated by the current node and the knowledge information that matches the answer type.
  • the route selected by the route selection unit 185 can be regarded as a hypothesis in hypothesis inference. Presenting the information indicated by the node on the route to the user and receiving an answer can be regarded as verifying the hypothesis. In this case, the route selection unit 185 maintains a hypothesis when the user's answer can be affirmed, and reestablishes the hypothesis when the answer is negative. The route selection unit 185 repeats this process until it reaches a leaf, so that a correct hypothesis can be obtained and an answer requested by the user can be obtained. As will be described later, an inference engine may be used as the route selection unit 185. The route selected by the route selection unit 185 among the routes from the current position node to the matching node is referred to as a selected route.
  • the route selection unit 185 selects one route. When the user's response to the inquiry indicates that a node included in the selected route is not selected, the route selecting unit 185 reselects the selected route as one route other than the selected route.
  • the current position node is a node selected from the nodes of the hierarchical structure data. In the initial setting, the route selection unit 185 sets the user query node as the current position node. When there is only one node that can reach the candidate node indicating the answer to the user query among the child nodes of the current position node, the route selection unit 185 updates the current position node to the child node.
  • the node candidates indicating the answer to the user query are nodes that are not excluded from the candidate nodes indicating the answer to the user query among the matching nodes. The route selection unit 185 performs this exclusion based on the user's response to the inquiry.
  • the conforming node is a node conforming to the answer type. That is, the conforming node is a node that satisfies the condition indicated by the answer type.
  • the route selection unit 185 sets the matching node as the answer candidate node.
  • the answer candidate node is a node set by the route selection unit 185 as a node candidate indicating an answer to the user query.
  • the path selection unit 185 may match the candidate node indicating the answer to the user query with the answer candidate node. In this case, the route selection unit 185 sets all matching nodes as answer candidate nodes by default. When any one of the answer candidate nodes is excluded from the candidate nodes indicating the answer to the user query by the user's response to the answer, the route selection unit 185 sets the answer candidate node for the node. To release. If the candidate node indicating the answer to the user query matches the answer candidate node, the route selection unit 185 traces the ancestor node from the answer candidate node to the current position node, so that the answer candidate node from the current position node The route to can be selected.
  • the route selection unit 185 may set any one of the node candidates indicating an answer to the user query as the answer candidate node. For example, when the route selection unit 185 reaches the matching node by tracing the descendant node from the current position node, the route selection unit 185 selects the route from the current position node to the destination node, and sets the destination node as the answer candidate node You may make it do.
  • FIG. 3 is a diagram illustrating a first example of the current position node and the answer candidate node.
  • FIG. 3 shows an example in which the hierarchical structure data is tree-structured data and the route selection unit 185 sets one answer candidate node.
  • the route selection unit 185 sets the node N111 among the nodes of the hierarchical structure data as the user query node, and sets the node N111 that is the user query node as the current position node in the initial setting. Nodes N121 to N124 correspond to the matching nodes.
  • the route selection unit 185 sets the node N121 among the matching nodes as the answer candidate node. Further, the route selection unit 185 selects the route R11 from the node N111 that is the user query node to the node N121 that is the answer candidate node.
  • Nodes N122 to N124 in FIG. 3 are table items in the document before conversion into document data.
  • a “table” node is provided, and nodes N122 to N124 are child nodes of this “table” node.
  • the table format information is also in a tree-structured framework like other format information. It can be handled in a unified manner.
  • FIG. 4 is a diagram showing a second example of the current position node and the answer candidate node.
  • FIG. 4 shows an example in which the hierarchical structure data is tree-structured data and the route selection unit 185 sets a plurality of answer candidate nodes.
  • the route selection unit 185 sets the node N111 among the nodes of the hierarchical structure data as the user query node, and sets the node N111 that is the user query node as the current position node in the initial setting. .
  • nodes N121 to N124 correspond to conforming nodes.
  • the route selection unit 185 sets all the nodes N121 to N124 that are matching nodes as answer candidate nodes.
  • the route selection unit 185 selects the route R11 from the node N111 that is the user query node to the node N121 that is one of the answer candidate nodes.
  • the option processing unit 186 presents information indicating nodes included in the route selected by the route selecting unit 185 to the user as options.
  • the presentation of the options performed by the option processing unit 186 corresponds to the above-described question answering example.
  • a node indicated by information presented to the user as an option is referred to as an option node.
  • the options presented to the user by the option processing unit 186 are associated with the nodes one-on-one.
  • the route selection unit 185 selects a node corresponding to the selected option, and selects a route including the node of the option. By selecting the route, node candidates indicating answers to the user query are narrowed down to nodes on the selected route.
  • selecting that node When a user selects an option indicating a certain node, it is referred to as selecting that node.
  • the route selection unit 185 decides not to select a node corresponding to the option, and the route selection unit 185 does not select a route including the node. It is fixed. By confirming that the route is not selected, node candidates that indicate an answer to the user query are narrowed down to nodes on routes other than the route that is determined not to be selected.
  • the option processing unit 186 presents only the nodes included in the route selected by the route selection unit 185 among the child nodes of the current position node to the user as options nodes, and asks the user whether to select or exclude the node. You may make it inquire.
  • FIG. 5 is a diagram illustrating a first example of nodes extracted by the option processing unit 186 as option nodes.
  • the node N131 is included in the route R11.
  • the option processing unit 186 presents the node N131 to the user as an option node, and inquires of the user whether or not to select the node N131.
  • FIG. 6 is a diagram illustrating a first example of an option display screen (Picture).
  • the option processing unit 186 presents the options to the user by causing the user terminal device 400 to display an option display screen.
  • the user terminal device 400 is displayed with an option display screen including the display items.
  • the route selection unit 185 reselects the selected route as a route that does not pass through the node N131.
  • FIG. 7 is a diagram illustrating an example of a route that the route selection unit 185 reselects.
  • FIG. 7 shows an example in which the user selects “(N) Other” in FIG. 6 while the route selection unit 185 has selected the route R11 in FIG.
  • the path selection unit 185 excludes the node N121, which is a descendant of the node N131, from the node candidates indicating the answer to the user query.
  • a node that is determined not to be selected by the user is referred to as a negative node.
  • the node N131 corresponds to an example of a negative node.
  • the route selection unit 185 has selected the node N123 as the answer candidate node.
  • the route selection unit 185 selects the route R12 that is the route from the node N111 that is the current position node to the node N123 that is the answer candidate node.
  • the route R12 includes the node N132 among the child nodes of the node N111 that is the current position node.
  • FIG. 8 is a diagram illustrating a second example of the option display screen.
  • the user terminal device 400 is displayed with an option display screen including the display item “
  • the route selection unit 185 updates the current position node from the node N111 to the node N132.
  • the route selection unit 185 reselects the selected route as a route from the node N132 that is the current position node to the node N132 that is the answer candidate node.
  • the option processing unit 186 may extract all nodes that can reach the answer candidate node among the child nodes of the current position node as options nodes. Since the route set by the route selection unit 185 can reach the answer candidate node, the option processing unit 186 presents information indicating the node included in the route selected by the route selection unit 185 to the user as one of the options. .
  • FIG. 9 is a diagram illustrating a second example of nodes that the option processing unit 186 extracts as option nodes.
  • the option processing unit 186 extracts a node that can reach the answer candidate node from among the child nodes of the node N111 that is the current position node as an option node.
  • Each of the nodes N131 and N132 illustrated in FIG. 9 is a child node of the node N111 and can reach the answer candidate node.
  • the option processing unit 186 extracts the nodes N131 and N132 as option nodes.
  • FIG. 10 is a diagram showing a third example of the option display screen.
  • FIG. 10 shows an example of an option display screen when the option processing unit 186 extracts all nodes that can reach the answer candidate node among the child nodes of the current position node as options nodes.
  • the display item “(1) Special leave” corresponds to the option node N131 in FIG.
  • the display item “(2) Annual vacation” corresponds to the option node N132 in FIG.
  • the route selection unit 185 sets the node corresponding to the selected option as the current position node. For example, when the user selects “(2) Annual vacation”, the route selection unit 185 changes the current position node from the node N111 in FIG. 9 to the node N132.
  • the information search unit 187 searches for information for the route selection unit 185 to reselect a route.
  • Information for the route selection unit 185 to reselect a route is the auxiliary information described above.
  • the option processing unit 186 suppresses the presentation of options. Specifically, the option processing unit 186 does not perform the above-described inquiry.
  • the route selection unit 185 sets the node N132 as the current position node. If the answer candidate nodes are only the nodes N122 to N124 among the descendant nodes of the node N132, if the information search unit 187 can acquire auxiliary information indicating the years of service of the user, the route selection unit 185 again An answer to the user query can be obtained without having to ask the user.
  • FIG. 11 is a schematic block diagram illustrating an example of a functional configuration of the user terminal device 400.
  • the user terminal device 400 includes a terminal side communication unit 410, a display unit 420, an operation input unit 430, a terminal side storage unit 470, and a terminal side control unit 480.
  • the terminal side communication unit 410 communicates with other devices.
  • the terminal-side communication unit 410 receives various data to be displayed by the user terminal device 400 from the question answering device 100 and transmits input data indicating the user operation accepted by the user terminal device 400 to the question answering device 100.
  • the display unit 420 includes a display device such as a liquid crystal panel or an LED (Light Emitting Diode) panel, and displays various images.
  • the operation input unit 430 includes input devices such as a keyboard and a mouse, and accepts user operations.
  • the terminal side storage unit 470 stores various data.
  • the terminal side storage unit 470 is configured using a storage device provided in the user terminal device 400.
  • the terminal-side control unit 480 controls each unit of the user terminal device 400 and executes various processes.
  • the terminal-side control unit 480 is configured by a CPU included in the user terminal device 400 reading out a program from the terminal-side storage unit 470 and executing it.
  • an inference engine can be used.
  • a child node of the node and a combination of edges between these nodes can be associated with knowledge in the inference.
  • Knowledge is a rule given as a fact, and a set of knowledge is also referred to as background knowledge.
  • the rules here represent a relationship such as a causal relationship, a context, or an implication relationship in the form of antecedent ⁇ consequent. This rule is such that if the antecedent holds, the consequent holds.
  • Propositional logic or predicate logic can be used as a description method of the antecedent and the consequent.
  • the user query and the user's response to the query are translated into observation and negation.
  • the observation here is a true proposition and is also called observation fact. Denial is a false proposition.
  • the route from the current position node to the answer candidate node can be associated with a hypothesis in inference.
  • the hypothesis here consists of a set of rules assumed to explain the observation. Selection of a route from the current position node to the answer candidate node can be associated with making a hypothesis.
  • a deductive inference engine that traces rules from the antecedent to the antecedent can be used, or an inductive inference engine that traces rules from the antecedent to the antecedent can be used. it can.
  • a deductive inference engine is used as the route selection unit 185, a candidate node can be detected by tracing descendant nodes from the current position node and reaching a matching node.
  • the route selection unit 185 When an inductive inference engine is used as the route selection unit 185, it is possible to detect a route as a hypothesis candidate by tracing an ancestor node from the matching node and reaching the current position node.
  • an inference engine that uses both the deduction method and the induction method may be used.
  • a hypothesis candidate path can be detected by using a process of tracing a descendant node from the current position node and a process of tracing an ancestor node from the matching node.
  • FIG. 12 is a flowchart illustrating an example of a processing procedure in which the question answering apparatus 100 answers a user query.
  • the responding communication unit 110 acquires a user query (step S101). Specifically, the user terminal device 400 receives a user operation for inputting a user query and transmits input data to the question answering device 100, and the responding communication unit 110 receives the input data from the user terminal device 400.
  • the topic processing unit 183 sets a user query node based on the user query (step S102). Specifically, the topic processing unit 183 extracts topics from the user query. Then, the topic processing unit 183 sets one of the nodes of the hierarchical structure data as a user query node based on the extracted topic. Then, the route selection unit 185 initially sets the node set by the topic processing unit 183 as the user query node as the current position node (step S103).
  • the type determination unit 184 determines the answer type based on the user query (step S104). Then, the route selection unit 185 sets an answer candidate node based on the answer type, and selects a route from the current position node to the answer candidate node (step S105). The route selection unit 185 may select a route from the current position node to the answer candidate node after setting the answer candidate node. Alternatively, the route selection unit 185 traces descendant nodes from the current position node, and determines whether or not the destination node matches the answer type, thereby setting the answer type and selecting the route. It may be.
  • the option processing unit 186 makes an inquiry to the user (step S106). As described above, the option processing unit 186 presents only the nodes included in the route selected by the route selection unit 185 among the child nodes of the current position node to the user as options nodes, and determines whether to select the node. You may make it inquire the user. Alternatively, the option processing unit 186 may extract all nodes that can reach the answer candidate node among the child nodes of the current position node as options nodes, and inquire the user as to which of the extracted options is selected. .
  • the response side communication part 110 acquires the user's response with respect to an inquiry (step S107). Specifically, the user terminal device 400 receives a user's response input operation and transmits input data indicating the received input operation to the question answering device 100. The response side communication unit 110 receives this input data, and acquires the user's response to the inquiry.
  • the route selection unit 185 determines whether or not the child nodes that can reach the answer candidate node among the child nodes of the current position node have been narrowed down to one (step S108). When it is determined that the number of child nodes that can reach the answer candidate node has been narrowed down to one (step S108: YES), the route selection unit 185 updates the current position node to the child node (step S109).
  • the route selection unit 185 determines whether an answer has been acquired (step S110). Specifically, the route selection unit 185 determines whether or not the current position node has reached the answer candidate node. When it is determined that no answer has been acquired (step S110: NO), the route selection unit 185 reselects the selected route as a new route (step S121). After step S121, the process returns to step S106.
  • step S110 when it is determined in step S110 that an answer has been acquired (step S110: YES), the route selection unit 185 presents the answer to the user (step S131). Specifically, the route selection unit 185 extracts a response from the response candidate node that the current position node has reached, transmits the response to the user terminal device 400 via the response side communication unit 110, and transmits the response to the user terminal device 400. An answer is displayed on the display unit 420. After step S131, the question answering apparatus 100 ends the process of FIG. On the other hand, when the route selection unit 185 determines in step S108 that the number of child nodes that can reach the answer candidate node has not been narrowed down to one (step S108: NO), the process proceeds to step S110.
  • the type determination unit 184 determines the type of answer to the question based on the question from the user.
  • the route selection unit 185 selects one of the routes from the selected current position node to the matching node that matches the answer type among the nodes in the hierarchical structure data.
  • the option processing unit 186 presents information indicating the nodes included in the selected route as options to the user.
  • the route selection unit 185 selects a route that can reach the conforming node, so that an option that can reach the conforming node can be preferentially presented to the user, or the conforming node cannot be reached.
  • the presentation of options can be suppressed. That is, the route selection unit 185 can preferentially present options that may be able to obtain answers to the user. Alternatively, the route selection unit 185 can present only options with a possibility of obtaining an answer to the user.
  • the question answering apparatus 100 determines whether the number of times the question answering apparatus 100 presents the options again before the user selects any option is relatively small.
  • the question answering device 100 in this respect, when the question is answered to the user and the answer is extracted from the document, the question answering device 100 requires relatively little processing. Further, according to the question answering apparatus 100, the time until the answer to the question can be obtained is relatively small because the number of times the question answering apparatus 100 presents the option again before the user selects any option is sufficient. Is expected to be relatively short.
  • the user can determine whether or not to select an option in preference to an option that may obtain an answer. Alternatively, the user can determine whether or not to select only an option for which an answer can be obtained, or which option to select. According to the question answering apparatus 100, in this respect, it is expected that the number of times that the user determines the choice of the option is relatively small, and the burden on the user is relatively small.
  • the route selection unit 185 reselects the route according to the user's response to the presentation of the options. Accordingly, the question answering apparatus 100 can obtain an answer by repeating relatively simple processing of presenting options to the user and reselecting a route according to the response. In this respect, processing of the question answering apparatus 100 can be relatively small. In addition, since the processing performed by the question answering apparatus 100 is relatively simple, the processing capability of the question answering apparatus 100 may be relatively small, and the manufacturing cost of the question answering apparatus 100 can be relatively reduced.
  • the route selection unit 185 selects one route, and when the user response indicates that a node included in the selected route is not selected, the route selection unit 185 re-selects one route other than the selected route.
  • the user may make a relatively simple determination of determining whether to select the presented option.
  • the burden on the user is relatively small in this respect.
  • the information search unit 187 searches for information for selecting a route again.
  • the option processing unit 186 suppresses the presentation of options when the information search unit 187 acquires information for selecting a route again.
  • the option processing unit 186 suppresses the presentation of the options, so that the options presented to the user can be relatively small. According to the question answering apparatus 100, the burden on the user is relatively small in this respect.
  • the question answering apparatus 100 may select a plurality of routes. In the second embodiment, this case will be described.
  • the apparatus configuration of the question answering system according to the second embodiment is the same as that of the first embodiment, and FIG. 1 is cited.
  • the functional configuration of the user terminal device 400 according to the second embodiment is the same as that in the first embodiment, and FIG. 11 is cited.
  • FIG. 13 is a schematic block diagram illustrating an example of a functional configuration of the question answering apparatus 100 according to the second embodiment.
  • the configuration shown in FIG. 13 is different from the route selection unit 185 in FIG. 1 in that the route selection unit 191 includes an evaluation value calculation unit 192.
  • 13 is different from the option processing unit 186 in FIG. 1 in that the option processing unit 193 includes a display number prediction unit 194 and a display format determination unit 195.
  • the second embodiment is the same as the first embodiment in other points.
  • the question answering apparatus 100 corresponds to an example of a display format determining apparatus, and determines a display format of options presented to the user.
  • the route selection unit 191 selects one of the routes from the selected current position node among the nodes in the information hierarchical structure (hierarchical structure data) to the matching node that matches the answer type. Select a route. Then, the route selection unit 185 reselects the route in accordance with the user's response to the option presented by the option processing unit 186 by asking the user.
  • the route selection unit 191 selects k routes. k is an integer constant of 2 or more set in advance.
  • the route selection unit 191 selects the route with the node selected by the user as the current position node. cure.
  • the value of k may be set to 1. In this case, like the route selection unit 185, the route selection unit 191 selects one route and reselects the route according to the user's response to the inquiry.
  • the evaluation value calculation unit 192 calculates an evaluation value for each route from the current position node to the answer candidate node.
  • the evaluation value calculation unit 192 calculates a high evaluation value for a route including an option node that is likely to be selected by the user in response to the inquiry.
  • the response side storage unit 170 stores, for each node of the hierarchical structure data, a history that the user has selected that node in response to the inquiry. Then, for each path from the current position node to the answer candidate node, the evaluation value calculation unit 192 calculates the number of times the user has selected a node included in the path from the child nodes of the current position node. Calculate as The route selection unit 191 selects k routes in descending order of evaluation calculated by the evaluation value calculation unit 192.
  • FIG. 14 is a diagram illustrating a first example of a plurality of routes selected by the route selection unit 191.
  • the route selection unit 191 sets the node N111 among the nodes of the hierarchical structure data as the user query node, and sets the node N111 that is the user query node as the current position node in the initial setting. .
  • the nodes N121 to N124 correspond to the matching nodes.
  • the route selection unit 191 sets all the nodes N121 to N124 that are matching nodes as answer candidate nodes.
  • the route selection unit 191 selects three routes R21, R22, and R23.
  • the route R21 is a route from the node N111 to the node N121.
  • the route R22 is a route from the node N111 to the node N123.
  • the route R23 is a route from the node N111 to the node N122.
  • the evaluation value calculation unit 192 of the route selection unit 191 calculates an evaluation value for each route from the current position node to all the answer candidate nodes, and the route selection unit 191 selects the routes R21, R22, and R23 in descending order of evaluation value. Three routes are selected.
  • FIG. 15 is a diagram illustrating a second example of a plurality of routes selected by the route selection unit 191.
  • FIG. 15 shows an example when the user selects the node N132 in response to the inquiry in the example of FIG.
  • the route selection unit 191 resets the current position node to the node N132, and selects three routes R31, R32, and R33.
  • the route R31 is a route from the node N111 to the node N123.
  • the route R32 is a route from the node N111 to the node N122.
  • the route R33 is a route from the node N111 to the node N124.
  • the evaluation value calculation unit 192 of the route selection unit 191 calculates an evaluation value for each route from the current position node to all the answer candidate nodes, and the route selection unit 191 selects the routes R31, R32, and R33 in descending order of evaluation value. Three routes are selected.
  • the route selection unit 191 calculates the evaluation value of the route
  • a known method such as a method of calculating a hypothesis cost in Hobbs's Weighted Abduction can be used.
  • the method by which the route selection unit 191 calculates the evaluation value of the route is not limited to a specific method as long as it is a method that can calculate the evaluation value of the possibility of obtaining an answer to the user query on the route.
  • the option processing unit 193 presents information indicating nodes included in the route selected by the route selection unit 191 to the user as options.
  • the presentation of the options performed by the option processing unit 193 corresponds to the above-described question answering example.
  • the display number prediction unit 194 calculates a value indicating the prediction of the number of options displayed until any option is selected based on the index value given for each option in the inquiry.
  • the display number prediction unit 194 calculates, for each option, the probability that the user selects the option based on the history of interaction between the question answering system 1 and the user, or the browsing history of the page of the document by the user. It may be used as an index value. However, the index value used by the display number prediction unit 194 is not limited to a specific one as long as it indicates the degree of possibility that the user can select the option for each option. The total of the index values of all options may not be 1. For example, the evaluation value calculated for each route by the route selection unit 191 may be used as an index value of an option indicating a node included in the route.
  • the display format determination unit 195 determines the display format of the options based on the calculated value.
  • FIG. 16 is a diagram illustrating a first example of a hierarchized pattern of display items.
  • all of the three display items c1, c2, and c3 are included in the first hierarchy.
  • each layer indicates a display item group to be displayed on one screen.
  • the layer number (“i” of “i-th layer”, i is a positive integer) indicates an identifier for identifying the layer.
  • the number of the display item (“j” of “cj”, where j is a positive integer) indicates an identifier for identifying the display item.
  • the pattern in FIG. 16 indicates that three display items c1, c2, and c3 are displayed on one screen in the order of c1, c2, and c3 from the top, for example.
  • the pattern in FIG. 16 is referred to as a first pattern.
  • the first pattern corresponds to an example of a display format.
  • FIG. 17 is a diagram illustrating an example of a display screen when the option processing unit 193 selects the first pattern.
  • FIG. 17 shows an example in which there are three options of daily allowance, auxiliary allowance, and special allowance in response to a user query for inquiring about the amount of allowance.
  • the evaluation value calculation unit 192 calculates high evaluation values in the order of daily allowance, auxiliary allowance, and special allowance.
  • the option processing unit 193 generates image data of a display screen that displays all three options of daily allowance, auxiliary allowance, and special allowance according to the first pattern.
  • the option processing unit 193 displays the three options from the top in the order of daily allowance, auxiliary allowance, and special allowance based on the evaluation value calculated by the evaluation value calculating unit 192.
  • Area A111 is a display area for daily allowance, which is the first option. “(1)” in the area A111 indicates the number “1” for user operation.
  • Area A112 is a display area for auxiliary allowance which is the second option. “(2)” in the area A112 indicates the number “2” for user operation.
  • Area A113 is a display area for a special allowance that is the third option. “(3)” in the area A113 indicates the number “3” for user operation.
  • the display unit 420 of the user terminal device 400 displays the display screen of FIG. 17 in accordance with an instruction from the option processing unit 193.
  • the user can select one of the options by performing a user operation with the operation input unit 430. Specifically, the user can select the daily allowance by performing a mouse click or touch operation on the area A111 or pressing a button “1” on the keyboard. In addition, the user can select an auxiliary allowance by performing a mouse click or touch operation on the area A112 or pressing a “2” button on the keyboard. In addition, the user can select an auxiliary allowance by performing a mouse click or touch operation on the area A113 or pressing a “3” button on the keyboard.
  • Area A121 is an area for receiving a user operation for instructing display of the previous screen.
  • the previous screen here is the screen that the display unit 420 displayed immediately before.
  • Area A122 is an area for receiving a user operation instructing to return to the first screen when there are a plurality of option display screens. When the user wants to return to the first screen among the option display screens and perform the operation again, the user clicks or touches the area A122 to display the first screen on the display unit 420.
  • Area A121 is an area for receiving a user operation for instructing display of the next screen.
  • the next screen here is a screen before returning to the previous screen when the display unit 420 returns to the display of the previous screen.
  • FIG. 18 is a diagram illustrating a second example of the hierarchization pattern of display items.
  • display items c1 and c2 are included in the first hierarchy
  • display item c3 is included in the second hierarchy.
  • the pattern in FIG. 18 indicates that the display item c1, the display item c2, and the item “others” in the first hierarchy are displayed first. When the item “others” is selected, the display item c3 is displayed.
  • the pattern in FIG. 18 is referred to as a second pattern.
  • FIG. 19 is a diagram illustrating an example of the first screen when the option processing unit 193 selects the second pattern.
  • FIG. 19 shows an example in which there are three options of daily allowance, supplementary allowance, and special allowance as a response to the user query for inquiring the amount of allowance, as in FIG.
  • the evaluation value calculation unit 192 calculates high evaluation values in the order of daily allowance, auxiliary allowance, and special allowance.
  • the option processing unit 193 generates image data of the first screen that displays two options of daily allowance and auxiliary allowance according to the second pattern. Based on the evaluation value calculated by the evaluation value calculation unit 192, the option processing unit 193 arranges the two options in the order of daily allowance and auxiliary allowance from the top.
  • the area A211 is the same as the area A111 in FIG.
  • the area A212 is the same as the area A112 in FIG.
  • Area A213 is an area for receiving a user operation for displaying the next screen on display unit 420.
  • “(N)” in the area A113 indicates a symbol “N” for user operation.
  • the user can display the second screen, which is the next screen, on the display unit 420 by clicking or touching the area A213 or pressing the “N” button on the keyboard.
  • the areas A121, A122, and A123 are all the same as in the case of FIG.
  • FIG. 20 is a diagram illustrating an example of the second screen when the option processing unit 193 selects the second pattern.
  • FIG. 20 shows an example of the second screen of the option display screen in the case of the example of FIG.
  • the option processing unit 193 selects a special allowance according to the second pattern.
  • the second screen image data for displaying is generated.
  • the area A221 is the same as the area A113 in FIG.
  • the areas A121, A122, and A123 are all the same as in the case of FIG.
  • FIG. 21 is a diagram illustrating a third example of the pattern of hierarchizing display items.
  • the display item c1 is included in the first hierarchy
  • the display item c2 is included in the second hierarchy
  • the display item c3 is included in the third hierarchy.
  • the pattern in FIG. 21 indicates that the display item c1 and the “other” item are displayed on the first screen.
  • This pattern indicates that the display item c2 is displayed on the second screen when the “other” item is selected on the first screen.
  • This pattern indicates that the display item c3 is displayed on the third screen when the “other” item is selected on the second screen.
  • the pattern in FIG. 21 is referred to as a third pattern.
  • FIG. 22 is a diagram illustrating an example of the first screen when the option processing unit 193 selects the third pattern.
  • FIG. 22 shows an example in which there are three options of daily allowance, supplementary allowance, and special allowance as a response to the user query for inquiring the amount of allowance, as in FIG.
  • the evaluation value calculation unit 192 shows higher evaluation values in the order of daily allowance, auxiliary allowance, and special allowance.
  • the option processing unit 193 generates image data of the first screen displaying the daily allowance options according to the third pattern.
  • the area A311 is the same as the area A111 in FIG.
  • the area A312 is the same as the area A213 in FIG.
  • the user can display the second screen, which is the next screen, on the display unit 420 by clicking or touching the area A312 or pressing the “N” button on the keyboard.
  • the areas A121, A122, and A123 are all the same as in the case of FIG.
  • FIG. 23 is a diagram illustrating an example of the second screen when the option processing unit 193 selects the third pattern.
  • FIG. 23 shows an example of the second screen of the option display screen in the case of the example of FIG.
  • the option processing unit 193 selects an auxiliary allowance according to the third pattern.
  • the second screen image data for displaying is generated.
  • the area A311 is the same as the area A111 in FIG.
  • the area A312 is the same as the area A213 in FIG.
  • the user can cause the display unit 420 to display the third screen, which is the next screen, by clicking or touching the area A312 or pressing the “N” button on the keyboard.
  • the areas A121, A122, and A123 are all the same as in the case of FIG.
  • the third screen when the option processing unit 193 selects the third pattern is the same as the second screen when the option processing unit 193 selects the second pattern described with reference to FIG.
  • FIG. 24 is a diagram illustrating a fourth example of the hierarchization pattern of display items.
  • the display item c1 is included in the first hierarchy
  • the two display items c2 and c3 are included in the second hierarchy.
  • the pattern in FIG. 24 indicates that the display item c1 and the “other” item are displayed on the first screen.
  • This pattern indicates that the display items c2 and c3 are displayed on the second screen when the “other” item is selected on the first screen.
  • the pattern in FIG. 24 is referred to as a fourth pattern.
  • the first screen when the option processing unit 193 selects the fourth pattern is the same as the first screen described with reference to FIG. 22 when the option processing unit 193 selects the third pattern.
  • FIG. 25 is a diagram illustrating an example of the second screen when the option processing unit 193 selects the fourth pattern.
  • FIG. 25 shows an example of the second screen of the option display screen in the case of the example of FIG.
  • the option processing unit 193 selects the fourth pattern, the display area of “(N) Other” is clicked or touched on the first screen, or the “N” button on the keyboard is pressed.
  • the option processing unit 193 generates image data of the second screen displaying the options for the supplementary allowance and the special allowance according to the fourth pattern.
  • the area A411 is the same as the area A112 in FIG.
  • the area A412 is the same as the area A113 in FIG.
  • the areas A121, A122, and A123 are all the same as in the case of FIG.
  • the display number prediction unit 194 calculates the probability that the user will select an option as an index value for each option. Then, the display number prediction unit 194 calculates an expected value as a value indicating the prediction of the number of options displayed until any option is selected. For example, the response side storage unit 170 stores in advance the four patterns from the first pattern to the fourth pattern described above. The display number prediction unit 194 calculates the probability that the user will select the option c1 as 0.9, calculates the probability that the user will select the option c2 as 0.05, and sets the probability that the user will select the option c3 as 0. Assume that 05 is calculated.
  • the display number prediction unit 194 calculates an expected value of the number of options displayed until any option is selected in the first pattern (illustrated in FIG. 16) as shown in Expression (2).
  • the display number prediction unit 194 calculates the expected value as 3 by multiplying the respective probabilities of the options c1, c2, and c3 by the number of options 3 as shown in Expression (2) and adding them.
  • the display number prediction unit 194 calculates an expected value of the number of options displayed until any option is selected in the second pattern (illustrated in FIG. 18) as shown in Expression (3).
  • the display unit 420 displays the options c1 and c2 on the first screen and the option “(N) Other” for instructing the display of the next screen. Therefore, the number of options on the first screen is three. Regardless of which of the options c1 and c2 is selected by the user, the number of options displayed on the display unit 420 is three. Further, the display unit 420 displays the option c3 on the second screen. Therefore, the number of options on the second screen is 1. When the user selects the option c3, the number of options displayed on the display unit 420 is 4, which is the sum of the number 3 of options on the first screen and the number of options 1 on the second screen.
  • the display number prediction unit 194 multiplies the probabilities of the options c1 and c2 by the number of options 3 as shown in the equation (3), and multiplies the probability of the options c3 by the number of options 4 to add the expected values.
  • the value is calculated as 3.05.
  • the display number prediction unit 194 calculates an expected value of the number of options displayed until any option is selected in the third pattern (illustrated in FIG. 21) as in Expression (4).
  • the display unit 420 displays the option c1 on the first screen and the option “(N) Other” for instructing the display of the next screen. That is, the number of options on the first screen is two. Therefore, when the user selects the option c1, the number of options displayed on the display unit 420 is two. In addition, when the option “(N) Other” is selected on the first screen, the display unit 420 displays the option c2 on the second screen and the option “(N) Other for instructing display of the next screen. Is displayed. Therefore, the number of options on the second screen is two. When the user selects the option c2, the number of options displayed on the display unit 420 is 4, which is the sum of the number 2 of options on the first screen and the number 2 of options on the second screen.
  • the display unit 420 displays the option c3 on the third screen. Therefore, the number of options on the third screen is 1.
  • the number of options displayed on the display unit 420 includes the number 2 of options on the first screen, the number 2 of options on the second screen, and the number 1 of options on the third screen. The total is 5. Therefore, the display number prediction unit 194 multiplies the probability of the choice c1 by the number of choices 2 as shown in the equation (4), multiplies the probability of the choice c2 by the number of choices 4, and the probability of the choice c3
  • the expected value is calculated to be 2.25 by multiplying the number 5 and adding together.
  • the display number prediction unit 194 calculates an expected value of the number of options displayed until any option is selected in the fourth pattern (illustrated in FIG. 24) as shown in Expression (5).
  • the display unit 420 displays the option c1 on the first screen and the option “(N) Other” for instructing the display of the next screen. Therefore, the number of options on the first screen is two.
  • the display unit 420 displays the options c2 and c3 on the second screen. Therefore, the number of options on the second screen is two.
  • the number of options displayed on the display unit 420 is 4, which is the sum of the number 2 of options on the first screen and the number 2 of options on the second screen. .
  • the display number prediction unit 194 multiplies the probability of the choice c1 by the number of choices 2 as shown in the equation (5), multiplies the probability of each of the choices c2 and c3 by the number of choices 4 and adds them together. Calculate the value as 2.2.
  • the display format determination unit 195 determines the pattern for displaying the options on the display unit 420 as the fourth pattern.
  • the display format determination unit 195 generates image data of the option display screen based on the fourth pattern, and transmits the image data to the display unit 420 via the response side communication unit 110 to display the display screen.
  • step S ⁇ b> 106 the option processing unit 193 causes the user terminal device 400 to display a plurality of option display screens.
  • FIG. 26 is a flowchart illustrating an example of a processing procedure in which the question answering apparatus 100 causes the user terminal device 400 to display options.
  • the route selection unit 191 determines an evaluation value for each route from the current position node to the answer candidate node (step S201). Then, the route selection unit 191 selects the top k (where k is a natural number) routes in descending order of evaluation (in descending order of evaluation value) (step S202). The route selection unit 191 may select a route until the number of options reaches k.
  • the option processing unit 193 extracts option nodes included in the route selected by the route selecting unit 191 (step S203).
  • the display number prediction unit 194 reads a plurality of option display formats (for example, the above-described patterns) from the response-side storage unit 170, and predicts the number of options displayed by the display unit 420 until the user selects any option.
  • a value (for example, an expected value) is calculated for each display format (step S204).
  • the display format determination unit 195 selects a display format with the smallest predicted value (for example, expected value) (step S205).
  • the display format determination unit 195 performs option display processing using the selected display format (step S206). Specifically, the display format determination unit 195 generates image data of the option display screen based on the selected display format.
  • the display format determination unit 195 transmits the generated image data to the user terminal device 400 via the response side communication unit 110, thereby causing the display unit 420 of the user terminal device 400 to display options.
  • FIG. 27 is a diagram illustrating an example of a dialogue between the user and the question answering system 1.
  • the user inputs a user query “I want to know the number of days off” using the operation input unit 430.
  • the user can input a user query in a natural language sentence, so that the user can ask various questions to the question answering system 1 relatively easily.
  • the question answering system 1 presents the user with three choices of “(1) Special Leave”, “(2) Annual Leave”, and “(N) Other Leave”, and any one of the choices. A question is received to accept the selection. In response to the inquiry, the user has selected “(2) Annual vacation”. The question answering system 1 can narrow down the types of leave to annual leave based on the user's selection.
  • the hierarchical structure data indicates that the number of days granted for leave differs depending on the length of service. Therefore, the question answering system 1 presents the user with three options “(1) Less than 5 years”, “(2) More than 5 years but less than 15 years”, and “(3) More than 15 years”. A question is received to accept the selection of the option. In response to the question, the user selects “(2) 5 years or more and less than 15 years”. The question answering system 1 follows a route of options having a service period of 5 years or more and less than 15 years among the routes of the hierarchical structure data, and arrives at a node of an answer with 21 days of leave granted. Then, the question answering system 1 presents a reply to the user that “the number of days granted for annual leave is 21 days”.
  • the question answering system 1 determines the order of options by the processing of FIG. 26 and adjusts the number of options to be displayed.
  • the question answering system 1 displays these options in the same order without performing rearrangement based on the route evaluation values.
  • the question answering system 1 may determine the order of options and adjust the number of options to be displayed by the processing of FIG. 26 for the options in the second question answering.
  • the route selection unit 191 selects a plurality of routes and the user response indicates that a node included in any of the selected routes is selected
  • the route selection unit 191 selects the selected node as the current position node. Reselect the route as As described above, it is expected that the route selection unit 191 selects a plurality of routes, so that the number of times to reselect the route can be reduced as compared with the case where the route selection unit 191 selects one route. Thus, it is expected that the question answering apparatus 100 can efficiently perform the process of answering the user's question.
  • the route selection unit 191 calculates an evaluation value of the possibility of reaching the node indicating the answer for each of the routes from the current position node to the matching node other than the route excluded according to the user's response. calculate.
  • the option processing unit 186 preferentially presents the option to the user as the evaluation of the route including the node indicated by the option is higher. In this way, the option processing unit 186 preferentially presents the options indicated by the nodes included in the highly evaluated path to the user, so that the user is expected to select the options presented at a relatively early stage. Is done. Therefore, according to the question answering apparatus 100, it is expected that the options presented to the user are relatively small, and in this respect, it is expected that the burden on the user is relatively small.
  • the display number prediction unit 194 predicts the number of display items that are displayed until one of the options is selected based on an index value indicating the likelihood that the option will be selected for each option. Is calculated for each of a plurality of display formats for displaying options. The display format determination unit 195 selects one of the display formats based on the calculated predicted value.
  • the display format determination unit 195 can select a display format with a relatively small number of display items that are predicted to be displayed before any option is selected. As described above, according to the question answering apparatus 100, when the user is presented with an option and accepting the selection, the question answering apparatus 100 requires relatively little processing. Further, in the question answering apparatus 100, the number of display items to be confirmed by the user is relatively small, and in this respect, the processing load for the user to select an option can be reduced.
  • Each of the display items indicates one of options or display on the next display screen.
  • the question answering apparatus 100 distributes and arranges the options on a plurality of display screens, and the display items to be presented to the user by a relatively simple process of switching the display screen until the user selects any of the options. Can be reduced.
  • the display number prediction unit 194 calculates, as a predicted value, an expected value of the number of display items that are displayed until one of the options is selected, using the probability that the option is selected as an index value.
  • the display number prediction unit 194 uses the probability and the expected value, so that the concept of processing performed by the display number prediction unit 194 becomes clearer. In this regard, according to the question answering apparatus 100, it is relatively easy to grasp the processing performed by the display number prediction unit 194.
  • the display number prediction unit 194 calculates a predicted value for each of a plurality of predetermined display formats.
  • the display format determination unit 195 selects the display format with the smallest predicted value. As described above, the question answering apparatus 100 can present the option to the user more quickly than the case where the display format is generated when the option is presented to the user by using the predetermined display format. The processing load on the question answering apparatus 100 can be reduced.
  • the user interface used by the question answering system 1 is not limited to a screen display.
  • the question answering system 1 has a voice interface such as a voice interaction agent or a combination of voice guidance and key operation, in addition to or instead of presentation of options to the user by screen display and key operation and user response. May be used.
  • a voice interface such as a voice interaction agent or a combination of voice guidance and key operation, in addition to or instead of presentation of options to the user by screen display and key operation and user response. May be used.
  • presenting options to a user by voice it is expected that the number of options to be presented is relatively small by preferentially presenting options that are likely to be selected by the user. In general, it is considered that notification to a user by voice takes longer than notification by screen display.
  • the question answering system 1 presents choices to the user by voice, the number of choices to be presented is relatively small, so that it is possible to obtain an effect of reducing the required time further than the case of presenting the choices by screen display. Be expected.
  • FIG. 28 is a diagram illustrating an example of the configuration of the question answering apparatus according to the embodiment of the present invention.
  • the question answering device 10 illustrated in FIG. 28 includes a type determination unit 11, a route selection unit 12, and an option processing unit 13.
  • the type determination unit 11 determines the type of answer to the question based on the question from the user.
  • the route selection unit 12 selects one of the routes from the selected current position node to the matching node that matches the answer type among the nodes in the information hierarchical structure.
  • the option processing unit 13 presents information indicating the nodes included in the selected route as options to the user.
  • the route selection unit 12 selects a route that can reach the conforming node, so that an option that can reach the conforming node can be preferentially presented to the user, or the conforming node cannot be reached.
  • the presentation of options can be suppressed. That is, the route selection unit 12 can preferentially present options that may be obtained to the user. Alternatively, the route selection unit 12 can present only the options that may obtain an answer to the user.
  • the number of times the question answering apparatus 10 presents the options again before the user selects any option is relatively small.
  • the processing of the question answering device 10 is relatively small.
  • the time until the answer to the question can be obtained is relatively small because the number of times the question answering apparatus 10 presents the option again before the user selects any option is sufficient. Is expected to be relatively short.
  • the user can determine whether or not to select an option in preference to an option that may obtain an answer.
  • the user can determine whether or not to select only an option for which an answer can be obtained, or which option to select. In this respect, it is expected that the user is relatively unlikely to determine the choice of options, and the burden on the user is relatively small.
  • a program for realizing all or part of the functions of the response-side control unit 180 according to the first embodiment or the response-side control unit 180 according to the second embodiment is recorded on a computer-readable recording medium. Then, the program recorded in the recording medium may be read into the computer system and executed to execute the processing of each unit.
  • the “computer system” here includes hardware such as an OS (operating system) and peripheral devices.
  • “Computer-readable recording medium” refers to a portable medium such as a flexible disk, a magneto-optical disk, a ROM, and a CD-ROM, and a storage device such as a hard disk built in a computer system.
  • the program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.
  • the embodiment of the present invention may be applied to a question answering device, a question answering method, and a recording medium.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

質問応答装置が、ユーザからの質問に基づいて前記質問に対する回答のタイプを判定するタイプ判定部と、情報の階層構造におけるノードのうち選択された現在位置ノードから前記回答のタイプに適合する適合ノードへの経路のうち何れかの前記経路を選択する経路選択部と、選択された前記経路に含まれるノードを示す情報を選択肢として前記ユーザに提示する選択肢処理部と、を備える。

Description

質問応答装置、質問応答方法および記録媒体
 本発明は、質問応答装置、質問応答方法および記録媒体に関する。
 自然言語で記載された文書からの情報抽出に関連して、特許文献1には、自然言語で記載されたテレビの操作マニュアルから操作内容を抽出して対話シナリオを生成する対話シナリオ生成システムが記載されている。この対話シナリオ生成システムは、操作マニュアルのフォーマットに関する情報、および、操作マニュアルから文字列を抽出するためのルールを予め記憶している。
 この対話シナリオ生成システムは、これらの情報およびルールを用いて、「テレビをつける」などのユーザ要求、および、「リモコンの[電源]ボタンを押す」などの操作手順を、操作マニュアルから抽出して自然言語対話システムの開発者に提示する。自然言語対話システムの開発者は、ユーザ要求および操作手順に応じで自然言語対話システムが実行すべき処理を、自然言語対話システムが解釈可能な形式で入力する。
特開2008-145769号公報
 質問応答装置が、ユーザからの質問に対する回答を文書から抽出する場合、ユーザへの問い返しが必要となる場合がある。例えば、質問応答装置がユーザから休暇の日数を質問された場合、休暇の種類に応じて休暇の日数が異なるため、質問応答装置が休暇の種類をユーザに問い返すことが考えられる。
 質問応答装置が、ユーザへの問い返しを行って回答を文書から抽出する場合に、処理が比較的少なくて済むことが好ましい。
 一方、特許文献1には、装置が情報の抽出のためにユーザへの問い返しを行うことは記載されていない。
 特に、対話シナリオの生成に関しては、対話シナリオ生成システムが、ユーザへの質問を行わずに対話シナリオを自動生成する。
 また、対話シナリオの実行に関しては、「[地上]ボタン、[BS]ボタン、[CS]ボタンのどれかを押す」といった「選択肢」が対話シナリオに含まれるが、この「選択肢」は機械を操作するためのものであって情報を抽出するためではない。そして、対話シナリオを実行する自然言語対話システムの処理が、この「選択肢」における選択に応じて分岐することは、想定されていない。
 従って、特許文献1には、装置が情報の抽出のためにユーザへの問い返しを行う場合に、ユーザの負担を軽減することについては記載されていない。
 本発明の目的の一例は、上述の課題を解決することのできる、質問応答装置、質問応答方法および記録媒体を提供することである。
 本発明の第1の態様によれば、質問応答装置は、ユーザからの質問に基づいて前記質問に対する回答のタイプを判定するタイプ判定部と、情報の階層構造におけるノードのうち選択された現在位置ノードから前記回答のタイプに適合する適合ノードまでの経路のうち何れかの前記経路を選択する経路選択部と、選択された前記経路に含まれるノードを示す情報を選択肢として前記ユーザに提示する選択肢処理部と、を備える。
 本発明の第2の態様によれば、質問応答方法は、ユーザからの質問に基づいて前記質問に対する回答のタイプを判定する工程と、情報の階層構造におけるノードのうち選択された現在位置ノードから前記回答のタイプに適合する適合ノードまでの経路を設定する工程と、前記経路に含まれるノードを選択肢として前記ユーザに提示する工程と、を含む。
 本発明の第3の態様によれば、記録媒体は、コンピュータに、ユーザからの質問に基づいて前記質問に対する回答のタイプを判定する工程と、情報の階層構造におけるノードのうち選択された現在位置ノードから前記回答のタイプに適合する適合ノードまでの経路を設定する工程と、前記経路に含まれるノードを選択肢として前記ユーザに提示する工程と、を実行させるためのプログラムを記録した記録媒体である。
 上記した質問応答装置、質問応答方法および記録媒体によれば、質問応答装置が、ユーザへの問い返しを行って回答を文書から抽出する場合に、質問応答装置の処理が比較的少なくて済む。
第1実施形態に係る質問応答システムの装置構成の例を示す概略構成図である。 第1実施形態に係る質問応答装置の機能構成の例を示す概略ブロック図である。 第1実施形態に係る現在位置ノードおよび回答候補ノードの第1例を示す図である。 第1実施形態に係る現在位置ノードおよび回答候補ノードの第2例を示す図である。 第1実施形態に係る選択肢処理部が選択肢のノードとして抽出するノードの第1例を示す図である。 第1実施形態に係る選択肢の表示画面の第1例を示す図である。 第1実施形態に係る経路選択部が選択し直す経路の例を示す図である。 第1実施形態に係る選択肢の表示画面の第2例を示す図である。 第1実施形態に係る選択肢処理部が選択肢のノードとして抽出するノードの第2例を示す図である。 第1実施形態に係る選択肢の表示画面の第3例を示す図である。 第1実施形態に係るユーザ端末装置の機能構成の例を示す概略ブロック図である。 第1実施形態に係る質問応答装置がユーザクエリに回答する処理手順の例を示すフローチャートである。 第2実施形態に係る質問応答装置の機能構成の例を示す概略ブロック図である。 第2実施形態に係る経路選択部が選択した複数の経路の第1例を示す図である。 第2実施形態に係る経路選択部が選択した複数の経路の第2例を示す図である。 第2実施形態に係る表示項目の階層化のパタンの第1例を示す図である。 第2実施形態に係る選択肢処理部が第1パタンを選択した場合の表示画面の例を示す図である。 第2実施形態に係る表示項目の階層化のパタンの第2例を示す図である。 第2実施形態に係る選択肢処理部が第2パタンを選択した場合の第1画面の例を示す図である。 第2実施形態に係る選択肢処理部が第2パタンを選択した場合の第2画面の例を示す図である。 第2実施形態に係る表示項目の階層化のパタンの第3例を示す図である。 第2実施形態に係る選択肢処理部が第3パタンを選択した場合の第1画面の例を示す図である。 第2実施形態に係る選択肢処理部が第3パタンを選択した場合の第2画面の例を示す図である。 第2実施形態に係る表示項目の階層化のパタンの第4例を示す図である。 第2実施形態に係る選択肢処理部が第4パタンを選択した場合の第2画面の例を示す図である。 第2実施形態に係る質問応答装置がユーザ端末装置に選択肢を表示させる処理手順の例を示すフローチャートである。 第2実施形態に係るユーザと質問応答システムとの対話の例を示す図である。 本発明の実施形態に係る質問応答装置の構成の例を示す図である。
 以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
<第1実施形態>
 図1は、第1実施形態に係る質問応答システムの装置構成の例を示す概略構成図である。図1に示す構成で、質問応答システム1は、質問応答装置100と、文書データ管理装置200と、補助情報提供装置300と、ユーザ端末装置400と、通信ネットワーク900とを備える。
 質問応答システム1は、ユーザの質問に回答するシステムである。
 文書データ管理装置200は、ユーザの質問に回答するための情報源となる文書を文書データにて記憶し、データサーバとして機能する。文書データ管理装置200は、例えばワークステーション(Workstation)またはパソコン(Personal Computer;PC)等のコンピュータを用いて構成される。
 文書データ管理装置200は、構造化文書(Structured Documents)の文書データまたは半構造化文書(Semi-Structured Documents)の文書データなど、文書の階層構造を抽出可能な文書データを記憶する。
 以下では、文書データ管理装置200が就業規則等の社内文書を文書データにて記憶している場合を例に説明する。但し、文書データ管理装置200が記憶する文書データは社内文書の文書データに限定されず、例えば、システム障害を診断するシステムにて利用される文書や、教育において利用される文書等の、いろいろな種類の文書データとすることができる。文書データには、ユーザからの質問に関する情報が含まれる。特に、文書データには、質問に対する回答、または、質問に対して回答となる可能性がある候補等の情報が含まれる。さらに、文書データには、後述するユーザクエリノードのように、ユーザの質問に対応付けられる情報が含まれる。質問応答装置100は、ユーザの質問に対応付けられる情報を用いて文書データの構造を辿ることで、回答の候補の情報のうち、ユーザの質問に対する回答となる情報を取得し、ユーザに回答する。
 また、文書データでは、情報が上位項目、下位項目などに階層化されて記録されている。後述する例のように、例えばHTML(Hypertext Markup Language)のtable要素など、表形式で表された情報も、階層構造で示されていてもよい。
 文書データ管理装置200は、ユーザが質問応答装置100に対して行った操作に従い、文書データから、ユーザからの質問に対する回答である情報を抽出する。言い換えると、文書データ管理装置200は、文書データが示す情報の中から、ユーザが行った質問と、操作とに適合している情報を選択する。つまり、ユーザは、文書データから質問に対する回答を得るために質問応答装置100に対して操作、及び、質問の入力を行う。文書データ管理装置200は、ユーザが行った操作、及び、質問に適合している情報を、文書データが示す情報の中から選択する。後述するように、文書データ管理装置200が、文書データが示す情報の中から選択する情報の項目数は、1つであるとは限らず、複数項目であることもある。
 質問応答装置100は、ユーザの質問に回答する処理を実行する。質問応答装置100は、例えばワークステーションまたはパソコン等のコンピュータを用いて構成される。
 回答の前処理として、質問応答装置100は、文書データ管理装置200が記憶している文書データの文書間関係および文書内関係に基づいて文書の階層構造を抽出し、文書データを階層構造化しておく。以下では、質問応答装置100が階層構造化した文書データを階層構造データと称する。質問応答装置100が階層構造データを記憶するようにしてもよいし、例えば文書データ管理装置200など質問応答装置100以外の装置が階層構造データを記憶するようにしてもよい。
 以下では、質問応答装置100が、階層構造化にて文書データを木(Tree)構造のデータに変換する場合を例に説明する。回答を探す対象の文書が複数ある場合、質問応答装置100は、例えば、文書毎の木をマージした1つの木を階層構造データとして生成する。質問応答装置100が生成する木構造のノード(Node、節)には、回答を探す対象の文書における種々の情報が配されている。また、2つのノード間におけるエッジ(Edge、枝)は、これら2つの各ノードが示す情報が関連付けされていることを示す。例えば、2つの情報の間に包含関係がある場合に、これら2つの情報の間にエッジが設定される。または、ある情報を示すノードと、当該情報に関する値を示すノードとの間にエッジが設定される。ノードに関する情報は、上述した例に限定されない。
 但し、質問応答装置100が扱う階層構造データは、木構造のデータに限定されず、ノード間に半順序(Partially Order)が定められ、かつ、ループのないいろいろな構造のデータとすることができる。例えば、質問応答装置100が、有向非巡回グラフ(Directed Acyclic Graph)構造の階層構造データを扱うようにしてもよい。
 ユーザからの質問を受けると、質問応答装置100は、階層構造データのデータ構造に従ってノードを辿り、回答を示すノードに到達して回答を出力する。辿る先のノードの候補が複数ある場合、質問応答装置100は、ユーザに対して質問を行い、ユーザの応答に従ってノードを選択する。以下では、ユーザからの質問をユーザクエリと称する。質問応答装置100からユーザへの質問を問い返しと称する。
 また、質問応答装置100は、ユーザからの質問に基づいて回答のタイプを判定する。そして、質問応答装置100は、現在のノードから到達可能なノードが示す情報が、回答のタイプに適合するか否かを判定する。到達可能なノードが示す情報が回答のタイプに適合しない場合、質問応答装置100は、回答を示すノードの候補にそのノードを含めないようにすることで、回答の候補の絞り込みを行う。
 ここでいうタイプは、文書中の情報を取捨選択するための条件である。ここでいう回答のタイプは、回答に想定されるタイプである。タイプ判定部184は、ユーザクエリに基づいて回答のタイプを設定する。
 タイプとして、単位を用いることができる。例えば、ユーザクエリが休暇の日数の問い合わせである場合、タイプ判定部184は、1日、2日、3日など、単位が日であることを回答のタイプとする。回答のタイプを回答タイプと称する。
 補助情報提供装置300は、補助情報を記憶する。ここでいう補助情報は、質問応答装置100が辿る先のノードの候補が複数ある場合に、それら候補のうち何れかのノードを選択するための情報である。質問応答装置100が、補助情報を用いてノードを選択することで、問い返し質問を行う必要がなくなるので、例えば、エキスパートシステムとしての質問応答装置100において、ユーザとの対話処理に要する処理を減らすことができる。
 以下では、質問応答装置100が補助情報として社員の勤続年数の情報を用いる場合を例に説明する。但し、質問応答装置100が用いる補助情報は、社員の勤続年数の情報に限定されず、質問応答装置100が辿る先のノードの候補の何れかを選択可能な情報であればよい。
 ユーザ端末装置400は、質問応答システム1におけるユーザインタフェースとして機能する。特に、ユーザ端末装置400は、質問応答装置100の指示に従って各種画像を表示する。また、ユーザ端末装置400は、ユーザ操作を受け付け、行われたユーザ操作を示すデータを質問応答装置100へ送信する。以下では、ユーザ操作を示すデータを入力データと称する。
 ユーザ端末装置400は、例えばパソコン、タブレット(Tablet)端末装置、またはスマートフォン(Smartphone)等のコンピュータを用いて構成される。
 ユーザ端末装置400の数は1つ以上であればよい。
 通信ネットワーク900は、質問応答装置100、文書データ管理装置200、および、ユーザ端末装置400の間の通信を仲介する。通信ネットワーク900としていろいろな種類の通信ネットワークを用いることができる。例えば、通信ネットワーク900は、社内ネットワーク等のLAN(Local Area Network)であってもよい。あるいは、通信ネットワーク900は、インターネット(Internet)であってもよい。
 文書データ管理装置200、補助情報提供装置300、ユーザ端末装置400、および、通信ネットワーク900のうち何れか1つまたは複数が質問応答システム1の外部の装置として構成されていてもよい。
 また、質問応答装置100、文書データ管理装置200、補助情報提供装置300、ユーザ端末装置400、および、通信ネットワーク900のうち何れか1つまたは複数が、1つの装置として構成されていてもよい。例えば、質問応答装置100がユーザ端末装置400の機能を備えて構成されていてもよい。
 補助情報提供装置300は、質問応答システム1に必須ではない。補助情報提供装置300が無い場合、質問応答装置100は、補助情報を用いることはできない。この場合、質問応答装置100は、問い返しを行うことで、補助情報を用いる必要なしに、辿る先のノードの候補の絞り込みを行うことができる。
 また、質問応答装置100が、文書データを取得する代わりに階層構造データを直接取得する場合、文書データ管理装置200は、質問応答システム1に必須ではない。
 図2は、第1実施形態に係る質問応答装置100の機能構成の例を示す概略ブロック図である。図2に示す構成で、質問応答装置100は、応答側通信部110と、応答側記憶部170と、応答側制御部180とを備える。応答側制御部180は、階層構造データ生成部181と、ユーザクエリ処理部182と、経路選択部185と、選択肢処理部186と、情報検索部187とを備える。ユーザクエリ処理部182は、トピック処理部183と、タイプ判定部184とを備える。
 応答側通信部110は、他の装置と通信を行う。特に、応答側通信部110は、文書データ管理装置200から文書データを受信する。また、応答側通信部110は、ユーザ端末装置400に表示させるための各種データをユーザ端末装置400に送信し、ユーザ端末装置400からの入力データを受信する。上述したように、入力データは、ユーザ端末装置400が受け付けたユーザ操作を示すデータである。
 以下では、応答側通信部110が、応答側制御部180の制御に従ってユーザ端末装置400に画像データを送信して画像を表示させる場合を例に説明する。但し、応答側通信部110がユーザ端末装置400に送信するデータは画像データに限定されない。例えば、応答側通信部110が、文字列または数値等のデータをユーザ端末装置400に送信し、ユーザ端末装置400が、これらのデータを用いて画像データを生成し、画像を表示するようにしてもよい。また、応答側通信部110が、文字列または数値等のデータに加えて表示形式(Format)のデータをユーザ端末装置400に送信し、ユーザ端末装置400が、その表示形式に従って画像を表示するようにしてもよい。
 応答側記憶部170は、各種データを記憶する。例えば、応答側記憶部170は、階層構造データを記憶する。応答側記憶部170は、質問応答装置100が備える記憶デバイスを用いて構成される。
 応答側制御部180は、質問応答装置100の各部を制御して各種処理を実行する。応答側制御部180は、質問応答装置100が備えるCPU(Central Processing Unit、中央処理装置)が応答側記憶部170からプログラムを読み出して実行することで構成される。
 階層構造データ生成部181は、上述した文書データの階層構造化を行う。階層構造データ生成部181が文書データを階層構造化する方法として公知の方法を用いることができる。例えば、文書データがHTMLで記述されている場合、文書データ中の見出しタグ(h1タグからh6タグまで)に基づいて文書の階層構造を抽出するようにしてもよい。あるいは、文書データがスタイルシート(Cascading Style Sheets;CSS)の書式で記載されている場合、階層構造データ生成部181が、P要素、DIV要素などのclass属性、もしくは、フォント指定に基づいて文書の階層構造を抽出するようにしてもよい。
 ユーザクエリ処理部182は、ユーザクエリを処理する。
 トピック処理部183は、ユーザクエリからトピックを抽出し、階層構造データのノードのうちトピックに最も類似するノードを検出してユーザクエリノードに設定する。ここでいうトピックは、質問の主題(すなわち、質問の内容を示すキーワード)である。例えば、ユーザクエリが「休暇の日数は?」である場合、トピック処理部183は、トピックとして「休暇」を抽出する。
 トピック処理部183が、ユーザクエリの構文解析を行い、構文解析の結果と予め記憶しているテンプレートとを比較してユーザクエリ中のトピックを特定するようにしてもよい。但し、トピック処理部183が、ユーザクエリからトピックを抽出する方法は、これに限定されずいろいろな方法とすることができる。
 また、トピック処理部183は、例えばジャカード(Jaccard)係数を用いて解層構造データのノード毎に、そのノードとユーザクエリとの形態素のマッチ度合いを算出する。具体的には、トピック処理部183は、ノードとユーザクエリとの形態素のマッチ度合いとして式(1)を算出する。
Figure JPOXMLDOC01-appb-M000001
 ここで、setXは、ユーザクエリに含まれる形態素の集合を示す。setYは、ノードに含まれる形態素の集合を示す。また、集合の要素数を||で示す。例えば、集合「S」の要素数を「|S|」と表記する。
 式(1)は、ノードとユーザクエリとに共通の形態素の数を、ユーザクエリまたはノードの少なくとも何れかに含まれる形態素の数で除算した値を示す。
 但し、トピック処理部183がユーザクエリとノードとの類似度を算出する方法は、式(1)を用いる方法に限定されずいろいろな方法とすることができる。
 タイプ判定部184は、ユーザからの質問(ユーザクエリ)に基づいて、質問に対する回答のタイプを判定する。上述したように、ここでいうタイプは、文書中の情報を取捨選択するための条件である。
 経路選択部185は、情報の階層構造(階層構造データ)におけるノードのうち選択された現在位置ノードから回答タイプに適合する適合ノードまでの経路のうち何れかの経路を選択する。そして、経路選択部185は、選択肢処理部186がユーザへの問い返しにて行う選択肢の提示に対するユーザの応答に応じて経路を選択し直す。
 経路選択部185が選択する経路は、現在ノードから、回答タイプに適合するノードまでの、エッジの並びである。従って、経路選択部185による経路選択は、背景知識(情報)のうち、現在ノードが示す情報と、回答タイプに適合する情報とを含む情報群を選択することに該当する。すなわち、経路選択部185による経路選択は、現在ノードが示す情報と回答タイプとに適合している知識情報とを選択することに該当する。
 経路選択部185が選択する経路は、仮説推論(Abduction)における仮説と捉えることが可能である。経路上のノードが示す情報をユーザに提示して回答を受けることは、仮説を検証することと捉えることが可能である。この場合、経路選択部185は、ユーザの回答が肯定できである場合は仮説を維持し、否定的である場合は仮説を立て直す。経路選択部185が、リーフ(Leaf、葉)に到達するまでこの処理を繰り返すことで、正しい仮説を得られ、ユーザが求める回答を得られる。後述するように、経路選択部185として推論エンジンを用いるようにしてもよい。
 現在位置ノードから適合ノードまでの経路のうち経路選択部185が選択した経路を選択経路と称する。
 経路選択部185は、1つの経路を選択する。問い返しに対するユーザの応答が、選択経路に含まれるノードを選択しないことを示す場合、経路選択部185は、選択経路を、選択済みの経路以外の1つの経路に選択し直す。
 現在位置ノードは、階層構造データのノードの中から1つ選択されるノードである。初期設定では、経路選択部185は、ユーザクエリノードを現在位置ノードに設定する。現在位置ノードの子ノードのうち、ユーザクエリに対する回答を示すノードの候補へ到達可能なノードが1つのみである場合、経路選択部185は、現在位置ノードをその子ノードに更新する。ユーザクエリに対する回答を示すノードの候補は、適合ノードのうち、ユーザクエリに対する回答を示すノードの候補から除外されていないノードである。経路選択部185は、問い返しに対するユーザの応答に基づいて、この除外を行う。
 上記のように、適合ノードは、回答タイプに適合するノードである。すなわち、適合ノードは、回答タイプが示す条件に当てはまるノードである。初期設定では、経路選択部185は、適合ノードを回答候補ノードに設定する。回答候補ノードは、ユーザクエリに対する回答を示すノードの候補として経路選択部185が設定したノードである。
 経路選択部185が、ユーザクエリに対する回答を示すノードの候補と回答候補ノードとを一致させるようにしてもよい。この場合、経路選択部185は、初期設定にて全ての適合ノードを回答候補ノードに設定する。そして、回答候補ノードのうち何れかのノードが、問い返しに対するユーザの応答によって、ユーザクエリに対する回答を示すノードの候補から除外される場合、経路選択部185は、そのノードに対する回答候補ノードの設定を解除する。
 ユーザクエリに対する回答を示すノードの候補と回答候補ノードとが一致する場合、経路選択部185は、回答候補ノードから祖先ノードを辿って現在位置ノードへ到達することで、現在位置ノードから回答候補ノードまでの経路を選択することができる。
 あるいは、経路選択部185が、ユーザクエリに対する回答を示すノードの候補のうち何れか1つのノードを、回答候補ノードに設定するようにしてもよい。
 例えば、経路選択部185が、現在位置ノードから子孫ノードを辿って適合ノードに到達した場合に、現在位置ノードから到達先のノードまでの経路を選択し、到達先のノードを回答候補ノードに設定するようにしてもよい。
 図3は、現在位置ノードおよび回答候補ノードの第1例を示す図である。図3は、階層構造データが木構造のデータである場合、かつ、経路選択部185が1つの回答候補ノードを設定する場合の例を示している。経路選択部185は、階層構造データのノードのうちノードN111をユーザクエリノードに設定し、初期設定にてユーザクエリノードであるノードN111を現在位置ノードに設定している。
 また、ノードN121からN124までが適合ノードに該当する。経路選択部185は、適合ノードのうちノードN121を回答候補ノードに設定している。また、経路選択部185は、ユーザクエリノードであるノードN111から回答候補ノードであるノードN121までの経路R11を選択している。
 図3のノードN122からN124までは、文書データへの変換前の文書中では表(Table)の項目として。図3の例では、「table」ノードを設け、ノードN122からN124までをこの「table」ノードの子ノードとしている。このように、表の項目をそれぞれ木構造のノードにし、表形式を示す「table」ノードの子孫ノードとすることで、表形式の情報についても他の形式の情報と同様に木構造の枠組みで階層化して統一的に扱うことができる。
 図4は、現在位置ノードおよび回答候補ノードの第2例を示す図である。図4は、階層構造データが木構造のデータである場合、かつ、経路選択部185が複数の回答候補ノードを設定する場合の例を示している。図3の場合と同様、経路選択部185は、階層構造データのノードのうちノードN111をユーザクエリノードに設定し、初期設定にてユーザクエリノードであるノードN111を現在位置ノードに設定している。
 また、図3の場合と同様、ノードN121からN124までが適合ノードに該当する。図3の場合とは異なり、経路選択部185は、適合ノードであるノードN121からN124までを全て回答候補ノードに設定している。また、経路選択部185は、ユーザクエリノードであるノードN111から回答候補ノードの1つであるノードN121までの経路R11を選択している。
 選択肢処理部186は、経路選択部185が選択した経路に含まれるノードを示す情報を選択肢としてユーザに提示する。選択肢処理部186が行う選択肢の提示は、上述した問い返しの例に該当する。選択肢としてユーザに提示される情報が示すノードを選択肢のノードと称する。
 選択肢処理部186がユーザに提示する選択肢は、ノードと一対一に対応付けられている。ユーザが何れかの選択肢を選択すると、経路選択部185は、選択された選択肢に対応するノードを選択し、その選択肢のノードを含む経路を選択する。この経路の選択により、ユーザクエリに対する回答を示すノードの候補が、選択された経路上のノードに絞り込まれる。
 ユーザが、あるノードを示す選択肢を選択することを、そのノードを選択すると称する。
 また、ユーザが何れかの選択肢を選択しないことが確定すると、経路選択部185が、その選択肢に対応するノードを選択しないことが確定し、経路選択部185が、そのノードを含む経路を選択しないことが確定する。この経路を選択しないことの確定により、ユーザクエリに対する回答を示すノードの候補が、選択しないことが確定した経路以外の経路上のノードに絞り込まれる。
 ユーザが、何れかの選択肢を選択することで、それ以外の選択肢を選択しないことが確定する。また、ユーザが、問い返しに対する応答で、ある選択肢を選択しないことを示すユーザ操作を行った場合、その選択肢に対応するノードを選択しないことが確定する。
 選択肢処理部186が、現在位置ノードの子ノードのうち、経路選択部185が選択した経路に含まれるノードのみを選択肢のノードとしてユーザに提示し、そのノードを選択するか除外するかをユーザに問い合わせるようにしてもよい。
 図5は、選択肢処理部186が選択肢のノードとして抽出するノードの第1例を示す図である。図5の例で、現在位置ノードであるノードN111の子ノードのうち、ノードN131が、経路R11に含まれる。選択肢処理部186は、ノードN131を選択肢のノードとしてユーザに提示し、そのノードN131を選択するか否かをユーザに問い合わせる。
 図6は、選択肢の表示画面(Picture)の第1例を示す図である。選択肢処理部186は、選択肢の表示画面をユーザ端末装置400に表示させることで選択肢をユーザに提示する。
 図6の例で、ユーザがノードN131を選択する場合の操作領域である「(1) 特別休暇」の表示項目と、ユーザがノードN131を選択しない場合の操作領域である「(N) その他」の表示項目とを含む、選択肢の表示画面をユーザ端末装置400に表示させる。
 ユーザが「(N) その他」を選択した場合、ノードN131を選択しないことが確定する。この場合、経路選択部185は、選択経路を、ノードN131を通らない経路に選択し直す。
 図7は、経路選択部185が選択し直す経路の例を示す図である。図7は、経路選択部185が図5の経路R11を選択している状態で、ユーザが図6の「(N) その他」を選択した場合の例を示している。
 ユーザがノードN131を選択しないことが確定することで、経路選択部185は、ノードN131の子孫のノードN121を、ユーザクエリに対する回答を示すノードの候補から除外する。
 選択肢のノードのうち、ユーザが選択しないことが確定したノードを否定ノードと称する。図7の例では、ノードN131が否定ノードの例に該当する。
 図7の例で、経路選択部185は、回答候補ノードとしてノードN123を選択している。また、経路選択部185は、現在位置ノードであるノードN111から回答候補ノードであるノードN123への経路である経路R12を選択している。経路R12は、現在位置ノードであるノードN111の子ノードのうちノードN132を含んでいる。
 図8は、選択肢の表示画面の第2例を示す図である。
 図8の例で、ユーザがノードN132を選択する場合の操作領域である「(1) 年次休暇」の表示項目と、ユーザがノードN132を選択しない場合の操作領域である「(N) その他」の表示項目とを含む、選択肢の表示画面をユーザ端末装置400に表示させる。
 ユーザが「(1) 年次休暇」を選択した場合、経路選択部185は、現在位置ノードをノードN111からノードN132に更新する。また、経路選択部185は選択経路を、現在位置ノードであるノードN132から回答候補ノードであるノードN132までの経路に選択し直す。
 選択肢処理部186が現在位置ノードの子ノードのうち回答候補ノードへ到達可能な全てのノードを選択肢のノードとして抽出するようにしてもよい。経路選択部185が設定している経路は回答候補ノードへ到達可能なので、選択肢処理部186は、経路選択部185が選択した経路に含まれるノードを示す情報を選択肢の1つとしてユーザに提示する。
 図9は、選択肢処理部186が選択肢のノードとして抽出するノードの第2例を示す図である。図9の例で、選択肢処理部186は、現在位置ノードであるノードN111の子ノードのうち回答候補ノードへ到達可能なノードを選択肢のノードとして抽出する。図9に示すノードN131およびN132は、いずれも、ノードN111の子ノードであり、かつ、回答候補ノードへ到達可能である。選択肢処理部186は、ノードN131およびN132を選択肢のノードとして抽出する。
 図10は、選択肢の表示画面の第3例を示す図である。図10は、選択肢処理部186が現在位置ノードの子ノードのうち回答候補ノードへ到達可能な全てのノードを選択肢のノードとして抽出する場合の、選択肢の表示画面の例を示している。「(1) 特別休暇」の表示項目は、図9の選択肢のノードN131に対応する。「(2) 年次休暇」の表示項目は、図9の選択肢のノードN132に対応する。図10の例では、現在位置ノードの子ノード、かつ、回答候補ノードへ到達可能なノードがもう1つあり、「(3) リフレッシュ休暇」の表示項目が、そのノードに対応する。
 ユーザが何れかの選択肢を選択すると、経路選択部185は、選択された選択肢に対応するノードを現在位置ノードに設定する。例えば、ユーザが「(2) 年次休暇」を選択した場合、経路選択部185は、現在位置ノードを図9のノードN111からノードN132に変更する。
 情報検索部187は、経路選択部185が経路を選択し直すための情報を検索する。経路選択部185が経路を選択し直すための情報は、上述した補助情報である。
 情報検索部187が補助情報を取得した場合、選択肢処理部186は、選択肢の提示を抑制する。具体的には、選択肢処理部186は、上述した問い返しを行わない。
 例えば、図10の画面でユーザが「(2) 年次休暇」を選択した場合、経路選択部185は、ノードN132を現在位置ノードに設定する。ノードN132の子孫のノードのうち、回答候補ノードがノードN122からN124までのノードのみである場合、情報検索部187が、ユーザの勤続年数を示す補助情報を取得できれば、経路選択部185は、再度の問い返しを行う必要なしに、ユーザクエリに対する回答を取得し得る。
 図11は、ユーザ端末装置400の機能構成の例を示す概略ブロック図である。図11に示す構で、ユーザ端末装置400は、端末側通信部410と、表示部420と、操作入力部430と、端末側記憶部470と、端末側制御部480とを備える。
 端末側通信部410は、他の装置と通信を行う。特に、端末側通信部410は、ユーザ端末装置400が表示するための各種データを質問応答装置100から受信し、ユーザ端末装置400が受け付けたユーザ操作を示す入力データを質問応答装置100へ送信する。
 表示部420は、例えば液晶パネルまたはLED(Light Emitting Diode、発光ダイオード)パネル等の表示デバイスを備え、各種画像を表示する。
 操作入力部430は、例えばキーボードおよびマウス等の入力デバイスを備え、ユーザ操作を受け付ける。
 端末側記憶部470は、各種データを記憶する。端末側記憶部470は、ユーザ端末装置400が備える記憶デバイスを用いて構成される。
 端末側制御部480は、ユーザ端末装置400の各部を制御して各種処理を実行する。端末側制御部480は、ユーザ端末装置400が備えるCPUが端末側記憶部470からプログラムを読み出して実行することで構成される。
 経路選択部185として、推論エンジンを用いることができる。この場合、階層構造データのノードから、そのノードの子ノード、およびこれらのノード間のエッジの組み合わせを、推論における知識に対応付けることができる。ここでいう知識は、事実として与えられるルールであり、知識の集合は、背景知識とも称される。
 ここでいうルールは、前件→後件の形式で、因果関係、前後関係、または、含意関係等の関係を表すものである。このルールは、前件が成り立つならば、後件が成り立つというルールである。前件、後件の記述方法として、命題論理または述語論理を使用可能である。
 また、ユーザクエリと、問い返しに対するユーザの応答が、観測および否定に翻訳される。ここでいう観測は、恒真の命題であり、観測事実とも称される。否定は、恒偽の命題である。
 また、現在位置ノードから回答候補ノードまでの経路を、推論における仮説に対応付けることができる。ここでいう仮説は、観測を説明するために仮定されるルールの集合体から成る。現在位置ノードから回答候補ノードまでの経路の選択を、仮説を立てることに対応付けることができる。
 経路選択部185として推論エンジンを用いる場合、前件から後件へルールを辿る演繹的な推論エンジンを用いることもできるし、後件から前件へルールを辿る帰納的な推論エンジンを用いることもできる。
 経路選択部185として演繹的な推論エンジンを用いる場合、現在位置ノードから子孫のノードを辿って行き、適合ノードに到達することで、仮説の候補となる経路を検出することができる。
 経路選択部185として、帰納的な推論エンジンを用いる場合、適合ノードから祖先のノードを辿って行き、現在位置ノードに到達することで、仮説の候補となる経路を検出することができる。
 あるいは、経路選択部185として、演繹法と帰納法とを併用する推論エンジンを用いるようにしてもよい。この場合、現在位置ノードから子孫のノードを辿って行く処理と、適合ノードから祖先のノードを辿って行く処理とを併用して、仮説の候補となる経路を検出することができる。
 次に、図12を参照して質問応答装置100の動作について説明する。
 図12は、質問応答装置100がユーザクエリに回答する処理手順の例を示すフローチャートである。
 図12の処理で、応答側通信部110はユーザクエリを取得する(ステップS101)。具体的には、ユーザ端末装置400が、ユーザクエリを入力するユーザ操作を受け付けて入力データを質問応答装置100へ送信し、応答側通信部110がユーザ端末装置400からの入力データを受信する。
 次に、トピック処理部183は、ユーザクエリに基づいてユーザクエリノードを設定する(ステップS102)。具体的には、トピック処理部183がユーザクエリからトピックを抽出する。そして、トピック処理部183は、抽出したトピックに基づいて、階層構造データのノードのうち何れか1つのノードをユーザクエリノードに設定する。
 そして、経路選択部185は、トピック処理部183がユーザクエリノードに設定したノードを現在位置ノードに初期設定する(ステップS103)。
 また、タイプ判定部184は、ユーザクエリに基づいて回答タイプを判定する(ステップS104)。
 そして、経路選択部185は、回答タイプに基づいて回答候補ノードを設定し、現在位置ノードから回答候補ノードまでの経路を選択する(ステップS105)。経路選択部185が、回答候補ノードを設定した後、現在位置ノードから回答候補ノードまでの経路を選択するようにしてもよい。あるいは、経路選択部185が、現在位置ノードから子孫のノードを辿って行き、到達先のノードが回答タイプに適合するか否かを判定することで、回答タイプの設定および経路の選択を行うようにしてもよい。
 次に、選択肢処理部186は、ユーザに対する問い返しを行う(ステップS106)。上述したように、選択肢処理部186が、現在位置ノードの子ノードのうち、経路選択部185が選択した経路に含まれるノードのみを選択肢のノードとしてユーザに提示し、そのノードを選択するか否かをユーザに問い合わせるようにしてもよい。あるいは、選択肢処理部186が現在位置ノードの子ノードのうち回答候補ノードへ到達可能な全てのノードを選択肢のノードとして抽出し、抽出した選択肢の何れを選択するかユーザに問い合わせるようにしてもよい。
 そして、応答側通信部110は、問い返しに対するユーザの応答を取得する(ステップS107)。具体的には、ユーザ端末装置400が、ユーザの応答の入力操作を受け付けて、受け付けた入力操作を示す入力データを質問応答装置100へ送信する。応答側通信部110は、この入力データを受信することで、問い返しに対するユーザの応答を取得する。
 経路選択部185は、現在位置ノードの子ノードのうち、回答候補ノードに到達可能な子ノードが1つに絞り込まれたか否かを判定する(ステップS108)。
 回答候補ノードに到達可能な子ノードが1つに絞り込まれたと判定した場合(ステップS108:YES)、経路選択部185は、現在位置ノードをその子ノードに更新する(ステップS109)。
 次に、経路選択部185は、回答を取得したか否かを判定する(ステップS110)。具体的には、経路選択部185は、現在位置ノードが回答候補ノードに到達したか否かを判定する。
 回答を取得していないと判定した場合(ステップS110:NO)、経路選択部185は、選択経路を新たな経路に選択し直す(ステップS121)。
 ステップS121の後、処理がステップS106へ戻る。
 一方、ステップS110で回答を取得したと判定した場合(ステップS110:YES)、経路選択部185は回答をユーザに提示する(ステップS131)。具体的には、経路選択部185は、現在位置ノードが到達した回答候補ノードから回答を抽出し、応答側通信部110を介してユーザ端末装置400へ回答を送信して、ユーザ端末装置400の表示部420に回答を表示させる。
 ステップS131の後、質問応答装置100は、図12の処理を終了する。
 一方、ステップS108で、回答候補ノードに到達可能な子ノードが1つに絞り込まれていないと経路選択部185が判定した場合(ステップS108:NO)、処理がステップS110へ進む。
 以上のように、タイプ判定部184は、ユーザからの質問に基づいて質問に対する回答のタイプを判定する。経路選択部185は、階層構造データにおけるノードのうち選択された現在位置ノードから回答のタイプに適合する適合ノードへの経路のうち何れかの経路を選択する。選択肢処理部186は、選択された経路に含まれるノードを示す情報を選択肢としてユーザに提示する。
 このように、経路選択部185が適合ノードに到達可能な経路を選択することで、適合ノードに到達可能な選択肢を優先的にユーザに提示することができる、あるいは、適合ノードに到達不可能な選択肢の提示を抑制することができる。すなわち、経路選択部185は、回答を得られる可能性のある選択肢を優先的にユーザに提示することができる。あるいは、経路選択部185は、回答を得られる可能性のある選択肢のみをユーザに提示することができる。
 これにより、ユーザが何れかの選択肢を選択するまでに質問応答装置100が選択肢を提示し直す回数が比較的少なくて済むと期待される。質問応答装置100によれば、この点で、ユーザへの問い返しを行って回答を文書から抽出する場合に、質問応答装置100の処理が比較的少なくて済む。
 また、質問応答装置100によれば、ユーザが何れかの選択肢を選択するまでに質問応答装置100が選択肢を提示し直す回数が比較的少なくて済むことで、質問に対する回答を得られるまでの時間が比較的短くて済むと期待される。
 また、ユーザは、回答を得られる可能性のある選択肢から優先に、その選択肢を選択するか否かを判定することができる。あるいは、ユーザは、回答を得られる可能性のある選択肢についてのみ、その選択肢を選択するか否か、または、何れの選択肢を選択するかを判定することができる。質問応答装置100によれば、この点で、ユーザが選択肢の選択について判断する回数が比較的少ないことが期待され、ユーザの負担が比較的小さい。
 また、経路選択部185は、選択肢の提示に対するユーザの応答に応じて経路を選択し直す。
 これにより、質問応答装置100は、ユーザに選択肢を提示し、応答に応じて経路を選択し直すという比較的簡単な処理を繰り返すことで、回答を得られる。この点で、質問応答装置100の処理が比較的少なくて済む。また、質問応答装置100が行う処理が比較的簡単である点で、質問応答装置100の処理能力が比較的小さくて済み、質問応答装置100の製造コストを比較的安くすることができる。
 また、経路選択部185は、1つの経路を選択し、ユーザの応答が、選択された経路に含まれるノードを選択しないことを示す場合、選択済みの経路以外の1つの経路に選択し直す。
 これにより、ユーザは、提示される選択肢を選択するか否かを決定するという比較的簡単な判断を行えばよい。質問応答装置100によれば、この点で、ユーザの負担が比較的小さい。
 また、情報検索部187は、経路の選択し直しのための情報を検索する。選択肢処理部186は、情報検索部187が経路の選択し直しのための情報を取得した場合、選択肢の提示を抑制する。
 情報検索部187が経路の選択し直しのための情報を取得した場合に、選択肢処理部186が選択肢の提示を抑制することで、ユーザに提示する選択肢が比較的少なくて済む。質問応答装置100によれば、この点で、ユーザの負担が比較的小さい。
<第2実施形態>
 質問応答装置100が、複数の経路を選択するようにしてもよい。第2実施形態では、この場合について説明する。
 第2実施形態に係る質問応答システムの装置構成は、第1実施形態の場合と同様であり、図1を引用する。第2実施に係るユーザ端末装置400の機能構成も、第1実施形態の場合と同様であり、図11を引用する。
 図13は、第2実施形態に係る質問応答装置100の機能構成の例を示す概略ブロック図である。図13に示す構成では、経路選択部191が評価値算出部192を備える点が、図1の経路選択部185の場合と異なる。また、図13に示す構成では、選択肢処理部193が表示数予測部194および表示形式決定部195を備える点が、図1の選択肢処理部186の場合と異なる。第2実施形態は、それ以外の点では第1実施形態の場合と同様である。
 質問応答装置100は、表示形式決定装置の例に該当し、ユーザに提示する選択肢の表示形式を決定する。
 経路選択部191は、経路選択部185の場合と同様、情報の階層構造(階層構造データ)におけるノードのうち選択された現在位置ノードから回答タイプに適合する適合ノードへの経路のうち何れかの経路を選択する。そして、経路選択部185は、選択肢処理部186がユーザへの問い返しにて行う選択肢の提示に対するユーザの応答に応じて経路を選択し直す。
 経路選択部191は、経路選択部185の場合と異なり、k個の経路を選択する。kは、予め設定された2以上の整数の定数である。
 問い返しに対するユーザの応答が、経路選択部191が選択したいずれかの経路に含まれるノードを選択することを示す場合、経路選択部191は、ユーザが選択したノードを現在位置ノードとして経路を選択し直す。
 あるいは、kの値が1に設定されていてもよい。この場合、経路選択部185と同様、経路選択部191は1つの経路を選択し、問い返しに対するユーザの応答に応じて経路を選択し直す。
 評価値算出部192は、現在位置ノードから回答候補ノードへの経路毎に評価値を算出する。評価値算出部192は、問い返しに対する応答でユーザが選択する可能性が高い選択肢のノードを含む経路に高い評価値を算出する。
 例えば、応答側記憶部170が、階層構造データのノード毎に、問い合わせに対する応答でユーザがそのノードを選択した履歴を記憶しておく。そして、評価値算出部192は、現在位置ノードから回答候補ノードへの経路毎に、現在位置ノードの子ノードのうち、その経路に含まれるノードをユーザが選択した回数を、その経路の評価値として算出する。
 経路選択部191は、評価値算出部192が算出した評価が高い順にk個の経路を選択する。
 図14は、経路選択部191が選択した複数の経路の第1例を示す図である。図14は、階層構造データが図3の場合と同様であり、k=3の場合の例を示している。図3の場合と同様、経路選択部191は、階層構造データのノードのうちノードN111をユーザクエリノードに設定し、初期設定にてユーザクエリノードであるノードN111を現在位置ノードに設定している。
 また、図3の場合と同様、ノードN121からN124までが適合ノードに該当する。図4の場合と同様、経路選択部191は、適合ノードであるノードN121からN124までを全て回答候補ノードに設定している。
 また、経路選択部191は、経路R21、R22およびR23の3つの経路を選択している。経路R21は、ノードN111からノードN121までの経路である。経路R22は、ノードN111からノードN123までの経路である。経路R23は、ノードN111からノードN122までの経路である。経路選択部191の評価値算出部192は、現在位置ノードから全ての回答候補ノードまでの経路それぞれについて評価値を算出し、経路選択部191は、評価値が高い順に経路R21、R22、R23の3つの経路を選択している。
 図15は、経路選択部191が選択した複数の経路の第2例を示す図である。図15は、図14の例で問い返しに対してユーザがノードN132を選択した場合の例を示している。経路選択部191は、現在位置ノードをノードN132に設定し直し、経路R31、R32、R33の3つの経路を選択している。経路R31は、ノードN111からノードN123までの経路である。経路R32は、ノードN111からノードN122までの経路である。経路R33は、ノードN111からノードN124までの経路である。経路選択部191の評価値算出部192は、現在位置ノードから全ての回答候補ノードまでの経路それぞれについて評価値を算出し、経路選択部191は、評価値が高い順に経路R31、R32、R33の3つの経路を選択している。
 経路選択部191が、経路の評価値を算出する方法として、例えば、HobbsのWeighted Abductionにおける仮説のコストの算出方法など、公知の方法を用いることができる。但し、経路選択部191が経路の評価値を算出する方法は、その経路にてユーザクエリに対する回答を得られる可能性の評価値を算出できる方法であればよく、特定の方法に限定されない。
 選択肢処理部193は、経路選択部191が選択した経路に含まれるノードを示す情報を選択肢としてユーザに提示する。選択肢処理部193が行う選択肢の提示は、上述した問い返しの例に該当する。
 表示数予測部194は、問い返しにおける選択肢毎に与えられた指標値に基づいて、何れかの選択肢が選択されるまでに表示される選択肢の数の予測を示す値を算出する。
 表示数予測部194が、質問応答システム1とユーザとの対話の履歴、または、ユーザによる文書のページの閲覧履歴等に基づいて、選択肢毎に、ユーザがその選択肢を選択する確率を算出し、指標値として用いるようにしてもよい。但し、表示数予測部194が用いる指標値は、選択肢毎に、ユーザがその選択肢を選択する可能性の大きさを示すものであればよく、特定のものに限定されない。全ての選択肢の指標値の合計が1にならなくてもよい。例えば、経路選択部191が経路毎に算出する評価値を、その経路に含まれるノードを示す選択肢の指標値として用いるようにしてもよい。
 表示形式決定部195は、算出された値に基づいて、選択肢の表示形式を決定する。
 図16は、表示項目の階層化のパタンの第1例を示す図である。図16の例では、3つの表示項目c1、c2およびc3のいずれも第1階層に含まれている。
 表示項目の階層化のパタンでは、各階層は、1つの画面に表示する表示項目群を示す。階層の番号(「第i階層」の「i」、iは正の整数)は、階層を識別する識別子を示す。表示項目の番号(「cj」の「j」、jは正の整数)は、表示項目を識別する識別子を示す。
 図16のパタンは、3つの表示項目c1、c2およびc3を1つの画面に、例えば、上からc1、c2、c3の順で表示することを示している。図16のパタンを第1パタンと称する。第1パタンは、表示形式の例に該当する。後述する第2パタンから第4パタンまでも、表示形式の例に該当する。
 図17は、選択肢処理部193が第1パタンを選択した場合の表示画面の例を示す図である。図17は、手当の金額を問い合わせるユーザクエリに対する問い返しで、選択肢が、日当手当、補助手当、特別手当の3つである場合の例を示している。評価値算出部192は、日当手当、補助手当、特別手当の順に高い評価値を算出している。
 選択肢処理部193は、第1パタンに従って、日当手当、補助手当、特別手当の3つの選択肢を全て表示する表示画面の画像データを生成する。選択肢処理部193は、評価値算出部192が算出した評価値に基づいて、3つの選択肢を、上から日当手当、補助手当、特別手当の順に表示している。
 領域A111は、1番目の選択肢である日当手当の表示領域である。領域A111における「(1)」は、ユーザ操作のための番号「1」を示している。領域A112は、2番目の選択肢である補助手当の表示領域である。領域A112における「(2)」は、ユーザ操作のための番号「2」を示している。領域A113は、3番目の選択肢である特別手当の表示領域である。領域A113における「(3)」は、ユーザ操作のための番号「3」を示している。
 図17の例では、ユーザ端末装置400の表示部420が、選択肢処理部193の指示に従って図17の表示画面を表示する。ユーザは、操作入力部430にてユーザ操作を行うことで、選択肢の何れかを選択することができる。
 具体的には、ユーザは、領域A111をマウスクリックまたはタッチ操作するか、あるいは、キーボードの「1」のボタンを押下することで、日当手当を選択することができる。また、ユーザは、領域A112をマウスクリックまたはタッチ操作するか、あるいは、キーボードの「2」のボタンを押下することで、補助手当を選択することができる。また、ユーザは、領域A113をマウスクリックまたはタッチ操作するか、あるいは、キーボードの「3」のボタンを押下することで、補助手当を選択することができる。
 領域A121は、前画面の表示を指示するユーザ操作を受け付ける領域である。ここでいう前画面は、表示部420が直前に表示していた画面である。ユーザは、前画面に戻って操作をやり直したい場合に、領域A121をマウスクリックまたはタッチ操作して、表示部420に前画面を表示させる。
 領域A122は、選択肢の表示画面が複数ある場合に最初の画面に戻るよう指示するユーザ操作を受け付ける領域である。ユーザは、選択肢の表示画面のうち最初の画面に戻って操作をやり直したい場合に、領域A122をマウスクリックまたはタッチ操作して、表示部420に最初の画面を表示させる。
 領域A121は、次画面の表示を指示するユーザ操作を受け付ける領域である。ここでいう次画面は、表示部420が前画面の表示に戻った場合の、前画面に戻る前の画面である。ユーザは、領域A121への操作を取り消したい場合に、領域A123をマウスクリックまたはタッチ操作して、表示部420に次画面を表示させる。
 図18は、表示項目の階層化のパタンの第2例を示す図である。図18の例では、3つの表示項目のうち表示項目c1およびc2が第1階層に含まれ、表示項目c3が第2階層に含まれている。
 図18のパタンは、まず、第1階層における表示項目c1、表示項目c2、及び、項目「その他」を表示することを示す。項目「その他」が選択された場合には、表示項目c3が表示される。図18のパタンを第2パタンと称する。
 図19は、選択肢処理部193が第2パタンを選択した場合の第1画面の例を示す図である。図19は、図17の場合と同様、手当の金額を問い合わせるユーザクエリに対する問い返しで、選択肢が、日当手当、補助手当、特別手当の3つである場合の例を示している。評価値算出部192は、日当手当、補助手当、特別手当の順に高い評価値を算出している。
 選択肢処理部193は、第2パタンに従って、日当手当、補助手当の2つの選択肢を表示する第1画面の画像データを生成する。選択肢処理部193は、評価値算出部192が算出した評価値に基づいて、2つの選択肢を表示する順番を、上から日当手当、補助手当の順にしている。
 領域A211は、図17の領域A111と同様である。領域A212は、図17の領域A112と同様である。
 領域A213は、表示部420に次の画面を表示させるユーザ操作を受け付ける領域である。領域A113における「(N)」は、ユーザ操作のための記号「N」を示している。ユーザは、領域A213をマウスクリックまたはタッチ操作するか、あるいは、キーボードの「N」のボタンを押下することで、表示部420に次の画面である第2画面を表示させることができる。
 領域A121、A122およびA123は、いずれも図17の場合と同様である。
 図20は、選択肢処理部193が第2パタンを選択した場合の第2画面の例を示す図である。図20は、図19の例の場合における、選択肢の表示画面の第2画面の例を示している。
 図19の第1画面で、ユーザが領域A213をマウスクリックまたはタッチ操作するか、あるいは、キーボードの「N」のボタンを押下した場合、選択肢処理部193は、第2パタンに従って、特別手当の選択肢を表示する第2画面の画像データを生成する。
 領域A221は、図17の領域A113と同様である。
 領域A121、A122およびA123は、いずれも図17の場合と同様である。
 図21は、表示項目の階層化のパタンの第3例を示す図である。図21の例では、3つの表示項目のうち表示項目c1が第1階層に含まれ、表示項目c2が第2階層に含まれ、表示項目c3が第3階層に含まれている。
 図21のパタンは、表示項目c1と、「その他」項目とを第1画面に表示することを示す。このパタンは、第1画面において「その他」項目が選択された場合に、表示項目c2を第2画面に表示することを示す。このパタンは、第2画面において「その他」項目が選択された場合に、表示項目c3を第3画面に表示することを示す。図21のパタンを第3パタンと称する。
 図22は、選択肢処理部193が第3パタンを選択した場合の第1画面の例を示す図である。図22は、図17の場合と同様、手当の金額を問い合わせるユーザクエリに対する問い返しで、選択肢が、日当手当、補助手当、特別手当の3つである場合の例を示している。評価値算出部192は、日当手当、補助手当、特別手当の順に高い評価値を示している。
 選択肢処理部193は、第3パタンに従って、日当手当の選択肢を表示する第1画面の画像データを生成する。
 領域A311は、図17の領域A111と同様である。
 領域A312は、図19の領域A213と同様である。ユーザは、領域A312をマウスクリックまたはタッチ操作するか、あるいは、キーボードの「N」のボタンを押下することで、表示部420に次の画面である第2画面を表示させることができる。
 領域A121、A122およびA123は、いずれも図17の場合と同様である。
 図23は、選択肢処理部193が第3パタンを選択した場合の第2画面の例を示す図である。図23は、図22の例の場合における、選択肢の表示画面の第2画面の例を示している。
 図22の第1画面で、ユーザが領域A312をマウスクリックまたはタッチ操作するか、あるいは、キーボードの「N」のボタンを押下した場合、選択肢処理部193は、第3パタンに従って、補助手当の選択肢を表示する第2画面の画像データを生成する。
 領域A311は、図17の領域A111と同様である。
 領域A312は、図19の領域A213と同様である。ユーザは、領域A312をマウスクリックまたはタッチ操作するか、あるいは、キーボードの「N」のボタンを押下することで、表示部420に次の画面である第3画面を表示させることができる。
 領域A121、A122およびA123は、いずれも図17の場合と同様である。
 選択肢処理部193が第3パタンを選択した場合の第3画面は、図20を参照して説明した、選択肢処理部193が第2パタンを選択した場合の第2画面と同様である。
 図24は、表示項目の階層化のパタンの第4例を示す図である。図24の例では、3つの表示項目のうち表示項目c1が第1階層に含まれ、2つの表示項目c2およびc3が第2階層に含まれている。
 図24のパタンは、表示項目c1と、「その他」項目とを第1画面に表示することを示す。このパタンは、第1画面において「その他」項目が選択された場合に、表示項目c2およびc3を第2画面に表示することを示す。図24のパタンを第4パタンと称する。
 選択肢処理部193が第4パタンを選択した場合の第1画面は、図22を参照して説明した、選択肢処理部193が第3パタンを選択した場合の第1画面と同様である。
 図25は、選択肢処理部193が第4パタンを選択した場合の第2画面の例を示す図である。図25は、図24の例の場合における、選択肢の表示画面の第2画面の例を示している。
 選択肢処理部193が第4パタンを選択した場合に、第1画面で、「(N) その他」の表示領域がマウスクリックまたはタッチ操作されるか、あるいは、キーボードの「N」のボタンが押下された場合、選択肢処理部193は、第4パタンに従って、補助手当および特別手当の選択肢を表示する第2画面の画像データを生成する。
 領域A411は、図17の領域A112と同様である。領域A412は、図17の領域A113と同様である。
 領域A121、A122およびA123は、いずれも図17の場合と同様である。
 例えば、表示数予測部194は、選択肢毎の指標値として、ユーザがその選択肢を選択する確率を算出する。そして、表示数予測部194は、何れかの選択肢が選択されるまでに表示される選択肢の数の予測を示す値として、期待値を算出する。
 例えば、応答側記憶部170が、上述した第1パタンから第4パタンまでの4つのパタンを予め記憶しておく。表示数予測部194は、ユーザが選択肢c1を選択する確率を0.9と算出し、ユーザが選択肢c2を選択する確率を0.05と算出し、ユーザが選択肢c3を選択する確率を0.05と算出したとする。
 この場合、表示数予測部194は、第1パタン(図16に例示)で何れかの選択肢が選択されるまでに表示される選択肢の数の期待値を式(2)のように算出する。
Figure JPOXMLDOC01-appb-M000002
 第1パタンの場合、1つの表示画面に選択肢c1、c2、c3を全て表示する。従って、ユーザが選択肢c1、c2、c3の何れを選択した場合も、表示する選択肢の数は3つである。
 そこで、表示数予測部194は、式(2)に示すように選択肢c1、c2、c3それぞれの確率に選択肢の数3を乗算して足し合わせ、期待値を3と算出する。
 また、表示数予測部194は、第2パタン(図18に例示)で何れかの選択肢が選択されるまでに表示される選択肢の数の期待値を式(3)のように算出する。
Figure JPOXMLDOC01-appb-M000003
 第2パタンの場合、表示部420は、第1画面に選択肢c1およびc2と、次の画面の表示を指示するための選択肢「(N) その他」とを表示する。従って、第1画面の選択肢の数は3である。ユーザが選択肢c1、c2の何れを選択した場合も、表示部420が表示する選択肢の数は3である。
 また、表示部420は、第2画面に選択肢c3を表示する。従って、第2画面の選択肢の数は1である。ユーザが選択肢c3を選択した場合、表示部420が表示する選択肢の数は、第1画面の選択肢の数3と、第2画面の選択肢の数1とを合計した4である。
 そこで、表示数予測部194は、式(3)に示すように選択肢c1、c2それぞれの確率に選択肢の数3を乗算し、選択肢c3の確率に選択肢の数4を乗算して足し合わせ、期待値を3.05と算出する。
 また、表示数予測部194は、第3パタン(図21に例示)で何れかの選択肢が選択されるまでに表示される選択肢の数の期待値を式(4)のように算出する。
Figure JPOXMLDOC01-appb-M000004
 第3パタンの場合、表示部420は、第1画面に選択肢c1と、次の画面の表示を指示するための選択肢「(N) その他」とを表示する。すなわち、第1画面の選択肢の数は2である。従って、ユーザが選択肢c1を選択した場合、表示部420が表示する選択肢の数は2である。
 また、第1画面にて選択肢「(N) その他」が選択された場合に、表示部420は、第2画面に選択肢c2と、次の画面の表示を指示するための選択肢「(N) その他」とを表示する。従って、第2画面の選択肢の数は2である。ユーザが選択肢c2を選択した場合、表示部420が表示する選択肢の数は、第1画面の選択肢の数2と、第2画面の選択肢の数2とを合計した4である。
 また、第2画面にて選択肢「(N) その他」が選択された場合に、表示部420は、第3画面に選択肢c3を表示する。従って、第3画面の選択肢の数は1である。ユーザが選択肢c3を選択した場合、表示部420が表示する選択肢の数は、第1画面の選択肢の数2と、第2画面の選択肢の数2と、第3画面の選択肢の数1とを合計した5である。
 そこで、表示数予測部194は、式(4)に示すように選択肢c1の確率に選択肢の数2を乗算し、選択肢c2の確率に選択肢の数4を乗算し、選択肢c3の確率に選択肢の数5を乗算して足し合わせ、期待値を2.25と算出する。
 また、表示数予測部194は、第4パタン(図24に例示)で何れかの選択肢が選択されるまでに表示される選択肢の数の期待値を式(5)のように算出する。
Figure JPOXMLDOC01-appb-M000005
 第4パタンの場合、表示部420は、第1画面に選択肢c1と、次の画面の表示を指示するための選択肢「(N) その他」とを表示する。従って、第1画面の選択肢の数は2である。ユーザが選択肢c1を選択した場合、表示部420が表示する選択肢の数は2である。
 また、第2画面にて選択肢「(N) その他」が選択された場合に、表示部420は、第2画面に選択肢c2およびc3を表示する。従って、第2画面の選択肢の数は2である。ユーザが選択肢c2、c3の何れを選択した場合も、表示部420が表示する選択肢の数は、第1画面の選択肢の数2と、第2画面の選択肢の数2とを合計した4である。
 そこで、表示数予測部194は、式(5)に示すように選択肢c1の確率に選択肢の数2を乗算し、選択肢c2、c3それぞれの確率に選択肢の数4を乗算して足し合わせ、期待値を2.2と算出する。
 第1パタンから第4パタンまでのうち、表示される選択肢の個数に関する期待値が最も小さいのは第4パタンのである。そこで、表示形式決定部195は、表示部420に選択肢を表示させるパタンを第4パタンに決定する。表示形式決定部195は、第4パタンに基づいて選択肢の表示画面の画像データを生成し、応答側通信部110を介して表示部420に画像データを送信して表示画面を表示させる。
 第2実施形態に係る質問応答装置100がユーザクエリに回答する処理手順の例は、図12を参照して説明したのと同様である。但し、経路選択部191は、ステップS105でk個の経路を選択する。また、ステップS106で、選択肢処理部193は、ユーザ端末装置400に複数の選択肢の表示画面を表示させる。
 図26は、質問応答装置100がユーザ端末装置400に選択肢を表示させる処理手順の例を示すフローチャートである。
 図26の処理で、経路選択部191は、現在位置ノードから回答候補ノードまでの各経路の評価値を決定する(ステップS201)。
 そして、経路選択部191は、評価が高い順(評価値が大きい順)に上位k(ただし、kは自然数)個の経路を選択する(ステップS202)。経路選択部191が、選択肢の数がk個になるまで経路を選択するようにしてもよい。
 次に、選択肢処理部193は、経路選択部191が選択した経路に含まれる選択肢のノードを抽出する(ステップS203)。
 表示数予測部194は、応答側記憶部170から選択肢の表示形式(例えば、上述したパタン)を複数読み出し、ユーザが何れかの選択肢を選択するまでに表示部420が表示する選択肢の数の予測値(例えば、期待値)を、表示形式毎に算出する(ステップS204)。
 表示形式決定部195は、予測値(例えば、期待値)が最も小さい表示形式を選択する(ステップS205)。
 表示形式決定部195は、選択した表示形式を用いて選択肢の表示処理を行う(ステップS206)。具体的には、表示形式決定部195は、選択した表示形式に基づいて選択肢の表示画面の画像データを生成する。表示形式決定部195は、生成した画像データを、応答側通信部110を介してユーザ端末装置400に送信することで、ユーザ端末装置400の表示部420に選択肢を表示させる。
 ステップS206の後、図26の処理を終了する。
 図27は、ユーザと質問応答システム1との対話の例を示す図である。
 図27の例で、ユーザは、操作入力部430を用いて「休暇の日数を知りたい」とのユーザクエリを入力している。このように、ユーザがユーザクエリを自然言語の文で入力できることで、ユーザは、質問応答システム1に対していろいろな質問を比較的容易に行うことができる。
 ユーザクエリに対し、質問応答システム1は、「(1)特別休暇」、「(2)年次休暇」、「(N)その他の休暇」の3つの選択肢をユーザに提示して何れかの選択肢の選択を受け付ける問い返しを行っている。
 問い返しに対し、ユーザは、「(2)年次休暇」を選択している。質問応答システム1は、このユーザの選択に基づいて、休暇の種類を年次休暇に絞り込むことができる。
 年次休暇の場合、休暇の付与日数は勤続年数によって異なることが階層構造データによって示されている。そこで、質問応答システム1は、勤続年数「(1)5年未満」、「(2)5年以上15年未満」、「(3)15年以上」の3つの選択肢をユーザに提示して何れかの選択肢の選択を受け付ける問い返しを行っている。
 問い返しに対し、ユーザは、「(2)5年以上15年未満」を選択している。
 質問応答システム1は、階層構造データの経路のうち、勤続年数5年以上15年未満の選択肢の経路を辿って休暇の付与日数21日との回答のノードに到達する。そして、質問応答システム1は、「年次休暇の付与日数は、21日です」との回答をユーザに提示している。
 1回目の問い返しでは、質問応答システム1は、図26の処理による選択肢の順番決めおよび表示する選択肢数の調整を行っている。
 2回目の問い返しでは、勤続年数「(1)5年未満」、「(2)5年以上15年未満」、「(3)15年以上」の順番で提示するのが見易い。そこで質問応答システム1は、これらの選択肢を、経路の評価値に基づく並べ替えを行わずそのままの順番で表示している。但し、質問応答システム1が、2回目の問い返しでの選択肢についても、図26の処理による選択肢の順番決めおよび表示する選択肢数の調整を行うようにしてもよい。
 以上のように、経路選択部191は、複数の経路を選択し、ユーザの応答が、選択されたいずれかの経路に含まれるノードを選択することを示す場合、選択されたノードを現在位置ノードとして経路を選択し直す。
 このように、経路選択部191が複数の経路を選択することで、経路選択部191が1つの経路を選択する場合よりも、経路を選択し直す回数が少なくて済むことが期待され、この点で、質問応答装置100がユーザの質問に回答する処理を効率よく行えることが期待される。
 また、経路選択部191は、現在位置ノードから適合ノードへの経路のうち、ユーザの応答に応じて除外された経路以外の経路の各々について、回答を示すノードに到達する可能性の評価値を算出する。選択肢処理部186は、選択肢が示すノードを含む経路の評価が高いほど、その選択肢を優先的にユーザに提示する。
 このように、選択肢処理部186が、評価が高い経路に含まれるノードが示す選択肢を優先的にユーザに提示することで、ユーザが、比較的早い段階で提示される選択肢を選択することが期待される。従って、質問応答装置100によれば、ユーザに提示する選択肢が比較的少なくて済むことが期待され、この点で、ユーザの負担が比較的小さいことが期待される。
 また、表示数予測部194は、選択肢毎にその選択肢が選択される可能性の大きさを示す指標値に基づいて、何れかの選択肢が選択されるまでに表示される表示項目の数の予測を示す予測値を、選択肢を表示する複数の表示形式の各々について算出する。表示形式決定部195は、算出された予測値に基づいて、表示形式の何れかを選択する。
 表示形式決定部195は、何れかの選択肢が選択されるまでに表示されると予測される表示項目の数が比較的少ない表示形式を選択することができる。このように、質問応答装置100によれば、ユーザに選択肢を提示して選択を受け付ける場合に、質問応答装置100の処理が比較的少なくて済む。
 また、質問応答装置100では、ユーザが確認する表示項目の数が比較的少なくて済み、この点で、ユーザが選択肢の選択を行う処理の負荷を低減させることができる。
 また、表示項目の各々は、選択肢の何れか、または、次の表示画面の表示を示す。
 これにより、質問応答装置100では、選択肢を複数の表示画面に分配して配置し、ユーザが何れかの選択肢を選択するまで表示画面を切り替えるという比較的簡単な処理で、ユーザに提示する表示項目の数の低減を図ることができる。
 また、表示数予測部194は、選択肢が選択される確率を指標値として用いて、何れかの選択肢が選択されるまでに表示される表示項目の数の期待値を予測値として算出する。
 このように、表示数予測部194が、確率および期待値を用いることで、表示数予測部194が行う処理の概念がより明確になる。この点で、質問応答装置100によれば、表示数予測部194が行う処理の把握が比較的容易になる。
 また、表示数予測部194は、予め定められた複数の表示形式の各々について予測値を算出する。表示形式決定部195は、予測値が最も小さい表示形式を選択する。
 このように、質問応答装置100が、予め定められた表示形式を用いることで、選択肢をユーザに提示する際に表示形式を生成する場合よりも速やかに選択肢をユーザに提示することができ、また、質問応答装置100の処理負荷が小さくて済む。
 なお、質問応答システム1が用いるユーザインタフェースは、画面表示によるものに限定されない。例えば、質問応答システム1が、画面表示およびキー操作によるユーザへの選択肢の提示およびユーザの回答に加えて、或いは代えて、音声対話エージェント、または、音声案内とキー操作との組み合わせなど、音声インタフェースを用いるようにしてもよい。ユーザに選択肢を音声で提示する場合、ユーザが選択する可能性の高い選択肢を優先的に提示することで、提示する選択肢数が比較的少なくて済むことが期待される。
 一般的に、音声によるユーザへの通知は、画面表示による通知よりも時間がかかると考えられる。質問応答システム1が、ユーザに選択肢を音声で提示する場合に、提示する選択肢数が比較的少なくて済むことで、画面表示による選択肢の提示の場合よりもさらに必要時間の削減効果を得られると期待される。
 次に、図28を参照して本発明の実施形態の構成について説明する。
 図28は、本発明の実施形態に係る質問応答装置の構成の例を示す図である。図28に示す質問応答装置10は、タイプ判定部11と、経路選択部12と、選択肢処理部13とを備える。
 かかる構成にて、タイプ判定部11は、ユーザからの質問に基づいて質問に対する回答のタイプを判定する。経路選択部12は、情報の階層構造におけるノードのうち選択された現在位置ノードから回答のタイプに適合する適合ノードへの経路のうち何れかの経路を選択する。選択肢処理部13は、選択された経路に含まれるノードを示す情報を選択肢としてユーザに提示する。
 このように、経路選択部12が適合ノードに到達可能な経路を選択することで、適合ノードに到達可能な選択肢を優先的にユーザに提示することができる、あるいは、適合ノードに到達不可能な選択肢の提示を抑制することができる。すなわち、経路選択部12は、回答を得られる可能性のある選択肢を優先的にユーザに提示することができる。あるいは、経路選択部12は、回答を得られる可能性のある選択肢のみをユーザに提示することができる。
 これにより、ユーザが何れかの選択肢を選択するまでに質問応答装置10が選択肢を提示し直す回数が比較的少なくて済むと期待される。質問応答装置10によれば、この点で、ユーザへの問い返しを行って回答を文書から抽出する場合に、質問応答装置10の処理が比較的少なくて済む。
 また、質問応答装置10によれば、ユーザが何れかの選択肢を選択するまでに質問応答装置10が選択肢を提示し直す回数が比較的少なくて済むことで、質問に対する回答を得られるまでの時間が比較的短くて済むと期待される。
 また、ユーザは、回答を得られる可能性のある選択肢から優先に、その選択肢を選択するか否かを判定することができる。あるいは、ユーザは、回答を得られる可能性のある選択肢についてのみ、その選択肢を選択するか否か、または、何れの選択肢を選択するかを判定することができる。この点で、ユーザが選択肢の選択について判断する可能性が比較的少ないことが期待され、ユーザの負担が比較的小さい。
 なお、第1実施形態に係る応答側制御部180、または、第2実施形態に係る応答側制御部180の全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。ここでいう「コンピュータシステム」とは、OS(オペレーティングシステム)や周辺機器等のハードウェアを含む。
 「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
 以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
 本発明の実施形態は、質問応答装置、質問応答方法および記録媒体に適用してもよい。
 1 質問応答システム
 100 質問応答装置
 110 応答側通信部
 170 応答側記憶部
 180 応答側制御部
 181 階層構造データ生成部
 182 ユーザクエリ処理部
 183 トピック処理部
 184 タイプ判定部
 185 経路選択部
 186 選択肢処理部
 187 情報検索部
 200 文書データ管理装置
 300 補助情報提供装置
 400 ユーザ端末装置
 410 端末側通信部
 420 表示部
 430 操作入力部
 470 端末側記憶部
 480 端末側制御部
 900 通信ネットワーク

Claims (8)

  1.  ユーザからの質問に基づいて前記質問に対する回答のタイプを判定するタイプ判定部と、
     情報の階層構造におけるノードのうち選択された現在位置ノードから前記回答のタイプに適合する適合ノードへの経路のうち何れか1つまたはそれ以上の前記経路を選択する経路選択部と、
     選択された前記経路に含まれるノードを示す情報を選択肢として前記ユーザに提示する選択肢処理部と、
     を備える、
     質問応答装置。
  2.  前記経路選択部は、前記選択肢の提示に対するユーザの応答に応じて前記経路を選択し直す、
     請求項1に記載の質問応答装置。
  3.  前記経路選択部は、1つの前記経路を選択し、前記ユーザの応答が、選択された前記経路に含まれるノードを選択しないことを示す場合、選択済みの経路以外の1つの前記経路に選択し直す、
     請求項2に記載の質問応答装置。
  4.  前記経路選択部は、所定の数の前記経路を選択し、前記ユーザの応答が、選択されたいずれかの前記経路に含まれるノードを選択することを示す場合、選択されたノードを前記現在位置ノードとして前記経路を選択し直す、
     請求項2に記載の質問応答装置。
  5.  前記経路選択部は、前記現在位置ノードから前記適合ノードへの経路のうち、前記ユーザの応答に応じて除外された経路以外の経路の各々について、回答を示すノードに到達する可能性の評価値を算出し、
     前記選択肢処理部は、前記選択肢が示すノードを含む経路の評価が高いほど、その選択肢を優先的に前記ユーザに提示する、
     請求項1から4の何れか一項に記載の質問応答装置。
  6.  前記経路の選択し直しのための情報を検索する情報検索部をさらに備え、
     前記選択肢処理部は、前記情報検索部が前記経路の選択し直しのための情報を取得した場合、前記選択肢の提示を抑制する、
     請求項1から5の何れか一項に記載の質問応答装置。
  7.  ユーザからの質問に基づいて前記質問に対する回答のタイプを判定する工程と、
     情報の階層構造におけるノードのうち選択された現在位置ノードから前記回答のタイプに適合する適合ノードへの経路を設定する工程と、
     前記経路に含まれるノードを選択肢として前記ユーザに提示する工程と、
     を含む質問応答方法。
  8.  コンピュータに、
     ユーザからの質問に基づいて前記質問に対する回答のタイプを判定する工程と、
     情報の階層構造におけるノードのうち選択された現在位置ノードから前記回答のタイプに適合する適合ノードへの経路を設定する工程と、
     前記経路に含まれるノードを選択肢として前記ユーザに提示する工程と、
     を実行させるためのプログラムを記録した記録媒体。
PCT/JP2018/022712 2018-06-14 2018-06-14 質問応答装置、質問応答方法および記録媒体 WO2019239543A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020525028A JP7259854B2 (ja) 2018-06-14 2018-06-14 質問応答装置、質問応答方法およびプログラム
US16/973,581 US12013849B2 (en) 2018-06-14 2018-06-14 Question responding apparatus, question responding method, and recording medium
PCT/JP2018/022712 WO2019239543A1 (ja) 2018-06-14 2018-06-14 質問応答装置、質問応答方法および記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/022712 WO2019239543A1 (ja) 2018-06-14 2018-06-14 質問応答装置、質問応答方法および記録媒体

Publications (1)

Publication Number Publication Date
WO2019239543A1 true WO2019239543A1 (ja) 2019-12-19

Family

ID=68842065

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/022712 WO2019239543A1 (ja) 2018-06-14 2018-06-14 質問応答装置、質問応答方法および記録媒体

Country Status (3)

Country Link
US (1) US12013849B2 (ja)
JP (1) JP7259854B2 (ja)
WO (1) WO2019239543A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117521814A (zh) * 2023-12-05 2024-02-06 北京科技大学 一种基于多模态输入和知识图谱的问答方法及装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12013849B2 (en) * 2018-06-14 2024-06-18 Nec Corporation Question responding apparatus, question responding method, and recording medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001249685A (ja) * 2000-03-03 2001-09-14 Alpine Electronics Inc 音声対話装置
JP2003228575A (ja) * 2002-02-01 2003-08-15 Just Syst Corp 対話システム、対話サーバ、対話方法、及び対話プログラム
JP2005190100A (ja) * 2003-12-25 2005-07-14 Toshiba Corp 質問応答システムおよび方法
JP2010086335A (ja) * 2008-09-30 2010-04-15 Canon Inc 情報処理装置及び検索クエリ決定方法
JP2015036945A (ja) * 2013-08-15 2015-02-23 株式会社インテリジェントウェイブ 質問回答制御プログラム、質問回答制御サーバ及び質問回答制御方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3087694B2 (ja) * 1997-07-15 2000-09-11 日本電気株式会社 情報検索装置及びプログラムを記録した機械読み取り可能な記録媒体
JP3235660B2 (ja) * 1998-12-24 2001-12-04 日本電気株式会社 情報検索装置及びその方法ならびに情報検索プログラムを格納した記憶媒体
JP3845727B2 (ja) 2002-09-27 2006-11-15 独立行政法人情報通信研究機構 統計的検定を利用した質問応答システム
JP4116599B2 (ja) 2004-07-26 2008-07-09 日本電信電話株式会社 質問応答システム、方法及びプログラム
JP2008145769A (ja) 2006-12-11 2008-06-26 Hitachi Ltd 対話シナリオ生成システム,その方法およびプログラム
US20080147437A1 (en) * 2006-12-19 2008-06-19 Doud Gregory P Intelligent Guided Registration Within A Health Information System
JP5153601B2 (ja) 2008-12-10 2013-02-27 ヤフー株式会社 検索結果分類装置、方法及びプログラム
US8868603B2 (en) * 2010-04-19 2014-10-21 Facebook, Inc. Ambiguous structured search queries on online social networks
US9519686B2 (en) * 2014-04-09 2016-12-13 International Business Machines Corporation Confidence ranking of answers based on temporal semantics
US20160307283A1 (en) * 2015-04-19 2016-10-20 Roy S. Melzer Document generation based on a hierarchal tree dataset
US10360276B2 (en) * 2015-07-28 2019-07-23 Expedia, Inc. Disambiguating search queries
US10607153B2 (en) * 2016-06-28 2020-03-31 International Business Machines Corporation LAT based answer generation using anchor entities and proximity
US10877979B2 (en) * 2018-01-16 2020-12-29 Accenture Global Solutions Limited Determining explanations for predicted links in knowledge graphs
US12013849B2 (en) * 2018-06-14 2024-06-18 Nec Corporation Question responding apparatus, question responding method, and recording medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001249685A (ja) * 2000-03-03 2001-09-14 Alpine Electronics Inc 音声対話装置
JP2003228575A (ja) * 2002-02-01 2003-08-15 Just Syst Corp 対話システム、対話サーバ、対話方法、及び対話プログラム
JP2005190100A (ja) * 2003-12-25 2005-07-14 Toshiba Corp 質問応答システムおよび方法
JP2010086335A (ja) * 2008-09-30 2010-04-15 Canon Inc 情報処理装置及び検索クエリ決定方法
JP2015036945A (ja) * 2013-08-15 2015-02-23 株式会社インテリジェントウェイブ 質問回答制御プログラム、質問回答制御サーバ及び質問回答制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117521814A (zh) * 2023-12-05 2024-02-06 北京科技大学 一种基于多模态输入和知识图谱的问答方法及装置

Also Published As

Publication number Publication date
US20210248140A1 (en) 2021-08-12
JPWO2019239543A1 (ja) 2021-06-17
JP7259854B2 (ja) 2023-04-18
US12013849B2 (en) 2024-06-18

Similar Documents

Publication Publication Date Title
JP4929704B2 (ja) コンピュータ処理方法及びコンピュータ処理装置
US7836010B2 (en) Method and system for assessing relevant properties of work contexts for use by information services
US7895595B2 (en) Automatic method and system for formulating and transforming representations of context used by information services
CN106164889A (zh) 用于内存数据库搜索的系统和方法
Yoo et al. Ontology-based economics knowledge sharing system
JP2020135891A (ja) 検索提案を提供する方法、装置、機器及び媒体
US20230205796A1 (en) Method and system for document retrieval and exploration augmented by knowledge graphs
JP5185402B2 (ja) 文書検索装置、文書検索方法、及び文書検索プログラム
WO2019239543A1 (ja) 質問応答装置、質問応答方法および記録媒体
Rodriguez et al. Security vulnerability information service with natural language query support
Navarro‐Galindo et al. The FLERSA tool: adding semantics to a web content management system
Winckler et al. Usability aspects of the inside-in approach for ancillary search tasks on the web
Bellahsene et al. YAM++ Online: a web platform for ontology and thesaurus matching and mapping validation
JP2021064143A (ja) 文作成装置、文作成方法および文作成プログラム
WO2019239544A1 (ja) 表示形式決定装置、表示形式決定方法および記録媒体
JP2016045552A (ja) 特徴抽出プログラム、特徴抽出方法、および特徴抽出装置
JP5380874B2 (ja) 情報検索方法、プログラム及び装置
JP2008225957A (ja) 文書検索装置、方法、及びプログラム
Ellouze et al. CITOM: An incremental construction of multilingual topic maps
KR101078966B1 (ko) 문서 분석 시스템
WO2019008394A1 (en) CAPTURE AND EXTRACTION OF DIGITAL INFORMATION
JP2020113048A (ja) 情報処理装置及びプログラム
Iqbal et al. Ranking and visualization of experts for communication using LinkedIn
Velásquez et al. Tools for external plagiarism detection in DOCODE
JP2023062700A (ja) 文書分析支援システム及び方法

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2020525028

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18922571

Country of ref document: EP

Kind code of ref document: A1