WO2020090574A1 - 情報提供システム、情報提供方法、及び、知識データのデータ構造 - Google Patents

情報提供システム、情報提供方法、及び、知識データのデータ構造 Download PDF

Info

Publication number
WO2020090574A1
WO2020090574A1 PCT/JP2019/041485 JP2019041485W WO2020090574A1 WO 2020090574 A1 WO2020090574 A1 WO 2020090574A1 JP 2019041485 W JP2019041485 W JP 2019041485W WO 2020090574 A1 WO2020090574 A1 WO 2020090574A1
Authority
WO
WIPO (PCT)
Prior art keywords
character string
question
input
search
information providing
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/JP2019/041485
Other languages
English (en)
French (fr)
Inventor
拓生 逸見
佐藤 淳一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Universal Entertainment Corp
Original Assignee
Universal Entertainment Corp
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 Universal Entertainment Corp filed Critical Universal Entertainment Corp
Priority to CN201980071378.1A priority Critical patent/CN112955882B/zh
Priority to US17/287,613 priority patent/US20210397786A1/en
Publication of WO2020090574A1 publication Critical patent/WO2020090574A1/ja
Priority to PH12021550937A priority patent/PH12021550937A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/3322Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/046Forward inferencing; Production systems

Definitions

  • a question answering system that responds to a question and outputs an answer candidate evaluated as optimal is proposed (see Patent Document 1).
  • an answer candidate for a question is searched for, and for each combination of question and answer candidate, a score indicating the degree to which each answer candidate is a correct answer for the question is calculated using a learning function, and calculated. It is configured to output an answer candidate most likely to be a correct answer to the question based on the scored.
  • the user In the above conventional system, the user generally performs an operation such as searching the question content for the request content desired by the user and selecting the question content that seems to correspond to the request content from the search result.
  • an operation such as searching the question content for the request content desired by the user and selecting the question content that seems to correspond to the request content from the search result.
  • an object of the present invention is to provide an information providing system, an information providing method, and a data structure of knowledge data, which can facilitate the acquisition of information of knowledge data desired by a user.
  • the information providing system of the present invention is A knowledge data storage unit that stores a question character string associated with the response content;
  • a synonym storage unit that stores a synonym dictionary in which synonyms consisting of a plurality of words defined to have similar meanings to each other are stored;
  • a receiving unit that receives an input character string input from a user terminal operated by a user,
  • a search unit that converts a word included in the input character string based on the synonym dictionary into a search character string, and specifies the question character string related to the search character string,
  • a transmitting unit that transmits the specified question character string to the user terminal.
  • the input character string input by the user is converted into the search character string by using the synonym dictionary, and the related question character string is specified. Therefore, in the normal search, the question character string including the specified synonym word is specified. Can also be specified, and the possibility that the response content desired by the user can be obtained is improved. Therefore, it is possible to easily obtain the information of the knowledge data desired by the user.
  • the synonym dictionary one of the synonyms is set as a representative word
  • the knowledge data storage unit stores the question character string and a normalized character string obtained by converting a word included in the question character string into a representative word based on the synonym dictionary, in association with each other,
  • the search unit converts a word included in the input character string into a representative word based on the synonym dictionary to form a search character string
  • the normalized character string may be selected using the search character string, and the question character string corresponding to the selected normalized character string may be specified.
  • the knowledge data storage unit is searched by the search character string in which the input character string input by the user is converted into a representative word based on the synonym dictionary. Since the knowledge data storage unit stores the normalized character string obtained by converting the question character string into a representative word based on the synonym dictionary in association with the question character string, the question character string is registered in advance as a unified word. Words registered in the synonym dictionary are hit as search results without effort. As a result, it is possible to improve the possibility of providing the user with more question character string information as a candidate of the response content desired by the user than directly searching with the input character string input by the user. It becomes possible to easily acquire information of knowledge data to be used.
  • the user terminal is Each time the user operates, the input character string is confirmed, and the confirmed input character string is transmitted to the receiving unit, Each time the question character string is received from the transmission unit, the question character string may be presented in a selectable manner.
  • the user terminal presents the question character string in a selectable manner in real time for each user operation, so that it is possible to reduce the trouble of performing a search and selecting the question character string each time the input character string is updated.
  • the knowledge data storage unit The input conversion character string of each of the plurality of words forming the synonym is stored in association with the representative word.
  • the information provision control method of the present invention is An information provision control method executed by a computer having a storage unit, comprising: Storing a question string associated with the response content, Storing a synonym dictionary in which synonyms consisting of a plurality of words defined to have similar meanings to each other are stored; Receiving an input character string input from a user terminal operated by a user, Converting a word included in the input character string based on the synonym dictionary into a search character string, and specifying the question character string related to the search character string; And transmitting the specified question character string to the user terminal.
  • the input character string input by the user is converted into the search character string by using the synonym dictionary, and the related question character string is specified. Therefore, in the normal search, the question character string including the specified synonym word is specified. Can also be specified, and the possibility that the response content desired by the user can be obtained is improved. Therefore, it is possible to easily obtain the information of the knowledge data desired by the user.
  • the data structure of the knowledge data of the present invention is A storage unit used by a computer having a control unit capable of accessing a synonym storage unit that stores a synonym dictionary in which synonyms consisting of a plurality of words defined to have similar meanings to each other is used, and the storage unit included in the computer
  • a data structure of knowledge data stored in The data structure is Including a structure in which the question string and the response content are associated with each other,
  • the control unit For the input character string input from the user terminal operated by the user, the control unit generates a search character string in which a word included in the input character string is converted based on the synonym dictionary, and the search character string is generated. Is specified.
  • the input character string input by the user is converted into the search character string by using the synonym dictionary, and the related question character string is specified. Therefore, in the normal search, the question character string including the specified synonym word is specified. Can also be specified, and the possibility that the response content desired by the user can be obtained is improved. Therefore, it is possible to easily obtain the information of the knowledge data desired by the user.
  • the information providing system 1 of the present embodiment has an information providing server 200 connected to the user terminal 100 via a network 700 including the Internet so that data communication is possible.
  • the information providing system 1 of the present embodiment is configured by the information providing server 200, but is not limited to this.
  • Each function of the information providing server 200 described below may be provided by being distributed to a plurality of servers in the information providing system 1. That is, each function of the information providing server 200 may be included in any of the components of the information providing system.
  • the information providing server 200 that functions as the information providing system 1 will be described.
  • a WEB browser for accessing the services provided by the information providing system 1 is installed on the user terminal 100. That is, the user accesses the information providing system 1 via the WEB browser.
  • the user terminal 100 exemplified in this embodiment is a so-called smartphone, but may be a portable computer or a stationary computer. Examples of the portable user terminal 100 include portable information devices such as a portable computer, a laptop computer, a tablet computer, a wearable computer, and a PDA (Personal Data Assistant).
  • the user inputs a character string into the input area 1010 of the WEB site of the information providing system 1 displayed by the WEB browser executed on the user terminal 100 using, for example, a keyboard or a touch panel. Then, the user specifies the search button 1011 of the same WEB site by using, for example, a mouse or a touch panel. As a result, the input character string input by the user is transmitted to the information providing server 200 as a request.
  • the search button 1011 is operated to transmit the input character string from the user terminal 100, but the present invention is not limited to this.
  • the text in the input area 1010 may be transmitted to the information providing system 1 as an input character string in the background.
  • the input character string input by the user here is generally in the form of a sentence (input sentence), and includes, for example, a question about the product of the company providing the WEB site related to the WEB page, and the like. Expressed by language.
  • the input from the user may be referred to as an “input sentence”.
  • the input character string does not have to be in the form of a sentence, but means various input character strings including a word or a part of a sentence.
  • the information providing server 200 determines a question character string corresponding to this input character string and transmits it to the user terminal 100 via the network 700.
  • the user terminal 100 displays a screen displaying the question character string from the information providing server 200 in the search result area 1012.
  • the question character string displayed in the result area 1012 is a link to the URL of the WEB site indicating the response content corresponding to the question character string, and the user specifies the question character string to answer the question character string. Can recognize the contents.
  • the text input to the input area 1010 is changed to the information providing system 1 as an input character string in the background in the background every time the text input to the input area 1010 is changed, there is no screen transition and the input area It is preferable that the question character string corresponding to the text in 1010 be presented in a selectable manner in real time.
  • the information providing server 200 is configured to be able to access the knowledge data in which the response content is associated with the question character string. That is, the information for accessing the response content corresponding to the specified question character string can be provided to the user terminal 100.
  • the information providing server 200 has a knowledge database 300, a synonym dictionary database 400, and a suggestion database 500.
  • the knowledge database 300 as a knowledge data storage unit stores knowledge data in which the response content is associated with the question character string.
  • the information providing server 200 refers to the knowledge database 300 when transmitting the information for accessing the response content corresponding to the specified question character string to the user terminal 100. For example, when the user specifies a question character string “I want to know the price”, the information providing server 200 refers to the knowledge database 300 and displays the response content “Price is XX” corresponding to the question character string. Provide to users.
  • the synonym dictionary database 400 as a synonym storage unit stores a synonym dictionary in which synonyms composed of a plurality of words defined to have similar meanings are set. For example, as data of one synonym of a plurality of words defined to have similar meanings, "cost", "price” (fee), “charge” (amount), "price” (price) Has information indicating.
  • the synonym dictionary database 400 stores a plurality of such synonyms.
  • any one of the synonyms may be set as the representative word. That is, the representative word is information indicating one of a plurality of words that are set as synonyms and have similar meanings to each other.
  • the synonym dictionary database 400 stores the synonym dictionary in which one of the synonyms is set as the representative word. That is, one data stored in the synonym dictionary database 400 is data including synonym information and information indicating that one of these synonyms is a representative word.
  • the synonym dictionary database 400 has information indicating that the synonyms are “amount” (cost), “price” (fee), “fee” (amount), and “price” (price).
  • the information providing server 200 refers to the synonym dictionary database 400 when converting the question character string into a normalized character string.
  • the information providing server 200 also refers to the synonym dictionary database 400 when converting a character string input by the user into a search character string.
  • this phonetic kana may be registered in the synonym dictionary database 400 as a synonym.
  • a "yomi kana” is designated by a combination of alphabets, for example, and converted into kanji to confirm the input.
  • Yomikana By registering the synonym Yomikana, it is possible to convert the input character string from the user to the search character string even if the input is fixed as it is or before it is converted to Kanji. Become.
  • the suggestion database 500 stores the question character string and the normalized character string in association with each other.
  • the normalized character string is a word included in the question character string converted into a representative word based on the synonym dictionary of the synonym dictionary database 400.
  • normalization means converting a word included in a synonym word registered in the synonym dictionary database 400 into a representative word set in the synonym word with respect to a word included in a character string. For example, when the question character string includes “price”, “charge”, and “price”, all of these are converted into “amount” and registered by normalization when registered in the suggestion database 500. That is, when the question character string is "I want to know the price", the normalized character string is "I want to know the amount of money”.
  • the “question character string” stored in the suggestion database 500 is not limited to the “question character string” itself, but may be any information indicating which data is stored in the knowledge database 300.
  • the question character string registered in the knowledge database 300 is specified by the unique key, the unique key and the normalized character string may be associated in the suggestion database 500.
  • “reading kana” of “question character string” or “normalized character string” may be registered.
  • the correspondence between the question character string stored in the suggestion database 500 and the normalized character string may be stored in the knowledge database 300. That is, the knowledge database 300 stores the question character string associated with the response content, and further converts the question character string into the representative word based on the synonym dictionary into the word included in the question character string.
  • the columns may be stored in association with each other.
  • the information providing server 200 including these databases 300, 400, 500 receives an input character string input from the user terminal 100 operated by the user, and converts a word included in the input character string based on a synonym dictionary.
  • the search character string As the search character string, the question character string related to the search character string is specified, and the specified question character string is transmitted to the user terminal 100.
  • the information providing server 200 receives the input character string input from the user terminal 100 and converts it based on the synonym dictionary of the synonym dictionary database 400.
  • a search character string a normalization character string of the suggest server 500 is selected using the search character string, a question character string corresponding to the selected normalization character string is specified, and transmitted to the user terminal 100. ..
  • the input character string input by the user is normalized into a search character string based on the synonym dictionary database 400, and the suggestion database 500 is searched by this search character string.
  • the suggestion database 500 since a normalized character string obtained by normalizing the question character string is stored in association with the question character string, the synonym dictionary does not require the effort of registering the question character string with a unified word in advance. If the word is registered in the database 400, it is hit as a search result. As a result, it is possible to improve the possibility of providing the user with more question character string information as a response content candidate desired by the user than directly searching the knowledge data with the input character string input by the user, It becomes possible to easily acquire the information of the knowledge data desired by the user.
  • an input character string from the user terminal 100 is generated based on a synonym dictionary to generate one or more search character strings corresponding to the input character string, and the one or more search character strings are generated.
  • the knowledge database 300 as the knowledge data storage unit may be searched by a character string.
  • the input character string input by the user is converted into a search character string by converting it into a synonym dictionary, and the related question character string is specified. Therefore, in a normal search, the question character string including the specified synonym is also specified. As a result, the possibility that the response content desired by the user can be obtained is improved.
  • the data structure of the knowledge data is a computer having a control unit capable of accessing a synonym database 400 that stores a synonym dictionary in which synonyms consisting of a plurality of words defined to have similar meanings are set. It is used and stored in the storage unit of this computer. Then, the data structure of the knowledge data includes a structure in which the question character string and the response content are associated with each other, and the input character string is input to the control unit from the user terminal operated by the user. A search character string in which the included word is converted based on the synonym dictionary is generated, and the question character string related to the search character string is specified.
  • the data structure of the information providing search data registered in the suggestion database 500 is a question character string and words included in the question character string based on the synonym dictionary database 400 in which one of the synonyms is set as a representative word. Is converted into a representative word and a normalized character string is associated with the structure. Since the search data for information provision has such a data structure, the input character string input from the user terminal 100 operated by the user to the information provision server 200 is based on the synonym dictionary database 400. A search is performed by using the normalized character string of the suggestion database 500 as a search target using the search character string converted into the representative word as a search key, and the question character string is specified based on the search result.
  • the data structure includes a structure in which the normalized character string normalized by the synonym dictionary database 400 is associated with the question character string, and the input entered by the user based on the data structure.
  • a search process in which a search character string normalized from a character string is used as a search key and a normalized character string of the data structure is a search target, and a question character string specifying process are realized.
  • the information providing system 1 when the information providing system 1 is provided as usable for an unspecified user, the user generally asks a question or the like to a company or organization (products or services thereof) that provides a WEB site.
  • a user is assumed, and the user terminal 100 is usually a PC (personal computer) or the like owned by a user who can connect to the Internet or the like.
  • the information providing system 1 can also be used as a system used in a limited range (for example, an in-company knowledge sharing system), and in this case, the user has a legitimate access right to the information providing system 1. Be a specific user.
  • the system administrator of the information providing system 1 manages the above-mentioned database construction and data addition.
  • the person in charge of the company or organization is usually the system administrator.
  • an agent or a trustee company may become a system administrator on behalf of the company or organization.
  • the user provides a question or the like to the information providing system 1 by inputting a character string in the input area of the WEB site with a keyboard or the like.
  • a character string may be input by such a method / route.
  • the voice recognition processing may be performed on the voice to convert the voice into a character string, and the converted character string may be provided to the information providing system 1.
  • OCR Optical Character Recognition
  • the information providing server 200 of the present embodiment transmits / receives data to / from a WEB browser executed in the user terminal 100 or a terminal of a system administrator (not shown) by a protocol such as http and displays a predetermined WEB page on the WEB browser. It also has a function of a WEB server that operates so as to make it operate. Further, although the information providing server 200 is shown as one computer here, it may be configured to execute the same function in a distributed manner by a plurality of computers. In this case, the information providing system 1 is constructed by the plurality of computers (servers).
  • the user terminal 100 includes a CPU 2101, a ROM 2102, a RAM 2103, a flash memory 2104, an operation button 2108, a power switch 2109, a bus line 2110, a network I / F 2111, a camera 2112, an image sensor I / F 2113, a microphone 2114.
  • a speaker 2115, a sound input / output I / F 2116, a display I / F 2117, a sensor controller 2118, a short-range communication circuit 2119, and an antenna 2119a of the short-range communication circuit 2119 are provided in the housing.
  • the information providing server 200 is a so-called computer including a CPU 1101, a ROM 1102, a RAM 1103, a storage device 1104 such as a hard disk drive, and a network I / F 1111.
  • a CPU (Central Processing Unit) 2101 functions as a main configuration of a controller in the user terminal 100, and controls the operation of the entire user terminal 100.
  • the CPU 1101 functions as the main configuration of the control unit in the information providing server 200, and controls the operation of the entire information providing server 200. That is, the CPU 1101 functions as a controller that controls the overall operation of the information providing system 1.
  • a ROM (Read Only Memory) 2102 stores a program such as an IPL (Initial Program Loader) used to drive the CPU 2101.
  • a RAM (Random Access Memory) 2103 / RAM 1103 is used as a work area for the CPU 2101 / CPU 1101.
  • the operation button 2108 is a button operated when the user terminal 100 is initialized.
  • the power switch 2109 is a switch for switching ON / OFF the power of the user terminal 100.
  • the flash memory 2104 as a memory is a computer-readable non-transitory recording medium that stores various data such as a web browser program, a communication program, image data, and sound data.
  • the storage device 1104 is a computer-readable non-transitory recording medium that stores the various databases described above.
  • the information providing server 200 appropriately refers to the database of the storage device 1104 and returns a response to a request from an application such as a WEB browser of the user terminal 100.
  • the storage device 1104 stores various programs including a program executed by the CPU 1101 as a controller and various data used by the various programs.
  • the program causes the information providing server 200, which is a computer including the CPU 1101 and the storage device 1104, to execute the processes included in the various programs.
  • the storage device 1104 stores various programs including a program executed by the CPU 1101 as a controller and various data used by the various programs.
  • the program causes the information providing server 200, which is the information providing system 1 including the CPU 1101 and the storage device 1104, to execute the processes included in the various programs. In this way, the processes and operations of the information providing system 1 can be replaced with programs and information providing methods.
  • the data and programs stored in the flash memory 2104 and the storage device 1104 may be stored in advance at the factory shipment stage, or may be downloaded by a communication means from a server (not shown) or the like and stored. ..
  • the communication means may be a bidirectional communication path such as the Internet or a cable television, or may be a broadcast that transmits information only in one direction.
  • the data and programs stored in the flash memory 2104 and the storage device 1104 are stored in a recording medium such as a floppy disk, CD-ROM, DVD-ROM, MO (magneto-optical disk), flash memory, etc. It may be read from a recording medium and installed.
  • Network I / F (Interface) 2111-Network I / F 1111 is an interface for performing data communication using a communication network such as the Internet.
  • the camera 2112 is a kind of a built-in image pickup unit that obtains image data by capturing an image of a subject under the control of the CPU 101.
  • the image sensor I / F 2113 is a circuit that controls driving of the camera 2112.
  • the microphone 2114 is a kind of built-in sound collecting means for inputting voice.
  • the sound input / output I / F 2116 is a circuit that processes input / output of a sound signal between the microphone 2114 and the speaker 2115 under the control of the CPU 101.
  • the display I / F 2117 is a circuit that transmits image data to the display 2120 under the control of the CPU 2101.
  • the display 2120 is provided on the front surface of the housing.
  • the sensor controller 2118 is a circuit that receives an input from a touch panel provided on the display 2120.
  • the short-range communication circuit 2119 is a communication circuit such as NFC (Near Field Communication) (registered trademark) or Bluetooth (registered trademark).
  • the bus line 2110 is an address bus, a data bus, or the like for electrically connecting each component such as the CPU 101.
  • the information providing system 1 has the following functions. Specifically, the information providing system 1 includes a synonym dictionary access unit 601, a morpheme analysis unit 602, a question answering unit 603, and a suggestion registration unit 604.
  • the synonym dictionary access unit 601 has a function of accessing the synonym dictionary database 400 when normalizing a character string with a representative word.
  • the morphological analysis unit 602 has a function of dividing a character string into minimum units. More specifically, the morpheme analysis unit 602 has a function of performing morpheme analysis on an input character string from the user terminal 100 and extracting a word to be converted into a representative word. Various known methods can be used for the morphological analysis.
  • the question answering unit 603 has a function of transmitting the question character string and / or information indicating the response content to the user terminal 100 based on the input character string from the user terminal 100.
  • the question answering unit 603 includes a question answering unit 603, an input character string receiving unit 631, an input character string normalizing unit 632, a suggestion DB search unit 633, a knowledge data access unit 634, and a question character string.
  • the transmitter 635 is included.
  • the input character string receiving unit 631 has a function of receiving the input character string from the user terminal 100, and has a function of transmitting the input character string to the input character string normalizing unit 632.
  • the input character string normalization unit 632 has a function of transmitting the input character string from the input character string reception unit 631 to the morpheme analysis unit 602 and receiving the morpheme analysis result from the morpheme analysis unit 602. It has a function of extracting a word to be converted into a representative word, has a function of transmitting the word to the synonym dictionary access unit 601, and receiving the converted representative word from the synonym dictionary access unit 601.
  • the suggestion DB search unit 633 has a function of executing a search in which the normalized character string of the suggestion database 500 is the search target, using the search character string as a search key, and the search result that specifies the question character string is the knowledge data access unit 634. It has a function to send to.
  • the knowledge data access unit 634 has a function of referring to the knowledge database 300 from the search result and specifying the question character string and / or the information indicating the response content, and the specified question character string and / or the response content It has a function of transmitting information indicating "" to the question character string transmission unit 635.
  • the question character string transmission unit 635 has a function of transmitting the question character string and / or information indicating the response content to the user terminal 100.
  • the suggestion registration unit 604 has a function of registering the question character string and the normalized character string in association with the suggestion database 500.
  • the suggestion registration unit 604 includes a registration character string reception unit 641, a registration character string normalization unit 642, and a suggestion data registration unit 643.
  • the registered character string receiving unit 641 has a function of receiving a registered character string from a management terminal of an administrator (not shown).
  • the registered character string is a question character string registered in the knowledge database 300.
  • the registered character string receiving unit 641 receives the unique key from the management terminal, and the inquiry from the knowledge database 300 is performed based on the unique key. Receive a string.
  • the registered character string receiving unit 641 may have a function of accessing the knowledge database 300.
  • the registered character string normalization unit 642 has a function of transmitting the received question character string to the morpheme analysis unit 602 and receiving the morpheme analysis result from the morpheme analysis unit 602, and should convert the morpheme analysis result into a representative word. It has a function of extracting a word, has a function of transmitting the word to the synonym dictionary access unit 601, and receiving a converted representative word from the synonym dictionary access unit 601. Based on the received representative word, the question character It has a function of generating a normalized character string obtained by converting a column and a function of transmitting the normalized character string to the suggestion data registration unit 643.
  • the suggestion data registration unit 643 has a function of receiving the normalized character string from the registered character string normalization unit 642, and associates the normalized character string with the question character string or a unique key indicating the question character string, It has a function of registering in the suggestion database 500.
  • the processes and operations are described assuming that the information providing server 200 has these functions, but the functions may be distributed to the constituent elements of the information providing system 1. Further, the above function of the information providing system 1 may be operated as an additional module of another system.
  • the knowledge data table has a knowledge ID column, a question column, and a response column.
  • the knowledge ID stores a unique key that identifies each question.
  • the question column stores a question character string to be presented to the user.
  • the URL of the WEB site showing the response corresponding to the question character string is stored in the response column.
  • the response content to the question character string may be directly stored in the response field.
  • the synonym dictionary data table has a representative word column and a synonym column.
  • One of the synonym groups is stored in the representative word column.
  • a synonym group including the representative word is stored corresponding to the representative word.
  • the synonym group may not include the representative word.
  • the synonym dictionary data table is referred to when normalizing the character string.
  • “money” is set as a representative word in the synonym group “money”, “price”, “charge”, and “price”. That is, when the question character string including these synonyms is normalized and converted into a normalized character string, or when the input character string including these synonyms is normalized and converted into a search character string, these synonyms are All words will be converted to "money”.
  • the suggestion data table has a knowledge ID column, a question column, and a search target column.
  • the knowledge ID stores a unique key that identifies each question.
  • the question column stores a question character string to be presented to the user.
  • the search target field stores a normalized character string obtained by normalizing the corresponding question character string.
  • the synonym data table (see FIG. 5) of the synonym database 400 is referred to, and the corresponding normalized character string is "price” as a representative word. It is normalized to a certain “amount” and becomes a character string "I want to know about the amount”. If the question string is "I want to know when the price is revised,” the corresponding normalized string will be “price” normalized to "money”, and “revision” will be the representative. It is converted to the word “change” and becomes a character string "I want to know when the amount of money changes.” Here, "time” is not converted because it is already a representative word.
  • the CPU 1101 determines whether or not the registration character string is received (S10).
  • the CPU 1101 repeatedly executes step S10 and waits for the reception of the registration character string.
  • the CPU 1101 performs a morphological analysis process on the received registration character string (S11).
  • the CPU 1101 identifies a word to be normalized in the registered character string (S12). For example, the CPU 1101 identifies the type of part-of-speech of each morpheme by morpheme analysis, and normalizes the morphemes identified as common nouns and sahen nouns.
  • the CPU 1101 searches the synonym column of the synonym dictionary database 400 for the morpheme targeted for normalization (S13). Then, the CPU 1101 converts the morpheme targeted for normalization into a corresponding representative word (S14). Although not shown, if the morpheme targeted for normalization is not included in the synonym column, the CPU 1101 shifts the processing to step S15 without performing conversion.
  • the CPU 1101 determines whether or not the conversion of the morphemes targeted for normalization in the received registration character string has been completed (S15). When all the conversions have not been completed (S15: NO), the CPU 1101 shifts the processing to step S13. When all the conversions are completed (S15: NO), the CPU 1101 registers the registered character string, which has been converted, in the suggestion database 500 as a normalized character string (S16), and ends this routine.
  • this routine may be automatically executed when the knowledge database 300 is constructed or updated. For example, this routine is automatically executed for all the question character strings included in the knowledge database 300 and the updated question character strings after the construction process and the update process of the knowledge database 300 not shown are completed. May be.
  • the CPU 1101 determines whether or not an input character string has been received (S20). When the input character string is not received (S20: NO), the CPU 1101 repeatedly executes step S20 and waits for the input character string to be received. When the input character string is received (S20: YES), the CPU 1101 performs a morphological analysis process on the received input character string (S21). Then, the CPU 1101 identifies a word to be normalized in the input character string (S22). For example, the CPU 1101 identifies the type of part-of-speech of each morpheme by morpheme analysis, and normalizes the morphemes identified as common nouns and sahen nouns.
  • the CPU 1101 searches the synonym column of the synonym dictionary database 400 for the morpheme targeted for normalization (S23). Then, the CPU 1101 converts the morpheme targeted for normalization into a corresponding representative word (S24). For example, when the input character string is “charge”, the input character string is converted into “amount” which is a representative word of the synonym group including “charge”. Although not shown, if the morpheme targeted for normalization is not included in the synonym column, the CPU 1101 shifts the processing to step S15 without performing conversion.
  • the CPU 1101 determines whether or not all the conversions of the morphemes targeted for normalization in the received input character string have been completed (S25). When all the conversions have not been completed (S25: NO), the CPU 1101 shifts the processing to step S23. When all the conversions have been completed (S25: NO), the CPU 1101 searches the suggestion database 500 for a search target using the converted words as a search character string (S26). Although not shown, if the morpheme targeted for normalization is not included in the synonym column, the CPU 1101 searches the suggestion database 500 with the character string that remains the morpheme targeted for normalization.
  • the CPU 1101 identifies the question character string from the corresponding normalized character string as the search result (S27), and further acquires the knowledge data corresponding to this question character string from the knowledge database 300 (S28). Then, the CPU 1101 transmits the acquired knowledge data to the user terminal 100 (S29), and ends this routine.
  • the CPU 1101 transmits information indicating that there is no corresponding knowledge data to the user terminal 100.
  • Modification 1 In the above-described embodiment, as shown in FIG. 1, the input character string is confirmed by designating the search button 1011. However, in this modification, the input character string is input every time the user updates the input character string. The character string is confirmed.
  • an input area 1020 is provided on the input screen displayed on the user terminal 100. Every time the user inputs an input character string in the input area 1020, a question character string of knowledge data corresponding to the input character string is selected as a suggestion keyword in the suggestion keyword area 1021 displayed below the input area 1020. It is supposed to be presented.
  • the suggestion keyword area 1021 is displayed without a screen transition from the input screen.
  • the question / answer request processing executed by the CPU 2101 of the user terminal 100 will be described.
  • the question response request processing program executed by the user terminal 100 is downloaded by the user terminal 100 accessing a WEB site provided by the information providing system 1 via a browser. More specifically, the question / answer request processing program is a script that is directly or indirectly implemented in html of the WEB site.
  • the CPU 2101 determines whether or not the input character string in the input area 1020 has been updated (S30). When the input area 1020 is not updated (S30: NO), the CPU 2101 repeatedly executes step S30 and waits for the input character string in the input area 102 to be updated. When the input area 1020 is updated (S30: YES), a request for requesting the question answering process is transmitted to the information providing server 200 (S31).
  • the CPU 2101 determines whether or not the response including the knowledge data from the information providing server 200 is received (S32). When the response is not received (S32: NO), the CPU 2101 repeatedly executes step S32 and waits for the reception of the response. Although not shown, if the input character string in the input area 1020 is updated while waiting for a response, the CPU 2101 proceeds to step S31 and ignores the waiting response.
  • the CPU 2101 configures a question character string including a link to the URL indicating the response content as a suggestion keyword based on the knowledge data included in the response (S33), and suggests keyword area. It is displayed on 1021 (S34).
  • the CPU 2101 determines whether or not the displayed suggestion keyword is designated (S35). When no suggestion keyword is designated (S35: NO), the CPU 2101 shifts the processing to step S30. When the suggest keyword is designated (S35: YES), the CPU 2101 transitions the screen to the URL of the response content indicated by the suggest keyword (S36), and ends this routine.
  • the user terminal 100 determines the input character string for each operation by the user, transmits the confirmed input character string to the information providing server 200, and receives the question character string from the information providing server 200 each time.
  • the question character string is presented in a selectable manner. That is, the user terminal 100 determines the input character string for each operation by the user by the program provided from the information providing server 200, transmits the confirmed input character string to the information providing server 200, and the information providing server 200 Each time a question character string from is received, a process of presenting the question character string in a selectable manner is realized.
  • the information providing system 1 has the user terminal 100 and the information providing server 200, determines the input character string for each operation by the user, and transmits the confirmed input character string to the information providing server 200. Then, every time a question character string is received from the information providing server 200, a process of presenting the question character string in a selectable manner is executed.
  • the user terminal 100 presents the question character string in a selectable manner in real time for each user operation, the trouble of performing a search and selecting the question character string each time the input character string is updated is reduced. can do.
  • Modification 2 In the embodiment described above, as shown in FIG. 1, the input character string is confirmed by designating the search button 1011. However, in the present modification, the synonym dictionary is constructed in the synonym dictionary database 400. The input conversion character string of each of the plurality of words is stored in association with the representative word. Note that this modification has the configuration of Modification 1 described above, but is not limited to this.
  • the character string for input conversion is a "yomi kana" that is specified by a combination of alphabets when entering text when the synonym is kanji, or an alphabet combination for specifying this "yomi kana”. ,.
  • the synonym dictionary data table of the synonym dictionary database 400 of this modification in addition to synonyms, phonetic transcriptions are registered.
  • the input conversion character string is registered as a plurality of words forming the synonyms, but the present invention is not limited to this.
  • “Ryo” is transmitted to the information providing server 200 as an input character string.
  • the information providing server 200 refers to the synonym dictionary data table (see FIG. 11) and selects “Ryokin” and “Ryori” in the synonym fields, and the representative amount “money” and
  • the suggestion database 500 is searched using “meal” as a search character string, and the question character string corresponding to the selected normalized character string is transmitted to the user terminal 100.
  • a question character string including “amount” and “meal” as search targets is displayed.
  • “Ryo” is transmitted to the information providing server 200 as an input character string.
  • the information providing server 200 refers to the synonym dictionary data table (see FIG. 11), selects “Ryouri” in the synonym column, and uses the representative word “meal” corresponding to this as the search character string to suggest database 500. Is searched and the question character string corresponding to the selected normalized character string is transmitted to the user terminal 100. As a result, a question character string including “meal” as a search target is displayed in the suggestion keyword area 1021.
  • “I want to know recommended menu” is registered as a question character string
  • “I want to know recommended meal” is registered as a normalized character string corresponding to the question character string.
  • the column “I want to know recommended meals” is searched, and the corresponding question character string “I want to know recommended menu” is transmitted to the user terminal 100.
  • each process used to derive a result of 1 should be understood as a process that is self-consistent. Further, in each processing, transmission or reception of an electrical or magnetic signal, recording, and the like are performed. In the processing in each processing, such signals are represented by bits, values, symbols, characters, terms, numbers, etc., but it should be noted that these are used only for convenience of description. There is a need.
  • the processing in each processing may be described in an expression that is common to human behavior, the processing described in this specification is, in principle, executed by various devices. Further, other configurations required for performing each processing will be obvious from the above description.

Landscapes

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

Abstract

ユーザが所望する知識データの情報取得を容易にすることができる。情報提供システム1は、応答内容が対応付けられた質問文字列を記憶し、互いの意味が近似すると定義された複数の語からなる同義語が設定された同義語辞書を記憶し、ユーザによって操作されるユーザ端末100から入力された入力文字列を受信し、入力文字列が含む語を同義語辞書に基づいて変換して検索文字列とし、この検索文字列に関連する質問文字列を特定し、特定した質問文字列をユーザ端末100に送信する。

Description

情報提供システム、情報提供方法、及び、知識データのデータ構造
 情報提供システム、情報提供方法、及び、知識データのデータ構造に関する。
 近年、ユーザからの質問に対して最適な解を検索し応答するシステムに関する研究が盛んに行われている。さらに、このようなシステムの開発に関連して、ユーザから入力された質問の構文や意味を解析したり、質問に対する解を検索したりするための、自然言語処理技術や人工知能技術についての研究も進められている。
 例えば、質問に応答して、最適なものとして評価された回答候補を出力する質問応答システムが提案されている(特許文献1参照)。この質問応答システムでは、質問に対する回答候補を検索し、質問と回答候補の組合せのそれぞれについて、各回答候補が当該質問に対する正しい回答である度合いを示すスコアを、学習機能を用いて算出し、算出されたスコアに基づいて、質問に対する正しい回答である可能性が最も高い回答候補を出力するように構成される。
 また、ユーザからの要求を自然言語で記述した入力文を解析し、当該入力文の要求内容が、事前に定義されている要求内容に該当するかどうかを判別し、これによって、入力文の要求内容を識別・出力する要求内容識別システムが開示されている(特許文献2参照)。
特開2013-171550号公報 特許第5099367号明細書
 上記従来のシステムにおいて、ユーザは、自身が所望する要求内容に対する質問内容を検索し、要求内容に対応すると思われる質問内容を検索結果から選択する、といった操作を行うことが一般的である。しかしながら、上記従来のシステムでは、最初の質問内容の検索で、要求内容に対応すると思われる質問内容が無い場合、要求内容に対応する質問内容が検索結果として表れるまで、繰り返し検索を行う必要があるという問題があった。
 そこで、本発明は、ユーザが所望する知識データの情報取得を容易にすることができる情報提供システム、情報提供方法、及び、知識データのデータ構造を提供することを目的とする。
 本発明の情報提供システムは、
 応答内容が対応付けられた質問文字列を記憶する知識データ記憶部と、
 互いの意味が近似すると定義された複数の語からなる同義語が設定された同義語辞書を記憶する同義語記憶部と、
 ユーザによって操作されるユーザ端末から入力された入力文字列を受信する受信部と、
 前記入力文字列が含む語を前記同義語辞書に基づいて変換して検索文字列とし、前記検索文字列に関連する前記質問文字列を特定する検索部と、
 前記特定した質問文字列を前記ユーザ端末に送信する送信部と、を有することを特徴とする。
 上記構成によれば、ユーザが入力した入力文字列を同義語辞書で変換して検索文字列とし、関連する質問文字列を特定するため、通常の検索では特定された同義語を含む質問文字列も特定できることになり、ユーザが所望する応答内容が取得できる可能性が向上する。よって、ユーザが所望する知識データの情報取得を容易にすることができる。
 また、本発明の情報提供システムにおいて、
 前記同義語辞書において、前記同義語のうち何れかが代表語に設定され、
 前記知識データ記憶部は、前記質問文字列と、前記質問文字列が含む語を前記同義語辞書に基づいて代表語に変換した正規化文字列と、を対応付けて記憶し、
 前記検索部は、前記入力文字列が含む語を前記同義語辞書に基づいて代表語に変換して検索文字列とし、
 前記検索文字列を用いて前記正規化文字列を選出し、前記選出した正規化文字列に対応する前記質問文字列を特定してもよい。
 上記構成によれば、ユーザが入力した入力文字列は同義語辞書に基づいて代表語に変換された検索文字列によって、知識データ記憶部が検索される。知識データ記憶部には質問文字列を同義語辞書に基づいて代表語に変換した正規化文字列が質問文字列に対応付けて記憶されているため、予め質問文字列を統一した語で登録する労力を掛けなくても同義語辞書に登録された語であれば検索結果としてヒットする。これにより、ユーザが所望する応答内容の候補として、ユーザが入力した入力文字列で直接検索するよりも多くの質問文字列の情報をユーザに提供する可能性を向上することができ、ユーザが所望する知識データの情報取得を容易にすることが可能となる。
 また、本発明の情報提供システムにおいて、
 前記ユーザ端末は、
 前記ユーザからの操作毎に、前記入力文字列を確定して、確定した入力文字列を前記受信部へ送信し、
 前記送信部からの前記質問文字列を受信する毎に、当該質問文字列を選択可能に提示してもよい。
 これにより、ユーザ端末は、ユーザの操作ごとに質問文字列をリアルタイムで選択可能に提示するため、入力文字列を更新する毎に検索を行って質問文字列を選択する、といった手間を軽減することができる。
 また、本発明の情報提供システムにおいて、
 知識データ記憶部は、
 前記同義語を構成する複数の語それぞれの入力変換用文字列を、前記代表語に対応付けて記憶することを特徴とする。
 上記構成によれば、入力変換用文字列を同義語辞書に記憶することで、入力文字列として同義語の一部の読み仮名やアルファベットを指定するだけで、ユーザの所望する応答内容が取得できる可能性を向上させることができる。
 本発明の情報提供制御方法は、
 記憶部を有したコンピュータが実行する情報提供制御方法であって、
 応答内容が対応付けられた質問文字列を記憶することと、
 互いの意味が近似すると定義された複数の語からなる同義語が設定された同義語辞書を記憶することと、
 ユーザによって操作されるユーザ端末から入力された入力文字列を受信することと、
 前記入力文字列が含む語を前記同義語辞書に基づいて変換して検索文字列とし、前記検索文字列に関連する前記質問文字列を特定することと、
 前記特定した質問文字列を前記ユーザ端末に送信することと、を含むことを特徴とする。
 上記構成によれば、ユーザが入力した入力文字列を同義語辞書で変換して検索文字列とし、関連する質問文字列を特定するため、通常の検索では特定された同義語を含む質問文字列も特定できることになり、ユーザが所望する応答内容が取得できる可能性が向上する。よって、ユーザが所望する知識データの情報取得を容易にすることができる。
 本発明の知識データのデータ構造は、
 互いの意味が近似すると定義された複数の語からなる同義語が設定された同義語辞書を記憶する同義語記憶部にアクセス可能な制御部を有したコンピュータで用いられ、前記コンピュータが有する記憶部に記憶される知識データのデータ構造であって、
 前記データ構造は、
 質問文字列と応答内容とが対応付けられた構造を含み、
 前記制御部に、ユーザによって操作されるユーザ端末から入力された入力文字列について、当該入力文字列が含む語を前記同義語辞書に基づいて変換させた検索文字列を生成させ、前記検索文字列に関連する前記質問文字列を特定させる。
 上記構成によれば、ユーザが入力した入力文字列を同義語辞書で変換して検索文字列とし、関連する質問文字列を特定するため、通常の検索では特定された同義語を含む質問文字列も特定できることになり、ユーザが所望する応答内容が取得できる可能性が向上する。よって、ユーザが所望する知識データの情報取得を容易にすることができる。
 ユーザが所望する知識データの情報取得を容易にすることができる。
情報提供システムの概略構成を示す説明図である。 情報提供システムの電気構成を示すブロック図である。 情報提供システムの機能ブロック図である。 知識データテーブルの説明図である。 同義語辞書データテーブルの説明図である。 サジェストデータテーブルの説明図である。 サジェストデータ登録処理のフローチャートである。 質問応答処理のフローチャートである。 ユーザ端末における入力画面の変形例を示す説明図である。 質問応答要求処理のフローチャートである。 同義語辞書データテーブルの変形例を示す説明図である。 ユーザ端末における入力画面の変形例を示す説明図である。
 以下に、本発明の情報提供システムについて、図面を参照して説明する。
 図1に示すように、本実施形態の情報提供システム1は、インターネットを含むネットワーク700を介して、ユーザ端末100からデータ通信可能に接続された情報提供サーバ200を有している。尚、本実施形態の情報提供システム1は、情報提供サーバ200により構成されるがこれに限定されない。以下に説明する情報提供サーバ200の各機能は、情報提供システム1にて複数のサーバに分散されて設けられていてもよい。即ち、情報提供サーバ200の各機能は、情報提供システムの構成要素の何れが備えるものであってもよい。以下、情報提供システム1として機能する情報提供サーバ200について説明する。
 ユーザ端末100には、情報提供システム1が提供するサービスへアクセスするためのWEBブラウザがインストールされている。即ち、ユーザは、WEBブラウザを介して、情報提供システム1へアクセスする。尚、本実施形態で例示するユーザ端末100は、所謂スマートフォンであるが、携帯型及び据置型のコンピュータの何れであってもよい。携帯型のユーザ端末100としては、ポータブルコンピュータやラップトップコンピュータ、タブレット型パソコン、ウェアラブル型パソコン、PDA(Personal Data Assistant)、等の携帯情報機器が例示される。
 ユーザは、ユーザ端末100において実行されるWEBブラウザにより表示されている情報提供システム1のWEBサイトの入力エリア1010に、例えば、キーボードやタッチパネルを用いて文字列を入力する。そして、ユーザは、例えば、マウスやタッチパネルを用いて、同じWEBサイトの検索ボタン1011を指定する。これにより、ユーザが入力した入力文字列がリクエストとして情報提供サーバ200へ送信される。
 尚、本実施形態では、ユーザ端末100から入力文字列を送信するために、検索ボタン1011を操作するものであるがこれに限定されない。例えば、入力エリア1010へ入力されるテキストが変更される毎に、バックグランドで入力エリア1010内の当該テキストを入力文字列として情報提供システム1へ送信するものであってもよい。
 ここでユーザにより入力される入力文字列は、一般的には文章(入力文)の形態であり、例えば、そのWEBページに係るWEBサイトを提供している会社の製品に関する質問等を含み、自然言語によって表現される。以降、ユーザからの入力について「入力文」と表現する場合がある。尚、入力文字列は、文章の形態でなくてもよく、語や文章の一部などを包含する、様々な入力文字列を意味する。
 情報提供サーバ200は、ユーザ端末100からの入力文字列を受信すると、この入力文字列に対応する質問文字列を決定し、それを、ネットワーク700を介してユーザ端末100に送信する。ユーザ端末100は、情報提供サーバ200からの質問文字列を検索結果エリア1012に表示した画面を表示する。結果エリア1012に表示される質問文字列は、当該質問文字列に対応する応答内容を示すWEBサイトのURLへのリンクであり、ユーザは質問文字列を指定することで質問文字列に対応する応答内容を認識することができる。
 尚、入力エリア1010へ入力されるテキストが変更される毎に、バックグランドで入力エリア1010内の当該テキストを入力文字列として情報提供システム1へ送信する場合、画面遷移を伴うことなく、入力エリア1010内のテキストに応じた質問文字列がリアルタイムに選択可能に提示されることが好ましい。
 このように、情報提供サーバ200は、質問文字列に対して応答内容が対応付けられた知識データにアクセスすることが可能に構成されている。即ち、特定した質問文字列に対応する応答内容にアクセスするための情報を、ユーザ端末100へ提供することが可能に構成されている。
 より具体的に、情報提供サーバ200は、知識データベース300と、同義語辞書データベース400と、サジェストデータベース500とを有している。知識データ記憶部としての知識データベース300は、質問文字列に対して応答内容が対応付けられた知識データを記憶する。情報提供サーバ200は、特定した質問文字列に対応する応答内容にアクセスするための情報をユーザ端末100へ送信する際に、知識データベース300を参照する。例えば、ユーザが「価格について知りたい」という質問文字列を指定した場合には、情報提供サーバ200は知識データベース300を参照して当該質問文字列に対応する「価格はXXです」という応答内容をユーザに提供する。
 同義語記憶部としての同義語辞書データベース400は、互いの意味が近似すると定義された複数の語からなる同義語が設定された同義語辞書を記憶する。例えば、互いの意味が近似すると定義された複数の語の1つの同義語のデータとして、「金額」(cost)、「価格」(fee)、「料金」(amount)、「値段」(price)を示す情報を有している。同義語辞書データベース400は、このような同義語を複数記憶している。
 尚、同義語辞書データベース400が記憶する同義語辞書において、同義語のうちの何れか1つが代表語に設定されていてもよい。即ち、代表語とは、同義語に設定された互いの意味が近似する複数の語のうちの1を示す情報である。このように、同義語辞書データベース400は、同義語のうち1の語が代表語に設定された同義語辞書を記憶する。即ち、同義語辞書データベース400に記憶される1のデータは、同義語の情報と、これら同義語のうち1の語が代表語であることを示す情報とを含むデータである。例えば、同義語辞書データベース400は、同義語が「金額」(cost)、「価格」(fee)、「料金」(amount)、「値段」(price)を示す情報を有すると共に、これらのうち「金額」(cost)を代表語として設定していることを示す情報を有している。情報提供サーバ200は、質問文字列を正規化文字列へ変換する際に同義語辞書データベース400を参照する。また、情報提供サーバ200は、ユーザからの入力文字列を検索文字列に変換する際に同義語辞書データベース400を参照する。
 尚、同義語として漢字が用いられている場合、この読み仮名を同義語として同義語辞書データベース400に登録してもよい。一般的に、漢字を用いる言語の場合、テキストを入力する際に「読み仮名」を例えばアルファベットの組み合わせで指定し、それを漢字に変換して入力を確定する。同義語の読み仮名を登録することで、「読み仮名」のまま入力を確定した場合や漢字に変換する前であっても、ユーザからの入力文字列を検索文字列に変換することが可能となる。
 サジェストデータベース500は、質問文字列と、正規化文字列とを対応付けて記憶する。正規化文字列は、質問文字列が含む語を、同義語辞書データベース400の同義語辞書に基づいて、代表語に変換したものである。以下、正規化とは、文字列に含まれる語について、同義語辞書データベース400に登録される同義語に含まれる語を、当該同義語に設定された代表語に変換することを示す。例えば、質問文字列が「価格」、「料金」、「値段」を含む場合は、サジェストデータベース500に登録される際に正規化によりこれらはすべて「金額」に変換されて登録される。即ち、質問文字列が「価格について知りたい」である場合、正規化文字列は「金額について知りたい」となる。
 尚、サジェストデータベース500に記憶される「質問文字列」は、「質問文字列」そのものに限定されず、知識データベース300に記憶される何れのデータであるかを示す情報であればよい。例えば、知識データベース300に登録される質問文字列がユニークキーで特定される場合は、サジェストデータベース500において当該ユニークキーと正規化文字列と対応づけられていればよい。また、サジェストデータベース500において、「質問文字列」や「正規化文字列」の「読み仮名」が登録されていてもよい。
 また、サジェストデータベース500に記憶される質問文字列と、正規化文字列との対応付けは、知識データベース300において記憶されていてもよい。即ち、知識データベース300が、応答内容が対応付けられた質問文字列を記憶し、さらにこの質問文字列に、この質問文字列が含む語を同義語辞書に基づいて代表語に変換した正規化文字列を対応付けて記憶してもよい。
 これらのデータベース300・400・500を備える情報提供サーバ200は、ユーザによって操作されるユーザ端末100から入力された入力文字列を受信し、入力文字列が含む語を同義語辞書に基づいて変換して検索文字列とし、検索文字列に関連する質問文字列を特定し、特定した質問文字列をユーザ端末100に送信する。
 図1に示すように、本実施形態では、情報提供サーバ200は、ユーザ端末100から入力された入力された入力文字列を受信し、同義語辞書データベース400の同義語辞書に基づいて変換して検索文字列とし、検索文字列を用いてサジェストサーバ500の正規化文字列を選出し、選出した正規化文字列に対応する質問文字列を特定し、ユーザ端末100に送信する構成にされている。
 このように、ユーザが入力した入力文字列は同義語辞書データベース400に基づいて検索文字列に正規化され、この検索文字列によって、サジェストデータベース500が検索される。サジェストデータベース500には質問文字列を正規化した正規化文字列が質問文字列に対応付けて記憶されているため、予め質問文字列を統一した語で登録する労力を掛けなくても同義語辞書データベース400に登録された語であれば検索結果としてヒットする。これにより、ユーザが所望する応答内容の候補として、ユーザが入力した入力文字列で知識データを直接検索するよりも多くの質問文字列の情報をユーザに提供する可能性を向上することができ、ユーザが所望する知識データの情報取得を容易にすることが可能となる。
 尚、このような構成に限定されず、例えば、ユーザ端末100からの入力文字列を同義語辞書に基づいて、入力文字列に対応する1以上の検索文字列を生成し、この1以上の検索文字列によって、知識データ記憶部としての知識データベース300を検索する構成であってもよい。このように、ユーザが入力した入力文字列を同義語辞書で変換して検索文字列とし、関連する質問文字列を特定するため、通常の検索では特定された同義語を含む質問文字列も特定できることになり、ユーザが所望する応答内容が取得できる可能性が向上する。
 即ち、知識データのデータ構造は、互いの意味が近似すると定義された複数の語からなる同義語が設定された同義語辞書を記憶する同義語データベース400にアクセス可能な制御部を有したコンピュータで用いられると共にこのコンピュータが有する記憶部に記憶される。そして、知識データのデータ構造は、質問文字列と応答内容とが対応付けられた構造を含み、制御部に、ユーザによって操作されるユーザ端末から入力された入力文字列について、当該入力文字列が含む語を前記同義語辞書に基づいて変換させた検索文字列を生成させ、前記検索文字列に関連する前記質問文字列を特定させるようになっている。
 また、サジェストデータベース500に登録される情報提供用検索データのデータ構造は、質問文字列と、同義語のうち1が代表語に設定された同義語辞書データベース400に基づき質問文字列に含まれる語を代表語に変換した正規化文字列とが対応付けられた構造を含んで構成されている。この情報提供用検索データは、このようなデータ構造を有していることにより、情報提供サーバ200に、ユーザが操作するユーザ端末100から入力された入力文字列を同義語辞書データベース400に基づいて代表語に変換した検索文字列を検索キーとしサジェストデータベース500の正規化文字列を検索対象とする検索を行わせ、この検索結果に基づいて質問文字列を特定させる、処理を実現させる。
 このように、データ構造は、質問文字列に対して同義語辞書データベース400で正規化された正規化文字列が対応付けられた構造を含んでおり、当該データ構造に基づき、ユーザが入力した入力文字列から正規化した検索文字列を検索キーとし当該データ構造の正規化文字列を検索対象とする検索処理、及び、質問文字列の特定処理が実現される。これにより、ユーザが所望する応答内容の候補として、ユーザが入力した入力文字列で知識データを直接検索するよりも多くの質問文字列の情報をユーザに提供する可能性を向上することができ、ユーザが所望する知識データの情報取得を容易にすることが可能となる。
 ここで、情報提供システム1が不特定のユーザに利用可能なものとして提供される場合、ユーザとしては、WEBサイトを提供する企業や組織(の商品やサービス等)に対して質問等を行う一般ユーザが想定され、ユーザ端末100は、通常、インターネット等に接続可能なユーザが所有するPC(パーソナルコンピュータ)等である。また、情報提供システム1を、限定的な範囲で利用されるシステム(例えば、企業内ナレッジ共有システム)として利用することもでき、この場合、ユーザは、情報提供システム1に対する正当なアクセス権限を有する特定のユーザとなる。
 また、上記のデータベースの構築やデータの追加等の管理を行うのは情報提供システム1のシステム管理者である。情報提供システム1が、企業や組織の商品やサービス等に関する質問を受け付けるシステムとして利用される場合は、通常、その企業や組織の担当者がシステム管理者となる。また、代理店や受託会社が、その企業や組織に代わってシステム管理者となることもある。
 図1では、ユーザが、WEBサイトの入力エリアに、キーボード等で文字列を入力することで、質問等を情報提供システム1に提供する構成となっているが、情報提供システム1としては、どのような方法・ルートで文字列が入力されてきてもよい。例えば、ユーザが音声によって質問を発した場合に、この音声に対して音声認識処理を施して文字列に変換し、当該変換された文字列を情報提供システム1に提供することができる。また、印字された質問事項等をOCR(Optical  Character Recognition)によって文字列に変換し、当該変換された文字列を情報提供システム1に提供することもできる。
 なお、本実施形態の情報提供サーバ200は、ユーザ端末100や図示しないシステム管理者の端末において実行されるWEBブラウザとhttp等のプロトコルによってデータ送受信を行い、当該WEBブラウザに所定のWEBページを表示させるように動作するWEBサーバの機能も有している。また、情報提供サーバ200は、ここでは1つのコンピュータとして示されているが、複数のコンピュータによって同様の機能を分散して実行するよう構成することもできる。この場合、これら複数のコンピュータ(サーバ)によって情報提供システム1が構築されることになる。
 図2に示すように、ユーザ端末100は、CPU2101、ROM2102、RAM2103、フラッシュメモリ2104、操作ボタン2108、電源スイッチ2109、バスライン2110、ネットワークI/F2111、カメラ2112、撮像素子I/F2113、マイク2114、スピーカ2115、音入出力I/F2116、ディスプレイI/F2117、センサーコントローラ2118、近距離通信回路2119、近距離通信回路2119のアンテナ2119aを、筐体内に備えている。
 また、情報提供サーバ200は、CPU1101、ROM1102、RAM1103、ハードディスクドライブ等の記憶装置1104、ネットワークI/F1111を備える所謂コンピュータである。
 CPU(Central Processing Unit)2101は、ユーザ端末100におけるコントローラの主たる構成として機能し、ユーザ端末100全体の動作を制御する。CPU1101は、情報提供サーバ200における制御部の主たる構成として機能し、情報提供サーバ200全体の動作を制御する。即ち、CPU1101は、情報提供システム1全体の動作を制御するコントローラとして機能する。ROM(Read Only Memory)2102は、IPL(Initial Program Loader)等のCPU2101の駆動に用いられるプログラムを記憶する。
 RAM(Random Access Memory)2103・RAM1103は、CPU2101・CPU1101のワークエリアとして使用される。操作ボタン2108は、ユーザ端末100を初期設定する場合などに操作されるボタンである。電源スイッチ2109は、ユーザ端末100の電源のON/OFFを切り換えるためのスイッチである。
 メモリとしてのフラッシュメモリ2104は、WEBブラウザ等のプログラム、通信用プログラム、画像データ、及び音データ等の各種データを記憶するコンピュータが読み取り可能な非一過性の記録媒体である。記憶装置1104は、上記の各種データベースを記憶するコンピュータが読み取り可能な非一過性の記録媒体である。情報提供サーバ200は、ユーザ端末100のWEBブラウザ等のアプリケーションからの要求に対して、適宜記憶装置1104のデータベースを参照して応答を返す。
 例えば、記憶装置1104は、コントローラとしてのCPU1101が実行するプログラムを含む各種プログラムや各種プログラムが用いる各種のデータを格納する。換言すれば、当該プログラムは、CPU1101と記憶装置1104とを備えるコンピュータである情報提供サーバ200に、各種プログラムが有する処理を実行させる。情報提供サーバ200を情報提供システム1として考える場合には、記憶装置1104が、コントローラとしてのCPU1101が実行するプログラムを含む各種プログラムや各種プログラムが用いる各種のデータを格納する。換言すれば、当該プログラムは、CPU1101と記憶装置1104とを備える情報提供システム1である情報提供サーバ200に、各種プログラムが有する処理を実行させる。このように、情報提供システム1の処理や動作をプログラムや情報提供方法として置き換えることができる。
 尚、フラッシュメモリ2104及び記憶装置1104に格納されるデータやプログラムは、工場出荷段階において予め格納されていてもよいし、或いは、図示しないサーバ等から通信手段によりダウンロードされて格納されていてもよい。通信手段は、インターネットやケーブルテレビ等の双方向に通信可能な伝送路であってもよいし、一方向にだけ情報を送信する放送であってもよい。また、フラッシュメモリ2104及び記憶装置1104に格納されるデータやプログラムは、フロッピーディスクやCD-ROM、DVD-ROM、MO(光磁気ディスク)、フラッシュメモリ等の記録媒体に格納され、必要に応じて記録媒体から読み出されてインストールされてもよい。
 ネットワークI/F(Interface)2111・ネットワークI/F1111は、インターネット等の通信ネットワークを利用してデータ通信をするためのインターフェースである。カメラ2112は、CPU101の制御に従って被写体を撮像して画像データを得る内蔵型の撮像手段の一種である。撮像素子I/F2113は、カメラ2112の駆動を制御する回路である。マイク2114は、音声を入力する内蔵型の集音手段の一種である。音入出力I/F2116は、CPU101の制御に従ってマイク2114及びスピーカ2115との間で音信号の入出力を処理する回路である。ディスプレイI/F2117は、CPU2101の制御に従ってディスプレイ2120に画像データを送信する回路である。ディスプレイ2120は、筐体の前面に設けられている。センサーコントローラ2118は、ディスプレイ2120に設けられたタッチパネルからの入力を受け付ける回路である。近距離通信回路2119は、NFC(Near Field Communication)(登録商標)、Bluetooth(登録商標)等の通信回路である。バスライン2110は、CPU101等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
 図3に示すように、情報提供システム1は、下記の機能を有している。具体的に、情報提供システム1は、同義語辞書アクセス部601と、形態素解析部602と、質問応答部603と、サジェスト登録部604とを有している。
 同義語辞書アクセス部601は、文字列を代表語で正規化する際に同義語辞書データベース400にアクセスする機能を有している。形態素解析部602は、文字列を最小単位に分割する機能を有している。より具体的には、形態素解析部602は、ユーザ端末100からの入力文字列に対して形態素解析を行い、代表語に変換する語を抽出する機能を有している。形態素解析については、既知の様々な方法を用いることが可能である。
 質問応答部603は、ユーザ端末100からの入力文字列に基づいて、質問文字列、及び/又は、応答内容を示す情報をユーザ端末100へ送信する機能を有している。具体的に、質問応答部603は、質問応答部603は、入力文字列受信部631と、入力文字列正規化部632と、サジェストDB検索部633と、知識データアクセス部634と、質問文字列送信部635とを有している。
 入力文字列受信部631は、ユーザ端末100からの入力文字列を受信する機能を有し、入力文字列正規化部632に入力文字列を送信する機能を有している。入力文字列正規化部632は、入力文字列受信部631からの入力文字列を形態素解析部602に送信して形態素解析部602から形態素解析結果を受信する機能を有し、当該形態素解析結果から代表語に変換すべき語を抽出する機能を有し、当該語を同義語辞書アクセス部601へ送信し同義語辞書アクセス部601から変換後の代表語を受信する機能を有し、受信した代表語に基づいて入力文字列を変換した検索文字列を生成する機能を有し、当該検索文字列をサジェストDB検索部633へ送信する機能を有している。サジェストDB検索部633は、検索文字列を検索キーとしサジェストデータベース500の正規化文字列を検索対象とする検索を実行する機能を有し、質問文字列を特定する検索結果を知識データアクセス部634へ送信する機能を有している。知識データアクセス部634は、検索結果から知識データベース300を参照し、質問文字列、及び/又は、応答内容を示す情報を特定する機能を有し、特定した質問文字列、及び/又は、応答内容を示す情報を質問文字列送信部635へ送信する機能を有している。質問文字列送信部635は、質問文字列、及び/又は、応答内容を示す情報をユーザ端末100へ送信する機能を有している。
 サジェスト登録部604は、質問文字列と正規化文字列とをサジェストデータベース500に対応付けて登録する機能を有している。具体的に、サジェスト登録部604は、登録文字列受信部641と、登録文字列正規化部642と、サジェストデータ登録部643とを有している。登録文字列受信部641は、図示しない管理者の管理端末からの登録文字列を受信する機能を有している。ここで登録文字列とは、知識データベース300に登録されている質問文字列である。尚、知識データベース300において、質問文字列がユニークキーに対応づけられている場合には、登録文字列受信部641は、管理端末からユニークキーを受信し、ユニークキーに基づいて知識データベース300から質問文字列を受信する。即ち、登録文字列受信部641は、知識データベース300にアクセスする機能を有していてもよい。登録文字列正規化部642は、受信した質問文字列を形態素解析部602に送信して形態素解析部602から形態素解析結果を受信する機能を有し、当該形態素解析結果から代表語に変換すべき語を抽出する機能を有し、当該語を同義語辞書アクセス部601へ送信し同義語辞書アクセス部601から変換後の代表語を受信する機能を有し、受信した代表語に基づいて質問文字列を変換した正規化文字列を生成する機能を有し、当該正規化文字列をサジェストデータ登録部643へ送信する機能を有している。サジェストデータ登録部643は、登録文字列正規化部642から正規化文字列を受信する機能を有し、当該正規化文字列を、質問文字列または質問文字列を示すユニークキーと対応付けて、サジェストデータベース500に登録する機能を有している。
 本実施形態においては、情報提供サーバ200がこれらの機能を有しているものとして処理や動作を説明するが、情報提供システム1の構成要素に機能を分散させてもよい。また、情報提供システム1の上記機能は、他のシステムの追加モジュールとして動作されてもよい。
 情報提供サーバ200に記憶される知識データベース300、同義語辞書データベース400、サジェストデータベース500のデータテーブルの一例について説明する。
 図4に示すように、知識データテーブルは、知識ID欄と、質問欄と、応答欄とを有している。知識IDは、各質問を識別するユニークキーが格納される。質問欄には、ユーザに提示するための質問文字列が格納される。応答欄には、質問文字列に対応する応答が示されたWEBサイトのURLが格納される。尚、応答欄に、質問文字列に対する応答内容を直接格納してもよい。
 図5に示すように、同義語辞書データテーブルは、代表語欄と、同義語欄とを有している。代表語欄には、同義語群のうちの1が格納される。同義語欄には、代表語に対応して、当該代表語を含む同義語群が格納される。尚、同義語群に代表語を含めなくてもよい。同義語辞書テータテーブルは、文字列を正規化する際に参照される。
 例えば、「金額」、「価格」、「料金」、「値段」という同義語群は、代表語として「金額」が設定されている。即ち、これらの同義語を含む質問文字列を正規化して正規化文字列に変換する場合、または、これらの同義語を含む入力文字列を正規化して検索文字列に変換する場合、これらの同義語はすべて「金額」に変換されることになる。
 図6に示すように、サジェストデータテーブルは、知識ID欄と、質問欄と、検索対象欄とを有している。知識IDは、各質問を識別するユニークキーが格納される。質問欄には、ユーザに提示するための質問文字列が格納される。検索対象欄には、対応する質問文字列を正規化した正規化文字列が格納される。
 例えば、「価格について知りたい」という質問文字列である場合、同義語データベース400の同義語データテーブル(図5参照)が参照され、これに対応する正規化文字列は「価格」が代表語である「金額」に正規化されて「金額について知りたい」という文字列となる。また、「値段の改定時期を知りたい」という質問文字列である場合、これに対応する正規化文字列は「値段」が代表語である「金額」に正規化されるとともに「改定」が代表語である「変更」に変換されて「金額の変更時期を知りたい」という文字列となる。ここで「時期」はすでに代表語であるので変換されない。
 次に、情報提供サーバ1のCPU1101により実行されるプログラムについて説明する。
 情報提供サーバ1のCPU1101により実行されるサジェストデータ登録処理について説明する。
 図7に示すように、先ず、CPU1101は、登録文字列を受信したか否かを判定する(S10)。登録文字列を受信しない場合(S10:NO)、CPU1101は、ステップS10を繰り返し実行し、登録文字列の受信を待機する。登録文字列を受信した場合(S10:YES)、CPU1101は、受信した登録文字列について形態素解析処理を行う(S11)。そして、CPU1101は、登録文字列のうちの正規化を行う対象となる語を特定する(S12)。例えば、CPU1101は、形態素解析により各形態素の品詞の種類を特定し、普通名詞、及び、さ変名詞と特定された形態素を正規化の対象とする。
 そして、CPU1101は、正規化の対象とされた形態素を同義語辞書データベース400の同義語欄から検索する(S13)。そして、CPU1101は、正規化の対象とされた形態素を、対応する代表語に変換する(S14)。尚、図示しないが、正規化の対象とされた形態素が同義語欄に含まれない場合、CPU1101は変換を行わずにステップS15へ処理を移行する。
 そして、CPU1101は、受信した登録文字列における正規化の対象とされた形態素の変換がすべて完了したか否かを判定する(S15)。変換がすべて完了していない場合(S15:NO)、CPU1101は、処理をステップS13へ移行する。変換がすべて完了した場合(S15:NO)、CPU1101は、変換が完了した登録文字列を正規化文字列としてサジェストデータベース500に登録し(S16)、本ルーチンを終了する。
 尚、本ルーチンは、知識データベース300の構築時や更新時に自動で実行されるものであってもよい。たとえば、図示しない知識データベース300の構築処理や更新処理の終了後に、知識データベース300が含むすべての質問文字列や、更新された質問文字列に対して、本ルーチンが自動で実行されるものであってもよい。
 次に、情報提供サーバ1のCPU1101により実行される質問応答処理について説明する。
 図8に示すように、先ず、CPU1101は、入力文字列を受信したか否かを判定する(S20)。入力文字列を受信しない場合(S20:NO)、CPU1101は、ステップS20を繰り返し実行し、入力文字列の受信を待機する。入力文字列を受信した場合(S20:YES)、CPU1101は、受信した入力文字列について形態素解析処理を行う(S21)。そして、CPU1101は、入力文字列のうちの正規化を行う対象となる語を特定する(S22)。例えば、CPU1101は、形態素解析により各形態素の品詞の種類を特定し、普通名詞、及び、さ変名詞と特定された形態素を正規化の対象とする。
 そして、CPU1101は、正規化の対象とされた形態素を同義語辞書データベース400の同義語欄から検索する(S23)。そして、CPU1101は、正規化の対象とされた形態素を、対応する代表語に変換する(S24)。例えば、入力文字列が「料金」である場合、入力文字列は「料金」を含む同義語群の代表語である「金額」に変換される。尚、図示しないが、正規化の対象とされた形態素が同義語欄に含まれない場合、CPU1101は変換を行わずにステップS15へ処理を移行する。
 そして、CPU1101は、受信した入力文字列における正規化の対象とされた形態素の変換がすべて完了したか否かを判定する(S25)。変換がすべて完了していない場合(S25:NO)、CPU1101は、処理をステップS23へ移行する。変換がすべて完了した場合(S25:NO)、CPU1101は、変換が完了した語を検索文字列として、サジェストデータベース500の検索対象を検索する(S26)。尚、図示しないが、正規化の対象とされた形態素が同義語欄に含まれなかった場合、CPU1101は正規化の対象とされた形態素のままの文字列でサジェストデータベース500を検索する。
 尚、本実施形態の場合、変換した語が複数存在する場合、これらの語でAND検索するがこれに限定されず、OR検索してもよい。
 そして、CPU1101は、検索結果として該当した正規化文字列から質問文字列を特定し(S27)、さらにこの質問文字列に対応する知識データを知識データベース300から取得する(S28)。そして、CPU1101は、取得した知識データをユーザ端末100へ送信して(S29)、本ルーチンを終了する。尚、図示しないが、検索結果として該当する正規化文字列が無い場合には、CPU1101は、該当する知識データが無いことを示す情報をユーザ端末100へ送信する。
 以上、本発明の実施形態を説明したが、具体例を例示したに過ぎず、特に本発明を限定するものではなく、各手段等の具体的構成は、適宜設計変更可能である。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
(変形例1)
 上述の実施形態では、図1に示すように、検索ボタン1011を指定することにより入力文字列が確定されるものであったが、本変形例では、ユーザが入力文字列を更新するごとに入力文字列が確定される。
 具体的に、図9に示すように、ユーザ端末100に表示される入力画面には入力エリア1020が設けられている。ユーザが、入力エリア1020に、入力文字列を入力するごとに、入力文字列に応じた知識データの質問文字列が、サジェストキーワードとして、入力エリア1020の下方に表示されるサジェストキーワードエリア1021に選択可能に提示されるようになっている。サジェストキーワードエリア1021は、入力画面から画面遷移することなく表示される。
 次に、ユーザ端末100のCPU2101により実行される質問応答要求処理について説明する。尚、ユーザ端末100が実行する質問応答要求処理のプログラムは、ユーザ端末100がブラウザを介して情報提供システム1が提供するWEBサイトへアクセスすることによりダウンロードされる。より具体的には、質問応答要求処理のプログラムは、WEBサイトのhtmlに、直接的または間接的に実装されるスクリプトである。
 図10に示すように、先ず、CPU2101は、入力エリア1020の入力文字列が更新されたか否かを判定する(S30)。入力エリア1020が更新されない場合(S30:NO)、CPU2101は、ステップS30を繰り返し実行して入力エリア102における入力文字列の更新を待機する。入力エリア1020が更新された場合(S30:YES)、情報提供サーバ200に対して質問応答処理を要求するためのリクエストを送信する(S31)。
 そして、CPU2101は、情報提供サーバ200からの知識データが含まれるレスポンスを受信したか否かを判定する(S32)。レスポンスを受信しない場合(S32:NO)、CPU2101は、ステップS32を繰り返し実行してレスポンスの受信を待機する。尚、図示しないが、レスポンスの待機中に入力エリア1020の入力文字列が更新された場合には、CPU2101は、処理をステップS31へ移行し、待機中のレスポンスは無視する。
 レスポンスを受信した場合(S32:YES)、CPU2101は、レスポンスに含まれる知識データに基づき、応答内容が示されるURLへのリンクを含む質問文字列をサジェストキーワードとして構成し(S33)、サジェストキーワードエリア1021に表示する(S34)。
 そして、CPU2101は、表示したサジェストキーワードが指定されたか否かを判定する(S35)。サジェストキーワードが指定されない場合(S35:NO)、CPU2101は、処理をステップS30へ移行する。サジェストキーワードが指定された場合(S35:YES)、CPU2101は、当該サジェストキーワードが示す応答内容のURLへ画面を遷移し(S36)、本ルーチンを終了する。
 このように、ユーザ端末100は、ユーザからの操作毎に入力文字列を確定して、確定した入力文字列を情報提供サーバ200へ送信し、情報提供サーバ200からの質問文字列を受信する毎に当該質問文字列を選択可能に提示する。即ち、ユーザ端末100は、情報提供サーバ200から提供されるプログラムにより、ユーザからの操作毎に入力文字列を確定して、確定した入力文字列を情報提供サーバ200へ送信し、情報提供サーバ200からの質問文字列を受信する毎に当該質問文字列を選択可能に提示する処理が実現される。換言すれば、情報提供システム1は、ユーザ端末100と、情報提供サーバ200とを有し、ユーザからの操作毎に入力文字列を確定して、確定した入力文字列を情報提供サーバ200へ送信し、情報提供サーバ200からの質問文字列を受信する毎に当該質問文字列を選択可能に提示する処理を実行する。
 このように、ユーザ端末100は、ユーザの操作ごとに質問文字列をリアルタイムで選択可能に提示するため、入力文字列を更新する毎に検索を行って質問文字列を選択する、といった手間を軽減することができる。
(変形例2)
 上述の実施形態では、図1に示すように、検索ボタン1011を指定することにより入力文字列が確定されるものであったが、本変形例では、同義語辞書データベース400に、同義語を構成する複数の語それぞれの入力変換用文字列が、代表語に対応付けて記憶されて構成される。尚、本変形例は、上記の変形例1の構成を備えているものであるがこれに限定されない。
 ここで、入力変換用文字列とは、同義語が漢字である場合にテキストを入力する際にアルファベットの組み合わせで指定する「読み仮名」や、この「読み仮名」を指定するためのアルファベットの組み合わせ、である。このような入力変換用文字列を同義語辞書に記憶することで、入力文字列として同義語の一部の読み仮名やアルファベットを指定するだけで、ユーザの所望する応答内容が取得できる可能性を向上させることができる。
 例えば、図11に示すように、本変形例の同義語辞書データベース400の同義語辞書データテーブルには、同義語に加え、読み仮名が登録されている。尚、本実施例では、同義語を構成する複数の語として、入力変換用文字列を登録しているがこれに限定されない。
 これにより、図12に示すように、ユーザが、入力エリア1020に、「リョウ」と入力した時点で「リョウ」が入力文字列として情報提供サーバ200に送信される。情報提供サーバ200は、同義語辞書データテーブル(図11参照)を参照して、同義語欄の「リョウキン」と、「リョウリ」とを選出し、これらそれぞれに対応する代表語の「金額」及び「食事」を検索文字列としてサジェストデータベース500を検索し、選出した正規化文字列に対応する質問文字列をユーザ端末100へ送信する。これにより、サジェストキーワードエリア1021には、「金額」及び「食事」を検索対象として含む質問文字列が表示されることになる。
 また、図12に示すように、ユーザが、入力エリア1020に、「リョウリ」と入力した時点で「リョウ」が入力文字列として情報提供サーバ200に送信される。情報提供サーバ200は、同義語辞書データテーブル(図11参照)を参照して、同義語欄の「リョウリ」を選出し、これに対応する代表語の「食事」を検索文字列としてサジェストデータベース500を検索し、選出した正規化文字列に対応する質問文字列をユーザ端末100へ送信する。これにより、サジェストキーワードエリア1021には、「食事」を検索対象として含む質問文字列が表示されることになる。例えば、サジェストデータベース500には、質問文字列として「おすすめの献立を知りたい」が登録され、これに対応する正規化文字列として「おすすめの食事を知りたい」が登録されており、正規化文字列の「おすすめの食事を知りたい」が検索され、これに対応する質問文字列である「おすすめの献立を知りたい」がユーザ端末100に送信される。
 上述した詳細な説明では、本発明をより容易に理解できるように、特徴的部分を中心に説明した。本発明は、上述した詳細な説明に記載する実施形態に限定されず、その他の実施形態にも適用することができ、その適用範囲は多様である。また、本明細書において用いた用語及び語法は、本発明を的確に説明するために用いたものであり、本発明の解釈を制限するために用いたものではない。また、当業者であれば、本明細書に記載された発明の概念から、本発明の概念に含まれる他の構成、システム、方法等を推考することは容易であると思われる。従って、請求の範囲の記載は、本発明の技術的思想の範囲を逸脱しない範囲で均等な構成を含むものであるとみなされなければならない。また、要約書の目的は、特許庁及び一般的公共機関や、特許、法律用語又は専門用語に精通していない本技術分野に属する技術者等が本出願の技術的な内容及びその本質を簡易な調査で速やかに判定し得るようにするものである。従って、要約書は、請求の範囲の記載により評価されるべき発明の範囲を限定することを意図したものではない。また、本発明の目的及び本発明の特有の効果を十分に理解するために、すでに開示されている文献等を充分に参酌して解釈されることが望まれる。
 上述した詳細な説明は、コンピュータで実行される処理を含むものである。以上での説明及び表現は、当業者が最も効率的に理解することを目的として記載している。本明細書では、1の結果を導き出すために用いられる各処理は、自己矛盾がない処理として理解されるべきである。また、各処理では、電気的又は磁気的な信号の送受信、記録等が行われる。各処理における処理では、このような信号を、ビット、値、シンボル、文字、用語、数字等で表現しているが、これらは単に説明上便利であるために用いたものであることに留意する必要がある。また、各処理における処理は、人間の行動と共通する表現で記載される場合があるが、本明細書で説明する処理は、原則的に各種の装置により実行されるものである。また、各処理を行うために要求されるその他の構成は、以上の説明から自明になるものである。
 1 情報提供システム
 100 ユーザ端末
 200 情報提供サーバ
 300 知識データベース
 400 同義語辞書データベース
 500 サジェストデータベース
 700 ネットワーク

Claims (6)

  1.  応答内容が対応付けられた質問文字列を記憶する知識データ記憶部と、
     互いの意味が近似すると定義された複数の語からなる同義語が設定された同義語辞書を記憶する同義語記憶部と、
     ユーザによって操作されるユーザ端末から入力された入力文字列を受信する受信部と、
     前記入力文字列が含む語を前記同義語辞書に基づいて変換して検索文字列とし、前記検索文字列に関連する前記質問文字列を特定する検索部と、
     前記特定した質問文字列を前記ユーザ端末に送信する送信部と、を有することを特徴とする情報提供システム。
  2.  前記同義語辞書において、前記同義語のうち何れかが代表語に設定され、
     前記知識データ記憶部は、前記質問文字列と、前記質問文字列が含む語を前記同義語辞書に基づいて代表語に変換した正規化文字列と、を対応付けて記憶し、
     前記検索部は、前記入力文字列が含む語を前記同義語辞書に基づいて代表語に変換して検索文字列とし、
     前記検索文字列を用いて前記正規化文字列を選出し、前記選出した正規化文字列に対応する前記質問文字列を特定することを特徴とする請求項1に記載の情報提供システム。
  3.  前記ユーザ端末は、
     前記ユーザからの操作毎に、前記入力文字列を確定して、確定した入力文字列を前記受信部へ送信し、
     前記送信部からの前記質問文字列を受信する毎に、当該質問文字列を選択可能に提示することを特徴とする請求項1に記載の情報提供システム。
  4.  前記知識データ記憶部は、
     前記同義語を構成する複数の語それぞれの入力変換用文字列を、前記代表語に対応付けて記憶することを特徴とする請求項1に記載の情報提供システム。
  5.  記憶部を有したコンピュータが実行する情報提供制御方法であって、
     応答内容が対応付けられた質問文字列を記憶することと、
     互いの意味が近似すると定義された複数の語からなる同義語が設定された同義語辞書を記憶することと、
     ユーザによって操作されるユーザ端末から入力された入力文字列を受信することと、
     前記入力文字列が含む語を前記同義語辞書に基づいて変換して検索文字列とし、前記検索文字列に関連する前記質問文字列を特定することと、
     前記特定した質問文字列を前記ユーザ端末に送信することと、を含むことを特徴とする情報提供制御方法。
  6.  互いの意味が近似すると定義された複数の語からなる同義語が設定された同義語辞書を記憶する同義語記憶部にアクセス可能な制御部を有したコンピュータで用いられ、前記コンピュータが有する記憶部に記憶される知識データのデータ構造であって、
     前記データ構造は、
     質問文字列と応答内容とが対応付けられた構造を含み、
     前記制御部に、ユーザによって操作されるユーザ端末から入力された入力文字列について、当該入力文字列が含む語を前記同義語辞書に基づいて変換させた検索文字列を生成させ、前記検索文字列に関連する前記質問文字列を特定させる、知識データのデータ構造。
PCT/JP2019/041485 2018-11-02 2019-10-23 情報提供システム、情報提供方法、及び、知識データのデータ構造 Ceased WO2020090574A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201980071378.1A CN112955882B (zh) 2018-11-02 2019-10-23 信息提供系统、信息提供方法、以及知识数据的数据结构
US17/287,613 US20210397786A1 (en) 2018-11-02 2019-10-23 Information providing system, information providing method, and data structure of knowledge data
PH12021550937A PH12021550937A1 (en) 2018-11-02 2021-04-26 Information providing system, information providing method, and data structure of knowledge data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018207170A JP7231190B2 (ja) 2018-11-02 2018-11-02 情報提供システム、及び、情報提供制御方法
JP2018-207170 2018-11-02

Publications (1)

Publication Number Publication Date
WO2020090574A1 true WO2020090574A1 (ja) 2020-05-07

Family

ID=70463102

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/041485 Ceased WO2020090574A1 (ja) 2018-11-02 2019-10-23 情報提供システム、情報提供方法、及び、知識データのデータ構造

Country Status (5)

Country Link
US (1) US20210397786A1 (ja)
JP (1) JP7231190B2 (ja)
CN (1) CN112955882B (ja)
PH (1) PH12021550937A1 (ja)
WO (1) WO2020090574A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024004320A1 (ja) * 2022-06-30 2024-01-04 有限会社Bond 教育装置、教育方法及び記録媒体

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7439615B2 (ja) * 2020-03-31 2024-02-28 セイコーエプソン株式会社 テンプレート処理装置、印刷システム、テンプレート処理装置の処理方法、およびプログラム
JP7416665B2 (ja) * 2020-06-12 2024-01-17 株式会社日立製作所 対話システム、及び対話システムの制御方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002123541A (ja) * 2000-10-13 2002-04-26 Cannac:Kk 問題解決データベース検索システム及び問題解決データベース検索プログラムを記録したコンピュータ読み取り可能な記憶媒体
JP2003030207A (ja) * 2001-07-12 2003-01-31 Cannac:Kk モバイル機用取扱問題解決処理システム及びモバイル機用取扱問題解決処理プログラム並びにデータベース検索プログラム並びに当該プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2006004045A (ja) * 2004-06-16 2006-01-05 Cannac:Kk 情報提供方法
JP2016099967A (ja) * 2014-11-26 2016-05-30 株式会社ユニバーサルエンターテインメント 情報提供システム、情報提供方法、及びプログラム

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030171914A1 (en) * 2000-04-18 2003-09-11 Il-Hyung Jung Method and system for retrieving information based on meaningful core word
US7526425B2 (en) * 2001-08-14 2009-04-28 Evri Inc. Method and system for extending keyword searching to syntactically and semantically annotated data
JP4114927B2 (ja) * 2003-08-13 2008-07-09 株式会社東芝 文書検索システム、質問応答システム、文書検索方法
US8756245B2 (en) * 2005-07-25 2014-06-17 Iac Search & Media, Inc. Systems and methods for answering user questions
US20070136248A1 (en) * 2005-11-30 2007-06-14 Ashantipic Limited Keyword driven search for questions in search targets
JP5326918B2 (ja) * 2009-08-05 2013-10-30 株式会社リコー 電子機器,ソフトウェア更新方法,プログラム,および記録媒体
US8515731B1 (en) * 2009-09-28 2013-08-20 Google Inc. Synonym verification
US9147039B2 (en) * 2010-09-15 2015-09-29 Epic Systems Corporation Hybrid query system for electronic medical records
CN104216913B (zh) * 2013-06-04 2019-01-04 Sap欧洲公司 问题回答方法、系统和计算机可读介质
US10185748B1 (en) * 2013-08-22 2019-01-22 Evernote Corporation Combining natural language and keyword search queries for personal content collections
US9779141B2 (en) * 2013-12-14 2017-10-03 Microsoft Technology Licensing, Llc Query techniques and ranking results for knowledge-based matching
JP6554791B2 (ja) * 2014-03-14 2019-08-07 オムロン株式会社 文字入力予測のための情報処理システムおよび情報処理方法
JP6414956B2 (ja) * 2014-08-21 2018-10-31 国立研究開発法人情報通信研究機構 質問文生成装置及びコンピュータプログラム
US10025819B2 (en) * 2014-11-13 2018-07-17 Adobe Systems Incorporated Generating a query statement based on unstructured input
JP6345577B2 (ja) * 2014-11-26 2018-06-20 株式会社ユニバーサルエンターテインメント 情報提供システム、情報提供方法、プログラム、及びデータ構造
US10380125B2 (en) * 2015-05-01 2019-08-13 Sony Corporation Information processing apparatus and information processing method
US10565309B2 (en) * 2016-02-17 2020-02-18 International Business Machines Corporation Interpreting the meaning of clinical values in electronic medical records
CA3293804A1 (en) * 2016-05-09 2026-03-02 Rapidsos, Inc. Systems and methods for emergency communications
US20180096018A1 (en) * 2016-09-30 2018-04-05 Microsoft Technology Licensing, Llc Reducing processing for comparing large metadata sets
US20180349499A1 (en) * 2017-06-01 2018-12-06 Facebook Inc. Real-time Counters for Search Results on Online Social Networks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002123541A (ja) * 2000-10-13 2002-04-26 Cannac:Kk 問題解決データベース検索システム及び問題解決データベース検索プログラムを記録したコンピュータ読み取り可能な記憶媒体
JP2003030207A (ja) * 2001-07-12 2003-01-31 Cannac:Kk モバイル機用取扱問題解決処理システム及びモバイル機用取扱問題解決処理プログラム並びにデータベース検索プログラム並びに当該プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2006004045A (ja) * 2004-06-16 2006-01-05 Cannac:Kk 情報提供方法
JP2016099967A (ja) * 2014-11-26 2016-05-30 株式会社ユニバーサルエンターテインメント 情報提供システム、情報提供方法、及びプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024004320A1 (ja) * 2022-06-30 2024-01-04 有限会社Bond 教育装置、教育方法及び記録媒体
JP2024007423A (ja) * 2022-06-30 2024-01-18 有限会社Bond 教育装置、教育方法及びプログラム
JP7849039B2 (ja) 2022-06-30 2026-04-21 有限会社Bond 教育装置、教育方法及びプログラム

Also Published As

Publication number Publication date
JP2020071801A (ja) 2020-05-07
PH12021550937A1 (en) 2021-11-22
US20210397786A1 (en) 2021-12-23
CN112955882A (zh) 2021-06-11
JP7231190B2 (ja) 2023-03-01
CN112955882B (zh) 2024-06-21

Similar Documents

Publication Publication Date Title
US8745051B2 (en) Resource locator suggestions from input character sequence
KR20240012245A (ko) 자연어처리 기반의 인공지능 모델을 이용한 faq를 자동생성하기 위한 방법 및 이를 위한 장치
JP2009500954A (ja) 非標準位置ベーステキスト入力
US20140164296A1 (en) Chatbot system and method with entity-relevant content from entity
US20210149900A1 (en) Method, system and computer program for semantic triple-based knowledge extension
JPWO2020026366A1 (ja) 特許評価判定方法、特許評価判定装置、および特許評価判定プログラム
KR102285115B1 (ko) 챗봇 기반의 웹페이지 내비게이션 장치 및 방법
JP6618103B1 (ja) 文章生成装置、文章生成方法、および文章生成プログラム
WO2020090574A1 (ja) 情報提供システム、情報提供方法、及び、知識データのデータ構造
JP2011222056A (ja) 検索システム及び検索方法
WO2020240872A1 (ja) 特許文章生成装置、特許文章生成方法、および特許文章生成プログラム
JP7139157B2 (ja) 検索文生成システム、及び検索文生成方法
JP2020021455A (ja) 特許評価判定方法、特許評価判定装置、および特許評価判定プログラム
US12045565B2 (en) Information provision system and information provision method
KR20010064061A (ko) 음성 인식 기능을 갖는 검색 엔진
JP2002183203A (ja) 情報検索方法及び情報記憶媒体
KR101072254B1 (ko) 온라인 사전 서비스 제공 장치 및 방법
KR20110017797A (ko) 검색쿼리 및 사용이력을 이용한 웹 페이지 검색 서비스 제공 시스템, 서버 및 방법
US20250077550A1 (en) Search device, search system, search method, and recording medium
KR20050040983A (ko) 음성을 이용한 웹 브라우징 시스템 및 제어방법
US20250217357A1 (en) Instruction query method, computer program product and associated query system
KR20250133111A (ko) 생성형 인공지능 기반의 대화 서비스에서 등록 프롬프트 또는 플러그인을 추천하는 추천 방법 및 이를 이용하는 컴퓨팅 장치
JP2018055620A (ja) 情報処理装置及びプログラム
JP2020198072A (ja) 文章生成装置、文章生成方法、および文章生成プログラム
JP2024137219A (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: 19879268

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19879268

Country of ref document: EP

Kind code of ref document: A1