WO2019193796A1 - 対話サーバ - Google Patents

対話サーバ Download PDF

Info

Publication number
WO2019193796A1
WO2019193796A1 PCT/JP2018/048580 JP2018048580W WO2019193796A1 WO 2019193796 A1 WO2019193796 A1 WO 2019193796A1 JP 2018048580 W JP2018048580 W JP 2018048580W WO 2019193796 A1 WO2019193796 A1 WO 2019193796A1
Authority
WO
WIPO (PCT)
Prior art keywords
keyword
input
search
keywords
user
Prior art date
Application number
PCT/JP2018/048580
Other languages
English (en)
French (fr)
Inventor
拓 藤本
昂宗 橋本
友理子 尾▲崎▼
Original Assignee
株式会社Nttドコモ
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 株式会社Nttドコモ filed Critical 株式会社Nttドコモ
Priority to US17/042,605 priority Critical patent/US20210097236A1/en
Priority to JP2020511598A priority patent/JP7003228B2/ja
Publication of WO2019193796A1 publication Critical patent/WO2019193796A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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/245Query processing
    • G06F16/2455Query execution
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation

Definitions

  • the present invention relates to a dialog server that performs a search based on an input key.
  • Patent Document 1 controls the output of answers to questions written in natural text, avoids the risk of selecting answers that do not match the customer's intent, and efficiently handles the narrowing down of answers
  • Patent Document 1 a keyword is extracted from a question described in a natural sentence, and a search is performed based on the keyword.
  • a search is performed based on the keyword.
  • an AND search is performed using the extracted keyword, it is necessary to perform separately when searching for a keyword having a parallel relationship such as a similar word.
  • Windows 7 registered trademark
  • Windows 8 registered trademark
  • an object of the present invention is to provide a dialog server that reduces the number of input keywords and consequently reduces the number of dialogs.
  • the dialog server of the present invention performs a response by prompting a user to make an additional input in response to an input by the user and providing a response content corresponding to the user's input.
  • a truth table that correlates response contents including text to be provided to the user and a plurality of search keywords, a relationship table that correlates a plurality of related keywords, and an input keyword from the user
  • a receiving unit that receives an input of the search, and a search for acquiring the related keyword stored in the related table based on the input keyword, searching the truth table, and acquiring a response content corresponding to the related keyword
  • a transmission unit for transmitting the response content to the user.
  • the related table by using the related table, a plurality of related keywords can be easily specified and a search based on the related keywords can be performed. Therefore, the search accuracy can be improved and the number of dialogs can be reduced.
  • search accuracy can be improved and the number of dialogs can be reduced.
  • FIG. 2 is a diagram showing a hardware configuration of a dialogue-server 100.
  • FIG. 1 is a block diagram illustrating a functional configuration of the dialogue server 100 according to an embodiment of the present disclosure.
  • the dialogue server 100 includes a reception unit 101, a search unit 102, a transmission unit 103, a truth table table 104, a related table 105, and a natural language analysis unit 106.
  • the interactive server 100 provides the user terminal with response contents as a corresponding search result based on an input keyword for search from a user terminal (not shown). At that time, the dialogue server 100 advances the search process by receiving the intention from the user terminal using the return key.
  • the server is used in a so-called FAQ (Assessed Question) system, and is used to provide a user with a corresponding question sentence and its answer based on a keyword input by the user. The detailed processing will be described below.
  • FAQ Asssessed Question
  • the receiving unit 101 is a part that receives an input keyword from a user terminal via a network. Note that, when the user inputs a sentence as the input keyword, the receiving unit 101 may receive the sentence and cut out the input keyword from the sentence. In addition, when receiving unit 101 receives intention information about an affirmative intention with respect to a return key described later, reception unit 101 uses the return key as an input keyword.
  • the search unit 102 is a part that performs a search process by referring to the truth table 104 and the related table 105 using the input keyword received by the receiving unit 101. This process will be described later.
  • the truth table 104 is a mapping table in which one or a plurality of keywords for search are associated with a question sentence that is a response content.
  • FIG. 2 is a diagram showing a specific example of the truth table table 104.
  • the truth table table 104 associates one or a plurality of search keywords with a question sentence.
  • the search keyword “terminal A” and “wireless LAN” are associated with the question sentence “setting of wireless LAN at terminal A”.
  • This search keyword is extracted from a question sentence for FAQ by an administrator or machine processing such as natural language processing in advance and is generated as a truth table 104.
  • the truth table table 104 may be associated with an answer that is related content to the question sentence. Further, a FAQ table (not shown) may be prepared separately and linked to the question sentence and answer described therein.
  • the related table 105 is a mapping table in which one or a plurality of related keywords are associated with one main keyword.
  • the association table 105 associates one or more lower keywords with one upper keyword.
  • FIG. 3 is a diagram illustrating a specific example of the association table 105.
  • “terminal” is described as the upper keyword, and “terminal A”, “terminal C”,...
  • the keywords in the upper and lower relations are associated with each other.
  • the present invention is not limited to this, and the keyword that the administrator of the present system wants to associate may be added regardless of the meaning.
  • one main keyword higher keyword
  • a mapping table describing related keywords that are mutually related may be used without setting the main keyword.
  • the main keyword may be regarded as one related keyword, and the main keyword may be included in mutually related keywords.
  • the natural language analysis unit 106 is a part that determines whether a related keyword associated with an input keyword is searched for in a meaning including any or a meaning not including any. More specifically, first, the natural language analysis unit 106 extracts an input keyword constituting the input sentence from the input sentence received by the receiving unit 101. Then, the natural language analysis unit 106 determines whether to search the related table 105 with a meaning including any of the related keywords associated with the input keyword or with a meaning including none of them.
  • the natural language analysis unit 106 when “cannot connect to the wireless LAN at the terminal” is input as the input sentence, the natural language analysis unit 106 includes either “terminal A” or “terminal B” associated with “terminal”. Judge that. In this case, the search unit 102 performs a search including any keyword based on the truth table table 104.
  • the natural language analysis unit 106 selects both “terminal A” and “terminal B” associated with “terminal”. Judged not to include. In this case, the search unit 102 searches for response contents (question sentences) that do not include any of these keywords.
  • the positive / negative classification in the natural language analysis unit 106 can be realized by a classifier model constructed by a general machine learning algorithm. For example, tens to hundreds of sentence examples of positive sentences and negative sentences are collected and learned by a machine learning algorithm such as SVM, so that an arbitrary input sentence is classified as a positive sentence or a negative sentence.
  • a classifier model can be constructed.
  • the natural language analyzing unit 106 determines that “terminal” includes any one. If the input sentence is “recipe not including dairy products”, the natural language analysis unit 106 determines that none of “dairy products” is included. In this example, the natural language analysis unit 106 determines that any input sentence includes any of “wireless LAN”, “connection”, and “recipe”. Note that the above is an example, and a search including any or a search not including any may be determined.
  • FIG. 4 is a flowchart showing the operation of the dialogue server 100.
  • the receiving unit 101 acquires an input keyword from an input sentence input from a user terminal, or acquires an input keyword based on intention information for a return key. Further, the natural language analysis unit 106 determines whether the related keyword corresponding to each input keyword includes any or none based on the input sentence (S101). Note that the processing of the natural language analysis unit 106 is not limited to the timing of step S101, and may be determined according to the search processing. As a result of the analysis, the natural language analysis unit 106 temporarily stores flag information indicating whether it is an and search target or search target for each input keyword. The search unit 102 performs a search process using the information during the search process.
  • the search unit 102 searches the truth table 104 based on the acquired input keyword, and acquires a question sentence and its answer. More specifically, it is as follows.
  • the search unit 102 searches the related table 105 based on the input keyword (S102). Then, the search unit 102 acquires a related keyword that matches the input keyword, and acquires another related keyword associated with the related keyword. The search unit 102 acquires one or a plurality of related keywords corresponding to each input keyword (S103). When the input keyword is not registered in the related table 105, the search unit 102 treats the input keyword as a related keyword.
  • the search unit 102 searches the truth table 104 using the acquired one or more related keywords (S104), and acquires one or more response contents (here, question sentence candidates) corresponding to the related keywords. (S105). Note that, in the search in S104, a search according to the analysis result by the natural language analysis unit 106 is performed. That is, the search unit 102 performs a search including any keyword or a search not including any keyword using a plurality of related keywords acquired for each one input keyword.
  • the search unit 102 when acquiring a plurality of question sentence candidates, determines whether or not the answers corresponding to the question sentence candidates match each other (S106). If it is determined that they match (S106: YES), the search unit 102 acquires from the truth table table 104 the approximate answer of any one of the plurality of question sentence candidates (S107). When narrowed down to one question sentence candidate, the one question sentence candidate and its answer are acquired from the truth table table 104.
  • the transmission unit 103 transmits the obtained one question sentence candidate and the answer to the user terminal (S108).
  • the search unit 102 selects one of the plurality of related keywords. Is acquired (S109).
  • One related keyword to be acquired is determined in a predetermined priority order. For example, criteria based on the frequency of input as an input keyword, the frequency described in the truth table 104, and the like can be considered, but are not limited thereto.
  • the search unit 102 passes the acquired one related keyword to the transmission unit 103, and the transmission unit 103 transmits the one related keyword to the user terminal as a return key (S110).
  • the receiving unit 101 receives the intention for the return key, and the search unit 102 determines whether the intention is affirmative or negative (S111). When the response to the answer key is a negative intention, the search unit 102 acquires the related keyword in the next rank, and the transmitting unit 103 transmits the related keyword as the answer key (S112, S110). .
  • the search unit 102 acquires a corresponding question sentence candidate and its answer (S113).
  • the search unit 102 determines that the question sentence candidates and the answers are equal to or less than the predetermined number (S114: YES)
  • the transmission unit 103 transmits the question sentence candidates as question sentences together with the answers (S115). ).
  • the search unit 102 acquires the related keyword in the next rank and transmits it as a reply key (S112, S110). ).
  • the dialogue server 100 performs a search process based on the related keyword related to the input keyword.
  • the process of step S106 described above will be specifically described.
  • the answer may be the same or different in each question sentence.
  • the terminal A wireless LAN setting method and the terminal B wireless LAN setting method may be the same.
  • the wireless LAN settings of terminal A and terminal C may be different. The case where they are the same is the case where the link destinations of the answers are the same or the sentences themselves are the same.
  • the search unit 102 can determine the identity.
  • FIG. 5 shows an interactive screen of the user terminal when the answers to the searched question sentences are the same.
  • the balloon U1 is an input sentence input by the user. In this case, “Do not connect to the net at the terminal” is input as the input sentence.
  • the dialogue server 100 When the dialogue server 100 receives this input sentence, it extracts the input keyword.
  • “terminal”, “net”, and “not connected” are extracted.
  • the search unit 102 uses these keywords as search keywords as search keywords, the search unit 102 refers to the truth table 104 and extracts a question sentence or a reply key that is a response content.
  • “terminal” is input.
  • “terminal” is a main keyword, and related keywords related to it are extracted from the related table.
  • “terminal A” and “terminal B” are extracted as related keywords, and search processing based on them is performed.
  • the search unit 102 extracts “wireless LAN” as the answer key, and the transmission unit 103 transmits “wireless LAN” to the user terminal.
  • the user terminal On the user terminal, a balloon S1 is displayed.
  • the user shows an affirmative intention (balloon U2), and the dialogue server 100 replies “about the wireless LAN setting of the terminal” (balloon S2).
  • FIG. 6 is a diagram showing an example of a screen showing the dialogue processing.
  • the dialogue server 100 extracts “terminal”, “net” and “not connected” as input keywords, and refers to the truth table 104 to perform a search process. I do. In this example, it is assumed that in the truth table table 104, “terminal A” and “terminal B” are set with answers regarding the setting of the wireless LAN.
  • the dialogue server 100 performs a process of listening back to the user as to which of “terminal A” and “terminal B” is concerned (speech balloon S11 and speech balloon S12).
  • the user indicates a negative intention for “terminal A” (balloon U12) and indicates a positive intention for “terminal B” (balloon U13).
  • the search process is continued by listening back to the “wireless LAN”.
  • the processing load on the interactive server 100 can be reduced by omitting the processing. That is, it is possible to contribute to efficient memory resources and traffic reduction.
  • FIG. 7 is a diagram showing a specific example of the truth table 104 and the related table 105.
  • FIG. 7B is a diagram showing a specific example of the association table 105, in which “Terminal C” that is not described in the truth table table 104 is described as the association keyword.
  • the search unit 102 in the dialogue server 100 refers to the related table 105 using “terminal C” as a key, and acquires related keywords “terminal A” and “terminal B” including the main keyword “terminal”. . Then, a search process is performed by referring to the truth table 104 using both the related keywords “terminal A” and “terminal B”. That is, the search unit 102 extracts the question sentences and the answers corresponding to the related keywords “terminal A” and “terminal B”, and the transmission unit 103 transmits the question sentences and the answers to the user terminal.
  • the dialogue server 100 provides a question sentence and an answer close to what the user desires using the related keyword. Can do.
  • the dialog server 100 is a dialog server that performs a response by prompting a user to make an additional input in response to an input by the user, and providing a response content corresponding to the user's input.
  • the dialogue server 100 is a server used in the FAQ system, extracts an input keyword from a question sentence input by a user, performs a search based on the input keyword, and narrows down a question sentence intended by the user. If the number of search results does not fall below a predetermined number, for example, the server is a server that performs a return process such as transmitting a return key for prompting further user input.
  • the dialogue server 100 is related to a question table (response contents) including a sentence to be provided to a user, a truth table table 104 in which a plurality of search keywords are associated, one main keyword, and the main keyword. And a related table 105 in which a plurality of related keywords are associated with each other.
  • a question table response contents
  • a truth table table 104 in which a plurality of search keywords are associated, one main keyword, and the main keyword.
  • a related table 105 in which a plurality of related keywords are associated with each other.
  • the receiving unit 101 receives an input keyword input from an input sentence input by the user, for example, the receiving unit 101 receives the one described in the association table 105 based on the input keyword. Acquire at least one of a main keyword and a plurality of related keywords. Then, the search unit 102 further searches the truth table 104 using the acquired main keyword and / or related keyword, and acquires a question sentence candidate that is a response content corresponding to the main keyword or the related keyword. In this embodiment, the response content is a question sentence candidate intended by the user. However, the content is not limited to this, and any content may be used as long as it is a response content to a search.
  • the transmission unit 103 transmits the question sentence candidate to the user. If the search unit 102 cannot narrow down the number of question sentence candidates, for example, the number is not less than a predetermined value, the search unit 102 extracts a return key for prompting additional input from the truth table table 104, and the return key To the user.
  • the dialogue server 100 can use the related table 105 to easily specify a plurality of related keywords and perform a search based on the related keywords. Therefore, the search accuracy can be improved and the number of dialogs can be reduced.
  • the ability to reduce the number of dialogs leads to a reduction in processing load on the dialog server 100 and the user terminal. Further, since unnecessary dialogs are not accumulated, it leads to efficient use of memory resources. Further, when the dialog server 100 and the user terminal are accessible on the public network, the communication traffic is reduced.
  • the related table 105 registers the related keywords as related keywords without distinguishing the main keywords and the related keywords, and the search unit 102 extracts the related keywords corresponding to the input keywords, and the truth.
  • a search for the table 104 may be performed.
  • the related table 105 is a table for complementing the truth table 104, and keywords can be easily complemented without recreating the truth table 104. Therefore, the accuracy of the search process can be kept simple.
  • the truth table table 104 in the dialogue server 100 further describes an answer that is related content to the question sentence in association with it.
  • the search unit 102 searches the truth table table 104 by using a plurality of related keywords related to the main keyword or a plurality of other related keywords related to one related keyword, and links the plurality of searched question sentence candidates.
  • the question sentence candidate corresponding to at least one related keyword is acquired, and the transmission unit 103 transmits the question sentence candidate.
  • One predetermined question sentence candidate may be transmitted.
  • the content (answer) to be reached may be the same. For example, if there are “tell me how to operate terminal A” and “tell me how to operate terminal B” as the response content, the operation method that responds is the same. In such a case, the number of dialogues can be reduced by transmitting any question sentence candidate (or all question sentence candidates).
  • the search unit 102 searches the truth table 104 using a plurality of related keywords related to the main keyword or a plurality of other related keywords related to one related keyword, If the answers associated with the plurality of searched question sentence candidates are different, one related keyword is acquired as a return key from the plurality of related keywords. Then, the transmission unit 103 transmits one related keyword as a listening key for prompting additional input. In this case, the return key corresponds to the response content.
  • one of the related keywords is used to perform a replay process to narrow down the answers.
  • the user can be guided to the question sentence candidate and the answer intended by the user.
  • the receiving unit 101 acquires an input keyword based on an input sentence received from a user, and acquires a plurality of related keywords using the input keyword.
  • the search unit 102 determines whether to perform a search that includes any of a plurality of related keywords or a search that does not include any of the related keywords according to the analysis result of the natural language analysis process.
  • the search unit 102 when the input keyword matches only the related keyword, the search unit 102 truthfully displays the response content corresponding to the other related keyword associated with the related keyword in the related table. Get from table table.
  • each functional block may be realized by one device physically and / or logically coupled, and two or more devices physically and / or logically separated may be directly and / or indirectly. Specifically, it may be realized by a plurality of these devices connected by a hook (for example, wired and / or wireless).
  • the dialogue server 100, the user terminal, and the like may function as a computer that performs the processing according to the present embodiment.
  • FIG. 8 is a diagram illustrating an example of a hardware configuration of the dialogue server 100 according to the present embodiment.
  • the above-described dialog server 100 may be physically configured as a computer device including a processor 1001, a memory 1002, a storage 1003, a communication device 1004, an input device 1005, an output device 1006, a bus 1007, and the like.
  • the term “apparatus” can be read as a circuit, a device, a unit, or the like.
  • the hardware configuration of the dialog server 100 may be configured to include one or a plurality of each device illustrated in the figure, or may be configured not to include some devices.
  • Each function in the dialogue server 100 is read by a predetermined software (program) loaded on hardware such as the processor 1001 and the memory 1002, so that the processor 1001 performs an operation and performs communication by the communication device 1004, memory 1002, and storage 1003. This is realized by controlling the reading and / or writing of data.
  • a predetermined software program loaded on hardware such as the processor 1001 and the memory 1002, so that the processor 1001 performs an operation and performs communication by the communication device 1004, memory 1002, and storage 1003. This is realized by controlling the reading and / or writing of data.
  • the processor 1001 controls the entire computer by operating an operating system, for example.
  • the processor 1001 may be configured by a central processing unit (CPU) including an interface with peripheral devices, a control device, an arithmetic device, a register, and the like.
  • the search unit 102 or the like may be realized by the processor 1001.
  • the processor 1001 reads programs (program codes), software modules, and data from the storage 1003 and / or the communication device 1004 to the memory 1002, and executes various processes according to these.
  • programs program codes
  • software modules software modules
  • data data from the storage 1003 and / or the communication device 1004 to the memory 1002, and executes various processes according to these.
  • the program a program that causes a computer to execute at least a part of the operations described in the above embodiments is used.
  • the search unit 102 of the dialogue server 100 may be realized by a control program stored in the memory 1002 and operated by the processor 1001, and may be realized similarly for other functional blocks.
  • the above-described various processes have been described as being executed by one processor 1001, they may be executed simultaneously or sequentially by two or more processors 1001.
  • the processor 1001 may be implemented by one or more chips.
  • the program may be transmitted from a network via a telecommunication line.
  • the memory 1002 is a computer-readable recording medium, and includes, for example, at least one of ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), RAM (Random Access Memory), and the like. May be.
  • the memory 1002 may be called a register, a cache, a main memory (main storage device), or the like.
  • the memory 1002 can store a program (program code), a software module, and the like that can be executed to implement the wireless communication method according to the embodiment of the present invention.
  • the storage 1003 is a computer-readable recording medium such as an optical disk such as a CD-ROM (Compact Disc ROM), a hard disk drive, a flexible disk, a magneto-optical disk (for example, a compact disk, a digital versatile disk, a Blu-ray). (Registered trademark) disk, smart card, flash memory (for example, card, stick, key drive), floppy (registered trademark) disk, magnetic strip, and the like.
  • the storage 1003 may be referred to as an auxiliary storage device.
  • the above-described storage medium may be, for example, a table including a memory 1002 and / or a storage 1003, a server, or other suitable medium.
  • the communication device 1004 is hardware (transmission / reception device) for performing communication between computers via a wired and / or wireless network, and is also referred to as a network device, a network controller, a network card, a communication module, or the like.
  • a network device for example, the reception unit 101 and the transmission unit 103 described above may be realized by the communication device 1004.
  • the input device 1005 is an input device (for example, a keyboard, a mouse, a microphone, a switch, a button, a sensor, etc.) that accepts an input from the outside.
  • the output device 1006 is an output device (for example, a display, a speaker, an LED lamp, etc.) that performs output to the outside.
  • the input device 1005 and the output device 1006 may have an integrated configuration (for example, a touch panel).
  • each device such as the processor 1001 and the memory 1002 is connected by a bus 1007 for communicating information.
  • the bus 1007 may be configured with a single bus or may be configured with different buses between apparatuses.
  • the dialogue server 100 includes hardware such as a microprocessor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a programmable logic device (PLD), and a field programmable gate array (FPGA). A part or all of each functional block may be realized by the hardware.
  • the processor 1001 may be implemented by at least one of these hardware.
  • Each aspect / embodiment described in this specification includes LTE (Long Term Evolution), LTE-A (LTE-Advanced), SUPER 3G, IMT-Advanced, 4G, 5G, FRA (Future Radio Access), W-CDMA.
  • LTE Long Term Evolution
  • LTE-A Long Term Evolution-Advanced
  • SUPER 3G IMT-Advanced
  • 4G 5G
  • FRA Full Radio Access
  • W-CDMA Wideband
  • GSM registered trademark
  • CDMA2000 Code Division Multiple Access 2000
  • UMB User Mobile Broadband
  • IEEE 802.11 Wi-Fi
  • IEEE 802.16 WiMAX
  • IEEE 802.20 UWB (Ultra-WideBand
  • the present invention may be applied to a Bluetooth (registered trademark), a system using another appropriate system, and / or a next generation system extended based on the system.
  • the input / output information or the like may be stored in a specific location (for example, a memory) or may be managed by a management table. Input / output information and the like can be overwritten, updated, or additionally written. The output information or the like may be deleted. The input information or the like may be transmitted to another device.
  • the determination may be performed by a value represented by 1 bit (0 or 1), may be performed by a true / false value (Boolean: true or false), or may be performed by comparing numerical values (for example, a predetermined value) Comparison with the value).
  • notification of predetermined information is not limited to explicitly performed, but is performed implicitly (for example, notification of the predetermined information is not performed). Also good.
  • software, instructions, etc. may be transmitted / received via a transmission medium.
  • software may use websites, servers, or other devices using wired technology such as coaxial cable, fiber optic cable, twisted pair and digital subscriber line (DSL) and / or wireless technology such as infrared, wireless and microwave.
  • wired technology such as coaxial cable, fiber optic cable, twisted pair and digital subscriber line (DSL) and / or wireless technology such as infrared, wireless and microwave.
  • DSL digital subscriber line
  • wireless technology such as infrared, wireless and microwave.
  • system and “network” used in this specification are used interchangeably.
  • information, parameters, and the like described in this specification may be represented by absolute values, may be represented by relative values from a predetermined value, or may be represented by other corresponding information.
  • the radio resource may be indicated by an index.
  • a user terminal / mobile communication terminal can be obtained by a person skilled in the art from a subscriber station, a mobile unit, a subscriber unit, a wireless unit, a remote unit, a mobile device, a wireless device, a wireless communication device, a remote device, a mobile subscriber station, an access terminal, It may also be called mobile terminal, wireless terminal, remote terminal, handset, user agent, mobile client, client, or some other appropriate terminology.
  • determining may encompass a wide variety of actions. “Judgment” and “determination” are, for example, judgment, calculation, calculation, processing, derivation, investigating, looking up (eg, table , Searching in a table or other data structure), considering ascertaining that it is “determined”, “determined”, etc.
  • determination and “determination” include receiving (for example, receiving information), transmitting (for example, transmitting information), input (input), output (output), and access. (accessing) (e.g., accessing data in a memory) may be considered as “determined” or "determined”.
  • determination and “decision” means that “resolving”, “selecting”, “choosing”, “establishing”, and “comparing” are regarded as “determining” and “deciding”. May be included. In other words, “determination” and “determination” may include considering some operation as “determination” and “determination”.
  • connection means any direct or indirect connection or coupling between two or more elements and It can include the presence of one or more intermediate elements between two “connected” or “coupled” elements.
  • the coupling or connection between the elements may be physical, logical, or a combination thereof.
  • the two elements are radio frequency by using one or more wires, cables and / or printed electrical connections, and as some non-limiting and non-inclusive examples
  • electromagnetic energy such as electromagnetic energy having a wavelength in the region, microwave region, and light (both visible and invisible) region, it can be considered to be “connected” or “coupled” to each other.
  • the phrase “based on” does not mean “based only on”, unless expressly specified otherwise. In other words, the phrase “based on” means both “based only on” and “based at least on.”
  • any reference to that element does not generally limit the quantity or order of those elements. These designations can be used herein as a convenient way to distinguish between two or more elements. Thus, a reference to the first and second elements does not mean that only two elements can be employed there, or that in some way the first element must precede the second element.
  • DESCRIPTION OF SYMBOLS 100 Dialog server, 101 ... Reception part, 102 ... Search part, 103 ... Transmission part, 104 ... Truth table table, 105 ... Related table, 106 ... Natural language analysis part.

Abstract

入力キーワードの入力を減らし、その結果対話回数を削減する対話サーバを提供することを目的とする。 対話サーバ100は、ユーザに提供するための文章を含んだ質問文と、複数の検索キーワードとを対応付けた真理表テーブル104と、一の主キーワードと当該主キーワードに関連する複数の関連キーワードとを対応付けた関連テーブル105と、を備える。 検索部102は、入力キーワードに基づいて、関連テーブル105に記述されている一の主キーワードおよび複数の関連キーワードの少なくともいずれかを取得し、さらに、取得した主キーワードおよび/または関連キーワードを用いて真理表テーブル104を検索し、主キーワードまたは関連キーワードに対応する応答内容である質問文候補を取得する。

Description

対話サーバ
 本発明は、入力キーに基づいて検索を行う対話サーバに関する。
下記特許文献1には、自然文で記述された質問への回答の出力を制御し、顧客の質問の意図に合致しない回答を選択するリスクを回避することや、回答の絞り込みを効率的に処理するための質問回答制御プログラムについての記載がある。具体的にはこの特許文献1には、FAQ検索を行う際において、所定件数以上の検索結果を得た場合には、逆質問または関連質問を行うことにより、該当件数を絞り込むことについての記載がある。
特開2015-36945号公報
 特許文献1に記載の技術においては、自然文で記述された質問からキーワードが抽出され、そのキーワードに基づいて検索が行われる。この特許文献1においては、抽出されたキーワードを用いてAND検索を行うことから、類似語など並列の関係にあるキーワードを検索する際には別々に行う必要がある。例えば、ウィンドウズ7(登録商標)を入力キーワードとした場合、ウィンドドウズ8(登録商標)は検索対象から漏れることになる。したがって、ウィンドウズ8を検索したい場合には、別途ウィンドウズ8を入力キーワードとして入力する必要がある。その結果、対話回数が増大する。
 そこで、上述の課題を解決するために、本発明は、入力キーワードの入力を減らし、その結果対話回数を削減する対話サーバを提供することを目的とする。
 上述の課題を解決するために、本発明の対話サーバは、ユーザによる入力に対してユーザの追加入力を促す応答を行い、ユーザの入力に応じた応答内容を提供することで対話を行う対話サーバにおいて、ユーザに提供するための文章を含んだ応答内容と、複数の検索キーワードとを対応付けた真理表テーブルと、相互に関連する複数の関連キーワードを対応つけた関連テーブルと、ユーザから入力キーワードの入力を受け付ける受信部と、前記入力キーワードに基づいて、前記関連テーブルに記憶されている関連キーワードを取得して、前記真理表テーブルを検索し、前記関連キーワードに対応する応答内容を取得する検索部と、前記応答内容を、前記ユーザに送信する送信部と、を備える。
 この発明によると、関連テーブルを用いることで、複数の関連キーワードを簡単に指定して、それに基づいた検索を行うことができる。したがって、検索の精度を向上させ、また対話回数を削減することができる。
 本発明によれば、検索の精度を向上させ、また対話回数を削減することができる。
本実施形態の対話サーバ100の機能構成を示すブロック図である。 真理表テーブル104の具体例を示す図である。 関連テーブル105の具体例を示す図である。 対話サーバ100の動作を示すフローチャートである。 検索した各質問文に対する回答が同じである場合の対話処理を示す図である。 各質問文に応じて回答が異なる場合の対話処理を示す画面例を示す図である。 ある事例を説明するための真理表テーブル104および関連テーブル105の具体例を示す図である。 対話―サーバ100のハードウエア構成を示す図である。
 添付図面を参照しながら本開示の一実施形態を説明する。可能な場合には、同一の部分には同一の符号を付して、重複する説明を省略する。
 図1は、本開示の一実施形態の対話サーバ100の機能構成を示すブロック図である。この対話サーバ100は、受信部101、検索部102、送信部103、真理表テーブル104、関連テーブル105、および自然言語解析部106を含んで構成されている。この対話サーバ100は、ユーザ端末(図示せず)からの検索のための入力キーワードに基づいて、対応する検索結果である応答内容をユーザ端末に提供するものである。その際、対話サーバ100は、聞返しキーを用いて、ユーザ端末からその意図を受信することにより、検索処理を進める。いわゆる、FAQ(Frequently Asked Questions)システムに用いられるものであり、ユーザから入力されたキーワードに基づいて対応する質問文およびその回答をユーザに提供するために用いられるサーバである。以下、その詳細処理について説明する。
 受信部101は、ユーザ端末から、ネットワークを介して入力キーワードを受信する部分である。なお、受信部101は、入力キーワードとして、ユーザが文章を入力した場合には、その文章を受信し、文章から入力キーワードを切り出してもよい。また、受信部101は、後述する聞返しキーに対する肯定の意図の意図情報を受信すると、聞返しキーを入力キーワードとする。
 検索部102は、受信部101により受信された入力キーワードを用いて、真理表テーブル104および関連テーブル105を参照して検索処理を行う部分である。その処理については後述する。
 真理表テーブル104は、検索用の一または複数のキーワードと応答内容である質問文とを対応付けたマッピングテーブルである。図2は、真理表テーブル104の具体例を示す図である。図2において、真理表テーブル104は、質問文に対応付けて、一または複数の検索用のキーワードを対応付けている。例えば、「端末Aでの無線LANの設定」という質問文に対して、検索用キーワード「端末A」および「無線LAN」が対応付けられている。この検索用キーワードは、事前に管理者または自然言語処理などの機械処理により、FAQのための質問文から抽出され、真理表テーブル104として生成される。なお、この真理表テーブル104には、質問文に対する関連内容である回答が紐付けられてもよい。また、FAQテーブル(図示せず)を別途用意しておき、そこに記述されている質問文および回答と紐付けてもよい。
 関連テーブル105は、一の主キーワードに対して、一または複数の関連キーワードを対応付けたマッピングテーブルである。本実施形態においては、関連テーブル105は、一の上位キーワードに対して、一または複数の下位キーワードを対応付けている。図3は、関連テーブル105の具体例を示す図である。図3においては、上位キーワードとして「端末」が記述され、下位キーワードとして、「端末A」「端末C」・・・などが対応付けて記述されている。図3においては、上位下位の関係でのキーワードを対応付けたが、これに限るものではなく、本システムの管理者が関連付けたいキーワードを、その意味に関係なくつけてもよい。また、本実施形態では、一の主キーワード(上位キーワード)を設定しているが、特に主キーワードを設定することなく、相互に関連する関連キーワードを記述したマッピングテーブルとしてもよい。なお、この場合、主キーワードを一の関連キーワードと見なし、主キーワードを相互に関連するキーワードに含めてもよい。
 自然言語解析部106は、入力キーワードに対応付けられる関連キーワードをいずれかを含む意味で検索するか、いずれも含まない意味で検索するか、判断する部分である。より具体的には、まず、自然言語解析部106は、受信部101により受信された入力文章から、その入力文章を構成する入力キーワードを抽出する。そして、自然言語解析部106は、関連テーブル105において、当該入力キーワードに対応付けられる関連キーワードをいずれか含む意味で検索するか、いずれも含まない意味で検索するか、判断する。
 例えば、入力文章として、「端末で無線LANに接続できない」が入力された場合、自然言語解析部106は、「端末」に対応付けられている「端末A」「端末B」のいずれかを含むものと判断する。この場合、検索部102は、いずれかのキーワードを含んだ検索を真理表テーブル104に基づいて行う。
 また、入力文章として、「端末以外の無線通信方法を知りたい」が入力された場合、自然言語解析部106は、「端末」に対応付けられている「端末A」「端末B」のいずれも含まないと判断する。この場合、検索部102は、これらキーワードのいずれも含まない応答内容(質問文)を検索する。
 この自然言語解析部106における肯定・否定の分類は、一般的な機械学習アルゴリズムによって構築された分類器モデルによって実現可能である。例えば、肯定文の文例、否定文の文例をそれぞれ数十~数百程度収集し、SVMなどの機械学習アルゴリズムにより学習させることで、任意の入力文章が肯定文か否定文か確率的に分類する分類器モデルを構築可能である。
 具体的事例は以下のとおりである。入力文章が「端末で無線LANに接続できない」という文例の場合には、「端末」に対しては、いずれかを含むと自然言語解析部106は判断する。入力文章が「乳製品を含まないレシピ」に対しては、「乳製品」に対しては、いずれも含まないと自然言語解析部106は判断する。なお、ここでの事例では、自然言語解析部106は、いずれの入力文章も「無線LAN」「接続」「レシピ」については、いずれかを含むと判断する。なお、上記は例示であり、いずれも含む検索またはいずれかを含まない検索を判断してもよい。
 このように構成された対話サーバ100について、その動作を説明する。図4は、対話サーバ100の動作を示すフローチャートである。
 受信部101は、ユーザ端末から入力された入力文章から入力キーワードを取得し、または聞返しキーに対する意図情報に基づいて入力キーワードを取得する。また、自然言語解析部106は、入力文章に基づいて、各入力キーワードに対応する関連キーワードが、いずれかを含むか、いずれも含まないかを判断する(S101)。なお、自然言語解析部106の処理は、ステップS101のタイミングに限らず、検索の処理に合わせて判断してもよい。自然言語解析部106は、その解析結果として、一の入力キーワードごとに、and検索対象か、or検索対象かを示すフラグ情報を付して一時記憶している。検索部102は、検索処理時に、その情報を用いて検索処理を行う。
 検索部102は、取得した入力キーワードに基づいて真理表テーブル104を検索して、質問文およびその回答を取得する。より具体的には、以下のとおりである。
 検索部102は、入力キーワードに基づいて関連テーブル105を検索する(S102)。そして、検索部102は、入力キーワードと一致する関連キーワードを取得するとともに、その関連キーワードに対応付けられている他の関連キーワードを取得する。検索部102は、各入力キーワードに対応する一または複数の関連キーワードを取得することになる(S103)。なお、入力キーワードが、関連テーブル105に登録されていない場合には、検索部102は、入力キーワードを関連キーワードとして扱う。
 さらに、検索部102は、取得した一または複数の関連キーワードを用いて真理表テーブル104を検索し(S104)、その関連キーワードに対応する一または複数の応答内容(ここでは質問文候補)を取得する(S105)。なお、S104において検索する際、自然言語解析部106による解析結果に従った検索を行う。すなわち、検索部102は、各一の入力キーワードに対して取得された複数の関連キーワードを使っていずれかのキーワードを含む検索、またはいずれのキーワードを含まない検索、いずれかを行う。
 検索部102は、複数の質問文候補を取得した場合に、それら質問文候補に対応する回答が互いに一致しているか否かを判断する(S106)。ここで、一致していると判断すると(S106:YES)、検索部102は、複数の質問文候補のいずれかの質問文候補およその回答を、真理表テーブル104から取得する(S107)。なお、一の質問文候補に絞り込まれた場合には、当該一の質問文候補およびその回答を真理表テーブル104から取得する。
 送信部103は、取得した一の質問文候補およびその回答をユーザ端末に送信する(S108)。
 一方で、S106において、複数の質問文候補を取得した場合に、それら質問文候補に対応する回答が互いに一致していない場合には、 検索部102は、複数の関連キーワードのうち一の関連キーワードを取得する(S109)。取得される一の関連キーワードは、予め定めた優先順位で決定される。例えば、入力キーワードとして入力された頻度、真理表テーブル104に記述されている頻度などに基づいた基準が考えられるが、これらに限るものではない。
 検索部102は、送信部103に、取得した一の関連キーワードを渡し、送信部103は、聞返しキーとして、一の関連キーワードをユーザ端末に送信する(S110)。
 受信部101は、聞返しキーに対する意図を受信し、検索部102は、肯定意図であるか、否定意図であるかを判断する(S111)。検索部102は、聞返しキーに対する応答が否定意図である場合には、つぎの順位にある関連キーワードを取得し、送信部103は、聞返しキーとしてその関連キーワードを送信する(S112,S110)。
 検索部102は、聞返しキーに対する応答が肯定意図である場合には、それに対応する質問文候補およびその回答を取得する(S113)。検索部102は、質問文候補およびその回答が、所定数以下であると判断する場合には(S114:YES)、送信部103は、その質問文候補を質問文としてその回答とともに送信する(S115)。
 また、検索部102は、質問文候補およびその回答が、所定数以下ではない場合には(S114:NO)、つぎの順位にある関連キーワードを取得し、聞返しキーとして送信する(S112、S110)。
 この処理にしたがって、対話サーバ100は、入力キーワードに関連する関連キーワードに基づいて検索処理を行う。
 ここで、上述ステップS106の処理について具体的に説明する。FAQシステムにおいて、各質問文において回答が同じである場合と、異なる場合がある。例えば、端末Aの無線LANの設定方法と、端末Bの無線LANの設定方法とは同じである場合がある。一方で、端末Aと端末Cの無線LANの設定は異なる場合がある。同じである場合とは、その回答のリンク先が同じであったり、その文章自体が同じである場合である。上記検索部102は、その同一性を判断することができる。
 図5および図6を用いて、回答が同じである場合および異なる場合における対話画面の違いについて説明する。図5は、検索した各質問文に対する回答が同じである場合のユーザ端末の対話画面を示す。図5に示されるとおり、吹き出しU1は、ユーザが入力した入力文章である。ここでは、入力文章として「端末でネットにつながらない」が入力されている。
 対話サーバ100は、この入力文章を受信すると、入力キーワードを抽出する。ここでは、「端末」と「ネット」と「つながらない」を抽出する。検索部102は、これらキーワードを検索キーワードとして、真理表テーブル104を参照して、応答内容である質問文または聞返しキーを抽出する。上記図5では、「端末」が入力されているが、上記したとおり、「端末」は主キーワードであり、それに関連する関連キーワードが関連テーブルから抽出される。図5の画面では表示されないが、対話サーバ100においては、「端末A」および「端末B」が関連キーワードとして抽出され、それに基づいた検索処理が行われる。
 図5では、「端末A」と「端末B」の無線LANの設定方法は同じであることから、端末Aおよび端末Bのいずれかであるかの聞返しは行うことなく、つぎのキーワードの処理を行う。
 図5の例では、検索部102は、聞返しキーとして「無線LAN」を抽出し、送信部103は、「無線LAN」をユーザ端末に送信する。ユーザ端末では、吹き出しS1が表示される。
 ユーザは、それに対して肯定意図を示し(吹き出しU2)、対話サーバ100は、「端末の無線LAN設定について」回答する(吹き出しS2)。
 一方で、質問文に応じて回答が異なる場合には、それぞれにおいて聞返し処理をする必要がある。図6は、その対話処理を示す画面例を示す図である。
 ユーザが「端末でネットにつながらない」を入力すると(吹き出しU11)、対話サーバ100は、入力キーワードとして、「端末」「ネット」「つながらない」を抽出し、真理表テーブル104を参照して、検索処理を行う。この例示では、真理表テーブル104においては、「端末A」および「端末B」において、無線LANの設定についての回答がそれぞれ設定されているとする。
 対話サーバ100は、「端末A」と「端末B」のいずれの端末に関するものか、ユーザに聞返し処理を行う(吹き出しS11および吹き出しS12)。
 本実施形態においては、ユーザは、「端末A」に対しては否定意図を示し(吹き出しU12)、「端末B」に対して肯定意図を示しているため(吹き出しU13)、「端末B」を含んだ検索を行う。図6においては、引き続き、「無線LAN」に対して聞返しを行うことにより検索処理を行っている。
 以上のことから明らかなとおり、検索した質問文が異なっていても、回答が同じである場合には、「端末A」および「端末B」のそれぞれに対する聞返しを行うことがない。したがって、その処理を省略することで、対話サーバ100における処理負荷を軽減することができる。すなわち、メモリ資源の効率化とトラフィック軽減に貢献することができる。
 つぎに、関連テーブル105には記述あるが、真理表テーブル104には記述がないキーワードが入力された場合の処理について説明する。図7は、真理表テーブル104および関連テーブル105の具体例を示す図である。
 図7(b)は、関連テーブル105の具体例を示す図であるが、ここには、真理表テーブル104には記述のない「端末C」が関連キーワードとして記述されている。
 例えば、ユーザが、「端末C」を含んだ入力文章入力し、対話サーバ100がそのキーワードとして「端末C」を取得した場合には、真理表テーブル104には「端末C」が記述されていないため、真理表テーブル104のみを用いた検索処理では、検索結果を取得することができない。
 本実施形態においては、対話サーバ100における検索部102は、「端末C」をキーにして関連テーブル105を参照し、主キーワード「端末」を含む関連キーワード「端末A」「端末B」を取得する。そして、関連キーワード「端末A」「端末B」の両方を用いて真理表テーブル104を参照して、検索処理を行う。すなわち、検索部102は、関連キーワード「端末A」「端末B」のそれぞれに対応する質問文およびその回答を抽出し、送信部103は、それら質問文および回答をユーザ端末に送信する。
 この説明によれば、真理表テーブル104に、入力キーワードが記述されていない場合でも、対話サーバ100は、関連キーワードを用いて、少なくともユーザが望んだものに近い質問文およびその回答を提供することができる。
 つぎに、本開示の一実施形態の対話サーバ100の作用効果について説明する。対話サーバ100は、ユーザによる入力に対してユーザの追加入力を促す応答を行い、ユーザの入力に応じた応答内容を提供することで対話を行う対話サーバである。例えば、この対話サーバ100は、FAQシステムにおいて用いられるサーバであって、ユーザから入力された質問文から入力キーワードを抽出し、その入力キーワードに基づいて検索を行い、ユーザが意図する質問文を絞りきれないなど検索結果数が所定数以下とならない場合には、さらなるユーザの入力を促すための聞返しキーを送信するなどの聞返し処理を行うサーバである。
 この対話サーバ100は、ユーザに提供するための文章を含んだ質問文(応答内容)と、複数の検索キーワードとを対応付けた真理表テーブル104と、一の主キーワードと当該主キーワードに関連する複数の関連キーワードとを対応付けた関連テーブル105と、を備える。
 そして、受信部101は、ユーザから入力された入力文章から入力キーワードの入力を抽出するなどして、受け付けると、検索部102は、入力キーワードに基づいて、関連テーブル105に記述されている一の主キーワードおよび複数の関連キーワードの少なくともいずれかを取得する。そして、検索部102は、さらに、取得した主キーワードおよび/または関連キーワードを用いて真理表テーブル104を検索し、主キーワードまたは関連キーワードに対応する応答内容である質問文候補を取得する。本実施形態では応答内容とは、ユーザが意図する質問文候補としているが、これに限るものではなく、検索に対する応答内容であればその内容は問わない。
 送信部103は、質問文候補を、ユーザに送信する。なお、検索部102が、質問文候補の数が所定値以下ではないなど、絞りきれない場合には、追加の入力を促すための聞返しキーを真理表テーブル104から抽出し、その聞返しキーをユーザに送信する。
 この構成に従うと、対話サーバ100は、関連テーブル105を用いることで、複数の関連キーワードを簡単に指定して、それに基づいた検索を行うことができる。したがって、検索の精度を向上させ、また対話回数を削減することができる。対話回数を削減できるということは、対話サーバ100およびユーザ端末の処理負荷を軽減することにつながる。また、余計な対話を蓄積することがないため、メモリ資源の効率化使用につながる。さらに、対話サーバ100とユーザ端末との間が公衆ネットワークでアクセス可能な状態である場合には、その通信トラフィックを軽減することになる。
 なお、上述の通り、関連テーブル105は、主キーワードおよび関連キーワードを区別することなく、相互に関連する関連キーワードとして登録しておき、検索部102は、入力キーワードに対応する関連キーワードを取り出し、真理表テーブル104に対する検索を行ってもよい。
 また、関連テーブル105は、真理表テーブル104を補完するためのテーブルであり、真理表テーブル104を作り直すことなく、簡単にキーワードの補完を行うことができる。したがって、検索処理の精度を簡単に保つことができる。
 また、対話サーバ100における真理表テーブル104は、さらに質問文に対する関連内容である回答を対応付けて記述している。検索部102は、主キーワードに関連する複数の関連キーワード、または一の関連キーワードに関連する他の複数の関連キーワードを用いて、真理表テーブル104を検索し、検索した複数の質問文候補に紐付く回答が同じである場合、少なくとも一の関連キーワードに対応する質問文候補を取得し、送信部103は、質問文候補を送信する。応答内容である質問文候補は、複数あり、そのすべての質問文候補をユーザに送信することが好ましいが、いずれか任意の質問文候補または所定の優先順位(提供頻度が多いものなど)にしたがって決められた一の質問文候補を送信してもよい。
 主キーワードまたは関連キーワードが異なっており、質問文が相互に異なっていたとしても、そのたどり着く内容(回答)は同じ場合がある。例えば、応答内容として、「端末Aの操作方法を教えて」「端末Bの操作方法を教えて」があったとして、その回答たる操作方法は同じである場合である。このような場合には、いずれかの質問文候補(または全部の質問文候補)を送信することで対話回数を削減することができる。
 また、対話サーバ100において、検索部102は、当該主キーワードに関連する複数の関連キーワード、または一の関連キーワードに関連する複数の他の関連キーワードを用いて、前記真理表テーブル104を検索し、検索した複数の質問文候補に紐付く回答が異なる場合、複数の関連キーワードのうち一の関連キーワードを聞返しキーとして取得する。そして、送信部103は、一の関連キーワードを、追加入力を促すための聞き返しキーとして送信する。この場合は、聞返しキーが応答内容に相当する。
 この構成によると、回答を絞り込むために関連キーワードの一つを使って聞き返し処理を行う。これにより、ユーザが意図する質問文候補および回答にユーザを導くことができる。
 また、対話サーバ100において、受信部101は、ユーザから受け付けた入力文章に基づいて入力キーワードを取得し、当該入力キーワードを用いて複数の関連キーワードを取得する。検索部102は、入力文章を自然言語解析処理の解析結果に従って、複数の関連キーワードのいずれかを含む検索を行うか、いずれをも含まない検索を行うか、判断する。
 この構成によると、自然言語処理の解析結果に応じて、入力キーワードの関連キーワードに対していずれかを含む検索か、いずれも含まない検索かを切替えることができる。よって、ユーザが意図する検索を可能にし、対話回数を削減することができる。
 また、対話サーバ100において、検索部102は、入力キーワードが、関連キーワードのみと一致した場合に、関連テーブルにおいて、当該関連キーワードに対応付けられている他の関連キーワードに対応する応答内容を、真理表テーブルから取得する。
 この構成によると、真理表テーブル104になく、関連テーブル105にのみ、入力キーワードに一致するキーワードがあった場合には、これを用いることで、ユーザに適切な応答内容を提供することができる。よって、対話回数削減を可能にする。
 上記実施の形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及び/又はソフトウェアの任意の組み合わせによって実現される。また、各機能ブロックの実現手段は特に限定されない。すなわち、各機能ブロックは、物理的及び/又は論理的に結合した1つの装置により実現されてもよいし、物理的及び/又は論理的に分離した2つ以上の装置を直接的及び/又は間接的に (例えば、有線及び/又は無線)で接続し、これら複数の装置により実現されてもよい。
 例えば、本発明の一実施の形態における対話サーバ100、ユーザ端末などは、本実施形態の処理を行うコンピュータとして機能してもよい。図8は、本実施形態に係る対話サーバ100のハードウェア構成の一例を示す図である。上述の対話サーバ100は、物理的には、プロセッサ1001、メモリ1002、ストレージ1003、通信装置1004、入力装置1005、出力装置1006、バス1007などを含むコンピュータ装置として構成されてもよい。
 なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。対話サーバ100のハードウェア構成は、図に示した各装置を1つ又は複数含むように構成されてもよいし、一部の装置を含まずに構成されてもよい。
 対話サーバ100における各機能は、プロセッサ1001、メモリ1002などのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることで、プロセッサ1001が演算を行い、通信装置1004による通信や、メモリ1002及びストレージ1003におけるデータの読み出し及び/又は書き込みを制御することで実現される。
 プロセッサ1001は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ1001は、周辺装置とのインターフェース、制御装置、演算装置、レジスタなどを含む中央処理装置(CPU:Central Processing Unit)で構成されてもよい。例えば、検索部102などは、プロセッサ1001で実現されてもよい。
 また、プロセッサ1001は、プログラム(プログラムコード)、ソフトウェアモジュールやデータを、ストレージ1003及び/又は通信装置1004からメモリ1002に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態で説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。例えば、対話サーバ100の検索部102は、メモリ1002に格納され、プロセッサ1001で動作する制御プログラムによって実現されてもよく、他の機能ブロックについても同様に実現されてもよい。上述の各種処理は、1つのプロセッサ1001で実行される旨を説明してきたが、2以上のプロセッサ1001により同時又は逐次に実行されてもよい。プロセッサ1001は、1以上のチップで実装されてもよい。なお、プログラムは、電気通信回線を介してネットワークから送信されても良い。
 メモリ1002は、コンピュータ読み取り可能な記録媒体であり、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、RAM(Random Access Memory)などの少なくとも1つで構成されてもよい。メモリ1002は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。メモリ1002は、本発明の一実施の形態に係る無線通信方法を実施するために実行可能なプログラム(プログラムコード)、ソフトウェアモジュールなどを保存することができる。
 ストレージ1003は、コンピュータ読み取り可能な記録媒体であり、例えば、CD-ROM(Compact Disc ROM)などの光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク)、スマートカード、フラッシュメモリ(例えば、カード、スティック、キードライブ)、フロッピー(登録商標)ディスク、磁気ストリップなどの少なくとも1つで構成されてもよい。ストレージ1003は、補助記憶装置と呼ばれてもよい。上述の記憶媒体は、例えば、メモリ1002及び/又はストレージ1003を含むテーブル、サーバその他の適切な媒体であってもよい。
 通信装置1004は、有線及び/又は無線ネットワークを介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。例えば、上述の受信部101および送信部103などは、通信装置1004で実現されてもよい。
 入力装置1005は、外部からの入力を受け付ける入力デバイス(例えば、キーボード、マウス、マイクロフォン、スイッチ、ボタン、センサなど)である。出力装置1006は、外部への出力を実施する出力デバイス(例えば、ディスプレイ、スピーカー、LEDランプなど)である。なお、入力装置1005及び出力装置1006は、一体となった構成(例えば、タッチパネル)であってもよい。
 また、プロセッサ1001やメモリ1002などの各装置は、情報を通信するためのバス1007で接続される。バス1007は、単一のバスで構成されてもよいし、装置間で異なるバスで構成されてもよい。
 また、対話サーバ100は、マイクロプロセッサ、デジタル信号プロセッサ(DSP: Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ1001は、これらのハードウェアの少なくとも1つで実装されてもよい。
 以上、本実施形態について詳細に説明したが、当業者にとっては、本実施形態が本明細書中に説明した実施形態に限定されるものではないということは明らかである。本実施形態は、特許請求の範囲の記載により定まる本発明の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本明細書の記載は、例示説明を目的とするものであり、本実施形態に対して何ら制限的な意味を有するものではない。
 本明細書で説明した各態様/実施形態は、LTE(Long Term Evolution)、LTE-A(LTE-Advanced)、SUPER 3G、IMT-Advanced、4G、5G、FRA(Future Radio Access)、W-CDMA(登録商標)、GSM(登録商標)、CDMA2000、UMB(Ultra Mobile Broadband)、IEEE 802.11(Wi-Fi)、IEEE 802.16(WiMAX)、IEEE 802.20、UWB(Ultra-WideBand)、Bluetooth(登録商標)、その他の適切なシステムを利用するシステム及び/又はこれらに基づいて拡張された次世代システムに適用されてもよい。
 本明細書で説明した各態様/実施形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本明細書で説明した方法については、例示的な順序で様々なステップの要素を提示しており、提示した特定の順序に限定されない。
 入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルで管理してもよい。入出力される情報等は、上書き、更新、または追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
 判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:trueまたはfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
 本明細書で説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
 ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
 また、ソフトウェア、命令などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア及びデジタル加入者回線(DSL)などの有線技術及び/又は赤外線、無線及びマイクロ波などの無線技術を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び/又は無線技術は、伝送媒体の定義内に含まれる。
 本明細書で説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
 なお、本明細書で説明した用語及び/又は本明細書の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。
 本明細書で使用する「システム」および「ネットワーク」という用語は、互換的に使用される。
 また、本明細書で説明した情報、パラメータなどは、絶対値で表されてもよいし、所定の値からの相対値で表されてもよいし、対応する別の情報で表されてもよい。例えば、無線リソースはインデックスで指示されるものであってもよい。
 ユーザ端末・移動通信端末は、当業者によって、加入者局、モバイルユニット、加入者ユニット、ワイヤレスユニット、リモートユニット、モバイルデバイス、ワイヤレスデバイス、ワイヤレス通信デバイス、リモートデバイス、モバイル加入者局、アクセス端末、モバイル端末、ワイヤレス端末、リモート端末、ハンドセット、ユーザエージェント、モバイルクライアント、クライアント、またはいくつかの他の適切な用語で呼ばれる場合もある。
 本明細書で使用する「判断(determining)」、「決定(determining)」という用語は、多種多様な動作を包含する場合がある。「判断」、「決定」は、例えば、判定(judging)、計算(calculating)、算出(computing)、処理(processing)、導出(deriving)、調査(investigating)、探索(looking up)(例えば、テーブル、テーブルまたは別のデータ構造での探索)、確認(ascertaining)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、受信(receiving)(例えば、情報を受信すること)、送信(transmitting)(例えば、情報を送信すること)、入力(input)、出力(output)、アクセス(accessing)(例えば、メモリ中のデータにアクセスすること)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、解決(resolving)、選択(selecting)、選定(choosing)、確立(establishing)、比較(comparing)などした事を「判断」「決定」したとみなす事を含み得る。つまり、「判断」「決定」は、何らかの動作を「判断」「決定」したとみなす事を含み得る。
 「接続された(connected)」、「結合された(coupled)」という用語、又はこれらのあらゆる変形は、2又はそれ以上の要素間の直接的又は間接的なあらゆる接続又は結合を意味し、互いに「接続」又は「結合」された2つの要素間に1又はそれ以上の中間要素が存在することを含むことができる。要素間の結合又は接続は、物理的なものであっても、論理的なものであっても、或いはこれらの組み合わせであってもよい。本明細書で使用する場合、2つの要素は、1又はそれ以上の電線、ケーブル及び/又はプリント電気接続を使用することにより、並びにいくつかの非限定的かつ非包括的な例として、無線周波数領域、マイクロ波領域及び光(可視及び不可視の両方)領域の波長を有する電磁エネルギーなどの電磁エネルギーを使用することにより、互いに「接続」又は「結合」されると考えることができる。
 本明細書で使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
 本明細書で「第1の」、「第2の」などの呼称を使用した場合においては、その要素へのいかなる参照も、それらの要素の量または順序を全般的に限定するものではない。これらの呼称は、2つ以上の要素間を区別する便利な方法として本明細書で使用され得る。したがって、第1および第2の要素への参照は、2つの要素のみがそこで採用され得ること、または何らかの形で第1の要素が第2の要素に先行しなければならないことを意味しない。
 「含む(include)」、「含んでいる(including)」、およびそれらの変形が、本明細書あるいは特許請求の範囲で使用されている限り、これら用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。さらに、本明細書あるいは特許請求の範囲において使用されている用語「または(or)」は、排他的論理和ではないことが意図される。
 本明細書において、文脈または技術的に明らかに1つのみしか存在しない装置である場合以外は、複数の装置をも含むものとする。
100…対話サーバ、101…受信部、102…検索部、103…送信部、104…真理表テーブル、105…関連テーブル、106…自然言語解析部。
 

Claims (6)

  1.  ユーザによる入力に対してユーザの追加入力を促す応答を行い、ユーザの入力に応じた応答内容を提供することで対話を行う対話サーバにおいて、
     ユーザに提供するための文章を含んだ応答内容と、複数の検索キーワードとを対応付けた真理表テーブルと、
     相互に関連する複数の関連キーワードを対応つけた関連テーブルと、
     ユーザから入力キーワードの入力を受け付ける受信部と、
     前記入力キーワードに基づいて、前記関連テーブルに記憶されている関連キーワードを取得して、前記真理表テーブルを検索し、前記関連キーワードに対応する応答内容を取得する検索部と、
     前記応答内容を、前記ユーザに送信する送信部と、
    を備える対話サーバ。
  2.  前記真理表テーブルは、さらに応答内容に関連する関連内容を対応付けて記述し、
     前記検索部は、
     複数の応答内容を取得した場合において、取得した複数の応答内容に紐付く関連内容が同じである場合、少なくとも一の関連キーワードに対応する応答内容を取得し、
     前記送信部は、前記応答内容を送信する、
    請求項1に記載の対話サーバ。
  3.  前記検索部は、
     複数の応答内容を取得した場合において、取得した複数の応答内容に紐付く関連内容が異なる場合、前記複数の関連キーワードのうち一の関連キーワードを取得し、
     前記送信部は、前記一の関連キーワードを、追加入力を促すための聞き返しキーとして送信する、
    請求項2に記載の対話サーバ。
  4.  前記受信部は、前記ユーザから受け付けた入力文章に基づいて、入力キーワードを取得し、
     前記入力文章を解析することにより、前記複数の関連キーワードのいずれかを含む検索を行うか、いずれをも含まない検索を行うか、判断する自然言語解析部をさらに備え、
     前記検索部は、
     前記自然言語解析部による解析結果に基づいた検索を行う、
     請求項1~3のいずれか一項に記載の対話サーバ。
  5.  前記検索部は、
     前記入力キーワードが、前記真理表テーブルにおける検索キーワードと一致せず、前記関連テーブルにおける関連キーワードと一致する場合に、前記関連テーブルにおいて、当該関連キーワードに対応付けられている他の関連キーワードに対応する応答内容を、真理表テーブルから取得する、
    請求項1~4のいずれか一項に記載の対話サーバ。
  6.  前記関連テーブルは、
     相互に関連する複数の関連キーワードに対して、一の主キーワードを対応付ける、請求項1~5のいずれか一項に記載の対話サーバ。
PCT/JP2018/048580 2018-04-03 2018-12-28 対話サーバ WO2019193796A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/042,605 US20210097236A1 (en) 2018-04-03 2018-12-28 Interaction server
JP2020511598A JP7003228B2 (ja) 2018-04-03 2018-12-28 対話サーバ

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-071835 2018-04-03
JP2018071835 2018-04-03

Publications (1)

Publication Number Publication Date
WO2019193796A1 true WO2019193796A1 (ja) 2019-10-10

Family

ID=68100751

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/048580 WO2019193796A1 (ja) 2018-04-03 2018-12-28 対話サーバ

Country Status (3)

Country Link
US (1) US20210097236A1 (ja)
JP (1) JP7003228B2 (ja)
WO (1) WO2019193796A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022124338A1 (ja) * 2020-12-08 2022-06-16 Nota株式会社 情報処理装置、情報処理方法及びプログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102407603B1 (ko) * 2020-04-20 2022-06-13 엘지전자 주식회사 압축기

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002222147A (ja) * 2001-01-26 2002-08-09 Seiko Epson Corp 掲示板式情報提供システム
JP2004287696A (ja) * 2003-03-20 2004-10-14 Seiko Epson Corp 検索システム及び検索プログラム
JP2009080675A (ja) * 2007-09-26 2009-04-16 Canon Software Inc 検索装置および検索方法およびプログラムおよび記録媒体
JP2014106832A (ja) * 2012-11-29 2014-06-09 Nec Software Tohoku Ltd 情報提供装置及び情報提供方法
JP2014112316A (ja) * 2012-12-05 2014-06-19 Kddi Corp 大量のコメント文章を用いた質問回答プログラム、サーバ及び方法
JP2015225402A (ja) * 2014-05-26 2015-12-14 ソフトバンク株式会社 情報検索装置、情報検索プログラム、及び情報検索システム
JP2016045583A (ja) * 2014-08-20 2016-04-04 ヤフー株式会社 応答生成装置、応答生成方法及び応答生成プログラム
JP2018045537A (ja) * 2016-09-15 2018-03-22 富士通株式会社 検索プログラム、検索装置および検索方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7912701B1 (en) * 2005-05-04 2011-03-22 IgniteIP Capital IA Special Management LLC Method and apparatus for semiotic correlation
US8688682B2 (en) * 2007-03-23 2014-04-01 International Business Machines Corporation Query expression evaluation using sample based projected selectivity
US9747331B2 (en) * 2014-10-06 2017-08-29 International Business Machines Corporation Limiting scans of loosely ordered and/or grouped relations in a database
US9703860B2 (en) * 2014-10-06 2017-07-11 International Business Machines Corporation Returning related previously answered questions based on question affinity
US10636047B2 (en) * 2015-09-09 2020-04-28 Hartford Fire Insurance Company System using automatically triggered analytics for feedback data
US20180165723A1 (en) * 2016-12-12 2018-06-14 Chatalytic, Inc. Measuring and optimizing natural language interactions
US20180218374A1 (en) * 2017-01-31 2018-08-02 Moveworks, Inc. Method, system and computer program product for facilitating query resolutions at a service desk

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002222147A (ja) * 2001-01-26 2002-08-09 Seiko Epson Corp 掲示板式情報提供システム
JP2004287696A (ja) * 2003-03-20 2004-10-14 Seiko Epson Corp 検索システム及び検索プログラム
JP2009080675A (ja) * 2007-09-26 2009-04-16 Canon Software Inc 検索装置および検索方法およびプログラムおよび記録媒体
JP2014106832A (ja) * 2012-11-29 2014-06-09 Nec Software Tohoku Ltd 情報提供装置及び情報提供方法
JP2014112316A (ja) * 2012-12-05 2014-06-19 Kddi Corp 大量のコメント文章を用いた質問回答プログラム、サーバ及び方法
JP2015225402A (ja) * 2014-05-26 2015-12-14 ソフトバンク株式会社 情報検索装置、情報検索プログラム、及び情報検索システム
JP2016045583A (ja) * 2014-08-20 2016-04-04 ヤフー株式会社 応答生成装置、応答生成方法及び応答生成プログラム
JP2018045537A (ja) * 2016-09-15 2018-03-22 富士通株式会社 検索プログラム、検索装置および検索方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022124338A1 (ja) * 2020-12-08 2022-06-16 Nota株式会社 情報処理装置、情報処理方法及びプログラム
JP7112155B1 (ja) * 2020-12-08 2022-08-03 Nota株式会社 情報処理装置、情報処理方法及びプログラム

Also Published As

Publication number Publication date
US20210097236A1 (en) 2021-04-01
JPWO2019193796A1 (ja) 2021-02-12
JP7003228B2 (ja) 2022-01-20

Similar Documents

Publication Publication Date Title
JP6802364B2 (ja) 対話システム
WO2019225154A1 (ja) 作成文章評価装置
WO2019193796A1 (ja) 対話サーバ
JP6967089B2 (ja) 対話システム
US11868734B2 (en) Dialogue system
US20220301004A1 (en) Click rate prediction model construction device
JP7043593B2 (ja) 対話サーバ
WO2020039808A1 (ja) 機械翻訳制御装置
WO2019202787A1 (ja) 対話システム
WO2019216054A1 (ja) 対話サーバ
US11604831B2 (en) Interactive device
WO2019187463A1 (ja) 対話サーバ
JP6745402B2 (ja) 質問推定装置
WO2020235136A1 (ja) 対話システム
JP2019139629A (ja) 機械翻訳装置、翻訳学習済みモデル及び判定学習済みモデル
WO2019220791A1 (ja) 対話装置
US20230047337A1 (en) Analysis device
WO2021039372A1 (ja) リランキング装置
WO2020090148A1 (ja) 対話システム
WO2019211967A1 (ja) 対話装置
US20210056271A1 (en) Machine translation control device
JP2020184017A (ja) 学習データ生成装置及び学習データ生成プログラム
JPWO2020095633A1 (ja) 対話装置及び対話プログラム

Legal Events

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

Ref document number: 18913571

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020511598

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: 18913571

Country of ref document: EP

Kind code of ref document: A1