WO2021095564A1 - 情報処理装置 - Google Patents

情報処理装置 Download PDF

Info

Publication number
WO2021095564A1
WO2021095564A1 PCT/JP2020/040799 JP2020040799W WO2021095564A1 WO 2021095564 A1 WO2021095564 A1 WO 2021095564A1 JP 2020040799 W JP2020040799 W JP 2020040799W WO 2021095564 A1 WO2021095564 A1 WO 2021095564A1
Authority
WO
WIPO (PCT)
Prior art keywords
dialogue
cluster
habitual
user
control unit
Prior art date
Application number
PCT/JP2020/040799
Other languages
English (en)
French (fr)
Inventor
広 岩瀬
祐平 滝
邦仁 澤井
Original Assignee
ソニーグループ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニーグループ株式会社 filed Critical ソニーグループ株式会社
Priority to JP2021556018A priority Critical patent/JPWO2021095564A1/ja
Priority to US17/768,220 priority patent/US20240111487A1/en
Publication of WO2021095564A1 publication Critical patent/WO2021095564A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Definitions

  • the present disclosure relates to an information processing device, and more particularly to an information processing device that makes it possible to easily change a cluster that collectively operates a plurality of operations that the user has become accustomed to.
  • a technology has been proposed that estimates the user's operation habits from the user's operation history and assists the user's operation.
  • Patent Document 2 it is not possible to estimate the habituality based on the continuity or simultaneity of a plurality of operations.
  • Patent Document 3 a technology is proposed to generate a scenario-based dialogue, set a blank item in a part, and complete the dialogue by filling in the blank item from the past action history to change the cluster that operates multiple operations at once.
  • the present disclosure has been made in view of such a situation, and in particular, a cluster, which is a group of a plurality of user's habitual operations, can be easily changed by appropriate dialogue based on the user's habituation estimation. It is something to do.
  • the information processing device of one aspect of the present disclosure calculates a habitual score indicating the habituality of the user operation, and a plurality of operations including an operation in which the habituality score is higher than a predetermined threshold value and an operation corresponding to a dialogue with the user. It is an information processing device including a control unit for registering a cluster composed of.
  • a habit score indicating the habit of user operations is calculated, and a cluster consisting of a plurality of operations including operations in which the habit score is higher than a predetermined threshold value and operations in response to dialogue with the user. Is registered.
  • the present disclosure makes it possible to easily change a cluster, which is a group of a plurality of user's habitual operations, by appropriate dialogue based on the user's habituation estimation.
  • the user 11 operates the operation input device 12 including the keyboard and mouse of the PC 13 to input keywords and various operation instructions to the browser. Browsing is realized by having the article searched by and presenting the search result.
  • a voice input device 20 or the like using a microphone or the like is attached so that voice input can be received and input can be performed interactively by the voice agent 21.
  • Technology has been proposed.
  • the user 11 can operate the operation input device 12 or interactively input information to the voice agent 21 via the voice input device 20 by speaking.
  • a plurality of operations are macroized and stored in association with one phrase, and the stored phrase is uttered so that the plurality of macroized operations are collectively executed.
  • the voice agent 21 presents information such as "Let's remember XXX?" By image or voice from a display or speaker (not shown) of the PC 13. By doing so, it is inquired whether or not a plurality of operations should be registered as macros in association with the phrase "XXX".
  • the voice agent 21 associates it with "XXX” and assigns it to "XXX". Recognize that there was a request to register multiple operations as macros.
  • the voice agent 21 issues an image or voice from a display or speaker (not shown) of the PC 13, for example, “Please operate”, so that the operation input device 12 by the user 11 will be described later.
  • the user 11 is notified that the operation contents are ready to be sequentially stored.
  • the operation input device 12 is operated by the user 11, a plurality of operations to be registered as macros are input, and the voice agent 21 sequentially stores the plurality of input operations.
  • the voice agent 21 associates the phrase "XXX" with the plurality of operations memorized up to that point and registers them as a macro, and uses an image or voice from a display or speaker (not shown) of the PC 13. For example, by issuing "I remembered XXX", the user 11 is notified that the plurality of operation inputs input so far are macroized and registered in association with the phrase "XXX".
  • the voice agent 21 executes the macro registered in association with "XXX". It is regarded as instructed by the user, and multiple operation inputs registered in association with each other are collectively executed.
  • the voice agent 21 When the voice agent 21 detects the phrase "remember” issued by the user 11 via the voice input device 20 in the processing SC11, it recognizes that it wants to macroize and register a plurality of operations for a predetermined phrase. To do.
  • the voice agent 21 issues an image or voice from a display or speaker (not shown) of the PC 13, for example, “Please operate”, so that the user 11 can operate the operation input device 12 thereafter.
  • the user 11 is notified that the contents are ready to be sequentially stored.
  • the processing SC13 stores the plurality of operation inputs input by the voice agent.
  • the user 11 When the user 11 completes a plurality of operation inputs for which the macro is to be registered, the user 11 notifies the voice agent 21 that the plurality of operation inputs have been completed by issuing the phrase "register".
  • the voice agent 21 recognizes the completion of a plurality of operation inputs to be macro-registered by detecting the phrase "registration" issued by the user 11 via the voice input device 20. ..
  • the voice agent 21 is operated by the user 11 by issuing an image or voice from a display or a speaker (not shown) of the PC 13, for example, "What should I say, do this operation?"
  • the user 11 instructs, for example, to associate a phrase of "XXX" with a plurality of operations stored up to that point and register them as a macro.
  • the voice agent 21 When the voice agent 21 detects the phrase "XXX” issued by the user 11 via the voice input device 20 in the processing SC16, it associates with the phrase "XXX” and performs a plurality of operations memorized up to that point. Recognize that there was an instruction to register as a macro.
  • the voice agent 21 associates with the phrase "XXX” and registers a plurality of operations stored up to that point as a macro. Then, the voice agent 21 emits, for example, "I remembered XXX” by an image or voice from a display or speaker (not shown) of the PC 13, so that the user 11 receives a plurality of operation inputs input up to that point. Make a macro and notify that it has been registered in association with the phrase "XXX".
  • the user 11 issues the phrase "XXX" to collectively perform a plurality of macroscopic operations registered in association with each other. It will be executed.
  • the macro registration process described above is basically based on the premise that the user memorizes a plurality of operations in both the first method and the second method, and the memorized multiple operations are used as phrases. It can only be registered in association with each other.
  • the macro registration itself cannot be performed unless the user himself / herself recognizes / grasps what he / she is habitually operating in his / her usual operation while performing normal browsing.
  • the user operation history is recorded and presented as shown in the upper left part of FIG. 3, among which a plurality of operations having high habitual operability are shown in the upper right part of FIG. Make sure that such a habitual operation cluster is set up.
  • operation A is performed at 3/18 20:40:13
  • operation B is performed at 3/18 20:40:14
  • 3/18 It is shown that operation C was performed at 20:40:16 and operation D was performed at 20:40:27 on 3/18.
  • operation E is performed at 3/18 20:40:32
  • operation F is performed at 3/18 20:40:35
  • operation G is performed at 3/18 20:40:39, and 3/18. It is shown that operation H was performed at 20:40:39 and operation I was performed at 3/18 20:40:41.
  • the user operation history shown in the upper left part of FIG. 3 is a part of the user operation history, but each of the user operation histories is required to have a habitual score indicating the high habit of each operation. Therefore, a plurality of operations having a habitual score higher than a predetermined value are clustered and set as an addictive operation cluster as shown in the upper right part of FIG.
  • the upper right part of FIG. 3 is an example of a habitual operation cluster consisting of two or more operations having a habitual score higher than a predetermined value.
  • the operation E immediately before a plurality of operations having a habitual score higher than a predetermined value is also included in the addictive operation cluster.
  • score display columns LV1 to LV5 indicating the height of the selected addictive score are displayed on the left side of each of the operations E to L.
  • each of the score display columns LV1 to LV5 the higher the habitual score, the more a bar graph extending to the right in the figure is shown, and the bar graph is displayed in different colors according to the addictive score.
  • the habitual scores of the score display columns LV3 and LV4 of the operations G and H are the highest, and the habitual scores of the score display columns LV2 and LV5 of the operations F and I are next. Has been shown to be high.
  • the score display columns LV2 to LV5 of the operation having a habitual score higher than a predetermined threshold value are displayed sandwiched between the brackets BL1 and BL2.
  • switches SSE to SSI are provided on the left side of the respective score display fields LV1 to LV5, and by operating each of them, the operation to be registered at the time of macroizing is selected. be able to.
  • the addictive operation cluster is set based on the user operation history, so that the phrases are dealt with after macroizing a plurality of highly addictive operations.
  • macro registration processing is performed and voice macroization is realized (voice macroization at the bottom of FIG. 3).
  • the user can execute a plurality of operations with high habits at once by uttering the registered phrase.
  • the habituality consisting of a plurality of consecutive operations is presented to the user. Is presented, and a status proposal notification for determining whether or not to make a macro is presented (situation proposal notification at the bottom of FIG. 3).
  • the habitual operation cluster including the keyword spoken by the user is searched and presented (keyword search in the lower part of FIG. 3).
  • the habitual operation cluster searched based on the related phrase is presented and batch execution is proposed. Therefore, the macro-registered habitual operation cluster can be utilized.
  • the addictive operation may change.
  • the habitual operation is estimated from the user's past operation history, and the dialogue with the user is performed at the timing when the operation requiring change is performed among the plurality of macroized operations. And make it easy to change the operation according to the dialogue.
  • FIG. 4 shows a preferred embodiment of the information processing apparatus to which the technique of the present disclosure is applied.
  • the information processing device 41 of FIG. 4 includes an input operation unit 51, a functional application program execution unit 52, an operation storage execution control unit 53, a user operation history storage unit 54, an addictive operation / dialogue cluster storage unit 55, and a voice input unit 56.
  • the input operation unit 51 is composed of a keyboard, a mouse, a touch panel (input operation device), etc., receives an operation input of a user, generates an operation signal corresponding to the received operation input, and is a function application program execution unit. Output to 52.
  • the function application program execution unit 52 uses, for example, content supplied from a web browser or an accessed site based on an operation signal supplied from the input operation unit 51 and a system operation instruction supplied from the operation memory execution control unit 53. Execute an application program that realizes various functions such as presentation.
  • the functional application program execution unit 52 is used for general operations of games (controllers), televisions (remote controllers), music / video players, smartphones / tablets, PCs (Personal Computers), AR (Augmented Reality) / It realizes the functions of VR (Virtual Reality) devices, home appliances, cameras / camcorders, commercial systems, and other devices with multiple operation functions as a whole.
  • the functional application program execution unit 52 is an image composed of a moving image and a still image constituting an execution result based on an operation signal supplied from the input operation unit 51 and a system operation instruction supplied from the operation memory execution control unit 53. Is output to the image output unit 66.
  • the functional application program execution unit 52 transmits to the voice output unit 67 the voice constituting the execution result based on the operation signal supplied from the input operation unit 51 and the system operation instruction supplied from the operation memory execution control unit 53. Output.
  • the voice input unit 56 is composed of a microphone or the like, receives an input of an utterance phrase composed of a voice uttered by a user, generates a corresponding voice signal, and outputs the corresponding voice signal to the voice recognition processing unit 57.
  • the voice recognition processing unit 57 performs voice recognition processing (ASR: Automatic Speech Recognition) based on the voice signal supplied from the voice input unit 56, and utters a voice recognition result composed of text. Output to the operation memory execution control unit 53.
  • ASR Automatic Speech Recognition
  • the utterance meaning understanding processing unit 58 performs utterance meaning understanding processing (NLU: Natural Language Understanding) on the utterance recognition result composed of text supplied from the utterance recognition processing unit 57, and performs the utterance meaning understanding process (NLU: Natural Language Understanding) to the utterance intention of the user's utterance phrase ( Estimate the operation type) (Intent) and the attribute information (Entity) to be spoken.
  • NLU Natural Language Understanding
  • the utterance meaning understanding processing unit 58 outputs the utterance intention (operation type) (Intent) of the user's utterance phrase, which is the estimation result, and the attribute information (Entity) to be uttered to the operation memory execution control unit 53.
  • the image input unit 59 is composed of a camera or the like, receives input of facial expressions and surrounding images that are the user's situation, generates a corresponding image signal, and outputs the corresponding image signal to the image recognition processing unit 60.
  • the image recognition processing unit 60 performs image recognition processing on the image signal supplied from the image input unit 59, and outputs the processing result to the operation memory execution control unit 53 as observation context information indicating the user's situation. To do.
  • the sensor input unit 61 is composed of a GPS (Global Positioning System) sensor, a pulse sensor, a blood pressure sensor, and the like, receives input of sensing results of each sensor, generates a corresponding sensor signal, and outputs the corresponding sensor signal to the sensor recognition processing unit 62. To do.
  • GPS Global Positioning System
  • the sensor recognition processing unit 62 performs sensor recognition processing on the sensor signal supplied from the sensor input unit 61, and outputs the processing result to the operation memory execution control unit 53 as observation context information indicating the user's situation. To do.
  • the operation storage execution control unit 53 adds a time stamp to the user operation information supplied from the function application program execution unit 52, stores it in the user operation history storage unit 54 as a user operation history, and stores it as a user operation history. To do so.
  • the operation storage execution control unit 53 causes the display image processing unit 64 to generate a specific history management screen or the like by the display image processing unit 64 via the response generation unit 63 for the user operation history stored in the user operation history storage unit 54, for example, FIG.
  • the image output unit 66 may display the past user operation history described with reference to the upper left portion of No. 3 in chronological order so that the user can view the history.
  • the user operation information is information corresponding to the operation content of the input operation unit 51.
  • the function realized by the function application program execution unit 52 is a web browser, click, form input, form submit, site transition, etc. This is the information corresponding to the operation of.
  • the user operation information includes information on UI (User Interface) parts such as links / forms that are the operation targets and information on the transition destination URL (Uniform Resource Locator) (+ site title).
  • UI User Interface
  • links / forms that are the operation targets
  • transition destination URL Uniform Resource Locator
  • the user operation information includes the information of the URL (+ site title) of the site when the operation by the input operation unit 51 is performed.
  • the operation memory execution control unit 53 estimates a plurality of user's habitual operations (composite operations) as a habitual operation cluster or a dialogue cluster based on the past user operation history accumulated in the user operation history storage unit 54.
  • Habitual operation / dialogue Cluster storage unit 55 stores.
  • the operation memory execution control unit 53 is addictive based on the user's utterance phrase, its utterance intention (operation type) (Intent), attribute information (Entity) to be uttered, observation context information, and user operation information. Read the corresponding habitual operation cluster or dialogue cluster from the operation / dialogue cluster storage unit 55.
  • the operation memory execution control unit 53 converts the read addictive operation cluster or dialogue cluster into a voice macro, and collectively executes a plurality of operations based on the habitual operation cluster or dialogue cluster, macro execution, or the like to instruct the system operation. Is generated, output to the function application program execution unit 52, and executed.
  • the functional application program execution unit 52 collectively executes a plurality of operations constituting the habitual operation cluster or the dialogue cluster in chronological order based on the system operation instruction corresponding to the habitual operation cluster or the dialogue cluster.
  • operation memory execution control unit 53 controls the response generation unit 63 for voice macroization and addictive operation cluster or dialogue cluster execution proposal notification and confirmation dialogue for the user, and voice macroization and addiction.
  • Proposal notifications and confirmations related to batch execution of operation clusters or dialogue clusters Generate and output display images and sounds for dialogues.
  • the response generation unit 63 causes the display image processing unit 64 to generate a display image for the proposal notification and confirmation dialogue related to the execution of the voice macroization and the habitual operation cluster or the dialogue cluster, and also causes the display image processing unit 64 to generate the same proposal notification and confirmation dialogue.
  • the voice for this purpose is generated by the voice synthesis processing unit 65.
  • the display image processing unit 64 outputs a display image for proposal notification and confirmation dialogue related to the generated voice macroization and execution of the habitual operation cluster or dialogue cluster to the image output unit 66 and displays it.
  • the voice synthesis processing unit 65 outputs the voice for the proposal notification and the confirmation dialogue related to the execution of the voice macroization and the habitual operation cluster or the dialogue cluster from the voice output unit 67.
  • the image output unit 66 is composed of a display, a projector, or the like, and is controlled by the functional application program execution unit 52 to display a display image as a processing result of the functional application program execution unit 52.
  • the image output unit 66 displays the display image supplied from the display image processing unit 64.
  • the audio output unit 67 is composed of speakers, headphones, and the like, and is controlled by the functional application program execution unit 52 to output audio that is the processing result of the functional application program execution unit 52.
  • the voice output unit 67 outputs the voice supplied from the voice synthesis processing unit 65.
  • the user operation information is stored as information such as the user operation information Pr1 to Pr3 in FIG. 5, for example.
  • the user operation information Pr1 in FIG. 5 is composed of the descriptions in the first to twelfth lines, and in the second to sixth lines, "url”: "https://www.JJJ.co .jp / norikae / "," title ": It is shown that the operation to display the homepage of the transfer guide of the URL indicated by" Transfer guide
  • the operation of the user operation information ST1 is April 05, 2019, as shown by "date”: “2019-04-05T05: 04: 38.896Z". It is shown that it was done at the time of the day 05: 04: 38.896.
  • the user operation information Pr2 describes the operation information for inputting the station name of the boarding station in the displayed transfer guide homepage by the operation of the user operation information Pr1.
  • the user operation information Pr2 in FIG. 5 is composed of the descriptions in the first to fifteenth lines, and in the second to ninth lines, it is shown that the operation of inputting Shinjuku as the boarding station was performed. Has been done.
  • the operation of the user operation information ST2 is April 05, 2019. It is shown that it was done at the time of the day 05: 04: 46.341.
  • the user operation information Pr3 describes the operation information for inputting the station name of the getting-off station in the displayed transfer guide homepage by the operation of the user operation information Pr1.
  • the user operation information Pr3 in FIG. 5 is composed of the descriptions in the first to fifteenth lines, and in the second to ninth lines, it is shown that the operation of inputting Osaki as the getting-off station was performed. Has been done.
  • the operation of the user operation information ST3 is April 05, 2019, as shown by "date”: "2019-04-05T05: 04: 57.721Z". It is shown that it was done at the time of the day 05: 04: 57.721.
  • the user operation information Pr1 to Pr3 of FIG. 5 are sequentially accumulated in the user operation history storage unit 54 in chronological order.
  • the operation memory execution control unit 53 sequentially stores the user operation history storage unit 54 to form the user operation history.
  • the operation memory execution control unit 53 calculates the habitual score using the user operation history stored in the user operation history storage unit 54 and associates it with the user operation history. Accumulate and update sequentially.
  • the habitual score is a value indicating the tendency of habituality of the operation n corresponding to the nth operation to the past user operation history on the user operation history, and is expressed by the following equation (1).
  • the defined score is a value indicating the tendency of habituality of the operation n corresponding to the nth operation to the past user operation history on the user operation history.
  • S n is the habitual score of the operation n
  • T n is the time interval from the previous operation n-1 to the operation n
  • F n is the time interval from the operation n-1 to the operation n
  • P n is the transition probability from operation n-1 to operation n.
  • the habitual score of the operation n is the time interval T n from the previous operation n-1 to the operation n, the number of transitions F n from the operation n-1 to the operation n, and the operation from the operation n-1. It is the harmonic mean of the transition probability P n to n.
  • the time interval T n from the previous operation n-1 to the operation n is defined by the following equation (2).
  • T n H t / ((t n -t (n-1) ) + H t ) ... (2)
  • T n is the time interval from the previous operation n-1 to the operation n
  • t n is the time when the operation n was performed
  • t (n-1) is the operation n ⁇ . 1 is the time of day
  • H t is the normalization constant.
  • the normalization constant H t may be, for example, 30 seconds.
  • the normalization constant H t may be made variable by the user. That is, the time interval T n changes depending on the normalization constant H c due to the time difference. Thus, for example, to determine those unfamiliar with those familiar with the operation from the average value of use time and operation time interval of the device, who are accustomed smaller normalization constant H t, who are not accustomed The normalization constant H t may be increased.
  • C tn is the number of transitions from the same operation as operation n-1 to the same operation as operation n in the past in the user operation history
  • H c is a normalization constant.
  • the normalization constant H c is, for example, three times.
  • transition probability P n from the operation n-1 to the operation n is defined by the following equation (4).
  • C (n-1) is the number of times the same operation as operation n-1 has been performed in the past in the user operation history.
  • the habitual score S n of the operation n is performed habitually as the operation n is performed within a shorter time than the previous operation n-1 and the number of transitions F n and the transition probability P n increase. It is judged that it is broken and the score becomes high.
  • the operation memory execution control unit 53 When the operation memory execution control unit 53 is supplied with the user operation information and newly accumulates the user operation history in the user operation history storage unit 54, the operation memory execution control unit 53 sequentially calculates the above-mentioned habit score S n and operates the user. It is stored for each operation accumulated in the history and updated as necessary.
  • the operation memory execution control unit 53 first becomes addictive when there are two or more operations in which the habitual score S n becomes larger than the habitual threshold S th (for example, 0.5) in the time series of the operation history.
  • score S n is set from the previous operation of the operation to be greater than the addictive threshold S th to the last addictive score S n is larger than the addictive threshold S th operation addictive operation cluster candidates.
  • the operation storage execution control unit 53 has the same sequence as the habitual operation cluster candidate in the habitual operation cluster stored in the habitual operation / dialogue cluster storage unit 55 (the operation in the habitual operation cluster). If there is no habitual operation cluster (in order), and there is no habitual operation cluster with the same operation but different order, the habitual operation cluster candidate is used as a new habitual operation cluster. It is stored in the storage unit 55.
  • the operation storage execution control unit 53 has the same operation as the habitual operation cluster candidate but different order in the habitual operation cluster stored in the habitual operation / dialogue cluster storage unit 55.
  • these two habitual operation cluster candidates are compared with the habitual operation cluster, and the order-variable operations in the habitual operation cluster are detected and integrated, and the habitual operation / dialogue is performed as the habitual operation cluster. It is updated and stored in the cluster storage unit 55.
  • the operation memory execution control unit 53 first receives the habitual score S n when there are two or more operations in which the habitual score S n becomes larger than the habitual threshold S th (for example, 0.5) in the time series of the operation history.
  • the dialogue cluster candidates are set from the operation immediately before the operation in which is larger than the habitual threshold S th to the last operation in which the habitual score S n is larger than the habitual threshold S th.
  • the operation storage execution control unit 53 sets the habitual operation cluster and the dialogue cluster stored in the habitual operation / dialogue cluster storage unit 55 in the habitual operation cluster and the dialogue cluster (hereinafter, the habitual operation cluster and the dialogue cluster are also simply referred to as clusters).
  • the habitual operation cluster and the dialogue cluster are also simply referred to as clusters.
  • the dialogue cluster candidate is stored in the habitual operation / dialogue cluster storage unit 55 as a new dialogue cluster.
  • step S11 the operation memory execution control unit 53 initializes the counter n for counting operations to 1.
  • step S12 the operation memory execution control unit 53 determines whether or not the user operation information of the operation n has been supplied, and repeats the same process until it is supplied.
  • step S12 when the user operation information of operation n is supplied, the process proceeds to step S13.
  • step S13 the operation storage execution control unit 53 adds a time stamp to the user operation information of the operation n and stores it in the user operation history storage unit 54 as the user operation history.
  • step S14 the operation memory execution control unit 53 is based on the user operation history stored in the user operation history storage unit 54, by the calculation described with reference to the above-mentioned equations (1) to (4). Calculate the addiction score S n for operation n.
  • step S15 the operation memory execution control unit 53 determines whether or not the habitual score S n corresponding to the operation n is larger than the habitual threshold S th.
  • step S15 If it is determined in step S15 that the addiction score S n corresponding to the operation n is larger than the addiction threshold S th , the operation n is considered to be a highly addictive operation, and the process is performed in step S15. Proceed to S16.
  • step S16 the operation memory execution control unit 53 determines whether or not the habitual score S n-1 of the operation n-1 immediately before the operation n is smaller than the habitual threshold S th.
  • step S16 if the habitual score S n-1 of the operation n-1 immediately before the operation n is smaller than the habitual threshold S th , the process proceeds to step S17.
  • step S17 the operation memory execution control unit 53 adds the operation n-1 to the habitual operation cluster candidate.
  • step S18 the operation memory execution control unit 53 adds the operation n to the habitual operation cluster candidate.
  • step S19 the operation memory execution control unit 53 determines whether or not the end of the process is instructed, and if the end is instructed, the process ends.
  • step S19 If the end is not instructed in step S19, the process proceeds to step S20.
  • step S20 the operation memory execution control unit 53 increments the counter n by 1, and the process returns to step S12.
  • the operation immediately before the operation n is performed by the process of step S16.
  • addictive score S n-1 of the operation n-1 is lower than the addictive threshold S th, by the processing of step S17, the operation n-1 one before the operation n is as leading operations addictive operation cluster candidates To be included.
  • step S16 the habitual score S n is habitual. Since it does not become smaller than the sex threshold S th , the process of step S17 is skipped.
  • step S15 when it is determined that the addiction score S n corresponding to the operation n is not larger than the addiction threshold S th , the operation n is considered not to be a highly addictive operation and is processed. Proceeds to step S21.
  • step S21 the operation memory execution control unit 53 determines whether or not the habitual score S n-1 of the previous operation n-1 is larger than the habitual threshold S th.
  • step S21 when the habitual score S n-1 of the operation n-1 is considered to be larger than the habitual threshold S th , the operation up to the previous operation is one of the operations included in the habitual operation cluster candidate.
  • step S22 which is regarded as a part.
  • step S21 If the habitual score S n-1 of the operation n-1 is considered to be smaller than the habitual threshold S th in step S21, the immediately preceding operation is not included in the habitual operation cluster candidates. The process proceeds to step S19.
  • step S22 the operation memory execution control unit 53 determines whether or not the number of operations included in the habitual operation cluster candidate composed of the operations up to the last time is 2 or less.
  • step S22 when the number of operations included in the habitual operation cluster candidates composed of the operations up to the last time is 2 or less, the habitual operation cluster is set. The process proceeds to step S23, assuming that it is not configured.
  • step S23 the operation memory execution control unit 53 clears the operation information stored as the habitual operation cluster candidate, and the process proceeds to step S19.
  • step S22 when the number of operations included in the habitual operation cluster candidate composed of the operations up to the previous step is not 2 or less, that is, it is considered that the habitual operation cluster candidate includes 3 or more operations. Therefore, the process proceeds to step S24.
  • step S24 the operation storage execution control unit 53 performs an operation included in the habitual operation cluster candidate currently being processed among the already registered habitual operation clusters stored in the habitual operation / dialogue cluster storage unit 55. Is the same, and it is determined whether or not there are completely identical items having the same sequence (the order is the same).
  • the habitual operation cluster candidate is completely the same as the habitual operation cluster already registered in the habitual operation / dialogue cluster storage unit 55, it is not necessary to newly register it, so that it is completely the same. It is determined whether or not there is.
  • step S24 if the already registered habitual operation cluster stored in the addictive operation / dialogue cluster storage unit 55 has exactly the same habitual operation cluster candidate currently being processed, the process is performed in step S24. Proceed to S23.
  • the processing is performed.
  • the process proceeds to step S23, and the information of the habitual operation cluster candidate currently being processed is cleared.
  • step S24 if the already registered habitual operation cluster stored in the addictive operation / dialogue cluster storage unit 55 does not have the exact same habitual operation cluster candidate currently being processed, the process is performed. , Step S25.
  • step 25 the operation memory execution control unit 53 performs an operation included in the habitual operation cluster candidate currently being processed among the already registered habitual operation clusters stored in the habitual operation / dialogue cluster storage unit 55. Is the same, but the order is not the same. That is, it is determined whether there are some operations that are included but differ only in the order.
  • step S25 among the already registered habitual operation clusters stored in the addictive operation / dialogue cluster storage unit 55, the operations included in the habitual operation cluster candidates currently being processed are the same, but only in order. If there is nothing different, the process proceeds to step S26.
  • step S26 the operation storage execution control unit 53 registers the operations of the habitual operation cluster candidates currently being processed in the habitual operation / dialogue cluster storage unit 55 as a new habitual operation cluster in the same order.
  • habitual operation clusters stored in the habitual operation / dialogue cluster storage unit 55, those that are the same as the operations included in the habitual operation cluster candidates currently being processed but differ only in the order. Since there is no habitual operation cluster candidate currently being processed, it is regarded as a habitual operation cluster composed of a plurality of new operations, and is therefore registered in the habitual operation / dialogue cluster storage unit 55.
  • step S25 among the already registered habitual operation clusters stored in the addictive operation / dialogue cluster storage unit 55, the operations are the same as the operations included in the habitual operation cluster candidates currently being processed, but in that order. If they are not the same, that is, they differ only in order, the process proceeds to step S27.
  • step S27 the operation memory execution control unit 53 is registered that the operations included in the habitual operation cluster candidate currently being processed and the habitual operation cluster candidate currently being processed are the same, but the order is not the same. Detect variable-order operations by comparing with the habitual operation cluster of. After that, it is also said that the variable order operation is detected.
  • step S28 the operation memory execution control unit 53 is registered that the operations included in the habitual operation cluster candidate currently being processed and the habitual operation cluster candidate currently being processed are the same, but the order is not the same.
  • the habitual operation cluster is integrated as one habitual operation cluster together with information on the variable range of the variable order operation, and is registered in the habitual operation / dialogue cluster storage unit 55.
  • the habitual score S n is sequentially obtained, and the habitual operation cluster candidate is set by comparison with the habitual threshold S th.
  • the habitual operation cluster candidates consisting of completely different operations from the registered habitual operation clusters. Is registered as a new habitual operation cluster.
  • the habitual operation cluster candidate that is composed of the same operation but differs only in the operation order , It is integrated as one habitual operation cluster together with the registered habitual operation cluster, and is registered in the habitual operation / dialogue cluster storage unit 55.
  • the habituality may deviate with the passage of time. Therefore, the addictive operation clusters that have been registered for a predetermined period or longer may be deleted. ..
  • the habitual operation cluster candidate CL1 of FIG. 7 is composed of four operations of operations A to D
  • the habitual operation cluster CL2 is also composed of four operations of operations A to D in the same manner. ..
  • Operation A is an operation for transitioning to the transfer information site
  • operation C is an operation for inputting "Osaki” as the getting-off station
  • operation B is an operation for inputting "Shinjuku” as the boarding station.
  • Operation D is assumed to be an operation of clicking the search execution button.
  • the habitual score S n of each of the operation B, the operation C, and the operation D is larger than the habitual threshold S th. To do.
  • the order of the operation B, which is the input operation of the boarding station, and the operation C, which is the input operation of the getting-off station, is different. ..
  • the habitual operation cluster candidate CL1 and the habitual operation cluster CL2 are substantially the same and are integrated and treated as the same habitual operation cluster.
  • the operation memory execution control unit 53 compares the operations before and after each operation constituting the habitual operation cluster candidate CL1 and the habitual operation cluster CL2. To do.
  • the operation A of the habitual operation cluster candidate CL1 since the operation A is the head operation, there is no pre-operation (indicated as the head in the figure), and the post-operation is the operation C.
  • the pre-operation is the operation A and the post-operation is the operation B.
  • the pre-operation is the operation C and the post-operation is the operation D.
  • the pre-operation is the operation B
  • the operation D itself is the terminal operation
  • there is no post-operation is described as the terminal in the figure.
  • the operation A of the habitual operation cluster CL2 since the operation A is the head operation, there is no pre-operation (indicated as the head in the figure), and the post-operation is the operation B.
  • the pre-operation is the operation B and the post-operation is the operation D.
  • the pre-operation is the operation A and the post-operation is the operation C.
  • the pre-operation is the operation C
  • the operation D itself is the terminal operation
  • there is no post-operation is described as the terminal in the figure.
  • the operation memory execution control unit 53 performs a variable order operation between the habitual operation cluster candidate CL1 and the habitual operation cluster CL2 in which both the pre-operation and the post-operation are different. Detect as.
  • operation B and operation C among the operations are detected as variable order operations because the pre-operation and the post-operation are different from each other.
  • the operation A is the first operation in both the habitual operation cluster candidate CL1 and the habitual operation cluster CL2, and the operation D is also in the habitual operation cluster candidate CL1 and the habitual operation cluster CL2. , Termination operation. Therefore, neither operation A nor operation D is a variable order operation.
  • the operation memory execution control unit 53 generates an integrated storage cluster CL4 as shown in FIG. 7, which integrates the habitual operation cluster candidate CL1 and the habitual operation cluster CL2 based on the detected order-variable operation. And register it in the habitual operation / dialogue cluster storage unit 55.
  • operation A is an operation for transitioning to the transfer guidance site
  • operation C is an operation for inputting "Osaki” as the getting-off station.
  • B is an operation of inputting "Shinjuku” as a boarding station
  • operation D is an operation of clicking a search execution button.
  • operation C and operation B are detected as variable order operations, so a variable range is set.
  • the variable range has a pre-condition and a post-condition, and the earliest operation that can be the pre-operation of the operation is set as the pre-condition, and the latest operation that can be the post-operation is set as the post-condition. ..
  • the preconditions of the operation C and the operation B are the operations as indicated by the arrows in the figure. A, and the post-condition is operation D.
  • the registered habitual operation cluster may be registered in the operation order.
  • variable order operations may be a number other than two, for example, only one.
  • the habitual operation cluster candidate and the registered habitual operation cluster for example, the habitual operation cluster candidate CL11 as shown in FIG. 8 and the habitual operation cluster CL12 that differs only in the stored order exist. Think about the case.
  • the habitual operation cluster candidate CL11 of FIG. 8 is composed of four operations of operations A to D
  • the habitual operation cluster CL12 is also composed of four operations of the same operations A to D. ..
  • Operation A is an operation for transitioning to a video viewing site
  • operation D is an operation for setting the volume to 30
  • operation B is an operation for selecting video content Z
  • operation C is an operation for selecting a play button. It is assumed that the operation is to click.
  • the habitual score S n of each of the operation B, the operation C, and the operation D is larger than the habitual threshold S th.
  • the operation D which is an operation for setting the volume to 30, becomes a variable order operation between the operation A and the operation B. ing.
  • the volume is set to 30 even if the order is different. Therefore, the habitual operation cluster candidate CL11 and the habitual operation cluster CL12 are set. It is desirable that they are substantially the same and are treated as integrated as the same habitual operation cluster.
  • the operation memory execution control unit 53 compares the operations before and after each operation constituting the habitual operation cluster candidate CL11 and the habitual operation cluster CL12. To do.
  • the operation A of the habitual operation cluster candidate CL11 since the operation A is the head operation, there is no pre-operation (indicated as the head in the figure), and the post-operation is the operation D.
  • the pre-operation is the operation A and the post-operation is the operation B.
  • the pre-operation is the operation D and the post-operation is the operation C.
  • the pre-operation is the operation B
  • the operation C itself is the terminal operation
  • there is no post-operation is described as the terminal in the figure.
  • the operation A of the habitual operation cluster CL12 since the operation A is the head operation, there is no pre-operation (indicated as the head in the figure), and the post-operation is the operation B.
  • the pre-operation is the operation C
  • the operation D itself is the terminal operation
  • there is no post-operation is described as the terminal in the figure.
  • the pre-operation is the operation A and the post-operation is the operation C.
  • the pre-operation is the operation B and the post-operation is the operation D.
  • the operation memory execution control unit 53 performs a variable order operation between the habitual operation cluster candidate CL11 and the habitual operation cluster CL12 in which both the pre-operation and the post-operation are different. Detect as.
  • the operation D among the operations is detected as a variable order operation because the pre-operation and the post-operation are different from each other.
  • the post-operation is different for the operation A and the operation C, but the pre-operation is the same. Further, regarding the operation B, the pre-operation is different, but the post-operation is the same. Therefore, operation A, operation B, and operation C are not detected as variable order operations.
  • the operation memory execution control unit 53 integrates the habitual operation cluster candidate CL11 and the habitual operation cluster CL12 based on the detected order-variable operation to form the integrated storage cluster CL14 as shown in FIG. Generate and register in the addictive operation / dialogue cluster storage unit 55.
  • operation A is an operation for transitioning to the video viewing site
  • operation D is an operation for setting the volume to 30
  • operation B is an operation. It is recorded that it is an operation of selecting the moving image content Z
  • the operation C is an operation of clicking the play button.
  • operation D is detected as a variable order operation, so a variable range is set.
  • the operation D since the operation D is detected as a variable order operation, the operation D has the precondition as the operation A and the postcondition as the operation A as indicated by the arrows in the figure. It is considered to be the end.
  • the registered habitual operation cluster may be registered in the operation order.
  • the habitual operation cluster candidates having the same operation but different order are integrated with the registered habitual operation cluster and become one. It is registered as an addictive operation cluster (integrated storage cluster CL14).
  • the operation recognized as the variable order operation can be set as a variable range in which the order of the operations can be changed.
  • the habitual operation clusters are sequentially registered in the habitual operation / dialogue cluster storage unit 55.
  • the registered habitual operation clusters are presented to the user to display the habitual operation clusters.
  • ⁇ Dialogue cluster> the habitual operation clustering process based on the habitual operation has been described. However, after the habitual operation cluster is generated, the habitual operation changes, so that the habitual operation cluster is deleted and added. In addition, various changes may be required, such as changing the Entity.
  • At least a part of the plurality of operations that are collectively executed to form the cluster includes the operation based on the dialogue with the user, and the habitual operation is performed.
  • An interactive cluster is a cluster that can respond to changes in.
  • the operation memory execution control unit 53 stores the dialogue cluster in which the following three types of operations in the habitual operation cluster are variables from the operation history, and the dialogue information of the variable operations stored in the dialogue cluster. Dialogue is generated based on the above, and the operations to configure the cluster are executed while changing as appropriate.
  • the first operation is an operation in which the operation type (speech intention) (Intent) is the same and the attribute (Entity) is different.
  • the operation memory execution control unit 53 sets the selection dialogue flag f s as a flag indicating whether or not to have a dialogue when the corresponding operation is performed. and it is stored in the conversation cluster in conjunction with the execution number of times a plurality of input Entity as choices information I s.
  • the operation storage execution control unit 53 when the operation type (Intent) to run an interactive clusters according to the same attribute (Entity) is different operations, depending on the setting of the selected dialogue flag f s, the choice information I s Based on this, the options based on the input probability are presented, the inquiry of the Entity that is the option is uttered, the operation is executed based on the user response, and the option information Is is updated.
  • the second operation is an added and deleted operation.
  • the operation storage execution control unit 53 sets the confirmation dialogue flag f a and stores the number of executions in the dialogue cluster as confirmation information I a.
  • the operation storage execution control unit 53 when executing an interactive cluster according to addition and deletion operation can, depending on the setting of the confirmation dialogue flag f a, queries utterance of whether the execution of the operation, the user The operation is executed according to the response, and the confirmation information I a is updated.
  • the third operation is an operation that depends on the observation context.
  • the operation storage execution control unit 53 sets the context dialogue flag f c and stores the Entity that matches the observation context in the dialogue cluster as context information I c.
  • the operation memory execution control unit 53 executes the dialogue cluster related to the operation depending on the observation context, it does not match the observation context based on the context information I c according to the setting of the context dialogue flag f c.
  • the inquiry of Entity is uttered, the operation is executed by the user response, and the context information I c is updated.
  • step S51 the operation memory execution control unit 53 initializes the counter n for counting operations to 1.
  • step S52 the operation memory execution control unit 53 determines whether or not the user operation information of the operation n has been supplied, and repeats the same process until it is supplied.
  • step S52 when the user operation information of operation n is supplied, the process proceeds to step S53.
  • step S53 the operation storage execution control unit 53 adds a time stamp to the user operation information of the operation n and stores it in the user operation history storage unit 54 as the user operation history.
  • step S54 the operation storage execution control unit 53 is based on the user operation history stored in the user operation history storage unit 54, by the calculation described with reference to the above-mentioned equations (1) to (4). Calculate the addiction score S n for operation n.
  • step S55 the operation memory execution control unit 53 determines whether or not the habitual score S n corresponding to the operation n is larger than the habitual threshold S th.
  • step S55 If it is determined in step S55 that the habitual score S n corresponding to the operation n is larger than the habitual threshold S th , the operation n is considered to be a highly addictive operation, and the process is performed in step S. Proceed to S56.
  • step S56 the operation memory execution control unit 53 executes the observation context-dependent operation determination process, determines whether or not the operation n is an operation that depends on the observation context, and when it is an operation that depends on the observation context, Set the context information I c and the context dialogue flag f c.
  • step S57 the operation memory execution control unit 53 determines whether or not the habitual score S n-1 of the operation n-1 immediately before the operation n is smaller than the habitual threshold S th.
  • step S57 if the habitual score S n-1 of the operation n-1 immediately before the operation n is smaller than the habitual threshold S th , the process proceeds to step S58.
  • step S58 the operation memory execution control unit 53 adds the operation n-1 to the dialogue cluster candidate.
  • step S59 the operation memory execution control unit 53 adds the operation n to the dialogue cluster candidate.
  • step S60 the operation memory execution control unit 53 determines whether or not the end of the process is instructed, and if the end is instructed, the process ends.
  • step S60 If the end is not instructed in step S60, the process proceeds to step S61.
  • step S61 the operation memory execution control unit 53 increments the counter n by 1, and the process returns to step S52.
  • the operation n immediately before the operation n is performed by the process of step S57.
  • the operation n-1 immediately before the operation n is included as the first operation of the dialogue cluster candidate by the process of step S58. To do.
  • the habitual score S n is larger than the habitual threshold S th for the operations other than the beginning. Therefore, in step S57, the habitual score S n is the habit threshold. It cannot be smaller than S th. Therefore, the process of step S58 is skipped.
  • step S55 when it is determined that the habitual score S n corresponding to the operation n is not larger than the habitual threshold S th , the operation n is considered not to be a highly addictive operation and is processed. Goes to step S62.
  • step S62 the operation storage execution control unit 53 executes an operation determination process having the same Intent but different Entity, and the operation n determines whether or not the operation has the same Intent but different Entity, and the Intent is the same.
  • Entity is a different operation in, set the selection dialogue flag f s and the option information I s .
  • step S63 the operation memory execution control unit 53 determines whether or not the selection dialogue flag f s of the operation n is set to true.
  • step S63 If it is determined in step S63 that the selection dialogue flag f s of operation n is set to true, the process proceeds to step S59.
  • step S63 If it is determined in step S63 that the selection dialogue flag f s of operation n is not set to true, the process proceeds to step S64.
  • step S64 the operation memory execution control unit 53 executes the added and deleted operation determination process, determines whether or not the operation n is either the added operation or the deleted operation, and adds the operation n.
  • the confirmation dialogue flag f a and the confirmation information I a are set, and the dummy dialogue flag f d is set as necessary.
  • step S65 the operation memory execution control unit 53 determines whether or not the confirmation dialogue flag f a of the operation n is set to true.
  • step S65 If it is determined in step S65 that the confirmation dialogue flag f a of the operation n is set to true, the process proceeds to step S59.
  • step S65 If it is determined in step S65 that the confirmation dialogue flag f a of the operation n is not set to true, the process proceeds to step S66.
  • step S66 the operation memory execution control unit 53 determines whether or not the Tammy dialogue flag f d of the operation n is set to true.
  • step S66 If it is determined in step S66 that the dummy dialogue flag f d of operation n is set to true, the process proceeds to step S59.
  • step S66 If it is determined in step S66 that the dummy dialogue flag f d of operation n is not set to true, the process proceeds to step S67.
  • step S67 the operation memory execution control unit 53 determines that the habitual score S n-1 of the previous operation n-1 is larger than the habitual threshold S th , or the selection dialogue flag f s and the confirmation dialogue. Determines if any of the flags f a , the context dialogue flag f c , and the dummy dialogue flag f d is true.
  • step S67 the addiction score S n-1 of operation n-1 is greater than the addiction threshold S th , or the selection dialogue flag f s , the confirmation dialogue flag f a , the context dialogue flag f c , and the dummy dialogue. If any of the flags f d is considered to be true, the operations up to the last minute are considered to be part of the operations included in the dialogue cluster candidates, and the process proceeds to step S68.
  • step S67 the addiction score S n-1 of the operation n-1 is not larger than the addiction threshold S th , and the selection dialogue flag f s , the confirmation dialogue flag f a , the context dialogue flag f c , If any of the and dummy dialogue flags f d is not true, the previous operation is considered to be an operation not included in the dialogue cluster candidates, and the process proceeds to step S60.
  • step S68 the operation memory execution control unit 53 determines whether or not the number of operations included in the dialogue cluster candidate composed of the operations up to the last minute is 2 or less.
  • step S68 if the number of operations included in the dialogue cluster candidates configured by the operations up to the previous stage is 2 or less, it is assumed that the dialogue cluster is not configured. Deemed, the process proceeds to step S69.
  • step S69 the operation storage execution control unit 53 clears the operation information stored as the dialogue cluster candidate, and the process proceeds to step S60.
  • step S68 when the number of operations included in the dialogue cluster candidate composed of the operations up to the previous step is not 2 or less, that is, it is considered that the dialogue cluster candidate includes 3 or more operations. Goes to step S70.
  • step S70 the operation storage execution control unit 53 sets the selection dialogue flag f s , the confirmation dialogue flag f a , the context dialogue flag f c , and the dialogue cluster candidates stored in the habitual operation / dialogue cluster storage unit 55 to the dialogue cluster candidates. Determines if any of the dummy dialogue flags f d contains an operation set to true.
  • step S70 any of the selection dialogue flag f s , the confirmation dialogue flag f a , the context dialogue flag f c , and the dummy dialogue flag f d d are included in the dialogue cluster candidates stored in the habitual operation / dialogue cluster storage unit 55. If does not include an operation in which is set to true, the process proceeds to step S69.
  • the stored dialogue cluster candidate information is cleared.
  • step S70 the dialogue cluster candidates stored in the habitual operation / dialogue cluster storage unit 55 include the selection dialogue flag f s , the confirmation dialogue flag f a , the context dialogue flag f c , and the dummy dialogue flag f d . If it is determined that any of the operations set to true is included, the process proceeds to step S71.
  • step S71 the operation storage execution control unit 53 is a cluster of both the already registered habitual operation cluster and the dialogue cluster stored in the habitual operation / dialogue cluster storage unit 55 (hereinafter, simply registered clusters). It is determined whether or not there are all the operations included in the dialogue cluster candidates currently being processed that are the same and have the same sequence (the order is the same).
  • step S71 if the already registered cluster stored in the habitual operation / dialogue cluster storage unit 55 is exactly the same as the dialogue cluster candidate currently being processed, the process proceeds to step S72.
  • step S72 the operation memory execution control unit 53 executes the context information update process of the dialogue cluster candidate, and updates the context information I c of the dialogue cluster candidate.
  • step S71 if the already registered cluster stored in the habitual operation / dialogue cluster storage unit 55 does not have the exact same as the dialogue cluster candidate currently being processed, the processing in step S72 is skipped. Then, the process proceeds to step S73.
  • step S73 the operation storage execution control unit 53 does not include any of the already registered clusters stored in the habitual operation / dialogue cluster storage unit 55 in the sequence of dialogue cluster candidates currently being processed. Judge whether or not.
  • step S73 If it is determined in step S73 that some of the already registered clusters stored in the habitual operation / dialogue cluster storage unit 55 are included in the sequence of dialogue cluster candidates currently being processed, the processing is performed. , Step S74.
  • step S74 the operation storage execution control unit 53 is a registered cluster included in the sequence of dialogue cluster candidates currently being processed among the already registered clusters stored in the habitual operation / dialogue cluster storage unit 55. Delete the cluster.
  • step S73 when it is determined that none of the already registered clusters stored in the habitual operation / dialogue cluster storage unit 55 is included in the sequence of dialogue cluster candidates currently being processed.
  • the process of step S74 is skipped, and the process proceeds to step S75.
  • step S75 the operation storage execution control unit 53 determines whether or not any of the already registered clusters stored in the habitual operation / dialogue cluster storage unit 55 can be replaced by the dialogue cluster currently being processed. To judge.
  • step S75 If it is determined in step S75 that some of the already registered clusters stored in the habitual operation / dialogue cluster storage unit 55 can be replaced by the dialogue cluster currently being processed, the process is performed in step S76. Proceed to.
  • step S76 the operation storage execution control unit 53 is registered so that it can be replaced with the dialogue of the dialogue cluster candidate currently being processed among the already registered dialogue clusters stored in the habitual operation / dialogue cluster storage unit 55. Delete the cluster.
  • step S75 If it is determined in step S75 that none of the already registered clusters stored in the habitual operation / dialogue cluster storage unit 55 can be replaced by the dialogue cluster currently being processed, step S76 is performed. The process is skipped, and the process proceeds to step S77.
  • step S77 the operation storage execution control unit 53 registers the operation of the dialogue cluster candidate currently being processed in the habitual operation / dialogue cluster storage unit 55 as a new dialogue cluster.
  • the context information is updated for the operation having the same sequence as the operation included in the dialogue cluster candidate currently being processed, and the present Those that include the operations included in the dialogue cluster candidates being processed or those that can be replaced are deleted, and the other dialogue cluster candidates currently being processed are regarded as a dialogue cluster consisting of a new plurality of operations. Therefore, it is registered in the addictive operation / dialogue cluster storage unit 55.
  • the habitual score S n is sequentially obtained, and the dialogue cluster candidate is set by comparison with the habitual threshold S th.
  • the dialogue cluster candidates that consist of operations that are completely different from the registered clusters are registered as new dialogue clusters.
  • a dialogue cluster candidate including an operation in which the dialogue flag is set to true, which is a plurality of operations having a high habitual score and a high habit as a user operation, as a dialogue cluster. Will be.
  • the registered dialogue clusters may become habitually divergent over time, so dialogue clusters that have been registered for a predetermined period or longer may be deleted.
  • operation 1 is an operation for transitioning to the route information site
  • operation 2 is an operation for transitioning to the transfer guidance page
  • operation 3 is an operation for inputting "Osaki” at the departure station.
  • Operation 4 is an operation to input "Hon-Atsugi” at the arrival station
  • operation 5 is an operation to select "departure” as a date and time condition
  • operation 6 is an operation to check the condition for paid limited express use. It is assumed that the operation 7 is an operation of selecting the order of arrival as the display condition, and the operation 8 is an operation of clicking the search button.
  • the clusters of operations 1 to 3 and the clusters of operations 5 to 8 are individually registered as habitual operation clusters. That is, substantially, the habitual operation cluster in the state ST101 is divided and registered, and the batch execution cannot be performed.
  • operation 4 and operation 4' are the same Intent (operation type) called "arrival station input", and the station names of the arrival station are "Hon-Atsugi” and “Fujisawa”, respectively, and the Entity (attribute) is different. Is.
  • the operation memory execution control unit 53 sets the same Intent “arrival station input” for the operation 4, and then sets the selection dialogue flag f s. and, setting the option information I s.
  • the selection dialogue flag f s is, for example, among the operations that are collectively operated by the habitual operation cluster, when the operations with the same Intent but different Entity are performed, the operation options are given to the user by dialogue. It is a flag to set whether or not to realize the process of presenting and selecting.
  • the selection dialogue flag f s is set to true when the process of presenting operation options by dialogue and causing the user to select is realized, and false is set otherwise.
  • choices information I s when selected dialogue flag f s is set to true, a data option as specifically presented to the user, and choice, the number and choice each of which is selected choices Information on the total number of times selected is registered.
  • selection information I s as "Total: 2, Hon-Atsugi: 1, Fujisawa: 1" and the state and is shown when it is registered with an initial value, respectively, There are Hon-Atsugi and Fujisawa as options, and it is shown that each is selected once, for a total of two times. The total number of times is set to 2 as an initial value.
  • step S101 the operation memory execution control unit 53 determines whether or not the number of operations stored in the dialogue cluster candidate is 1 or more.
  • step S101 If it is determined in step S101 that the number of operations stored in the dialogue cluster candidate is 1 or more, the process proceeds to step S102.
  • step S102 the operation storage execution control unit 53 determines whether or not there is a stored cluster in the cluster stored in the habitual operation / dialogue cluster storage unit 55, in which the sequence matches the conversation cluster candidate in the prefix. judge.
  • step S102 if it is determined that there is a stored cluster whose sequence is prefix-matched with the dialogue cluster candidate in the dialogue cluster stored in the addictive operation / dialogue cluster storage unit 55, the process proceeds to step S103. move on.
  • step S103 the operation storage execution control unit 53 determines whether or not the operation n and the Intent match with the operation M n immediately after the matching of the stored clusters in which the dialogue cluster candidate and the sequence are prefix-matched.
  • step S103 if the Intent of the operation M n immediately after the match of the stored cluster whose sequence matches the conversation cluster candidate in the prefix matches the Intent of the operation n, the process proceeds to step S104.
  • step S104 the operation storage execution control unit 53, are set interactively select flag f s in operation M n, whether interactively select flag f s is set to true, i.e., choice information I s is set Determine if it is.
  • step S104 if the selected dialogue flag f s is considered to have been set to true, alternative information I s is set, the process proceeds to step S105.
  • step S105 the operation storage execution control unit 53 sets the data reflecting the Entity information of the operation n choices information I s operation M n of the stored cluster that prefix match as "option information I s operation n ..
  • step S106 the operation memory execution control unit 53 sets the selection dialogue flag f s for the operation n, and further sets the selection dialogue flag f s to true.
  • step S104 it is not set interactively select flag f s, or is set to false, if the option information I s is deemed not set, the process proceeds to step S107.
  • step S107 the operation memory execution control unit 53 determines whether or not the operation n and the Entity are different from the operation M n immediately after the match of the dialogue cluster whose sequence is prefix-matched with the dialogue cluster candidate.
  • step S107 if the Entity of the operation M n immediately after the match of the dialogue cluster whose sequence matches the conversation cluster candidate in the prefix is different from the Entity of the operation n, the process proceeds to step S108.
  • step S108 the operation storage execution control unit 53 sets 1 as an initial value of the selected number of choices information I s operations n.
  • step S101 when it is determined that the number of operations stored in the dialogue cluster candidate is not 1 or more, in step S102, the habitual operation / dialogue cluster storage unit 55 is stored in the cluster. If it is determined that there is no dialogue cluster whose sequence matches the dialogue cluster candidate prefix, in step S103, the Intent of the operation M n immediately after the match of the stored cluster whose sequence matches the dialogue cluster candidate prefix is the operation n. If it does not match the Intent of, or if the Entity of the operation M n immediately after the match of the stored cluster whose sequence matches the dialogue cluster candidate in the prefix is the same as the Entity of the operation n in step S107, the process is finish.
  • the dialogue cluster in the state ST111 is the same dialogue cluster as the dialogue cluster in the state ST103 in FIG.
  • the operation memory execution control unit 53 moves the operation memory execution control unit 53 to the left of FIG. 12 related to the transfer guidance. Recognize that you have been instructed to run the dialogue cluster indicated by the section.
  • the operation memory execution control unit 53 executes the operations 1 to 3 shown in the state ST111 of FIG. 12 in response to the utterance of "transfer guidance".
  • an operation storage execution control unit 53 performs the process of Step 4, since the selection dialogue flag f s is set to true, according to choice information I s, to present choices to the input probability descending order .
  • the latest input result may be presented as an option with a high input probability.
  • the operation memory execution control unit 53 outputs a voice prompting the selection of the presented option such as "Where is the arrival place?".
  • the operation memory execution control unit 53 recognizes that "Hon-Atsugi” has been selected as an option.
  • an operation storage execution control unit 53 updates the choice information I s to input Hon-Atsugi to arrival station, to perform operations 5-8 state ST111.
  • This process is executed when the operation has the same Intent but different Entity and the selection dialogue flag f s is set to true. That is, it is a process executed when the process of operation 4 in the state ST111 of FIG. 12 is performed.
  • step S131 the operation storage execution control unit 53, displayed as a choice in the order input probability Entity higher included in the selection information I s (presented) to.
  • the operation storage execution control unit 53 displayed as a choice in the order input probability Entity higher included in the selection information I s (presented) to.
  • FIG. 12 Hon-Atsugi and Fujisawa are presented as options, but since the input probabilities are the same, for example, the most recently input option may be presented first as an option with a high input probability.
  • step S132 the operation memory execution control unit 53 outputs a system utterance that prompts the user to select (response) an option based on the inquiry phrase registered in advance for each Intent.
  • the operation memory execution control unit 53 controls the response generation unit 63 to generate a system speech that prompts the user to select (response) an option based on the inquiry phrase registered in advance for each Intent. Then, it is output as data to the voice synthesis processing unit 65.
  • the voice synthesis processing unit 65 performs voice synthesis processing on the data of the system utterance, and causes the voice output unit 67 to output it as voice.
  • step S133 the operation memory execution control unit 53 determines whether or not there is a response utterance that is the result of the user's selection for the option, and repeats the same process until it is determined that there is a response utterance.
  • the voice signal corresponding to the user's utterance input via the voice input unit 56 is voice-recognized by the voice recognition processing unit 57 and converted into text. Based on the utterance phrase, it is determined whether or not there is a response utterance, and the same process is repeated until it is determined that there is a response utterance.
  • step S133 if it is determined that there is a response utterance that is the result of the user's selection for the option, the process proceeds to step S134.
  • step S134 the operation memory execution control unit 53 executes the operation (operation 4) by the Entity of the option corresponding to the response utterance.
  • step S135 the operation storage execution control unit 53, the response utterance of the user is equal to or a Entity included in alternative information I s.
  • step S135 if the response utterance of the user is determined to be a Entity included in alternative information I s, the process, the process proceeds to the step S136.
  • step S136 the operation storage execution control unit 53 increments the number of Entity selected by the response utterance included in alternative information I s.
  • step S135 the response utterance users, if it is determined that the Entity is not included in the selection information I s, the process proceeds to step S137.
  • step S137 the operation storage execution control unit 53, in the alternative information I s, to register the newly selected Entity by the response utterance newly added, to set the count to 1 as the initial value.
  • step S138 the operation storage execution control unit 53 increments the information total number of choices information I s (total number).
  • step S139 the operation storage execution control unit 53 determines whether the input probability in the Entity there is a prescribed value or more Entity in choice information I s.
  • step S139 if the given input probability in the Entity is the specified value or more Entity in choice information I s, the process proceeds to step S140.
  • step S140 the operation memory execution control unit 53 sets the selection dialogue flag f s to false, sets the operation to be fixed to the Entity whose input probability is equal to or higher than the specified value, and ends the process.
  • step S139 if the input probability in the Entity is no specified value or more Entity in choice information I s, it skips the processing in step S140, the process ends.
  • the number of times is incremented by 1, and the total number of times (total number of times) is incremented by 1.
  • the number of times is set to 1.
  • the Entity when the Entity becomes a fixed operation in this way, after that, it functions as a normal habitual operation cluster without dialogue, and a plurality of operations corresponding to changes in the habitual operation are collectively executed. Will be done.
  • the dialogue cluster is set and the dialogue processing is performed so as to prompt the selection of the option, and further, the predetermined Entity is repeatedly selected based on the input probability. Then, when the value exceeds the specified value, the operation fixed to the predetermined Entity is performed, and flexible correspondence becomes possible.
  • the habitual operation cluster consisting of operations 1 to 8 shown in the state ST131 on the left side of FIG. 14 is collectively executed, for example, as shown in the state ST132 in the central part of FIG. 14, the operation is performed. It is assumed that the operation 4'is performed between the 4th and 5th, and the operation of inputting "Yokohama" as the waypoint is performed.
  • the habitual score S n is smaller than the habitual threshold S th , but the time interval T n is smaller than the threshold T th.
  • the operation memory execution control unit 53 sets the operation 4'to the operation 5 as shown in the state ST133 on the right side of FIG. 14, and then advances the subsequent operations by one. Further, after setting the operation 5 to "Enter” Yokohama "in the transit station", the confirmation dialogue flag f a and the confirmation information I a are set.
  • a confirmation dialogue flag f a for example, when the operation of adding the operation that are collectively operated set by addictive operation cluster is made to select the execution of additional operations by the interaction to the user It is a flag to set.
  • the confirmation dialogue flag f a is, true when inquiring whether or not to perform the user presents an additional operation by dialogue is set, false is set when not.
  • the selection dialogue flag f a is set for operation 5 instead of operation 4'.
  • Confirmation information I a is information for specifically calculating the input probability of the user when the confirmation dialogue flag f a is set to true, and is information on the number of times the execution is instructed and the total number of times (total number of times). Is registered. The initial value of the total number of times is 2, and the execution probability is set to 0.5 even in the initial setting.
  • the execution probability instructed to execute is calculated to 0.5.
  • the dialogue cluster in the operation 6, when the addictive score S n is smaller than the addictive threshold S th , but the time interval T n is shorter than the threshold T th , the dialogue cluster
  • the operation memory execution control unit 53 sets the operation 6 to "check the conditions for paid limited express use" as shown in the state ST142 on the right side of FIG. 15, and then sets the confirmation dialogue flag f a. And the confirmation information I a .
  • the operation memory execution control unit 53 is shown in the state ST142 of FIG. as such, setting a confirmation dialogue flag f a to the operation 6.
  • the execution probability instructed to execute is calculated to 0.5.
  • step S161 the operation memory execution control unit 53 determines whether the time interval T n of the operation n is equal to or greater than a predetermined threshold value T th , that is, whether the time interval is shorter than the threshold value.
  • step S161 if the time interval T n of the operation n is equal to or greater than a predetermined threshold value T th , the process proceeds to step S162.
  • step S162 the operation memory execution control unit 53 determines whether or not the number of operations stored in the dialogue cluster candidate is 1 or more.
  • step S162 If it is determined in step S162 that the number of operations stored in the dialogue cluster candidate is 1 or more, the process proceeds to step S163.
  • step S163 the operation storage execution control unit 53 determines whether or not there is a stored cluster whose sequence matches the conversation cluster candidate in the cluster stored in the habitual operation / dialogue cluster storage unit 55. To do.
  • step S163 If it is determined in step S163 that there is a stored cluster whose sequence is prefix-matched with the dialogue cluster candidate in the cluster stored in the addictive operation / dialogue cluster storage unit 55, the process proceeds to step S164.
  • step S164 the operation storage execution control unit 53 determines whether or not there is an operation that is the same as the operation n after the operation M n immediately after the match of the stored cluster whose sequence is prefix-matched with the dialogue cluster candidate, that is, the operation. Determine if n is an additional operation.
  • step S164 when it is determined that there is no operation same as the operation n after the operation M n immediately after the match of the stored cluster whose sequence matches the conversation cluster candidate in the prefix, that is, the operation n is an additional operation. , The process proceeds to step S165.
  • step S165 the operation memory execution control unit 53 sets the confirmation information I a in the operation n and sets the initial value.
  • step S166 the operation memory execution control unit 53 sets the confirmation dialogue flag f a in the operation n, and further sets the confirmation dialogue flag f a to true.
  • step S164 it is determined that there is an operation same as the operation n after the operation M n immediately after the match of the stored cluster whose sequence matches the conversation cluster candidate in the prefix, that is, the operation n is not an additional operation. If so, the process proceeds to step S167.
  • step S167 the operation storage execution control unit 53 determines whether or not the operation M n immediately after the match of the stored cluster whose sequence is prefix-matched with the dialogue cluster candidate is the same as the operation n, that is, a delete operation. Judge whether or not.
  • step S167 if the operation M n immediately after the match of the stored cluster whose sequence is prefix-matched with the dialogue cluster candidate is the same as the operation n and is considered not to be a delete operation, the process proceeds to step S168. ..
  • step S168 the operation storage execution control unit 53 is confirmed dialogue flag f a is set as the operation M n, whether confirmation dialogue flag f a is set to true, i.e., confirmation information I a is set Determine if it is.
  • step S168 is set a confirmation dialogue flag f a to the operation M n, confirmation dialogue flag f a is set to true, i.e., if the confirmation information I a is considered to be set, the process , Step S169.
  • step S169 the operation storage execution control unit 53 sets the confirmation information I a of the operation n in the confirmation information I a of the operation M n of the stored cluster that matches the prefix, and sets the data reflecting the execution information of the operation n in the confirmation information I a of the operation n.
  • the process returns to step S166. That is, here, only the confirmation information I a is updated.
  • step S167 if the operation M n immediately after the match of the stored cluster whose sequence is prefix-matched with the dialogue cluster candidate is not the same as the operation n and is regarded as a delete operation, the process is step S170. Proceed to.
  • step S170 the operation storage execution control unit 53 deletes from the operation M n of the memorized cluster that matches in front to the operation immediately before the same operation as the operation n as the habitual operability / dialogue cluster storage unit A d. Store in 55.
  • step S171 the operation storage execution control unit 53, the number of operations stored as the delete operation sequence A d habit operability / dialogue cluster storage section 55 a predetermined threshold value (e.g., three) or less than To judge.
  • a predetermined threshold value e.g., three
  • a predetermined threshold value is set for the number of operations stored as the deletion operation array Ad.
  • the predetermined threshold value set for the number of operations stored in the delete operation array Ad may be arbitrarily set.
  • step S171 the delete operation sequence A d as the storage operation being the number predetermined threshold (e.g., three) if it is less, the process proceeds to step S172.
  • the number predetermined threshold e.g., three
  • step S172 the operation memory execution control unit 53 sets the initial value of the confirmation information I a for all the operations stored as the delete operation array A d , sets the confirmation dialogue flag f a to true, and interacts with the dialogue. It is stored in the habitual operability / dialogue cluster storage unit 55 as a cluster candidate.
  • step S173 the operation memory execution control unit 53 sets the dummy dialogue flag f d for the operation n, and sets the dummy dialogue flag f d to true.
  • step S168 when the confirmation dialogue flag f a of the operation M n is set to false, that is, when it is considered that the confirmation information I a is not set, the process proceeds to step S173.
  • step S161 when the time interval T n of the operation n is not equal to or more than a predetermined threshold value T th, it is determined in step S162 that the number of operations stored in the dialogue cluster candidate is not 1 or more. In this case, if it is determined in step S163 that there is no stored cluster whose sequence is prefix-matched with the dialogue cluster candidate in the cluster stored in the addictive operation / dialogue cluster storage unit 55, or in step S171. If the number of operations stored as the delete operation array Ad is not less than or equal to a predetermined threshold value (for example, 3), the process ends.
  • a predetermined threshold value for example, 3
  • the operations to be included in the dialogue cluster candidates are described in steps S62 to S66 in the dialogue clustering process described with reference to the flowchart of FIG. This is a flag for adding to the dialogue cluster candidate by transitioning from the process to the process of step S59.
  • the dummy dialogue flag f d is a dialogue flag intended to be added to the dialogue cluster candidates , the operation in which the dummy dialogue flag f d is true can be dialogued with the user even at the time of execution. Not done.
  • the habitual score S n is lower than the threshold value S th because the number of transitions F n and the transition probability P n are low, but the dialogue cluster candidate.
  • the dummy dialogue flag f d is set to true because it is an operation that should be included in.
  • step S168 in the flowchart of FIG. 16 since the confirmation dialogue flag f a of the operation M n of the prefix matching cluster is not true, the process proceeds to step S173 and the dummy dialogue flag f d is true.
  • step S66 in the determination in step S66 in the flowchart of FIG. 9, it is determined that the dummy dialogue flag f d is true, the process proceeds to step S59, and the operation 5 in the state ST103 of FIG. 10 is added as a dialogue cluster candidate. Will be done.
  • the habitual score S n is lower than the threshold value S th because the number of transitions F n and the transition probability P n are low.
  • the dummy dialogue flag f d is set to true because it is an operation that should be included in the dialogue cluster candidates.
  • step S168 in the flowchart of FIG. 16 since the confirmation dialogue flag f a of the operation M n of the prefix matching cluster is not true, the process proceeds to step S173 and the dummy dialogue flag f d is true.
  • step S66 in the determination in step S66 in the flowchart of FIG. 9, it is determined that the dummy dialogue flag f d is true, the process proceeds to step S59, and the operation 6 in the state ST133 of FIG. 14 is added as a dialogue cluster candidate. Will be done.
  • the dummy dialogue flag f d is set to true.
  • step S167 in the flowchart of FIG. 16 since the operation M n and the operation n of the prefix matching cluster are not the same, the process proceeds to step S170.
  • step S170 when the operations M n to the operation n of the prefix match cluster are stored in the delete operation array Ad by the process of step S170, the number of stored operations is 3 or more in step S171. The process proceeds to step S172.
  • step S172 the Tammy dialogue flag f d is set to true by the process of step S173.
  • step S66 in the determination in step S66 in the flowchart of FIG. 9, it is determined that the dummy dialogue flag f d is true, the process proceeds to step S59, and the operation 7 in the state ST142 is added as a dialogue cluster candidate.
  • the dialogue cluster in the state ST161 is the same dialogue cluster as the dialogue cluster in the state ST133 in FIG.
  • the operation memory execution control unit 53 moves the operation memory execution control unit 53 to the left of FIG. 17 related to the transfer guidance. Recognize that you have been instructed to run the dialogue cluster indicated by the section.
  • the operation memory execution control unit 53 executes the macros of operations 1 to 4 shown in the left part of FIG. 17 in response to the utterance of "transfer guidance".
  • operation memory execution control unit 53 the confirmation dialogue flag f a to the processing of the operation 5 is set to true, and outputs a voice to prompt the confirmation such as "Are you sure you want to via the Yokohama Station?".
  • the operation memory execution control unit 53 recognizes that it has been instructed to execute the operation of "inputting Yokohama to the transit station".
  • operation storage execution control unit 53 execution count exec the total number to reflect the execution information to verify the information I a indicating that the process of "enter Yokohama via the station" is executed ( The total number of times) is incremented and updated by 1, and operations 5 to 8 are executed.
  • the operation memory execution control unit 53 does not execute the operation of "inputting Yokohama to the transit station". Recognize that was instructed.
  • the operation memory execution control unit 53 performs only the total number of times (total number of times) so as to reflect the execution information indicating that the process of "inputting Yokohama to the transit station" was not executed in the confirmation information I a. Is incremented by 1 to update, and operations 6 to 8 are executed.
  • FIG. 17 an example of utterance generation in the case of an additional operation has been described, but since the same applies to the case of a delete operation, the description thereof will be omitted.
  • This process is executed when the operation n in which the confirmation dialogue flag f a is set to true is performed. That is, for example, it is a process executed when the process of operation 5 in the state ST161 of FIG. 17 is performed.
  • step S191 the operation memory execution control unit 53 outputs a system utterance prompting the user to execute or not (response) based on the inquiry phrase registered in advance for each Intent.
  • step S192 the operation memory execution control unit 53 determines whether or not there is a response utterance instructing whether or not execution is possible from the user, and repeats the same process until it is determined that there is a response utterance.
  • step S192 if it is deemed that there is a response utterance instructing whether or not the user can execute the process, the process proceeds to step S193.
  • step S193 the operation memory execution control unit 53 determines whether or not the response utterance instructing whether or not the execution is possible from the user approves the execution.
  • step S193 if the response utterance instructing whether or not the execution is possible from the user approves the execution, the process proceeds to step S194.
  • step S194 the operation memory execution control unit 53 executes the operation n.
  • step S195 the operation memory execution control unit 53 increments the execution number exec in the confirmation information I a by 1.
  • step S196 the operation memory execution control unit 53 increments the total number of times (total number of times) in the confirmation information I a by 1.
  • step S193 if the response utterance instructing whether or not the execution is possible from the user does not approve the execution, the processes in steps S194 and S195 are skipped.
  • step S197 the operation storage execution control unit 53 determines as to calculate the execution probability in confirmation information I a, calculated execution probability to or greater than the upper limit specified value.
  • step S197 if the execution probability in the confirmation information I a is equal to or greater than the upper limit specified value, the process proceeds to step S198.
  • step S198 the operation storage execution control unit 53, operation n the result of execution probability rises as an additional operation, it is assumed that an operation to be incorporated in the normal habitual operation cluster, confirm the operation n dialogue flag f a Is set to false and the process ends.
  • step S197 if the execution probability in the confirmation information I a is not equal to or more than the upper limit specified value, the process proceeds to step S199.
  • step S199 the operation memory execution control unit 53 calculates the execution probability in the confirmation information I a , and determines whether or not the calculated execution probability is equal to or less than the lower limit specified value.
  • step S199 if the execution probability in the confirmation information I a is equal to or less than the lower limit specified value, the process proceeds to step S200.
  • step S200 the operation memory execution control unit 53 considers that the operation n is a state in which the deleted operation is not actually used and the execution probability is lowered, and the deleted operation may be deleted. Delete from the interactive cluster and end the process.
  • step S200 If the execution probability in the confirmation information I a is not equal to or less than the lower limit specified value in step S199, the process in step S200 is skipped and the process ends.
  • the confirmation dialogue flag f a is set to true operation, prompting the response of whether to execute the confirmation information I a, executes a process corresponding to the response according to whether execution.
  • the add operation when the add operation becomes a fixed operation or the delete operation is deleted, it functions as a normal habitual operation cluster in which no dialogue is made thereafter.
  • a habitual operation cluster including an operation of turning off the air conditioner with the utterance phrase "good night” by combining a plurality of habitual operations at bedtime.
  • the "operation to turn off the air conditioner" is deleted from the macro consisting of the habitual operation cluster, and thereafter.
  • the macro is executed without turning off the air conditioner without inquiring by the user's "good night” utterance.
  • the macro is executed without performing the "operation to turn off the air conditioner” by making an utterance such as turning on the air conditioner and going to sleep as a habitual operation of the user as the season changes (it gets hot). As such, it is possible to change the habitual operation cluster.
  • the state ST181 is the same as the state ST101 in FIG.
  • the location attribute is set as the dependent context type D c for the departure station input of operation 3 among operations 1 to 8 shown in the state ST181 on the left side of FIG.
  • Dependent context type D c is information that specifies the type of context information used when a habitual operation is performed.
  • the location attribute is set as the dependent context type D c in this way, for example, the position information detected (observed) by the GPS sensor or the like is acquired as the observation context information Co , and the operation 3 When a match is made by comparison with the Entity of, the contextual dialogue flag f c is set as shown in the state ST182.
  • the context dialogue flag f c means that, for example, among the operations that are collectively operated by the habitual operation cluster , the Entity of the operation for which the dependent context type D c is set and the observation context information Co are different operations. In this case, it is a flag that presents operation options to the user by dialogue and sets whether or not to realize the process of making the selection.
  • the context information I c is set in the initial value state.
  • the context information I c is set to "Location" as the dependency context type D c set in advance as the initial value
  • the total number of detections is set to 2 (total: 2)
  • the observation context. 1 is set as the number of input of information Co (C o : 1)
  • Osaki is set to 1 as the number of input of Entity (entity: ⁇ Osaki: 1 ⁇ ).
  • the total number of times of context information Ic, the input Entity, or the observation context information Co is incremented by 1, and the input probability (number of inputs / total number of times) of the options is calculated.
  • the total number of times total is set to 2 so that the input probabilities of the observation context information Co input times and the Entity input times are the same.
  • the input probabilities of the observation context information Co and Osaki are 0.5.
  • observation context-dependent operation determination process will be described with reference to the flowchart of FIG.
  • the observation context-dependent operation determination process in the flowchart of FIG. 20 is the process of step S56 in the flowchart of FIG. 9.
  • step S221 the operation memory execution control unit 53 determines whether or not the dependent context type D c is set in the Intent attribute of the operation n.
  • step S221 If it is determined in step S221 that the dependent context type D c is set in the Intent attribute of operation n, the process proceeds to step S222.
  • step S222 the operation memory execution control unit 53 determines whether or not the observation context information Co corresponding to the dependent context type D c matches the Entity of the operation n.
  • step S222 If it is determined in step S222 that the observation context information Co corresponding to the dependent context type D c matches the Entity of the operation n, the process proceeds to step S223.
  • step S223 the operation memory execution control unit 53 sets the initial value of the context information I c in the operation n.
  • step S224 the operation memory execution control unit 53 sets the context dialogue flag f c for the operation n and sets the context dialogue flag f c to true.
  • the observation context information Co of the dependency context type D c set in advance matches the Entity of the operation n
  • the number of inputs of and entity is set to 1, the total number of times is set to 2, and the context dialogue flag f c is set to true.
  • the context information update process of the dialogue cluster candidate in the flowchart of FIG. 21 is the process of step S72 in the flowchart of FIG. 9.
  • step S251 the operation storage execution control unit 53 sets the unprocessed operation among the stored operations of the cluster Z in the same sequence as the dialogue cluster candidate to the operation m to be processed.
  • step S252 the operation memory execution control unit 53 determines whether the context dialogue flag f c of the operation m in the dialogue cluster candidate is true and the context dialogue flag f c of the operation m in the stored cluster Z is true. Is determined.
  • step S252 if the context dialogue flag f c of the operation m in the dialogue cluster candidate is true and the context dialogue flag f c of the operation m in the stored cluster Z is determined to be true, the process is performed in step S253. Proceed to.
  • step S253 the operation storage execution control unit 53, and Entity E c of context information I c in the operation in the dialogue cluster candidates m, input probability of context information I c of the operation m in the stored cluster Z is the maximum value Determine if Entity E max matches.
  • step S253 if the Entity E c of the context information I c in the operation m in the dialogue cluster candidate does not match the Entity E max in which the input probability of the context information I c of the operation m in the stored cluster Z is the maximum value. If determined, the process proceeds to step S254.
  • step S254 the operation memory execution control unit 53 increments the number of times of inputting the observation context information Co of the context information I c of the operation m of the cluster Z by 1.
  • step S255 the operation memory execution control unit 53 increments the total number of times total of the context information I c of the operation m of the cluster Z by 1.
  • step S256 the operation storage execution control unit 53, the context information I c of the operation m of the stored cluster Z, sets the context information I c of the operation m interactive cluster candidates.
  • step S253 when the Entity E c of the context information I c in the operation m in the dialogue cluster candidate matches the Entity E max in which the input probability of the context information I c of the operation m in the stored cluster becomes the maximum value. If it is determined, the process of steps S254 and S255 is skipped, and the process proceeds to step S256.
  • context information I c of the operation m interactive cluster candidates is set to the context information I c and the same information already stored in the cluster Z.
  • step S257 the operation storage execution control unit 53 determines whether or not there is an unprocessed operation among the operations of the stored cluster Z in the same sequence as the dialogue cluster candidate.
  • step S257 If it is determined in step S257 that there is an unprocessed operation among the operations of the stored cluster Z in the same sequence as the dialogue cluster candidate, the process returns to step S251.
  • steps S251 to S257 are repeated until all the operations of the stored cluster Z in the same sequence as the dialogue cluster candidate are processed.
  • step S257 when it is determined that there is no unprocessed operation among the operations of the stored cluster Z having the same sequence as the dialogue cluster candidate, all the operations of the stored cluster Z having the same sequence as the dialogue cluster candidate are performed. If it is considered that the process has been performed, the process proceeds to step S258.
  • step S258 the operation storage execution control unit 53 deletes the stored cluster Z in the same sequence as the dialogue cluster candidate, and ends the process.
  • the dialogue cluster in the state ST201 is the same dialogue cluster as the dialogue cluster in the state ST182 in FIG.
  • the operation memory execution control unit 53 moves the operation memory execution control unit 53 to the left of FIG. 22 related to the transfer guidance. Recognize that you have been instructed to run the dialogue cluster indicated by the section.
  • the operation memory execution control unit 53 executes the macros of operations 1 and 2 shown in the left part of FIG. 22 in response to the utterance of "transfer guidance". Further, here, it is assumed that "Shinagawa" is detected as the observation context information Co.
  • the operation memory execution control unit 53 executes the process of the operation 3, and since the context dialogue flag f c is set to true, the operation memory execution control unit 53 executes the process based on the context information I c.
  • the operation memory execution control unit 53 is the Entity.
  • the options in are presented in descending order of input probability. When the input probabilities are the same, for example, the most recently input options may be presented first.
  • the operation memory execution control unit 53 outputs a voice prompting the selection of the presented option such as "Is the departure station Shinagawa?".
  • the operation memory execution control unit 53 recognizes that "Shinagawa" has been selected as an option.
  • the operation memory execution control unit 53 inputs Shinagawa to the departure station to update the context information I c , and executes operations 4 to 8.
  • Entity E max (Osaki), which has the largest input probability among the Entity in the context information I c , and the current observation context information Co (Shinagawa) do not match.
  • the Entity to be an option is presented, the utterance of the inquiry is output, and the macro is executed by the selected Entity.
  • Entity E max (Osaki) which has the largest input probability among the Entity in the context information I c , and the current observation context information Co (Osaki) match, an inquiry is made to the user.
  • the macro is executed by Entity E max (Osaki) without any.
  • Input probability specified value of the observed context information C o in context information I c becomes the context dialogue flag f c is a false, since the macro observation context information C o is fixed as Entity Is executed.
  • the context dialogue flag f c is set to false, and thereafter the input probability is fixed to the Entity of the specified value or more.
  • the macro is executed.
  • Entity is presented as an option and one of them is selected. An inquiry is made to prompt the user, and processing is executed according to the selection result.
  • This process is executed when the operation in which the context dialogue flag f c is set to true is performed. That is, for example, it is a process executed when the process of operation 3 in the state ST201 of FIG. 22 is performed.
  • step S281 the operation storage execution control unit 53, the observation context information C o of the current preset dependent context type D c, Entity E with the maximum value input probability within the Entity in context information I c Determine if max matches.
  • step S281 it is determined and the observed context information C o dependent context type D c which is the current preset, and the input probability among Entity in context information I c matches and the Entity E max of the maximum value If so, the process proceeds to step S282.
  • step S282 the operation storage execution control unit 53 executes an operation n observation context information C o of the current preset dependent context type D c as Entity.
  • step S281 the observation context information C o of the current preset dependent context type D c, the input probability in Entity in context information I c does not match and the Entity E max of the maximum value If determined, the process proceeds to step S283.
  • step S283 the operation memory execution control unit 53 outputs a system utterance that prompts the user to select (response) an option based on the inquiry phrase registered in advance for each Intent.
  • step S284 the operation memory execution control unit 53 determines whether or not there is a response utterance that is the result of the user's selection for the option, and repeats the same process until it is determined that there is a response utterance.
  • step S284 if it is determined that there is a response utterance that is the result of the user's selection for the option, the process proceeds to step S285.
  • step S285 the operation memory execution control unit 53 executes the operation n by the Entity of the option corresponding to the response utterance.
  • step S286 the operation storage execution control unit 53, the observation context information C o is determined whether the Entity response utterance of the user.
  • step S286 if the observed context information C o is determined to be Entity response utterance of the user, the process proceeds to step S287.
  • step S287 the operation storage execution control unit 53, the input number of the observation context information C o included in the context information I c is incremented by 1, the process proceeds to step S291.
  • step S286 if the observed context information C o is determined not to be Entity response utterance of the user, the process proceeds to step S288.
  • step S288 the operation memory execution control unit 53 determines whether or not the Entity selected by the response utterance is an Entity included in the context information I c.
  • step S288 If it is determined in step S288 that the Entity selected by the response utterance is an Entity included in the context information I c , the process proceeds to step S289.
  • step S289 the operation memory execution control unit 53 increments the information on the number of inputs of the Entity selected by the user in the context information I c by 1.
  • step S288 if it is determined that the Entity selected by the response utterance is not the Entity included in the context information I c , the process proceeds to step S290.
  • step S290 the operation memory execution control unit 53 newly adds and sets the number of inputs of the Entity selected by the user in the context information I c as the initial value 1.
  • step S291 the operation memory execution control unit 53 increments the information of the total number of times total in the context information I c by 1.
  • step S292 the operation storage execution control unit 53 determines whether the input probability of observing context information C o in the context information I c is the specified value or more.
  • step S292 when the input probability of observing context information C o in the context information I c is determined to be greater than or equal to the prescribed value, the process proceeds to step S293.
  • step S293 the operation storage execution control unit 53, a context dialogue flag f c and sets to false, set the operation of fixing the Entity to observation context information C o, the process ends.
  • step S292 If it is determined in step S292 that the input probability of the observation context information Co in the context information I c is not greater than or equal to the specified value, the process proceeds to step S294.
  • step S294 the operation memory execution control unit 53 determines whether or not there is an Entity whose input probability is equal to or higher than the specified value among the Entity in the context information I c.
  • step S294 If it is determined in step S294 that there is an Entity whose input probability is equal to or higher than the specified value among the Entity in the context information I c, the process proceeds to step S295.
  • step S295 the operation memory execution control unit 53 sets the context dialogue flag f c to false, sets the operation to be fixed to the Entity whose input probability is equal to or higher than the specified value, and ends the process.
  • step S295 if there is no Entity whose input probability is equal to or higher than the specified value among the Entity in the context information I c, the process of step S295 is skipped and the process ends.
  • Entity E max which is the maximum value of Entity in the context information I c
  • Entity E max is set. The operation is executed as an Entity.
  • the number of times is incremented by 1 and the total number of times is incremented by 1.
  • the number of times is set to 1.
  • the user when the input probabilities of the observation context information Co and Entity are calculated sequentially and exceed the specified value, the user always selects the option of the observation context information Co or Entity of the specified value or more.
  • the context dialogue flag f c is set to false, and the input probability that is always selected is set to the operation fixed to the observation context information Co or Entity that is equal to or greater than the specified value.
  • the arrival station input operation of the transfer guide may be executed based on the immediately preceding dialogue.
  • the arrival station input operation of the transfer guide is executed.
  • the dependent context type D c of the location of the arrival station is not the location (location information) but the immediately preceding dialog (dialogue).
  • the observation context information Co obtained based on the content of the immediately preceding chat is not "Yokohama” registered as the Entity of the context information I c, but "Yokohama”.
  • Ikebukuro an utterance is made asking whether the arrival station is Ikebukuro, which is the observation context information Co , the arrival station input operation is performed according to the user's response, and the macro is executed.
  • the dependent context type D c may be vital context information.
  • the dependent context type D c may be set to vital context information such as pulse indicating the pulse value, and when a macro including a music playlist selection operation exists, the playlist may be set.
  • the pulse range may be set as meta information.
  • a calm song is set for the playlist corresponding to the meta information of the low pulse range, and the playlist corresponding to the meta information of the high pulse range is for running. Make sure that the song is set.
  • a playlist having meta information in which the pulse value, which is the observation context information Co at the time of cluster execution, is the pulse range may be presented as an option so that an inquiry can be made.
  • dependent context type D c in the playlist selection operation may be set to emotion indicating emotions, for example.
  • the context information when the dependent context type D c is set to emotion is, for example, an emotion recognition result based on the user's image recognition result, pulse value, blood pressure value, or the like, and corresponds to the emotion recognition result. Inquiries may be made by utterances that prompt the playlist selection operation.
  • Dependency context type D c may be set to an attribute that indicates the attributes of surrounding people.
  • the context information when the dependent context type D c is set to attribute is the attribute of the person around the user who performs the viewing video content selection operation.
  • the content that is an option in the viewing video content selection operation can be set as meta information, for example, for children (up to 12 years old) or , 18 years old and over, etc. should be set.
  • the dependent context type D c consisting of the ages of the people around the user recognized by the image in the target age range set as meta information in the selected content. If the observation context information Co of is detected, the context dialogue flag f c is set to true so that the target age range of the selected content is stored in the meta information as the Entity of the context information I c.
  • the macro consisting of the viewing video content selection operation is executed, if the observation context information Co consisting of the ages of the people around the image-recognized user is outside the target age range stored in the context information I c. , At the time of the viewing video content selection operation, a person outside the target age may be in the vicinity, but the person may speak so as to inquire whether or not the video may be played.
  • an inquiry may be made as to whether or not the video content selection for children, which is habitually viewed with a child, may be selected even when there are no children.
  • Dependent context type D c is in the online / offline state and the like through the network between users, for example, observed context information in response to online / offline is C o, the user of the online receives the message immediately It may be considered readable and the offline user may consider the message unreadable immediately.
  • the inquiry dialogue is not performed. If a user who cannot read the message immediately is specified as the destination for sending the message, an inquiry dialogue as to whether or not the message can be included in the destination may be performed.
  • context type D c may be the relationship, etc. between the person in the place, for example, depending on the relationship between a person being there is observed context information C o, Ya input regarding privacy
  • the operation of the presentation system may be set to be turned on or off.
  • the dependent context type D c may be the time zone when an inquiry such as "tell me the weather” is made, and depending on the time zone which is the observation context information Co, for example, in the morning. If there is, the weather of the day may be presented today, and if it is night, the weather of tomorrow may be presented.
  • the dialogue flag may also be set for modification / addition of operations before / after the macro consisting of the habitual operation cluster is executed.
  • the selection dialogue flag f s may be set so that the choices of the departure station are presented.
  • Modification 2 By linking through devices such as smart speakers, the control function of home appliances can be used so that specific operations in macros consisting of addictive operation clusters cannot be executed in a context-dependent manner and an error occurs.
  • the dependent context type D c that causes the error can be changed, the macro may be executed while suppressing the occurrence of the error by changing the dependency context type D c without inquiring.
  • the power of the air conditioner may be turned on at the timing when the air conditioner temperature setting operation is performed so that the air conditioner temperature setting operation can be realized.
  • Modification example 3 different types of dialogue flags and a plurality of dialogue flags are set for a specific operation by the dialogue clustering process described with reference to the flowchart of FIG. 9, and inquiries are made by utterances a plurality of times when the specific operation is executed. Is also assumed.
  • This inconsistency is resolved by reflecting the habit of the user response when the operation is executed several times, but when the user responds, the query should not be made depending on the presence or absence of inconsistency in the subsequent sequences. May be good.
  • transfer guidance is realized by confirming that the departure station is Osaki, the arrival station is Yokohama or Honatsugi selected by the selection dialogue flag, and the transit station is Yokohama by the confirmation dialogue flag. If there is a macro, if Yokohama is selected as the arrival station by the user at the time of execution and then Yokohama is selected as the transit station, the arrival station and the transit station will be the same, resulting in inconsistency.
  • operations that are highly addictive and do not need to be changed are collectively executed as one macro as an addictive operation cluster, and operations that are desired to be changed depending on the situation are executed based on the response to the inquiry.
  • the probability information (input probability or execution probability) in the dialogue cluster is updated and becomes habitual when it becomes larger than the specified value. Since the operation fixed to the answer is performed and the inquiry is not performed, the user can change a plurality of operations and execute them all at once without performing unnecessary dialogue.
  • Example of execution by software By the way, the series of processes described above can be executed by hardware, but can also be executed by software.
  • the programs that make up the software can execute various functions by installing a computer embedded in dedicated hardware or various programs. It is installed from a recording medium on a possible, eg, general purpose computer.
  • FIG. 24 shows a configuration example of a general-purpose computer.
  • This personal computer has a built-in CPU (Central Processing Unit) 1001.
  • the input / output interface 1005 is connected to the CPU 1001 via the bus 1004.
  • a ROM (Read Only Memory) 1002 and a RAM (Random Access Memory) 1003 are connected to the bus 1004.
  • the input / output interface 1005 includes an input unit 1006 composed of input devices such as a keyboard and a mouse for which the user inputs operation commands, an output unit 1007 for outputting a processing operation screen and an image of the processing result to a display device, a program, and various data.
  • a storage unit 1008 consisting of a hard disk drive or the like for storing, a LAN (Local Area Network) adapter or the like, and a communication unit 1009 for executing communication processing via a network represented by the Internet are connected.
  • magnetic disks including flexible disks
  • optical disks including CD-ROM (Compact Disc-Read Only Memory), DVD (Digital Versatile Disc)
  • optical magnetic disks including MD (Mini Disc)
  • a drive 1010 that reads and writes data to and from a removable storage medium 1011 such as a memory is connected.
  • the CPU 1001 is read from a program stored in the ROM 1002 or a removable storage medium 1011 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, installed in the storage unit 1008, and loaded from the storage unit 1008 into the RAM 1003. Various processes are executed according to the program.
  • the RAM 1003 also appropriately stores data and the like necessary for the CPU 1001 to execute various processes.
  • the CPU 1001 loads the program stored in the storage unit 1008 into the RAM 1003 via the input / output interface 1005 and the bus 1004 and executes the above-described series. Is processed.
  • the program executed by the computer can be recorded and provided on the removable storage medium 1011 as a package medium or the like, for example. Programs can also be provided via wired or wireless transmission media such as local area networks, the Internet, and digital satellite broadcasting.
  • the program can be installed in the storage unit 1008 via the input / output interface 1005 by mounting the removable storage medium 1011 in the drive 1010. Further, the program can be received by the communication unit 1009 and installed in the storage unit 1008 via a wired or wireless transmission medium. In addition, the program can be pre-installed in the ROM 1002 or the storage unit 1008.
  • the program executed by the computer may be a program that is processed in chronological order according to the order described in this specification, or may be a program that is processed in parallel or at a necessary timing such as when a call is made. It may be a program in which processing is performed.
  • the CPU 1001 in FIG. 24 realizes the function of the operation storage execution control unit 53 of FIG. 4, and the storage unit 1008 and the removable storage medium 1011 are the user operation history storage unit 54 and the habitual operation / dialogue cluster storage unit 55. To realize the function of.
  • the system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Therefore, a plurality of devices housed in separate housings and connected via a network, and a device in which a plurality of modules are housed in one housing are both systems. ..
  • the present disclosure can have a cloud computing configuration in which one function is shared by a plurality of devices via a network and jointly processed.
  • each step described in the above flowchart can be executed by one device or shared by a plurality of devices.
  • one step includes a plurality of processes
  • the plurality of processes included in the one step can be executed by one device or shared by a plurality of devices.
  • An information processing device including a control unit that registers a cluster consisting of a plurality of operations including an operation in which the habitual score is higher than a predetermined threshold value and an operation in response to a dialogue with a user.
  • the operations corresponding to the dialogue with the user are operations having the same operation type but different attributes.
  • the information processing device according to ⁇ 1>, wherein the control unit sets whether or not to execute a dialogue related to the selection of the attribute in an operation having the same operation type but different attributes by using a selection dialogue flag.
  • the control unit When executing the dialogue related to the selection of the attribute, the control unit sets the selection dialogue flag to true and sets the information of the attribute which is an option in the dialogue as the option information.
  • the information processing device described in. ⁇ 4> The control unit executes the dialogue by presenting the attribute to be the option in the option information to the user, and operates based on the attribute corresponding to the option selected by the user.
  • the information processing apparatus according to ⁇ 3>.
  • the control unit sets the number of times selected by the user for each of the options in the option information as the number of selections, and sets the total number of all the selections. ⁇ 4>.
  • Information processing device When executing the dialogue related to the selection of the attribute, the control unit sets the selection dialogue flag to true and sets the information of the attribute which is an option in the dialogue as the option information.
  • the information processing device described in. ⁇ 4> The control unit executes the dialogue by presenting the attribute to be the option in the option information to the user, and operates based on the attribute corresponding to the option
  • the control unit obtains the input probabilities of the options based on the number of times each option is selected in the option information and the total number of times, and the attributes are in the order corresponding to the input probabilities.
  • the information processing apparatus according to ⁇ 5>, wherein the dialogue is executed by presenting the user to the user, and the operation is executed based on the attribute corresponding to the option selected by the user.
  • the control unit sets the selection dialogue flag to false, and the input probability becomes an option higher than the specified value.
  • the information processing device according to ⁇ 6>, which executes an operation with fixed attributes.
  • the operation corresponding to the dialogue with the user is an operation including an operation added and an operation deleted from a plurality of registered operations constituting the cluster.
  • the information processing device according to ⁇ 1>, wherein the control unit sets whether or not to execute a dialogue for confirming whether or not to execute the added operation or the deleted operation by the confirmation dialogue flag.
  • the confirmation dialogue flag is set to true and the confirmation is made by the dialogue.
  • the information processing apparatus according to ⁇ 8>, wherein the number of times the added operation or the deleted operation is executed and the total number of times the confirmation has been made are set as confirmation information.
  • ⁇ 10> The information processing device according to ⁇ 9>, wherein the control unit executes a dialogue for confirming the execution of the added operation or the deleted operation, and executes the operation in response to the user's response.
  • the control unit has added or deleted the added operation or the deleted operation in the confirmation information based on the number of executions and the total number of times of the added operation or the deleted operation in the confirmation information.
  • the information processing apparatus according to ⁇ 10> which obtains an execution probability at which an operation is desired to be executed.
  • ⁇ 12> The information processing device according to ⁇ 11>, wherein the control unit sets the confirmation dialogue flag to false when the execution probability of the added operation or the deleted operation becomes larger than a specified value. ..
  • the control unit deletes the cluster in which the confirmation dialogue flag is set when the execution probability of the added operation or the deleted operation becomes smaller than the specified value.
  • Information processing equipment ⁇ 14>
  • the operation corresponding to the dialogue with the user is an observation context-dependent operation including an operation that depends on the observation context.
  • the information processing device according to ⁇ 1>, wherein the control unit sets whether or not to execute a dialogue related to selection of options in the observation context-dependent operation by using a context dialogue flag.
  • the control unit executes a dialogue related to selection of an option consisting of the observation context-dependent operation, the context dialogue flag is set to true, and an attribute depending on the observation context, which is an option in the dialogue.
  • the information processing apparatus according to ⁇ 14>, wherein the information of the above and the information of the observation context are set as context information.
  • the control unit executes the dialogue by presenting the observation context-dependent attribute and the observation context, which are the options in the context information, to the user, and the user selects the user.
  • the information processing apparatus according to ⁇ 15>, which executes an operation based on the attribute corresponding to the option.
  • the control unit sets the number of times selected by the user as the number of selections for each of the options in the context information, and sets the total number of all the selections. ⁇ 16>.
  • Information processing device is presenting the observation context-dependent attribute and the observation context, which are the options in the context information, to the user, and the user selects the user.
  • the information processing apparatus according to ⁇ 15>, which executes an operation based on the attribute corresponding to the option.
  • the control unit sets the number of times selected by the user as the number of selections for each of the options in the context information, and sets the total number
  • the control unit obtains the input probabilities of the options based on the number of times each option is selected in the context information and the total number of times, and sets the attributes in the order corresponding to the input probabilities.
  • the information processing apparatus according to ⁇ 17>, wherein the dialogue is executed by presenting to the user, and an operation is executed based on the attribute corresponding to the option selected by the user.
  • the control unit sets the context dialogue flag to false, and the input probability becomes an option higher than the specified value.
  • the information processing apparatus according to ⁇ 18> which executes an operation in which an attribute or an observation context is fixed.
  • the addiction score is a harmonic function of the time interval from the previous operation to the current operation, the number of transitions from the previous operation to the current operation, and the transition probability from the previous operation to the current operation.
  • the information processing apparatus according to any one of ⁇ 1> to ⁇ 19>, which is calculated based on the above.
  • ⁇ 21> Calculate the habituality score indicating the habituality of user operation, An information processing method comprising registering a cluster consisting of a plurality of operations including an operation having a habitual score higher than a predetermined threshold value and an operation corresponding to a dialogue with a user.
  • a program that causes a computer to function as a control unit that registers a cluster consisting of a plurality of operations including an operation having a habit score higher than a predetermined threshold and an operation corresponding to a dialogue with a user.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本開示は、ユーザの習慣化した複数の操作を一括操作するクラスタを容易に変更することができるようにする情報処理装置に関する。 ユーザの操作の習慣性を示す習慣性スコアが所定の閾値よりも高い複数の操作およびユーザに対する対話に応じた操作からなる対話クラスタを登録する。情報処理装置に適用することができる。

Description

情報処理装置
 本開示は、情報処理装置に関し、特に、ユーザの習慣化した複数の操作を一括操作するクラスタを容易に変更できるようにした情報処理装置に関する。
 ユーザの操作履歴から、ユーザの操作習慣を推定し、ユーザの操作を補助する技術が提案されている。
 例えば、操作履歴を記憶して、次の操作を遷移確率から予測して、予測される次の操作を実行する技術が提案されている(特許文献1参照)。
 また、視聴履歴から、曜日や時刻に対する視聴習慣を推定し、視聴に係る操作を補助する技術が提案されている(特許文献2参照)。
 しかしながら、特許文献1の技術においては、操作の時間間隔を加味した同時性のある複数の操作(操作のまとまりとしてのクラスタ・終端判定)を推定することはできず、さらに、複数の操作の順序が変化してもよい操作については検知することができない。
 また、特許文献2の技術においては、複数の操作の連続性や同時性に基づく習慣性を推定することができない。
 そこで、ユーザの習慣化した複数の操作を、操作のまとまりとしてクラスタリングすることで容易に一括操作できるようなクラスタを生成することが考えられる。
 このように複数の操作を、操作のまとまりとしてクラスタリングしたクラスタを生成しても、ユーザの行動の変化に伴って個々の操作について変更を加えた使用が必要となることがある。
 しかしながら、個別の操作に変更を加えるためには、変更を加えたい操作について個別に指定する必要があり、ユーザにとって負担が大きかった。
 そこで、シナリオベースの対話を生成し、一部にブランク項目を設け、過去の行動履歴からブランク項目を埋めるようにして対話を完成させることで複数の操作を一括操作するクラスタを変更させる技術が提案されている(特許文献3)。
特許第5340774号公報 特許第5175518号公報 特開2019-105685号公報
 しかしながら、特許文献3の技術を用いて、シナリオベース音声対話にブランク項目を設けて、行動履歴からブランク項目を埋めるようにした場合、複合操作の習慣性に基づいて複数の操作のまとまりからなるクラスタの個別の操作を変更させることはできない。
 このため、複合操作の習慣の変化に対応して、適切にクラスタを変更することができなかった。
 本開示は、このような状況に鑑みてなされたものであり、特に、ユーザの習慣化した複数の操作のまとまりであるクラスタを、ユーザの習慣性推定に基づいた適切な対話により容易に変更できるようにするものである。
 本開示の一側面の情報処理装置は、ユーザ操作の習慣性を示す習慣性スコアを算出し、前記習慣性スコアが所定の閾値よりも高い操作およびユーザに対する対話に応じた操作を含む複数の操作からなるクラスタを登録する制御部を備える情報処理装置である。
 本開示の一側面においては、ユーザ操作の習慣性を示す習慣性スコアが算出され、前記習慣性スコアが所定の閾値よりも高い操作およびユーザに対する対話に応じた操作を含む複数の操作からなるクラスタが登録される。
これまでのブラウジングを説明する図である。 これまでのマクロ登録処理を説明する図である。 本開示の概要を説明する図である。 本開示の技術を適用した情報処理装置の構成例を説明する図である。 ユーザ操作情報と対応する習慣性スコアを説明する図である。 習慣性操作クラスタリング処理を説明するフローチャートである。 習慣性操作クラスタの統合を説明する図である。 習慣性操作クラスタの統合を説明する図である。 対話クラスタリング処理を説明するフローチャートである。 操作種別(Intent)が同一で属性(Entity)が異なる操作を説明する図である。 操作種別(Intent)が同一で属性(Entity)が異なる操作判定処理を説明するフローチャートである。 Intentが同一でEntityが異なる操作に対する対話生成事例を説明する図である。 Intentが同一でEntityが異なる操作に対する対話処理を説明するフローチャートである。 追加された操作を説明する図である。 削除された操作を説明する図である。 追加および削除された操作判定処理を説明するフローチャートである。 追加および削除された操作に対する対話生成事例を説明する図である。 追加および削除された操作に対する対話処理を説明する図である。 観測コンテキストに依存する操作を説明する図である。 観測コンテキストに依存操作判定処理を説明するフローチャートである。 対話クラスタ候補のコンテキスト情報更新処理を説明するフローチャートである。 観測コンテキスト依存操作に対する対話生成事例を説明する図である。 観測コンテキスト依存操作に対する対話処理を説明するフローチャートである。 汎用のパーソナルコンピュータの構成例を説明する図である。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
 1.本開示の概要
 2.好適な実施の形態
 3.ソフトウェアにより実行させる例
 <<1.本開示の概要>>
 <ブラウジング>
 本開示は、ユーザの習慣化した複数の操作のまとまりであるクラスタを、ユーザの習慣性推定に基づいた適切な対話により容易に変更できるようにするものである。
 まず、本開示の概要について説明する。
 ユーザが、例えば、PC(Personal Computer)のウェブブラウザを利用してブラウジングする場合を例にして、本開示の概要について説明する。
 通常のブラウジングに際しては、図1の上部で示されるように、ユーザ11が、PC13のキーボードやマウス等からなる操作入力装置12を操作して、キーワードや各種の動作指示等を入力することでブラウザにより記事を検索させて、検索結果が提示されることでブラウジングが実現される。
 しかしながら、図1の上部で示されるように、ユーザ11が操作入力装置12を操作してキーワードや各種の動作指示を入力する操作は、複数の情報を所定の順序で入力する必要があり、入力すべき情報量が増えるほど操作が煩雑になる。
 また、習慣化した操作である場合には、同様の複数の操作が繰り返しなされる必要がある。
 そこで、図1の下部で示されるように、操作入力装置12に加えて、マイクロフォン等による音声入力装置20等を付して音声による入力を受け付けて、音声エージェント21により対話形式で入力できるようにする技術が提案されている。
 この場合、ユーザ11は、操作入力装置12を操作するか、または、発話により音声入力装置20を介して音声エージェント21に対して対話形式で情報を入力することが可能となる。
 この結果、図1の下部で示されるように、音声エージェント21を利用した場合には、操作入力装置12を用いた入力操作では、必要とされる複数の操作をマクロ化して、対応付けられたフレーズを発話するだけで一括して実行させることが可能となる。
 すなわち、複数の操作がマクロ化されて1つのフレーズに対応付けて記憶され、記憶されたフレーズが発話されることにより、マクロ化された複数の操作が一括して実行される。
 このように所定のフレーズの音声発話によりマクロ化された複数の操作を一括して実行させるには、まず、複数の操作をマクロ化させて、所定のフレーズと対応付けて登録させるマクロ登録処理が必要となる。
 <ブラウジングにおけるマクロ登録処理>
 このマクロ登録処理は、図2の上部で示されるように、2つの手法がある。
 すなわち、マクロ登録処理の第1の手法は、図2の左上部で示されるように、マクロ登録されていないフレーズの発話があったとき、フレーズに対応付けて複数の操作をマクロ化して記憶させるものである。
 また、マクロ登録処理の第2の手法は、図2の右上部で示されるように、複数の操作をマクロ化した後、対応付けて記憶させるフレーズの発話があったとき、そのフレーズに対応付けてマクロ化された複数の操作を記憶させるものである。
(マクロ登録処理の第1の手法)
 例えば、マクロ登録処理の第1の手法においては、図2の左上部で示されるように、処理SC1において、音声エージェント21が、音声入力装置20を介して、ユーザ11が発した「XXX」というフレーズを検出すると、マクロ登録されたフレーズであるか否かを判定する。
 ここで、マクロ登録されたフレーズではない場合、処理SC2において、音声エージェント21が、PC13の図示せぬディスプレイやスピーカなどから画像や音声により、例えば、「XXXを覚えようか?」といった情報を提示することにより、「XXX」というフレーズに対応付けて、複数の操作をマクロ化して登録すべきか否かを問合せる。
 この問い合わせに応じて、処理SC3において、音声入力装置20を介して、ユーザ11により「OK」というフレーズが発せられたことが検出されると、音声エージェント21は、「XXX」に対応付けて、複数の操作のマクロ化して登録する旨の要求があったことを認識する。
 次に、処理SC4において、音声エージェント21が、PC13の図示せぬディスプレイやスピーカなどから画像や音声により、例えば、「操作をどうぞ」と発することにより、以降における、ユーザ11による操作入力装置12の操作内容を順次記憶する準備が整ったことをユーザ11に通知する。
 これを受けて、処理SC5において、ユーザ11により操作入力装置12が操作されて、マクロ登録しようとする複数の操作が入力され、音声エージェント21は、入力された複数の操作を順次記憶する。
 複数の操作入力が完了すると、処理SC6において、例えば、「登録」というフレーズがユーザ11により発せられることにより、音声エージェント21は、マクロ登録しようとする複数の操作入力が完了したことを認識する。
 そして、処理SC7において、音声エージェント21は、「XXX」のフレーズと、それまでに記憶した複数の操作とを対応付けてマクロとして登録し、PC13の図示せぬディスプレイやスピーカなどから画像や音声により、例えば、「XXXを覚えたよ」と発することで、ユーザ11に、それまでに入力された複数の操作入力をマクロ化して、「XXX」というフレーズと対応付けて登録したことを通知する。
 この一連の処理により、「XXX」というフレーズと対応付けて複数の操作入力がマクロ化されて登録される。
 この結果、以降においては、例えば、図2の下部で示されるように、ユーザ11により、「XXX」が発せられると、音声エージェント21は、「XXX」に対応付けて登録されたマクロの実行がユーザから指示されたものとみなし、対応付けて登録された複数の操作入力を一括して実行する。
(マクロ登録処理の第2の手法)
 例えば、マクロ登録処理の第2の手法においては、図2の右上部で示されるように、ユーザ11が、所定のフレーズに対して複数の操作をマクロ化して登録したいとき、「覚えて」といった発話をする。
 処理SC11において、音声エージェント21が、音声入力装置20を介して、ユーザ11が発した「覚えて」というフレーズを検出すると、所定のフレーズに対して複数の操作をマクロ化して登録したいことを認識する。
 そこで、処理SC12において、音声エージェント21が、PC13の図示せぬディスプレイやスピーカなどから画像や音声により、例えば、「操作をどうぞ」と発することにより、以降における、ユーザ11による操作入力装置12の操作内容を順次記憶する準備が整ったことをユーザ11に通知する。
 これを受けて、ユーザ11により操作入力装置12が操作されて、マクロ登録しようとする複数の操作が入力されると、処理SC13において、音声エージェントが入力された複数の操作入力を記憶する。
 ユーザ11は、マクロ登録しようとする複数の操作入力を完了したとき、「登録」というフレーズを発することで、複数の操作入力が完了したことを音声エージェント21に対して通知する。
 これにより、処理SC14において、音声エージェント21は、音声入力装置20を介して、ユーザ11が発した「登録」というフレーズを検出することで、マクロ登録しようとする複数の操作入力の完了を認識する。
 さらに、処理SC15において、音声エージェント21は、PC13の図示せぬディスプレイやスピーカなどから画像や音声により、例えば、「何て言われたら、この操作する?」と発することにより、ユーザ11により操作入力装置12が操作されることで入力されたマクロ登録しようとする複数の操作に対応付けて記憶されるフレーズを問い合わせる。
 これを受けて、ユーザ11が、例えば、「XXX」のフレーズに対応付けて、それまでに記憶した複数の操作をマクロ化して登録することを指示する。
 処理SC16において、音声エージェント21が、音声入力装置20を介して、ユーザ11が発した「XXX」というフレーズを検出すると、「XXX」のフレーズに対応付けて、それまでに記憶した複数の操作をマクロ化して登録する指示があったことを認識する。
 処理SC17において、音声エージェント21は、「XXX」のフレーズに対応付けて、それまでに記憶した複数の操作をマクロ化して登録する。そして、音声エージェント21は、PC13の図示せぬディスプレイやスピーカなどから画像や音声により、例えば、「XXXを覚えたよ」と発することで、ユーザ11に、それまでに入力された複数の操作入力をマクロ化して、「XXX」というフレーズと対応付けて登録したことを通知する。
 この一連の処理により、「XXX」というフレーズと対応付けて複数の操作入力がマクロ化されて登録される。
 このように登録された後でも、図2の下部で示されるように、ユーザ11が、「XXX」というフレーズを発することにより、対応付けて登録されたマクロ化された複数の操作が一括して実行されることになる。
 しかしながら、上述したマクロ登録処理は、第1の手法でも第2の手法でも、基本的には、ユーザが複数の操作を記憶していることが前提となり、記憶している複数の操作をフレーズに対応付けて登録させることしかできない。
 すなわち、通常のブラウジングを行う中で、ユーザ自身が、普段の操作の中で自身が何を習慣的に操作しているのかを認知・把握できていない限り、マクロ登録自体することができない。
 また、仮に、ユーザが自身の習慣的な操作を認知・把握してマクロ登録できたとしても、マクロ登録したフレーズ自体を忘れてしまった場合には、マクロ登録されたフレーズを発して、マクロ化された複数の操作を一括して実行させることができないことがある。
 そこで、ユーザの習慣的な複数の操作を操作履歴からクラスタとして推定し、ユーザに認知させることにより、ユーザの負荷を低減させつつ、複数の操作を一括実行させることが考えられる。
 <ユーザ操作履歴のクラスタリング>
 すなわち、ユーザ操作履歴に基づいて、習慣性の高い複数の操作をクラスタリングすることで、習慣性操作クラスタを生成し、習慣性操作クラスタを単位とした音声マクロ化処理の実行、状況提案通知によりマクロ化の提案、および、ユーザの発話キーワードと所定の一致度よりも高い一致度のキーワードを含む習慣性操作クラスタを一括実行させることが考えられる。
 例えば、ユーザ操作履歴が記録されるようにして、図3の左上部で示されるように提示されるようにして、このうち習慣操作性の高い複数の操作について、図3の右上部で示されるような習慣性操作クラスタが設定されるようにする。
 尚、図3の左上部のユーザ操作履歴においては、上から、3/18 20:40:13において、操作Aがなされ、3/18 20:40:14において、操作Bがなされ、3/18 20:40:16において、操作Cがなされ、3/18 20:40:27において、操作Dがなされたことが示されている。
 また、3/18 20:40:32において、操作Eがなされ、3/18 20:40:35において、操作Fがなされ、3/18 20:40:39において、操作Gがなされ、3/18 20:40:39において、操作Hがなされ、3/18 20:40:41において、操作Iがなされたことが示されている。
 さらに、3/18 20:40:44において、操作Jがなされ、3/18 20:40:46において、操作Kがなされ、3/18 20:40:49において、操作Lがなされたことが示されている。
 図3の左上部で示されるユーザ操作履歴においては、ユーザ操作履歴の一部であるが、ユーザ操作履歴のそれぞれには、操作のそれぞれの習慣性の高さを示す習慣性スコアが求められており、習慣性スコアが所定値よりも高い、2以上の複数の操作がクラスタリングされて、図3の右上部で示されるように習慣性操作クラスタとして設定される。
 図3の右上部は、習慣性スコアが所定値よりも高い、2以上の複数の操作からなる習慣性操作クラスタの例である。
 図3の右上部においては、操作F乃至Iの習慣性スコアが所定値よりも高い、2以上の複数の操作であるので、習慣性操作クラスタとしてクラスタリングされている。
 また、習慣性操作クラスタにおいて、習慣性スコアが所定値よりも高い、2以上の複数の操作の直前の操作Eについても、習慣性操作クラスタに含まれている。
 このため、図3の右上部においては、習慣性操作クラスタとして、操作E乃至Iが含まれている。
 図3の右上部の習慣性操作クラスタについては、選択された習慣性スコアの高さを示すスコア表示欄LV1乃至LV5が、操作E乃至Lのそれぞれの左側に表示されている。
 スコア表示欄LV1乃至LV5のそれぞれにおいては、習慣性スコアが高い程、図中の右方向に伸びる棒グラフが示されており、習慣性スコアに応じて色分けされて表示される。
 すなわち、図3の右上部においては、操作G,Hのそれぞれのスコア表示欄LV3,LV4の習慣性スコアが最も高く、操作F,Iのそれぞれのスコア表示欄LV2,LV5の習慣性スコアが次に高いことが示されている。
 また、図3の右上部においては、所定の閾値よりも高い習慣性スコアを備えた操作のスコア表示欄LV2乃至LV5がブラケットBL1,BL2により挟み込まれて表示されている。
 ブラケットBL1,BL2の表示により、習慣性スコアが所定値よりも高い、2以上の複数の操作からなる操作F乃至Iがあり、その直前の操作Eと併せて、習慣性操作クラスタが形成されていることを目視により確認することが可能となる。
 さらに、操作E乃至Iにおいては、それぞれのスコア表示欄LV1乃至LV5の左側に、スイッチSSE乃至SSIが設けられており、それぞれを操作することで、マクロ化する際に登録すべき操作を選択することができる。
 すなわち、図3の左上部、および右上部で示されるように、ユーザ操作履歴に基づいた習慣性操作クラスタが設定されるので、習慣性の高い複数の操作をマクロ化した上で、フレーズを対応付けて記憶させることで、マクロ登録処理がなされて、音声マクロ化が実現される(図3下部の音声マクロ化)。
 これにより、ユーザは、登録されたフレーズを発話することで、自らの習慣性の高い複数の操作を一括して実行させることが可能となる。
 また、図3の下部で示されるように、習慣性スコアが所定値よりも高い複数の操作からなる習慣性操作クラスタが提示されることにより、ユーザに対して連続した複数の操作からなる習慣性の状況が提示されて、マクロ化するか否かを判断するための状況提案通知が提示される(図3下部の状況提案通知)。
 これにより、ユーザは、自らの習慣的な連続する複数の操作を意識することが可能となり、習慣性スコアがある程度高くなったことを認識したタイミングで、習慣性スコアの高い連続した複数の操作をマクロ化してマクロ登録することが可能となる。
 さらに、図3の下部で示されるように、ユーザが発話したキーワードを含む、習慣性操作クラスタが検索されて提示される(図3下部のキーワード検索)。
 これにより、習慣性操作クラスタと対応付けてマクロ登録されたフレーズを忘れてしまうことがあっても、関連するフレーズに基づいて検索される習慣性操作クラスタが提示されて一括実行が提案されることにより、マクロ登録された習慣性操作クラスタを活用することができる。
 ところが、習慣性操作クラスタをマクロ登録した後においても、習慣性操作は変化することがある。
 このような場合、上述した手法を用いると、習慣性操作に変更があっても、新たな習慣性操作であると認識されるまでには、時間が掛かるので、新たな習慣性操作に対応する習慣性操作クラスタが生成されるまでに時間が掛かってしまう恐れがあった。
 そこで、本開示においては、ユーザの過去の操作履歴からの習慣性操作が推定されることで、マクロ化された複数の操作のうち、変更が必要な操作がなされるタイミングにおいて、ユーザとの対話を実現し、対話に応じて操作を容易に変更できるようにする。
 <<2.好適な実施の形態>>
 次に、本開示の好適な実施の形態について説明する。
 図4は、本開示の技術を適用した情報処理装置の好適な実施の形態を示している。
 図4の情報処理装置41は、入力操作部51、機能アプリケーションプログラム実行部52、操作記憶実行制御部53、ユーザ操作履歴記憶部54、習慣性操作/対話クラスタ記憶部55、音声入力部56、音声認識処理部57、発話意味理解処理部58、画像入力部59、画像認識処理部60、センサ入力部61、センサ認識処理部62、応答生成部63、表示画像処理部64、音声合成処理部65、画像出力部66、および音声出力部67を備えている。
 入力操作部51は、キーボード・マウス・タッチパネル(入力操作デバイス)などから構成されており、ユーザの操作入力を受け付けて、受け付けた操作入力に対応する操作信号を生成して、機能アプリケーションプログラム実行部52に出力する。
 機能アプリケーションプログラム実行部52は、入力操作部51より供給される操作信号および操作記憶実行制御部53より供給されるシステム操作指示に基づいて、例えば、ウェブブラウザやアクセスしたサイトより供給されるコンテンツを提示するといった各種の機能を実現するアプリケーションプログラムを実行させる。
 より具体的には、機能アプリケーションプログラム実行部52は、ゲーム(コントローラ)、テレビ(リモートコントローラ)、音楽/動画プレイヤ、スマートフォン/タブレット、PC(Personal Computer)等の操作一般、AR(Augmented Reality)/VR(Virtual Reality)機器、家電製品、カメラ/カムコーダ、業務用システム、その他の複数の操作機能を備えた機器全般としての機能を実現させる。
 尚、本明細書の以降においては、機能アプリケーションプログラム実行部52が、ウェブブラウザとして機能する場合についての実施例について説明を進めるものとするが、当然のことながら他の機器の機能を実現させるものであってもよい。
 また、機能アプリケーションプログラム実行部52は、入力操作部51より供給される操作信号、および操作記憶実行制御部53より供給されるシステム操作指示に基づいた実行結果を構成する動画および静止画からなる画像を画像出力部66に出力する。
 さらに、機能アプリケーションプログラム実行部52は、入力操作部51より供給される操作信号、および操作記憶実行制御部53より供給されるシステム操作指示に基づいた実行結果を構成する音声を音声出力部67に出力する。
 音声入力部56は、マイクロフォンなどから構成され、ユーザの発する音声からなる発話フレーズの入力を受け付けて、対応する音声信号を生成し音声認識処理部57に出力する。
 音声認識処理部57は、音声入力部56より供給される音声信号に基づいて、音声認識処理(ASR:Automatic Speech Recognition)を施して、テキストからなる音声認識結果を発話意味理解処理部58、および操作記憶実行制御部53に出力する。
 発話意味理解処理部58は、音声認識処理部57より供給されるテキストからなる音声認識結果に対して、発話意味理解処理(NLU:Natural Language Understanding)を施して、ユーザの発話フレーズの発話意図(操作種別)(Intent)と発話の対象となる属性情報(Entity)を推定する。
 発話意味理解処理部58は、推定結果であるユーザの発話フレーズの発話意図(操作種別)(Intent)と発話の対象となる属性情報(Entity)を操作記憶実行制御部53に出力する。
 画像入力部59は、カメラなどから構成され、ユーザの状況である表情や周囲の画像の入力を受け付けて、対応する画像信号を生成し画像認識処理部60に出力する。
 画像認識処理部60は、画像入力部59より供給される画像信号に対して、画像認識処理を施して、その処理結果を、ユーザの状況を表す観測コンテキスト情報として操作記憶実行制御部53に出力する。
 センサ入力部61は、GPS(Global Positioning System)センサ、脈拍センサ、および血圧センサなどから構成され、各センサのセンシング結果の入力を受け付けて、対応するセンサ信号を生成しセンサ認識処理部62に出力する。
 センサ認識処理部62は、センサ入力部61より供給されるセンサ信号に対して、センサ認識処理を施して、その処理結果を、ユーザの状況を表す観測コンテキスト情報として操作記憶実行制御部53に出力する。
 操作記憶実行制御部53は、機能アプリケーションプログラム実行部52より供給されるユーザ操作情報に、タイムスタンプを付与してユーザ操作履歴としてユーザ操作履歴記憶部54に記憶させ、ユーザ操作履歴として蓄積されるようにする。
 操作記憶実行制御部53は、ユーザ操作履歴記憶部54に記憶されたユーザ操作履歴を、応答生成部63を介して表示画像処理部64により特定の履歴管理画面等を生成させて、例えば、図3の左上部を参照して説明した過去のユーザ操作履歴として時系列に、画像出力部66により表示されるようにして、ユーザが閲覧できるようにしてもよい。
 ユーザ操作情報は、入力操作部51の操作内容に対応する情報であり、例えば、機能アプリケーションプログラム実行部52により実現される機能がウェブブラウザの場合、クリック、フォーム入力、フォームsubmit、およびサイト遷移などの操作に対応する情報である。
 さらに、ユーザ操作情報には、それぞれの操作対象であるリンク/フォームなどのUI(User Interface)部品の情報や遷移先URL(Uniform Resource Locator)(+サイトのタイトル)の情報も含まれる。
 また、ユーザ操作情報には、入力操作部51による操作が行われた時のサイトのURL(+サイトのタイトル)の情報が含まれる。
 操作記憶実行制御部53は、ユーザ操作履歴記憶部54に蓄積された過去のユーザ操作履歴に基づいて、ユーザの習慣的な複数の操作(複合操作)を習慣性操作クラスタまたは対話クラスタとして推定し、習慣性操作/対話クラスタ記憶部55に記憶させる。
 操作記憶実行制御部53は、ユーザの発話フレーズと、その発話意図(操作種別)(Intent)および発話の対象となる属性情報(Entity)、観測コンテキスト情報、およびユーザ操作情報に基づいて、習慣性操作/対話クラスタ記憶部55より、対応する習慣性操作クラスタまたは対話クラスタを読み出す。
 そして、操作記憶実行制御部53は、読み出した習慣性操作クラスタまたは対話クラスタを音声マクロ化したり、習慣性操作クラスタまたは対話クラスタに基づいた複数の操作の一括実行やマクロ実行などにより、システム操作指示を生成し、機能アプリケーションプログラム実行部52に出力して実行させる。
 機能アプリケーションプログラム実行部52は、習慣性操作クラスタまたは対話クラスタに応じたシステム操作指示に基づいて、習慣性操作クラスタまたは対話クラスタを構成する複数の操作を、それぞれについて時系列に一括実行する。
 また、操作記憶実行制御部53は、ユーザに対する音声マクロ化や習慣性操作クラスタまたは対話クラスタの実行に係る提案通知や確認対話のため、応答生成部63を制御して、音声マクロ化や習慣性操作クラスタまたは対話クラスタの一括実行に係る提案通知や確認対話のための表示画像や音声を生成して出力させる。
 応答生成部63は、音声マクロ化や習慣性操作クラスタまたは対話クラスタの実行に係る提案通知や確認対話のための表示画像を表示画像処理部64に生成させると共に、同様の提案通知や確認対話のための音声を音声合成処理部65により生成させる。
 表示画像処理部64は、生成した音声マクロ化や習慣性操作クラスタまたは対話クラスタの実行に係る提案通知や確認対話のための表示画像を画像出力部66に出力して表示させる。
 音声合成処理部65は、音声マクロ化や習慣性操作クラスタまたは対話クラスタの実行に係る提案通知や確認対話のための音声を音声出力部67より出力させる。
 画像出力部66は、ディスプレイやプロジェクタ等から構成されており、機能アプリケーションプログラム実行部52により制御されて、機能アプリケーションプログラム実行部52の処理結果となる表示画像を表示する。
 また、画像出力部66は、表示画像処理部64より供給される表示画像を表示する。
 音声出力部67は、スピーカやヘッドフォンなどから構成されており、機能アプリケーションプログラム実行部52により制御されて、機能アプリケーションプログラム実行部52の処理結果となる音声を出力する。
 また、音声出力部67は、音声合成処理部65より供給される音声を出力する。
 <ユーザ操作情報と対応する習慣性スコア>
 次に、図5を参照して、ユーザ操作情報と対応する習慣性スコアについて説明する。
 ユーザ操作情報は、例えば、図5のユーザ操作情報Pr1乃至Pr3のような情報として蓄積される。
 すなわち、図5のユーザ操作情報Pr1は、1行目乃至12行目の記述により構成されており、2行目乃至6行目においては、"url": "https://www.JJJ.co.jp/norikae/","title": "乗換案内|JJJ"で示されるURLの乗換案内のホームページを表示させる操作がなされたことが示されている。
 また、図5のユーザ操作情報Pr1の7行目乃至10行目においては、"url": "https://www.tootle.co.jp/search?q=%E4%B9%97%E3%82%8A%E6%8F%9B%E3%81%88","title": "乗り換え - Tootle 検索"で示されるネットワーク上の位置に格納された情報が読みだされて表示されていることが示されている。
 さらに、図5のユーザ操作情報Pr1の11行目においては、"date": "2019-04-05T05:04:38.896Z"で示されるように、ユーザ操作情報ST1の操作が2019年04月05日の時刻05:04:38.896になされたことが示されている。
 そして、このユーザ操作情報Pr1の操作により、表示された乗換案内のホームページ内に乗車駅の駅名を入力する操作の情報がユーザ操作情報Pr2により記述されている。
 すなわち、図5のユーザ操作情報Pr2は、1行目乃至15行目の記述により構成されており、2行目乃至9行目においては、乗車駅として新宿を入力する操作がなされたことが示されている。
 また、図5のユーザ操作情報Pr2の10目乃至13行目においては、"url": "https://www.JJJ.co.jp/norikae/","title": "乗換案内|JJJで示されるネットワーク上の位置に格納された情報が読みだされて表示されていることが示されている。
 さらに、図5のユーザ操作情報Pr2の14行目においては、"date": "2019-04-05T05:04:46.341Z"で示されるように、ユーザ操作情報ST2の操作が2019年04月05日の時刻05:04:46.341になされたことが示されている。
 また、このユーザ操作情報Pr1の操作により、表示された乗換案内のホームページ内に降車駅の駅名を入力する操作の情報がユーザ操作情報Pr3により記述されている。
 すなわち、図5のユーザ操作情報Pr3は、1行目乃至15行目の記述により構成されており、2行目乃至9行目においては、降車駅として大崎を入力する操作がなされたことが示されている。
 また、図5のユーザ操作情報Pr3の10目乃至13行目においては、"url": "https://www.JJJ.co.jp/norikae/","title": "乗換案内|JJJで示されるネットワーク上の位置に格納された情報が読みだされて表示されていることが示されている。
 さらに、図5のユーザ操作情報Pr3の14行目においては、"date": "2019-04-05T05:04:57.721Z"で示されるように、ユーザ操作情報ST3の操作が2019年04月05日の時刻05:04:57.721になされたことが示されている。
 すなわち、図5のユーザ操作情報Pr1乃至Pr3が、順次ユーザ操作履歴記憶部54に時系列に蓄積される。
 操作記憶実行制御部53は、ユーザ操作情報が供給されると、ユーザ操作履歴記憶部54に順次蓄積させて、ユーザ操作履歴を構成する。
 また、操作記憶実行制御部53は、ユーザ操作情報が供給されると、ユーザ操作履歴記憶部54に蓄積されているユーザ操作履歴を用いて、習慣性スコアを算出し、ユーザ操作履歴に対応付けて蓄積させ、順次更新する。
 ここで、習慣性スコアとは、ユーザ操作履歴上における、例えば、n番目の操作に相当する操作nの過去のユーザ操作履歴に対する習慣性の傾向を示す値であり、以下の式(1)で定義されるスコアである。
 Sn=3/(1/Tn+1/Fn+1/Pn
                            ・・・(1)
 ここで、Snは、操作nの習慣性スコアであり、Tnは、一つ前の操作n-1から操作nまでの時間間隔であり、Fnは、操作n-1から操作nへの遷移回数であり、Pnは、操作n-1から操作nへの遷移確率である。
 すなわち、操作nの習慣性スコアは、一つ前の操作n-1から操作nまでの時間間隔Tn、操作n-1から操作nへの遷移回数Fn、および、操作n-1から操作nへの遷移確率Pnの調和平均である。
 また、一つ前の操作n-1から操作nまでの時間間隔Tnは、以下の式(2)で定義される。
 Tn=Ht/((tn-t(n-1))+Ht
                            ・・・(2)
 ここで、Tnは、一つ前の操作n-1から操作nまでの時間間隔であり、tnは、操作nが行われた時刻であり、t(n-1)は、操作n-1が行われた時刻であり、Htは、正規化定数である。正規化定数Htは、例えば30秒等でもよい。
 尚、正規化定数Htは、ユーザにより可変にするようにしてもよい。すなわち、時間間隔Tnは、正規化定数Hcにより時刻の差分による影響が変化する。このため、例えば、操作に慣れている人と慣れていない人を機器の使用時間や操作時間間隔の平均値から判定し、慣れている人は正規化定数Htを小さく、慣れていない人は正規化定数Htを大きくするようにしてもよい。
 さらに、操作n-1から操作nへの遷移回数Fnは、以下の式(3)で定義される。
 Fn=1-Hc/(Ctn+Hc
                            ・・・(3)
 ここで、Ctnは、ユーザ操作履歴上の過去に操作n-1と同じ操作から、操作nと同じ操作へ遷移した回数であり、Hcは、正規化定数である。正規化定数Hcは、例えば3回である。
 また、操作n-1から操作nへの遷移確率Pnは、以下の式(4)で定義される。
 Pn=Ctn/C(n-1)
                            ・・・(4)
 ここで、C(n-1)は、ユーザ操作履歴の上過去に操作n-1と同じ操作が行われた回数である。
 すなわち、操作nの習慣性スコアSnは、操作nが一つ前の操作n-1に対して短い時間内に行われ、かつ遷移回数Fnと遷移確率Pnが高くなるほど習慣的に行われていると判定されスコアが高くなる。
 操作記憶実行制御部53は、ユーザ操作情報が供給されて、ユーザ操作履歴記憶部54におけるユーザ操作履歴に対して新たに蓄積させるとき、順次上述した習慣性スコアSnを算出して、ユーザ操作履歴に蓄積される操作毎に記憶させ、必要に応じて更新する。
 より詳細には、操作記憶実行制御部53は、操作履歴の時系列上で習慣性スコアSnが習慣性閾値Sth(例えば0.5)より大きくなる操作が2つ以上になると、最初に習慣性スコアSnが習慣性閾値Sthより大きくなる操作の一つ前の操作から最後に習慣性スコアSnが習慣性閾値Sthより大きくなる操作までを習慣性操作クラスタ候補に設定する。
 次に、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶されている習慣性操作クラスタ内に、習慣性操作クラスタ候補と同一のシーケンス(習慣性操作クラスタ内の操作と順序が一致する)の習慣性操作クラスタが無く、かつ、操作が同じで、順序だけ異なる習慣性操作クラスタも無い場合、習慣性操作クラスタ候補を新規の習慣性操作クラスタとして習慣性操作/対話クラスタ記憶部55に記憶させる。
 また、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶されている習慣性操作クラスタ内に習慣性操作クラスタ候補と操作が同じで、順序が異なる習慣性操作クラスタが存在する場合、この2つの習慣性操作クラスタ候補と習慣性操作クラスタとを比較して、習慣性操作クラスタ内の順序可変操作を検出した上で統合し、習慣性操作クラスタとして、習慣性操作/対話クラスタ記憶部55に更新して記憶させる。
 また、操作記憶実行制御部53は、操作履歴の時系列上で習慣性スコアSnが習慣性閾値Sth(例えば0.5)より大きくなる操作が2つ以上になると、最初に習慣性スコアSnが習慣性閾値Sthより大きくなる操作の一つ前の操作から最後に習慣性スコアSnが習慣性閾値Sthより大きくなる操作までを対話クラスタ候補に設定する。
 また、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶されている習慣性操作クラスタおよび対話クラスタ内(以下、習慣性操作クラスタおよび対話クラスタを単にクラスタとも称する)に、対話クラスタ候補のシーケンスで包含されるクラスタが無く、かつ、対話により置き換えが可能なクラスタも無い場合、対話クラスタ候補を新規の対話クラスタとして習慣性操作/対話クラスタ記憶部55に記憶させる。
 <習慣性操作クラスタリング処理>
 次に、図6のフローチャートを参照して、習慣性操作クラスタリング処理について説明する。
 ステップS11において、操作記憶実行制御部53は、操作をカウントするカウンタnを1に初期化する。
 ステップS12において、操作記憶実行制御部53は、操作nのユーザ操作情報が供給されたか否かを判定し、供給されるまで、同様の処理を繰り返す。
 そして、ステップS12において、操作nのユーザ操作情報が供給された場合、処理は、ステップS13に進む。
 ステップS13において、操作記憶実行制御部53は、操作nのユーザ操作情報にタイムスタンプを付与して、ユーザ操作履歴としてユーザ操作履歴記憶部54に記憶させる。
 ステップS14において、操作記憶実行制御部53は、ユーザ操作履歴記憶部54に記憶されているユーザ操作履歴に基づいて、上述した式(1)乃至式(4)を参照して説明した演算により、操作nの習慣性スコアSnを算出する。
 ステップS15において、操作記憶実行制御部53は、操作nに対応する習慣性スコアSnが、習慣性閾値Sthよりも大きいか否かを判定する。
 ステップS15において、操作nに対応する習慣性スコアSnが、習慣性閾値Sthよりも大きいと判定された場合、操作nが習慣性の高い操作であるものとみなされて、処理は、ステップS16に進む。
 ステップS16において、操作記憶実行制御部53は、操作nの1つ前の操作n-1の習慣性スコアSn-1が、習慣性閾値Sthよりも小さいか否かを判定する。
 ステップS16において、操作nの1つ前の操作n-1の習慣性スコアSn-1が、習慣性閾値Sthよりも小さい場合、処理は、ステップS17に進む。
 ステップS17において、操作記憶実行制御部53は、操作n-1を習慣性操作クラスタ候補に追加する。
 ステップS18において、操作記憶実行制御部53は、操作nを習慣性操作クラスタ候補に追加する。
 ステップS19において、操作記憶実行制御部53は、処理の終了が指示されたか否かを判定し、終了が指示された場合、処理が終了する。
 また、ステップS19において、終了が指示されていない場合、処理は、ステップS20に進む。
 ステップS20において、操作記憶実行制御部53は、カウンタnを1インクリメントして、処理は、ステップS12に戻る。
 すなわち、習慣性操作クラスタリング処理の終了が指示されるまで、習慣性スコアSnが習慣性閾値Sthよりも高い操作nが複数になる(繰り返される)と、ステップS11乃至S20の処理が繰り返されて、カウンタnが順次1ずつインクリメントされ、習慣性操作クラスタ候補の操作が追加され続ける。
 また、習慣性操作クラスタを構成する操作の先頭の操作は、習慣性スコアSnが習慣性閾値Sthよりも高くなる操作の直前の操作であるので、ステップS16の処理により操作nの直前の操作n-1の習慣性スコアSn-1が習慣性閾値Sthよりも低いときには、ステップS17の処理により、操作nの1つ前の操作n-1が習慣性操作クラスタ候補の先頭操作として含まれるようにする。
 従って、習慣性操作クラスタ候補を構成する操作のうち、先頭以外の操作については、習慣性スコアSnが習慣性閾値Sthよりも大きくなるので、ステップS16においては、習慣性スコアSnが習慣性閾値Sthよりも小さくはならないので、ステップS17の処理がスキップされる。
 さらに、ステップS15において、操作nに対応する習慣性スコアSnが、習慣性閾値Sthよりも大きくないと判定された場合、操作nは習慣性の高い操作ではないものとみなされて、処理は、ステップS21に進む。
 ステップS21において、操作記憶実行制御部53は、1つ前の操作n-1の習慣性スコアSn-1は、習慣性閾値Sthよりも大きいか否かを判定する。
 ステップS21にいて、操作n-1の習慣性スコアSn-1が、習慣性閾値Sthよりも大きいとみなされた場合、直前までの操作は、習慣性操作クラスタ候補に含まれる操作の一部であるものとみなされて、処理は、ステップS22に進む。
 尚、ステップS21において、操作n-1の習慣性スコアSn-1が、習慣性閾値Sthよりも小さいとみなされた場合、直前の操作は、習慣性操作クラスタ候補には含まれない操作であるものとみなされて、処理は、ステップS19に進む。
 ステップS22において、操作記憶実行制御部53は、直前までの操作により構成される習慣性操作クラスタ候補に含まれる操作が2以下であるか否かを判定する。
 習慣性操作クラスタは、3以上であることを前提とするので、ステップS22において、直前までの操作により構成される習慣性操作クラスタ候補に含まれる操作が2以下である場合、習慣性操作クラスタが構成されていないものとみなされて、処理は、ステップS23に進む。
 そして、ステップS23において、操作記憶実行制御部53は、習慣性操作クラスタ候補として記憶していた操作の情報をクリアして、処理は、ステップS19に進む。
 また、ステップS22において、直前までの操作により構成される習慣性操作クラスタ候補に含まれる操作が2以下はない場合、すなわち、習慣性操作クラスタ候補に3以上の操作が含まれているものとみなされるので、処理は、ステップS24に進む。
 ステップS24において、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みの習慣性操作クラスタのうち、現在処理中の習慣性操作クラスタ候補に含まれる操作が同一で、かつ、同一シーケンス(その順序が同一)となる完全同一のものがないか否かを判定する。
 すなわち、習慣性操作クラスタ候補が、習慣性操作/対話クラスタ記憶部55に既に登録されている習慣性操作クラスタと完全同一である場合には、新たに登録する必要がないので、完全同一のものがないか否かが判定される。
 ステップS24において、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みの習慣性操作クラスタに、現在処理中の習慣性操作クラスタ候補と完全同一のものがある場合、処理は、ステップS23に進む。
 すなわち、この場合、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みの習慣性操作クラスタに、現在処理中の習慣性操作クラスタ候補と完全同一のものがあるので、処理は、ステップS23に進み、現在処理中の習慣性操作クラスタ候補の情報がクリアにされる。
 また、ステップS24において、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みの習慣性操作クラスタに、現在処理中の習慣性操作クラスタ候補と完全同一のものがない場合、処理は、ステップS25に進む。
 ステップ25において、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みの習慣性操作クラスタのうち、現在処理中の習慣性操作クラスタ候補に含まれる操作が同一であるが、その順序が同一ではないものがあるか否か、すなわち、含まれる操作は同一であるが、順序のみが異なるものがあるか否かを判定する。
 ステップS25において、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みの習慣性操作クラスタのうち、現在処理中の習慣性操作クラスタ候補に含まれる操作が同一であるが、順序のみが異なるものがない場合、処理は、ステップS26に進む。
 ステップS26において、操作記憶実行制御部53は、現在処理中の習慣性操作クラスタ候補の操作をそのままの順序で、新規の習慣操作性クラスタとして習慣性操作/対話クラスタ記憶部55に登録する。
 すなわち、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みの習慣性操作クラスタのうち、現在処理中の習慣性操作クラスタ候補に含まれる操作と同一で、順序のみが異なるものがないので、現在処理中の習慣性操作クラスタ候補は、新たな複数の操作からなる習慣性操作クラスタとみなされるので、習慣性操作/対話クラスタ記憶部55に登録される。
 ステップS25において、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みの習慣性操作クラスタのうち、現在処理中の習慣性操作クラスタ候補に含まれる操作と同一であるが、その順序が同一ではないもの、すなわち、順序のみが異なるものがある場合、処理は、ステップS27に進む。
 ステップS27において、操作記憶実行制御部53は、現在処理中の習慣性操作クラスタ候補と、現在処理中の習慣性操作クラスタ候補に含まれる操作と同一であるが、その順序が同一ではない登録済みの習慣性操作クラスタとを比較して、順序可変の操作を検出する。以降、順序可変操作が検出されるともいう。
 ステップS28において、操作記憶実行制御部53は、現在処理中の習慣性操作クラスタ候補と、現在処理中の習慣性操作クラスタ候補に含まれる操作と同一であるが、その順序が同一ではない登録済みの習慣性操作クラスタとを、順序可変操作の可変範囲の情報と共に1つの習慣性操作クラスタとして統合して習慣性操作/対話クラスタ記憶部55に登録する。
 尚、習慣性操作クラスタの比較と統合については、図7,図8を参照して詳細を後述する。
 以上の処理により、新たな操作nが受け付けられると、順次、習慣性スコアSnが求められて、習慣性閾値Sthとの比較により、習慣性操作クラスタ候補が設定される。
 また、習慣性操作クラスタ候補と、既に登録済みの習慣性操作クラスタとの、それぞれを構成する操作との比較により、登録済みの習慣性操作クラスタとは、全く異なる操作からなる習慣性操作クラスタ候補については、新規の習慣性操作クラスタとして登録される。
 さらに、習慣性操作クラスタ候補と、既に登録済みの習慣性操作クラスタとの、それぞれを構成する操作の比較により、同一の操作から構成されるが、操作順序のみが異なる習慣性操作クラスタ候補については、登録済みの習慣性操作クラスタと共に1つの習慣性操作クラスタとして統合がなされて、習慣性操作/対話クラスタ記憶部55に登録される。
 これにより、習慣性スコアが高く、ユーザの操作としての習慣性が高い複数の操作が、習慣性操作クラスタとして順次登録することが可能となる。
 尚、登録された習慣性操作クラスタについては、時間の経過と共に習慣性に乖離が生じる可能性があるので、所定期間以上登録されたままの習慣性操作クラスタについては、削除するようにしてもよい。
 <習慣性操作クラスタの比較と統合(その1)>
 ここで、図7を参照して、習慣性操作クラスタの比較と統合について説明する。
 習慣性操作クラスタ候補および登録済みの習慣性操作クラスタとして、例えば、図7で示されるような習慣性操作クラスタ候補CL1と、記憶済みの順序のみが異なる習慣性操作クラスタCL2とが存在する場合について考える。
 ここで、図7の習慣性操作クラスタ候補CL1は、操作A乃至Dの4つの操作から構成され、習慣性操作クラスタCL2も、同様に操作A乃至Dの4つの操作から構成されるものとする。
 ここで、習慣性操作クラスタ候補CL1においては、操作A、操作C、操作B、操作Dの順序で操作がなされるのに対して、登録済みの習慣操作性クラスタにおいては、操作A、操作B、操作C、操作Dの順序で動作がなされるものとする。
 尚、操作Aは、乗換案内サイトへ遷移させる操作であり、操作Cは、降車駅として”大崎”を入力する操作であり、操作Bは、乗車駅として”新宿”を入力する操作であり、操作Dは、検索実行ボタンクリックする操作であるものとする。
 また、習慣性操作クラスタ候補CL1、および習慣性操作クラスタCL2のいずれにおいても、操作B、操作C、操作Dのそれぞれの習慣性スコアSnは、いずれも習慣性閾値Sthよりも大きいものとする。
 すなわち、習慣性操作クラスタ候補CL1、および習慣性操作クラスタCL2のそれぞれの操作を比較すると、乗車駅の入力操作である操作Bと、降車駅の入力操作である操作Cとの順序が異なっている。
 しかしながら、乗車駅の入力操作である操作Bと、降車駅の入力操作である操作Cとの順序は異なっていても、最終的な操作Dがなされることにより、同一の乗換案内が表示されることになるため、習慣性操作クラスタ候補CL1、および習慣性操作クラスタCL2は、実質的に同一であり、同一の習慣性操作クラスタとして統合されて扱われることが望ましい。
 そこで、操作記憶実行制御部53は、図7の比較結果CL3で示されるように、習慣性操作クラスタ候補CL1、および習慣性操作クラスタCL2を構成する、それぞれの操作について、その前後の操作を比較する。
 すなわち、習慣性操作クラスタ候補CL1の操作Aにおいては、操作Aが先頭操作であるため前操作がなく(図中では先頭と表記されている)、後操作が操作Cである。
 習慣性操作クラスタ候補CL1の操作Cにおいては、前操作が操作Aであり、後操作が操作Bである。
 習慣性操作クラスタ候補CL1の操作Bにおいては、前操作が操作Cであり、後操作が操作Dである。
 そして、習慣性操作クラスタ候補CL1の操作Dにおいては、前操作が操作Bであり、操作Dそのものが終端操作で後操作はない(図中では後操作が終端と表記されている)。
 また、習慣性操作クラスタCL2の操作Aにおいては、操作Aが先頭操作であるため前操作がなく(図中では先頭と表記されている)、後操作が操作Bである。
 習慣性操作クラスタCL2の操作Cにおいては、前操作が操作Bであり、後操作が操作Dである。
 習慣性操作クラスタCL2の操作Bにおいては、前操作が操作Aであり、後操作が操作Cである。
 そして、習慣性操作クラスタCL2の操作Dにおいては、前操作が操作Cであり、操作Dそのものが終端操作で後操作はない(図中では後操作が終端と表記されている)。
 ここで、操作記憶実行制御部53は、図7の比較結果CL3に基づいて、習慣性操作クラスタ候補CL1、および習慣性操作クラスタCL2間における前操作と後操作の両方が異なる操作を順序可変操作として検出する。
 すなわち、図7の比較結果CL3においては、操作のうち操作B、および操作Cは、前操作と後操作とが、いずれも異なるため、順序可変操作として検出されることになる。
 尚、操作Aは、習慣性操作クラスタ候補CL1においても、習慣性操作クラスタCL2においても、先頭操作であり、また、操作Dは、習慣性操作クラスタ候補CL1においても、習慣性操作クラスタCL2においても、終端操作である。このため、操作A、および操作Dについては、いずれも順序可変操作ではない。
 そこで、操作記憶実行制御部53は、検出した順序可変操作に基づいて、習慣性操作クラスタ候補CL1、および習慣性操作クラスタCL2を統合した、図7で示されるような統合記憶クラスタCL4を生成して、習慣性操作/対話クラスタ記憶部55に登録する。
 すなわち、図7の統合記憶クラスタCL4においては、左から操作のうち、操作Aが、乗換案内サイトへ遷移させる操作であり、操作Cが、降車駅として”大崎”を入力する操作であり、操作Bが、乗車駅として”新宿”を入力する操作であり、操作Dが、検索実行ボタンクリックする操作であることが記録される。
 また、このうち、操作Cおよび操作Bについては、順序可変操作として検出されているので、可変範囲が設定される。
 可変範囲には、前条件と後条件とがあり、操作の前操作となり得る最も順序の早い操作が前条件として設定され、操作の後操作となり得る最も順序の遅い操作が後条件として設定される。
 図7の統合記憶クラスタCL4においては、操作Cおよび操作Bが順序可変操作として検出されているので、操作Cおよび操作Bは、いずれも図中の矢印で示されるように、前条件が、操作Aとされ、後条件が、操作Dとされる。
 すなわち、図7の統合記憶クラスタCL4の情報により、操作Cおよび操作Bのいずれもが、操作Aと操作Dとの間の範囲、すなわち、可変範囲であれば、順序を可変にすることが可能であることが記録される。
 尚、図7の統合記憶クラスタCL4においては、直近でなされた操作順序で登録される例が示されているが、登録済みの習慣性操作クラスタの操作順序で登録されるようにしてもよい。
 <習慣性操作クラスタの比較と統合(その2)>
 以上においては、習慣性操作クラスタ候補と、登録済みの習慣性操作クラスタとの、それぞれの操作の比較において、前操作と後操作が異なる操作が2つ存在し、それぞれの操作に対して可変範囲が設定される場合について説明してきた。
 しかしながら、順序可変操作の数は、2つ以外の数であってもよく、例えば、1つだけであってもよい。
 例えば、習慣性操作クラスタ候補および登録済みの習慣性操作クラスタとして、例えば、図8で示されるような習慣性操作クラスタ候補CL11と、記憶済みの順序のみが異なる習慣性操作クラスタCL12とが存在する場合について考える。
 ここで、図8の習慣性操作クラスタ候補CL11は、操作A乃至Dの4つの操作から構成され、習慣性操作クラスタCL12も、同様の操作A乃至Dの4つの操作から構成されるものとする。
 ここで、習慣性操作クラスタ候補CL11においては、操作A、操作D、操作C、操作Bの順序で操作がなされるのに対して、登録済みの習慣操作性クラスタにおいては、操作A、操作B、操作C、操作Dの順序で操作がなされるものとする。
 尚、操作Aは、動画閲覧サイトへ遷移させる操作であり、操作Dは、音量を30に設定する操作であり、操作Bは、動画コンテンツZを選択する操作であり、操作Cは、再生ボタンをクリックする操作であるものとする。
 また、習慣性操作クラスタ候補CL11、および習慣性操作クラスタCL12のいずれにおいても、操作B、操作C、操作Dのそれぞれの習慣性スコアSnは、いずれも習慣性閾値Sthよりも大きい。
 すなわち、習慣性操作クラスタ候補CL11、および習慣性操作クラスタCL12のそれぞれの操作を比較すると、音量を30に設定する操作である操作Dが、操作Aと操作Bとの間において順序可変操作となっている。
 しかしながら、音量を30に設定する操作である操作Dについては、順序は異なっていても、音量は30に設定されることになるため、習慣性操作クラスタ候補CL11、および習慣性操作クラスタCL12は、実質的に同一であり、同一の習慣性操作クラスタとして統合されて扱われることが望ましい。
 そこで、操作記憶実行制御部53は、図8の比較結果CL13で示されるように、習慣性操作クラスタ候補CL11、および習慣性操作クラスタCL12を構成する、それぞれの操作について、その前後の操作を比較する。
 すなわち、習慣性操作クラスタ候補CL11の操作Aにおいては、操作Aが先頭操作であるため前操作がなく(図中では先頭と表記されている)、後操作が操作Dである。
 習慣性操作クラスタ候補CL11の操作Dにおいては、前操作が操作Aであり、後操作が操作Bである。
 習慣性操作クラスタ候補CL11の操作Bにおいては、前操作が操作Dであり、後操作が操作Cである。
 そして、習慣性操作クラスタ候補CL11の操作Cにおいては、前操作が操作Bであり、操作Cそのものが終端操作で後操作はない(図中では後操作が終端と表記されている)。
 また、習慣性操作クラスタCL12の操作Aにおいては、操作Aが先頭操作であるため前操作がなく(図中では先頭と表記されている)、後操作が操作Bである。
 習慣性操作クラスタCL12の操作Dにおいては、前操作が操作Cであり、操作Dそのものが終端操作で後操作はない(図中では後操作が終端と表記されている)。
 習慣性操作クラスタCL12の操作Bにおいては、前操作が操作Aであり、後操作が操作Cである。
 そして、習慣性操作クラスタCL12の操作Cにおいては、前操作が操作Bであり、後操作が操作Dである。
 ここで、操作記憶実行制御部53は、図8の比較結果CL13に基づいて、習慣性操作クラスタ候補CL11、および習慣性操作クラスタCL12間における前操作と後操作の両方が異なる操作を順序可変操作として検出する。
 すなわち、図8の比較結果CL13においては、操作のうち操作Dは、前操作と後操作とが、いずれも異なるため、順序可変操作として検出されることになる。
 尚、操作A、および操作Cは、後操作は異なるが、前操作は同一である。また、操作Bについては、前操作が異なるが、後操作が同一である。従って、操作A、操作B、操作Cは、いずれも順序可変操作として検出されない。
 そこで、操作記憶実行制御部53は、検出した順序可変操作に基づいて、習慣性操作クラスタ候補CL11、および習慣性操作クラスタCL12を統合することで、図8で示されるような統合記憶クラスタCL14を生成して、習慣性操作/対話クラスタ記憶部55に登録する。
 すなわち、図8の統合記憶クラスタCL14においては、左から操作のうち、操作Aが、動画閲覧サイトへ遷移させる操作であり、操作Dが、音量を30に設定する操作であり、操作Bが、動画コンテンツZを選択する操作であり、操作Cが、再生ボタンをクリックする操作であることが記録される。
 また、このうち、操作Dについては、順序可変操作として検出されているので、可変範囲が設定される。
 図8の統合記憶クラスタCL14においては、操作Dが順序可変操作として検出されているので、操作Dは、図中の矢印で示されるように、前条件が、操作Aとされ、後条件が、終端とされる。
 すなわち、図8の統合記憶クラスタCL14の情報により、操作Dが、操作Aと終端操作との間になる可変範囲内であれば、順序を可変にすることが可能であることが記録される。
 尚、図8の統合記憶クラスタCL14においては、直近でなされた操作順序で登録される例が示されているが、登録済みの習慣性操作クラスタの操作順序で登録されるようにしてもよい。
 以上の処理により、登録済みの習慣性操作クラスタのうち、操作が同一であって、かつ、順序のみが異なる習慣性操作クラスタ候補については、登録済みの習慣性操作クラスタと統合されて、1つの習慣性操作クラスタ(統合記憶クラスタCL14)として登録される。
 この際、順序可変操作として認識された操作については、操作の順序を可変とすることができる可変範囲として設定されるようにすることができる。
 以上の処理により、習慣性操作クラスタが順次習慣性操作/対話クラスタ記憶部55に登録されることになるが、登録された習慣性操作クラスタについては、ユーザに提示して、習慣性操作クラスタを構成する複数の操作を一括して実行させたり、マクロとして登録させることで習慣性の高い複数の操作の実行が実現される。
 <対話クラスタ>
 以上においては、習慣性操作に基づいた習慣性操作クラスタリング処理について説明してきたが、習慣性操作クラスタが生成された後、習慣性操作が変化することで、習慣性操作クラスタに削除、および追加、並びにEntityの変更等が、様々な変更が必要になることがある。
 そこで、習慣性操作に基づいて、クラスタを構成する一括して実行される複数の操作のうちの少なくとも一部の操作に、ユーザとの対話に基づいた操作が含まれるようにして、習慣性操作の変化に対応できるようにしたクラスタが対話クラスタである。
 より詳細には、操作記憶実行制御部53は、操作履歴から習慣性操作クラスタ内の以下の3種類の操作を変数とする対話クラスタを記憶し、対話クラスタに記憶されている変数操作の対話情報に基づいて対話生成を行ってクラスタを構成する操作を適宜変化させながら実行する。
 第1の操作は、操作種別(発話意図)(Intent)が同一で属性(Entity)が異なる操作である。操作種別(Intent)が同一で属性(Entity)が異なる操作について、操作記憶実行制御部53は、対応する操作がなされるときに対話をするか否かを示すフラグとして選択対話フラグfsを設定し、入力された複数のEntityを選択肢情報Isとして実行回数と共に対話クラスタに記憶する。
 また、操作記憶実行制御部53は、操作種別(Intent)が同一で属性(Entity)が異なる操作に係る対話クラスタを実行する際、選択対話フラグfsの設定に応じて、選択肢情報Isに基づいて、入力確率に基づいた選択肢を提示すると共に選択肢となるEntityの問い合わせ発話を行い、ユーザ応答に基づいて操作を実行すると共に、選択肢情報Isを更新する。
 第2の操作は、追加および削除された操作である。追加および削除された操作について、操作記憶実行制御部53は、確認対話フラグfaを設定し、実行回数を確認情報Iaとして対話クラスタに記憶する。
 また、操作記憶実行制御部53は、追加および削除された操作に係る対話クラスタを実行する際には、確認対話フラグfaの設定に応じて、操作の実行の可否の問い合わせ発話を行い、ユーザ応答により操作を実行すると共に、確認情報Iaを更新する。
 第3の操作は、観測コンテキストに依存する操作である。観測コンテキストに依存する操作について、操作記憶実行制御部53は、コンテキスト対話フラグfcを設定し、観測コンテキストと合致したEntityをコンテキスト情報Icとして対話クラスタに記憶する。
 また、操作記憶実行制御部53は、観測コンテキストに依存する操作に係る対話クラスタを実行する際には、コンテキスト対話フラグfcの設定に応じて、コンテキスト情報Icに基づき、観測コンテキストと合致しない場合にEntityの問い合わせ発話を行い、ユーザ応答により操作を実行すると共に、コンテキスト情報Icを更新する。
 (対話クラスタリング処理)
 次に、対話クラスタを生成するための処理を説明するために、図9のフローチャートを参照して、対話クラスタリング処理について説明する。
 ステップS51において、操作記憶実行制御部53は、操作をカウントするカウンタnを1に初期化する。
 ステップS52において、操作記憶実行制御部53は、操作nのユーザ操作情報が供給されたか否かを判定し、供給されるまで、同様の処理を繰り返す。
 そして、ステップS52において、操作nのユーザ操作情報が供給された場合、処理は、ステップS53に進む。
 ステップS53において、操作記憶実行制御部53は、操作nのユーザ操作情報にタイムスタンプを付与して、ユーザ操作履歴としてユーザ操作履歴記憶部54に記憶させる。
 ステップS54において、操作記憶実行制御部53は、ユーザ操作履歴記憶部54に記憶されているユーザ操作履歴に基づいて、上述した式(1)乃至式(4)を参照して説明した演算により、操作nの習慣性スコアSnを算出する。
 ステップS55において、操作記憶実行制御部53は、操作nに対応する習慣性スコアSnが、習慣性閾値Sthよりも大きいか否かを判定する。
 ステップS55において、操作nに対応する習慣性スコアSnが、習慣性閾値Sthよりも大きいと判定された場合、操作nが習慣性の高い操作であるものとみなされて、処理は、ステップS56に進む。
 ステップS56において、操作記憶実行制御部53は、観測コンテキスト依存操作判定処理を実行し、操作nが観測コンテキストに依存する操作であるか否かを判定し、観測コンテキストに依存する操作であるときには、コンテキスト情報Icと、コンテキスト対話フラグfcとを設定する。
 尚、観測コンテキスト依存操作判定処理については、図19,図20を参照して、詳細を後述する。
 ステップS57において、操作記憶実行制御部53は、操作nの1つ前の操作n-1の習慣性スコアSn-1が、習慣性閾値Sthよりも小さいか否かを判定する。
 ステップS57において、操作nの1つ前の操作n-1の習慣性スコアSn-1が、習慣性閾値Sthよりも小さい場合、処理は、ステップS58に進む。
 ステップS58において、操作記憶実行制御部53は、操作n-1を対話クラスタ候補に追加する。
 ステップS59において、操作記憶実行制御部53は、操作nを対話クラスタ候補に追加する。
 ステップS60において、操作記憶実行制御部53は、処理の終了が指示されたか否かを判定し、終了が指示された場合、処理が終了する。
 また、ステップS60において、終了が指示されていない場合、処理は、ステップS61に進む。
 ステップS61において、操作記憶実行制御部53は、カウンタnを1インクリメントして、処理は、ステップS52に戻る。
 すなわち、対話クラスタリング処理の終了が指示されるまで、習慣性スコアSnが習慣性閾値Sthよりも高い操作nが複数になる(繰り返される)と、ステップS52乃至S61の処理が繰り返されて、カウンタnが順次1ずつインクリメントされ、対話クラスタ候補の操作が追加され続ける。
 また、対話クラスタを構成する操作の先頭の操作は、習慣性スコアSnが習慣性閾値Sthよりも高くなる操作の直前の操作であるので、ステップS57の処理により操作nの直前の操作n-1の習慣性スコアSn-1が習慣性閾値Sthよりも低いときには、ステップS58の処理により、操作nの1つ前の操作n-1が対話クラスタ候補の先頭操作として含まれるようにする。
 従って、対話クラスタ候補を構成する操作のうち、先頭以外の操作については、習慣性スコアSnが習慣性閾値Sthよりも大きくなるので、ステップS57においては、習慣性スコアSnが習慣性閾値Sthよりも小さくはならない。このため、ステップS58の処理がスキップされる。
 さらに、ステップS55において、操作nに対応する習慣性スコアSnが、習慣性閾値Sthよりも大きくないと判定された場合、操作nは習慣性の高い操作ではないものとみなされて、処理は、ステップS62に進む。
 ステップS62において、操作記憶実行制御部53は、Intentが同一でEntityが異なる操作判定処理を実行し、操作nが、Intentが同一でEntityが異なる操作であるか否かを判定し、Intentが同一でEntityが異なる操作であるときには、選択対話フラグfsと、選択肢情報Isとを設定する。
 尚、Intentが同一でEntityが異なる操作判定処理については、図10,図11を参照して詳細を後述する。
 ステップS63において、操作記憶実行制御部53は、操作nの選択対話フラグfsが、trueに設定されているか否かを判定する。
 ステップS63において、操作nの選択対話フラグfsが、trueに設定されていると判定された場合、処理は、ステップS59に進む。
 また、ステップS63において、操作nの選択対話フラグfsが、trueに設定されていないと判定された場合、処理は、ステップS64に進む。
 ステップS64において、操作記憶実行制御部53は、追加および削除された操作判定処理を実行し、操作nが、追加された操作および削除された操作のいずれかであるか否かを判定し、追加された操作および削除された操作のいずれかであるときには、確認対話フラグfaと、確認情報Iaとを設定し、さらに、必要に応じてダミー対話フラグfdを設定する。
 尚、追加および削除された操作判定処理については、図14乃至図16を参照して詳細を後述する。
 ステップS65において、操作記憶実行制御部53は、操作nの確認対話フラグfaが、trueに設定されているか否かを判定する。
 ステップS65において、操作nの確認対話フラグfaが、trueに設定されていると判定された場合、処理は、ステップS59に進む。
 また、ステップS65において、操作nの確認対話フラグfaが、trueに設定されていないと判定された場合、処理は、ステップS66に進む。
 ステップS66において、操作記憶実行制御部53は、操作nのタミー対話フラグfdが、trueに設定されているか否かを判定する。
 ステップS66において、操作nのダミー対話フラグfdが、trueに設定されていると判定された場合、処理は、ステップS59に進む。
 また、ステップS66において、操作nのダミー対話フラグfdが、trueに設定されていないと判定された場合、処理は、ステップS67に進む。
 ステップS67において、操作記憶実行制御部53は、1つ前の操作n-1の習慣性スコアSn-1は、習慣性閾値Sthよりも大きいか、または、選択対話フラグfs、確認対話フラグfa、コンテキスト対話フラグfc、およびダミー対話フラグfdのいずれかがtrueであるか否かを判定する。
 ステップS67において、操作n-1の習慣性スコアSn-1が、習慣性閾値Sthよりも大きい、または、選択対話フラグfs、確認対話フラグfa、コンテキスト対話フラグfc、およびダミー対話フラグfdのいずれかがtrueであるとみなされた場合、直前までの操作は、対話クラスタ候補に含まれる操作の一部であるものとみなされて、処理は、ステップS68に進む。
 尚、ステップS67において、操作n-1の習慣性スコアSn-1が、習慣性閾値Sthよりも大きくなく、かつ、選択対話フラグfs、確認対話フラグfa、コンテキスト対話フラグfc、およびダミー対話フラグfdのいずれかもtrueではないとみなされた場合、直前の操作は、対話クラスタ候補には含まれない操作であるものとみなされて、処理は、ステップS60に進む。
 ステップS68において、操作記憶実行制御部53は、直前までの操作により構成される対話クラスタ候補に含まれる操作が2以下であるか否かを判定する。
 対話クラスタは、3以上であることを前提とするので、ステップS68において、直前までの操作により構成される対話クラスタ候補に含まれる操作が2以下である場合、対話クラスタが構成されていないものとみなされて、処理は、ステップS69に進む。
 そして、ステップS69において、操作記憶実行制御部53は、対話クラスタ候補として記憶していた操作の情報をクリアして、処理は、ステップS60に進む。
 また、ステップS68において、直前までの操作により構成される対話クラスタ候補に含まれる操作が2以下はない場合、すなわち、対話クラスタ候補に3以上の操作が含まれているものとみなされるので、処理は、ステップS70に進む。
 ステップS70において、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶されている対話クラスタ候補に、選択対話フラグfs、確認対話フラグfa、コンテキスト対話フラグfc、およびダミー対話フラグfdのいずれかがtrueに設定された操作が含まれているか否かを判定する。
 ステップS70において、習慣性操作/対話クラスタ記憶部55に記憶されている対話クラスタ候補に、選択対話フラグfs、確認対話フラグfa、コンテキスト対話フラグfc、およびダミー対話フラグfdのいずれかがtrueに設定された操作が含まれていない場合、処理は、ステップS69に進む。
 すなわち、この場合、対話クラスタとして登録する必要がないので、記憶されている対話クラスタ候補の情報がクリアされる。
 また、ステップS70において、習慣性操作/対話クラスタ記憶部55に記憶されている対話クラスタ候補に、選択対話フラグfs、確認対話フラグfa、コンテキスト対話フラグfc、およびダミー対話フラグfdのいずれかがtrueに設定された操作が含まれていると判定された場合、処理は、ステップS71に進む。
 ステップS71において、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みの習慣性操作クラスタおよび対話クラスタの両方のクラスタ(以下、単に、登録済みのクラスタと称する)のうち、現在処理中の対話クラスタ候補に含まれる操作が同一で、かつ、同一シーケンス(その順序が同一)となる完全同一のものがないか否かを判定する。
 すなわち、対話クラスタ候補が、習慣性操作/対話クラスタ記憶部55に既に登録されているクラスタと完全同一である場合には、コンテキスト情報Icを更新する必要があるので、完全同一のもの有無が判定される。
 ステップS71において、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みのクラスタに、現在処理中の対話クラスタ候補と完全同一のものがある場合、処理は、ステップS72に進む。
 ステップS72において、操作記憶実行制御部53は、対話クラスタ候補のコンテキスト情報更新処理を実行し、対話クラスタ候補のコンテキスト情報Icを更新する。
 尚、対話クラスタ候補のコンテキスト情報更新処理については、図21を参照して詳細を後述する。
 また、ステップS71において、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みのクラスタに、現在処理中の対話クラスタ候補と完全同一のものがない場合、ステップS72の処理がスキップされて、処理は、ステップS73に進む。
 ステップS73において、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みのクラスタのうち、現在処理中の対話クラスタ候補のシーケンスで包含されるものがないか否かを判定する。
 ステップS73において、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みのクラスタのうち、現在処理中の対話クラスタ候補のシーケンスで包含されるものがあると判定された場合、処理は、ステップS74に進む。
 ステップS74において、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みのクラスタのうち、現在処理中の対話クラスタ候補のシーケンスで包含される登録済みのクラスタを削除する。
 また、ステップS73において、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みのクラスタのうち、現在処理中の対話クラスタ候補のシーケンスで包含されるものがないと判定された場合、ステップS74の処理がスキップされて、処理は、ステップS75に進む。
 ステップS75において、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みのクラスタのうち、現在処理中の対話クラスタで置き換え可能なものがないか否かを判定する。
 ステップS75において、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みのクラスタのうち、現在処理中の対話クラスタで置き換え可能なものがあると判定された場合、処理は、ステップS76に進む。
 ステップS76において、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みの対話クラスタのうち、現在処理中の対話クラスタ候補の対話で置き換え可能な登録済みのクラスタを削除する。
 また、ステップS75において、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みのクラスタのうち、現在処理中の対話クラスタで置き換え可能なものがないと判定された場合、ステップS76の処理がスキップされて、処理は、ステップS77に進む。
 ステップS77において、操作記憶実行制御部53は、現在処理中の対話クラスタ候補の操作を、新規の対話クラスタとして習慣性操作/対話クラスタ記憶部55に登録する。
 すなわち、習慣性操作/対話クラスタ記憶部55に記憶されている既に登録済みのクラスタのうち、現在処理中の対話クラスタ候補に含まれる操作と同一シーケンスのものについては、コンテキスト情報が更新され、現在処理中の対話クラスタ候補に含まれる操作を包含するものや、置き換え可能なものについては、削除され、それ以外の現在処理中の対話クラスタ候補は、新たな複数の操作からなる対話クラスタとみなされるので、習慣性操作/対話クラスタ記憶部55に登録される。
 以上の処理により、新たな操作nが受け付けられると、順次、習慣性スコアSnが求められて、習慣性閾値Sthとの比較により、対話クラスタ候補が設定される。
 また、対話クラスタ候補と、既に登録済みのクラスタとの、それぞれを構成する操作との比較により、登録済みのクラスタとは、全く異なる操作からなる対話クラスタ候補については、新規の対話クラスタとして登録される。
 これにより、習慣性スコアが高く、ユーザの操作としての習慣性が高い複数の操作であって、対話フラグがtrueに設定された操作を含む対話クラスタ候補を、対話クラスタとして順次登録することが可能となる。
 尚、登録された対話クラスタについては、時間の経過と共に習慣性に乖離が生じる可能性があるので、所定期間以上登録されたままの対話クラスタについては、削除するようにしてもよい。
 <操作種別(Intent)が同一で属性(Entity)が異なる操作>
 次に、図10を参照して、操作種別(Intent)が同一で属性(Entity)が異なる操作について説明する。尚、以降において、操作種別、および属性については、それぞれ単にIntentおよびEntityとも称する。
 上述した習慣性操作クラスタリング処理により、例えば、図10の左部で示される状態ST101で示される操作1乃至8からなる習慣性操作クラスタが生成されて、実行される場合について考える。
 状態ST101においては、操作1が、路線情報サイトに遷移させる操作であり、操作2が、乗換案内のページに遷移させる操作であり、操作3が、出発駅に”大崎”を入力する操作であり、操作4が、到着駅に”本厚木”を入力する操作であり、操作5が、日時条件として”出発”を選択する操作であり、操作6が、有料特急使用の条件にチェックを入れる操作であり、操作7が、表示条件として到着が速い順を選択する操作であり、操作8が、検索ボタンをクリックする操作であるものとする。
 ここで、図10の左部の状態ST101で示される、操作1乃至8からなる習慣性操作クラスタが一括実行される場合に、例えば、図10の中央部の状態ST102で示されるように、操作4に代えて、操作4’がなされて、到着駅として”本厚木”に代えて”藤沢”を入力する操作がなされたものとする。
 このような場合、習慣性操作クラスタリング処理のみの場合、操作1乃至3までのクラスタと、操作5乃至8までのクラスタとが個別に習慣性操作クラスタとして登録されることになる。すなわち、実質的に、状態ST101の習慣性操作クラスタが分割されて登録されてしまうことになり、一括実行することができない。
 ここで、操作4と操作4’とは、”到着駅入力”という同一のIntent(操作種別)であり、到着駅の駅名がそれぞれ”本厚木”と”藤沢”でありEntity(属性)が異なる操作である。
 そこで、操作記憶実行制御部53は、図10の右部の状態ST103で示されるように、操作4に対して同一のIntentである「到着駅入力」を設定したうえで、選択対話フラグfsと、選択肢情報Isとを設定する。
 選択対話フラグfsとは、例えば、習慣性操作クラスタにより設定された一括操作される操作のうち、Intentが同一でEntityが異なる操作がなされた場合に、ユーザに対して対話により操作の選択肢を提示して、選択させる処理を実現させるか否かを設定するフラグである。
 より具体的には、選択対話フラグfsは、対話により操作の選択肢を提示してユーザに選択させる処理を実現させるときtrueが設定され、そうではないときfalseが設定される。
 例えば、図10の状態ST101で示される習慣性操作クラスタに対して、状態ST102で示されるように、操作4に代えて操作4’で示されるような、Intentが同一でEntityが異なる操作がなされるとき、選択対話フラグfsは、図10の状態ST103における操作4で示されるように設定される。
 ここで、選択肢情報Isは、選択対話フラグfsがtrueに設定されるとき、具体的にユーザに提示される選択肢の情報であり、選択肢と、選択肢のそれぞれが選択された回数および選択肢が選択された合計回数の情報が登録される。
 より具体的には、図10の状態ST103においては、選択肢情報Isとして”Total:2,本厚木:1,藤沢:1”とがそれぞれ初期値で登録されたときの状態が示されており、選択肢として本厚木と藤沢があり、それぞれが1回ずつ、合計2回選択されていることが示されている。尚、合計回数は初期値として2が設定される。
 図10の状態ST103の場合、選択肢として、本厚木と藤沢が設定されているが、選択肢として提示される際には、それぞれの入力確率が計算されて、入力確率が高い順に提示され、同率であるときには、直近で選択された選択肢から提示される。ここで、入力確率は、選択肢が選択された回数を合計回数で除したものであり、図10の状態ST103の場合、選択肢である本厚木と藤沢は、いずれも入力確率が0.5(=1/2)とされる。
 <Intentが同一でEntityが異なる操作判定処理>
 次に、図11のフローチャートを参照して、Intentが同一でEntityが異なる操作判定処理について説明する。尚、図11のフローチャートにおけるIntentが同一でEntityが異なる操作判定処理は、図9のフローチャートにおけるステップS62の処理である。
 ステップS101において、操作記憶実行制御部53は、対話クラスタ候補に格納されている操作の数は、1以上であるか否かを判定する。
 ステップS101において、対話クラスタ候補に格納されている操作の数は、1以上であると判定された場合、処理は、ステップS102に進む。
 ステップS102において、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶済みのクラスタ内に、対話クラスタ候補とシーケンスが前方一致する、記憶済みのクラスタが存在するか否かを判定する。
 ステップS102において、習慣性操作/対話クラスタ記憶部55に記憶済みの対話クラスタ内に、対話クラスタ候補とシーケンスが前方一致する、記憶済みのクラスタが存在すると判定された場合、処理は、ステップS103に進む。
 ステップS103において、操作記憶実行制御部53は、対話クラスタ候補とシーケンスが前方一致する、記憶済みのクラスタの一致直後の操作Mnは、操作nとIntentが一致するか否かを判定する。
 ステップS103において、対話クラスタ候補とシーケンスが前方一致する記憶済みのクラスタの一致直後の操作MnのIntentが、操作nのIntentと一致する場合、処理は、ステップS104に進む。
 ステップS104において、操作記憶実行制御部53は、操作Mnに選択対話フラグfsが設定されて、選択対話フラグfsがtrueに設定されているか否か、すなわち、選択肢情報Isが設定されているか否かを判定する。
 ステップS104において、選択対話フラグfsがtrueに設定されており、選択肢情報Isが設定されているとみなされた場合、処理は、ステップS105に進む。
 ステップS105において、操作記憶実行制御部53は、前方一致する記憶済みのクラスタの操作Mnの選択肢情報Isに操作nのEntity情報を反映したデータを操作nの"選択肢情報Isとして設定する。
 ステップS106において、操作記憶実行制御部53は、操作nに選択対話フラグfsを設定し、さらに、選択対話フラグfsをtrueに設定する。
 また、ステップS104において、選択対話フラグfsが設定されていない、または、falseに設定されており、選択肢情報Isが設定されていないとみなされた場合、処理は、ステップS107に進む。
 ステップS107において、操作記憶実行制御部53は、対話クラスタ候補とシーケンスが前方一致する対話クラスタの一致直後の操作Mnは、操作nとEntityが異なるか否かを判定する。
 ステップS107において、対話クラスタ候補とシーケンスが前方一致する対話クラスタの一致直後の操作MnのEntityが、操作nのEntityと異なる場合、処理は、ステップS108に進む。
 ステップS108において、操作記憶実行制御部53は、操作nの選択肢情報Isの選択回数の初期値として1を設定する。
 また、ステップS101において、対話クラスタ候補に格納されている操作の数が、1以上ではないと判定された場合、ステップS102において、習慣性操作/対話クラスタ記憶部55に記憶済みのクラスタ内に、対話クラスタ候補とシーケンスが前方一致する対話クラスタが存在しないと判定された場合、ステップS103において、対話クラスタ候補とシーケンスが前方一致する記憶済みのクラスタの一致直後の操作MnのIntentが、操作nのIntentと一致しない場合、または、ステップS107において、対話クラスタ候補とシーケンスが前方一致する記憶済みのクラスタの一致直後の操作MnのEntityが、操作nのEntityと同一である場合、処理は、終了する。
 以上の処理により、ユーザの操作nが、Intentが同一でEntityが異なる操作であるか否かが判定されて、Intentが同一でEntityが異なる操作である場合には、初回において、選択対話フラグfsがtrueに設定されて、選択肢情報Isが初期値で設定され、以降においては、新たな操作nに応じた選択肢情報Isが順次設定される。
 <Intentが同一でEntityが異なる操作に対する対話生成事例>
 次に、図12を参照して、Intentが同一でEntityが異なる操作に対する対話生成事例について説明する。
 例えば、図12で示されるような状態ST111で示されるような対話クラスタが設定された場合について考える。尚、状態ST111の対話クラスタについては、図10の状態ST103と同一の対話クラスタである。
 図12の左部における操作4においては、選択対話フラグfsがtrueに設定されているため、対話クラスタによる対話が生成される処理がなされる状態に設定されている。
 ここで、例えば、図12の右部で示されるように、処理SC101において、ユーザ11により「乗り換え案内」といった発話がなされると、操作記憶実行制御部53は、乗り換え案内に係る図12の左部で示される対話クラスタを実行する指示がなされたものと認識する。
 処理Ex101において、操作記憶実行制御部53は、「乗り換え案内」との発話に応じて、図12の状態ST111で示される操作1乃至3の操作を実行する。
 処理Ex102において、操作記憶実行制御部53は、操作4の処理を実行して、選択対話フラグfsがtrueに設定されているので、選択肢情報Isに従って、入力確率が高い順に選択肢を提示する。ここでは、本厚木も、藤沢も入力確率が0.5であるため、例えば、直近の入力結果を入力確率が高い選択肢とみなされて提示されるようにしてもよい。
 処理Ex103において、操作記憶実行制御部53は、「到着地はどこですか?」といった提示した選択肢の選択を促す音声を出力する。
 ここで、処理SC102において、ユーザにより「本厚木」といった発話がなされると、操作記憶実行制御部53は、選択肢として「本厚木」が選択されたことを認識する。
 処理Ex104において、操作記憶実行制御部53は、到着駅に本厚木を入力して選択肢情報Isを更新すると共に、状態ST111の操作5乃至8を実行する。
 このような一連の処理により、習慣性操作に変化が生じて、Intentが同一でEntityが異なる操作がなされるときには、Entityを選択肢とする問い合わせの対話が提示され、選択結果に応じた処理が実行される。
 結果として、習慣性操作に変化が生じても習慣性操作クラスタに対して対話クラスタが設定されて、柔軟な対応が可能となる。
 <Intentが同一でEntityが異なる操作に対する対話処理>
 次に、図13のフローチャートを参照して、Intentが同一でEntityが異なる操作に対する対話処理について説明する。
 尚、この処理は、Intentが同一でEntityが異なる操作であって、選択対話フラグfsがtrueに設定された操作がなされるとき実行される。すなわち、図12の状態ST111における操作4の処理がなされるときに実行される処理である。
 ステップS131において、操作記憶実行制御部53は、選択肢情報Isに含まれるEntityを入力確率が高い順に選択肢として表示(提示)する。図12の場合、本厚木と藤沢が選択肢として提示されるが、入力確率が同一であるので、例えば、直近に入力された選択肢が入力確率が高い選択肢として先に提示されるようにしてもよい。
 ステップS132において、操作記憶実行制御部53は、Intent毎に予め登録されている問い合わせフレーズに基づいて、ユーザに選択肢に対する選択(応答)を促すシステム発話を出力する。
 より詳細には、操作記憶実行制御部53は、応答生成部63を制御して、Intent毎に予め登録されている問い合わせフレーズに基づいて、ユーザに選択肢に対する選択(応答)を促すシステム発話を生成させて、データとして音声合成処理部65に出力させる。音声合成処理部65は、システム発話のデータに、音声合成処理を施し、音声出力部67より音声として出力させる。
 尚、システム発話の音声出力に係る処理は同様であるので、以降においては、説明を省略する。
 ステップS133において、操作記憶実行制御部53は、選択肢に対するユーザの選択結果である応答発話があったか否かを判定し、応答発話があったと判定されるまで、同様の処理を繰り返す。
 より詳細には、操作記憶実行制御部53は、音声入力部56を介して入力されたユーザ発話に対応する音声信号が、音声認識処理部57により音声認識処理されて、テキスト化されたユーザの発話フレーズに基づいて、応答発話があったか否かを判定し、応答発話があったと判定されるまで、同様の処理を繰り返す。
 尚、ユーザの発話に係る処理は同様であるので、以降においては、説明を省略する。
 そして、ステップS133において、選択肢に対するユーザの選択結果である応答発話があったとみなされた場合、処理は、ステップS134に進む。
 ステップS134において、操作記憶実行制御部53は、応答発話に対応する選択肢のEntityにより操作(操作4)を実行する。
 ステップS135において、操作記憶実行制御部53は、ユーザの応答発話が、選択肢情報Isに含まれるEntityであるか否かを判定する。
 ステップS135において、ユーザの応答発話が、選択肢情報Isに含まれるEntityであると判定された場合、処理は、ステップS136に進む。
 ステップS136において、操作記憶実行制御部53は、選択肢情報Isに含まれる応答発話により選択されたEntityの回数を1インクリメントする。
 一方、ステップS135において、ユーザの応答発話が、選択肢情報Isに含まれないEntityであると判定された場合、処理は、ステップS137に進む。
 ステップS137において、操作記憶実行制御部53は、選択肢情報Is内に、応答発話により新たに選択されたEntityを新規追加して登録し、回数を初期値である1に設定する。
 ステップS138において、操作記憶実行制御部53は、選択肢情報Isにおける合計回数(total回数)の情報を1インクリメントする。
 ステップS139において、操作記憶実行制御部53は、選択肢情報IsにおけるEntityの中で入力確率が規定値以上のEntityがあるか否かを判定する。
 ステップS139において、選択肢情報IsにおけるEntityの中で入力確率が規定値以上のEntityがある場合、処理は、ステップS140に進む。
 ステップS140において、操作記憶実行制御部53は、選択対話フラグfsをfalseに設定すると共に、入力確率が規定値以上のEntityに固定する操作に設定し、処理を終了する。
 ステップS139において、選択肢情報IsにおけるEntityの中で入力確率が規定値以上のEntityがない場合、ステップS140の処理をスキップして、処理を終了する。
 以上の一連の処理により、選択対話フラグfsがtrueに設定された操作については、選択肢情報IsにおけるEntityを入力確率順に選択肢として提示して選択を促し、選択されたEntityにより処理を実行する。
 そして、選択されたEntityについては、回数が1インクリメントされ、合計回数(total回数)が1インクリメントされる。このとき、選択肢として提示したEntity以外の新規のEntityが選択された場合については、新たに選択肢として登録すると共に回数が1に設定される。
 さらに、Entityの入力確率が順次計算されて、規定値以上になった場合については、ユーザが、Entityとして入力確率が規定値以上となる選択肢が常に選択されるものとみなされて、選択対話フラグfsがfalseに設定されて、常に選択される入力確率が規定値以上のEntityに固定された操作がなされるように設定される。
 すなわち、このようにEntityが固定された操作になると、以降においては、対話がなされることのない、通常の習慣性操作クラスタとして機能し、習慣性操作の変化に対応した複数の操作が一括実行されることになる。
 結果として、習慣性操作に変化が生じても対話クラスタが設定されて、選択肢の選択が促されるような対話処理がなされるようになり、さらに、入力確率に基づいて、所定のEntityが繰り返し選択されて、規定値以上になると所定のEntityに固定された操作がなされることになり、柔軟な対応が可能となる。
 <追加および削除された操作>
 (追加された操作)
 次に、図14を参照して、追加された操作について説明する。
 上述した習慣性操作クラスタリング処理により、例えば、図14の左部で示される状態ST131で示される操作1乃至8からなる習慣性操作クラスタが生成されて、実行される場合について考える。尚、状態ST131は、図10の状態ST101と同一である。
 ここで、図14の左部の状態ST131で示される、操作1乃至8からなる習慣性操作クラスタが一括実行される場合に、例えば、図14の中央部の状態ST132で示されるように、操作4,5の間に、操作4’がなされて、経由地に”横浜”を入力する操作がなされたものとする。
 このような場合、習慣性操作クラスタリング処理のみの場合、操作4’と操作5は、いずれも習慣性スコアSnは、習慣性閾値Sthよりも小さいが、時間間隔Tnが閾値Tthよりも短いときには、対話クラスタとみなし、操作記憶実行制御部53は、図14の右部の状態ST133で示されるように、操作4’を操作5に設定した上で、以降の操作を1ずつ繰り上げて、さらに、操作5を「経由駅に”横浜”を入力」に設定したうえで、確認対話フラグfaと、確認情報Iaとを設定する。
 確認対話フラグfaとは、例えば、習慣性操作クラスタにより設定された一括操作される操作に追加する操作がなされた場合に、ユーザに対して対話により追加された操作の実行を選択するか否かを設定するフラグである。
 より具体的には、確認対話フラグfaは、対話により追加操作を提示してユーザに実行させるか否かを問い合わせるときtrueが設定され、そうではないときfalseが設定される。
 例えば、図14の状態ST131で示される習慣性操作クラスタに対して、状態ST132で示されるように、操作4,5の間に操作4’で示されるような操作がなされるとき、選択対話フラグfaは、操作4’に代わる操作5に対して設定される。
 確認情報Iaは、確認対話フラグfaがtrueに設定されるとき、具体的にユーザの入力確率を計算するための情報であり、実行が指示された回数および合計回数(total回数)の情報が登録される。尚、合計回数については、初期値が2とされ、初期設定においても実行確率が0.5となるように設定される。
 より具体的には、図14においては、確認情報Iaとして”Total:2,exec:1”と登録されており、確認回数の合計が2回であり、実行指示が1回選択されていることが示されている。
 すなわち、図14の場合、実行が指示される実行確率が0.5に計算される。
 (削除された操作)
 次に、図15を参照して、削除された操作について説明する。
 ここで、図15の左部の状態ST131(図14と同一)で示される、操作1乃至8からなる習慣性操作クラスタが一括実行される場合に、例えば、図15の中央部の状態ST141で示されるように、操作6である「有料特急使用の条件にチェックを入れる」の操作が削除されたものとする。
 このような場合、習慣性操作クラスタリング処理のみの場合、操作6は、習慣性スコアSnが、習慣性閾値Sthよりも小さいが、時間間隔Tnが閾値Tthよりも短いときには、対話クラスタとしてみなし、操作記憶実行制御部53は、図15の右部の状態ST142で示されるように、操作6を「有料特急使用の条件にチェックを入れる」に設定したうえで、確認対話フラグfaと、確認情報Iaとを設定する。
 例えば、図15の状態ST131で示される習慣性操作クラスタに対して、状態ST141で示されるように、操作6が削除されるとき、操作記憶実行制御部53は、図15の状態ST142で示されるように、操作6に対して確認対話フラグfaを設定する。
 また、図15の状態ST142においては、確認情報Iaとして”Total:2,exec:1”と登録されており、確認回数の合計が2回であり、実行指示が1回選択されていることが示されている。
 すなわち、図15の状態ST142の場合、実行が指示される実行確率が0.5に計算される。
 <追加および削除された操作判定処理>
 次に、図16のフローチャートを参照して、追加および削除された操作判定処理について説明する。尚、図16のフローチャートにおける追加および削除された操作判定処理は、図9のフローチャートにおけるステップS64の処理である。
 ステップS161において、操作記憶実行制御部53は、操作nの時間間隔Tnは、所定の閾値Tth以上であるか、すなわち、時間間隔が閾値より短いか否かを判定する。
 ステップS161において、操作nの時間間隔Tnは、所定の閾値Tth以上である場合、処理は、ステップS162に進む。
 ステップS162において、操作記憶実行制御部53は、対話クラスタ候補に格納されている操作の数は、1以上であるか否かを判定する。
 ステップS162において、対話クラスタ候補に格納されている操作の数は、1以上であると判定された場合、処理は、ステップS163に進む。
 ステップS163において、操作記憶実行制御部53は、習慣性操作/対話クラスタ記憶部55に記憶済みのクラスタ内に、対話クラスタ候補とシーケンスが前方一致する記憶済みのクラスタが存在するか否かを判定する。
 ステップS163において、習慣性操作/対話クラスタ記憶部55に記憶済みのクラスタ内に、対話クラスタ候補とシーケンスが前方一致する記憶済みのクラスタが存在すると判定された場合、処理は、ステップS164に進む。
 ステップS164において、操作記憶実行制御部53は、対話クラスタ候補とシーケンスが前方一致する記憶済みのクラスタの一致直後の操作Mn以降に、操作nと同一の操作がないか否か、すなわち、操作nが追加操作であるか否かを判定する。
 ステップS164において、対話クラスタ候補とシーケンスが前方一致する記憶済みのクラスタの一致直後の操作Mn以降に、操作nと同一の操作がない、すなわち、操作nが追加操作であると判定された場合、処理は、ステップS165に進む。
 ステップS165において、操作記憶実行制御部53は、操作nに確認情報Iaを設定すると共に、初期値を設定する。
 ステップS166において、操作記憶実行制御部53は、操作nに確認対話フラグfaを設定し、さらに、確認対話フラグfaをtrueに設定する。
 また、ステップS164において、対話クラスタ候補とシーケンスが前方一致する記憶済みのクラスタの一致直後の操作Mn以降に、操作nと同一の操作があり、すなわち、操作nが追加操作ではないと判定された場合、処理は、ステップS167に進む。
 ステップS167において、操作記憶実行制御部53は、対話クラスタ候補とシーケンスが前方一致する記憶済みのクラスタの一致直後の操作Mnが、操作nと同一であるか否か、すなわち、削除操作であるか否かを判定する。
 ステップS167において、対話クラスタ候補とシーケンスが前方一致する記憶済みのクラスタの一致直後の操作Mnが、操作nと同一であり、削除操作ではないとみなされた場合、処理は、ステップS168に進む。
 ステップS168において、操作記憶実行制御部53は、操作Mnに確認対話フラグfaが設定されて、確認対話フラグfaがtrueに設定されているか否か、すなわち、確認情報Iaが設定されているか否かを判定する。
 ステップS168において、操作Mnに確認対話フラグfaが設定されて、確認対話フラグfaがtrueに設定されており、すなわち、確認情報Iaが設定されているとみなされた場合、処理は、ステップS169に進む。
 ステップS169において、操作記憶実行制御部53は、前方一致する記憶済みのクラスタの操作Mnの確認情報Iaに操作nの実行情報を反映したデータを、操作nの確認情報Iaに設定し、処理は、ステップS166に戻る。すなわち、ここでは、確認情報Iaのみが更新される。
 一方、ステップS167において、対話クラスタ候補とシーケンスが前方一致する記憶済みのクラスタの一致直後の操作Mnが、操作nと同一ではなく、削除操作であるとみなされた場合、処理は、ステップS170に進む。
 ステップS170において、操作記憶実行制御部53は、前方一致する記憶済みのクラスタの操作Mnから操作nと同一の操作の直前の操作までを削除操作配列Adとして習慣操作性/対話クラスタ記憶部55に格納する。
 ステップS171において、操作記憶実行制御部53は、習慣操作性/対話クラスタ記憶部55に削除操作配列Adとして格納されている操作数は所定の閾値(例えば、3個)以下であるか否かを判定する。
 すなわち、削除される操作数が多すぎる場合、同一の習慣性操作クラスタとして扱うことができなくなるので、削除操作配列Adとして格納されている操作数に所定の閾値が設定されている。
 尚、削除操作配列Adに格納されている操作数に対して設定される所定の閾値については任意に設定できるようにしてもよい。
 ステップS171において、削除操作配列Adとして格納されている操作数が所定の閾値(例えば、3個)以下である場合、処理は、ステップS172に進む。
 ステップS172において、操作記憶実行制御部53は、削除操作配列Adとして格納されている全操作に確認情報Iaの初期値を設定すると共に、確認対話フラグfaをtrueに設定して、対話クラスタ候補として習慣操作性/対話クラスタ記憶部55に記憶させる。
 ステップS173において、操作記憶実行制御部53は、操作nに対して、ダミー対話フラグfdを設定し、ダミー対話フラグfdをtrueに設定する。
 一方、ステップS168において、操作Mnの確認対話フラグfaがfalseに設定されており、すなわち、確認情報Iaが設定されていないとみなされた場合、処理は、ステップS173に進む。
 また、ステップS161において、操作nの時間間隔Tnは、所定の閾値Tth以上ではない場合、ステップS162において、対話クラスタ候補に格納されている操作の数は、1以上ではないと判定された場合、ステップS163において、習慣性操作/対話クラスタ記憶部55に記憶済みのクラスタ内に、対話クラスタ候補とシーケンスが前方一致する記憶済みのクラスタが存在しないと判定された場合、または、ステップS171において、削除操作配列Adとして格納されている操作数が所定の閾値(例えば、3個)以下ではない場合、処理は、終了する。
 以上の処理により、ユーザの操作nが、追加操作であるか否か、または、削除操作であるか否かが判定されて、追加操作、または、削除操作である場合には、確認対話フラグfaがtrueに設定されて、確認情報Iaが初期値で設定され、以降においては、新たな操作nに応じた確認情報Iaが順次設定される。
 尚、ダミー対話フラグfdは、習慣性スコアSnが閾値Sthより低いが、対話クラスタ候補に含めるべき操作を、図9のフローチャートを参照して説明した対話クラスタリング処理におけるステップS62乃至S66の処理から、ステップS59の処理に遷移させることで、対話クラスタ候補に追加させるためのフラグである。
 すなわち、ダミー対話フラグfdは、対話クラスタ候補に追加することを目的とした対話フラグであるため、ダミー対話フラグfdがtrueである操作については、実行時においても、ユーザに対して対話がなされない。
 例えば、図10の状態ST103の操作5は、Entityが異なる操作4の直後なので、遷移回数Fnおよび遷移確率Pnが低いため習慣性スコアSnは閾値Sthより低くなるが、対話クラスタ候補に含めるべき操作であるので、ダミー対話フラグfdがtrueにされる。
 すなわち、図10の状態ST103の操作5は、図16のフローチャートにおけるステップS168において、前方一致クラスタの操作Mnの確認対話フラグfaがtrueではないので、処理がステップS173に進み、ダミー対話フラグfdがtrueとされる。
 これにより、図9のフローチャートにおけるステップS66における判定において、ダミー対話フラグfdがtrueである判定されて、処理は、ステップS59に進み、図10の状態ST103の操作5は、対話クラスタ候補として追加される。
 また、例えば、図14の状態ST133における操作6は、追加された操作5の直後であるため、遷移回数Fnおよび遷移確率Pnが低いため習慣性スコアSnは閾値Sthより低くなるが、対話クラスタ候補に含めるべき操作であるので、ダミー対話フラグfdがtrueにされる。
 すなわち、図14の状態ST133の操作6は、図16のフローチャートにおけるステップS168において、前方一致クラスタの操作Mnの確認対話フラグfaがtrueではないので、処理がステップS173に進み、ダミー対話フラグfdがtrueとされる。
 これにより、図9のフローチャートにおけるステップS66における判定において、ダミー対話フラグfdがtrueである判定されて、処理は、ステップS59に進み、図14の状態ST133の操作6は、対話クラスタ候補として追加される。
 さらに、例えば、図15の状態ST142の操作7は、削除された操作6の直後なので遷移回数Fnおよび遷移確率Pnが低いため、習慣性スコアSnは閾値Sthより低くなるが、対話クラスタ候補に含めるべき操作であるので、ダミー対話フラグfdがtrueにされる。
 すなわち、図15のST142の操作7は、図16のフローチャートにおけるステップS167において、前方一致クラスタの操作Mnと操作nとが同一ではないので、処理は、ステップS170に進む。
 また、そして、ステップS170の処理により、前方一致クラスタの操作Mnから操作nまでが削除操作配列Adに格納されると、ステップS171において、格納されている操作数が3個以上であるので、処理は、ステップS172進む。
 そして、ステップS172において、確認対話フラグfaがtrueに設定されると、ステップS173の処理により、タミー対話フラグfdがtrueに設定される。
 これにより、図9のフローチャートにおけるステップS66における判定において、ダミー対話フラグfdがtrueである判定されて、処理は、ステップS59に進み、状態ST142の操作7は、対話クラスタ候補として追加される。
 <追加および削除された操作に対する対話生成事例>
 次に、図17を参照して、追加された操作および削除された操作に対する対話生成事例について説明する。
 例えば、図17で示されるような状態ST161で示されるような対話クラスタが設定された場合について考える。
 尚、状態ST161の対話クラスタについては、図17の状態ST133と同一の対話クラスタである。
 図17の状態ST161における操作5においては、確認対話フラグfaがtrueに設定されているため、対話クラスタによる実行がなされる状態に設定されている。
 ここで、例えば、図17の右部で示されるように、処理SC121において、ユーザ11により「乗り換え案内」といった発話がなされると、操作記憶実行制御部53は、乗り換え案内に係る図17の左部で示される対話クラスタを実行する指示がなされたものと認識する。
 処理Ex121において、操作記憶実行制御部53は、「乗り換え案内」との発話に応じて、図17の左部で示される操作1乃至4のマクロを実行する。
 処理Ex122において、操作記憶実行制御部53は、操作5の処理に確認対話フラグfaがtrueに設定されているので、「横浜駅を経由しますか?」といった確認を促す音声を出力する。
 ここで、処理SC122において、ユーザにより「はい」といった発話がなされると、操作記憶実行制御部53は、「経由駅に横浜を入力」する操作を実行することが指示されたことを認識する。
 そこで、処理Ex123において、操作記憶実行制御部53は、「経由駅に横浜を入力」する処理が実行されたことを示す実行情報を確認情報Iaに反映させるように実行回数execと合計回数(total回数)を1ずつインクリメントして更新すると共に、操作5乃至8を実行する。
 また、処理SC122に代えて、処理SC123で示されるように、ユーザにより「いいえ」といった発話がなされると、操作記憶実行制御部53は、「経由駅に横浜を入力」する操作を実行しないことが指示されたことを認識する。
 処理Ex124において、操作記憶実行制御部53は、「経由駅に横浜を入力」する処理が実行されなかったことを示す実行情報を確認情報Iaに反映させるように、合計回数(total回数)だけを1インクリメントして更新すると共に、操作6乃至8を実行する。
 このような一連の処理により、習慣性操作に変化が生じて、追加する操作がなされるときには、追加操作の実行の要否の問い合わせの対話が提示され、確認結果に応じた処理が実行される。
 結果として、習慣性操作に変化が生じても習慣性操作クラスタに対して対話クラスタが設定されて、柔軟な対応が可能となる。
 図17においては、追加操作における場合の発話生成の事例について説明してきたが、削除操作における場合も同様であるので、その説明は省略する。
 <追加および削除された操作に対する対話処理>
 次に、図18のフローチャートを参照して、追加および削除された操作に対する対話処理について説明する。
 尚、この処理は、確認対話フラグfaがtrueに設定された操作nがなされるとき実行される。すなわち、例えば、図17の状態ST161における操作5の処理がなされるときに実行される処理である。
 ステップS191において、操作記憶実行制御部53は、Intent毎に予め登録されている問い合わせフレーズに基づいて、ユーザに実行の可否(応答)を促すシステム発話を出力する。
 ステップS192において、操作記憶実行制御部53は、ユーザからの実行の可否を指示する応答発話があったか否かを判定し、応答発話があったと判定されるまで、同様の処理を繰り返す。
 そして、ステップS192において、ユーザの実行の可否を指示する応答発話があったとみなされた場合、処理は、ステップS193に進む。
 ステップS193において、操作記憶実行制御部53は、ユーザからの実行の可否を指示する応答発話が実行を承諾するものであったか否かを判定する。
 ステップS193において、ユーザからの実行の可否を指示する応答発話が実行を承諾するものであった場合、処理は、ステップS194に進む。
 ステップS194において、操作記憶実行制御部53は、操作nを実行する。
 ステップS195において、操作記憶実行制御部53は、確認情報Iaにおける実行回数execを1インクリメントする。
 ステップS196において、操作記憶実行制御部53は、確認情報IaにおけるTotal回数(合計回数)を1インクリメントする。
 尚、ステップS193において、ユーザからの実行の可否を指示する応答発話が実行を承諾するものではなかった場合、ステップS194,S195処理は、スキップされる。
 ステップS197において、操作記憶実行制御部53は、確認情報Iaにおける実行確率を計算すると共に、計算した実行確率が上限規定値以上であるか否かを判定する。
 ステップS197において、確認情報Iaにおける実行確率が上限規定値以上である場合、処理は、ステップS198に進む。
 ステップS198において、操作記憶実行制御部53は、操作nは追加操作として実行確率が上昇した結果、通常の習慣性操作クラスタに組み込まれる操作であるものとみなして、操作nの確認対話フラグfaをfalseに設定し、処理を終了する。
 また、ステップS197において、確認情報Iaにおける実行確率が上限規定値以上ではない場合、処理は、ステップS199に進む。
 ステップS199において、操作記憶実行制御部53は、確認情報Iaにおける実行確率を計算し、計算した実行確率が下限規定値以下であるか否かを判定する。
 ステップS199において、確認情報Iaにおける実行確率が下限規定値以下である場合、処理は、ステップS200に進む。
 ステップS200において、操作記憶実行制御部53は、操作nが、削除された操作が実際に使用されない状態が継続し、実行確率が下降したものであり、削除してもよいものであるとみなし、対話クラスタから削除して、処理を終了する。
 尚、ステップS199において、確認情報Iaにおける実行確率が下限規定値以下ではない場合、ステップS200の処理は、スキップされて、処理は終了する。
 以上の一連の処理により、確認対話フラグfaがtrueに設定された操作については、確認情報Iaにおける実行の可否の応答を促し、実行の可否に係る応答に応じた処理を実行する。
 そして、実行が指示された場合については、実行回数execが1インクリメントされ、合計回数(Total回数)が1インクリメントされる。
 さらに、実行確率が順次計算されて、上限規定値以上になった場合については、ユーザが、操作nを常に実行するものとみなされて、確認対話フラグfaがfalseに設定し、常に実行される固定された操作に設定される。
 また、実行確率が順次計算されて、下限規定値以下になった場合については、ユーザが、操作nを常に実行しないものとみなされて、操作nそのものの対話クラスタが削除されて、常に実行されない状態に設定される。
 すなわち、いずれにおいても、追加操作が固定された操作になるか、削除操作が削除されると、以降においては、対話がなされることがない、通常の習慣性操作クラスタとして機能する。
 結果として、習慣性操作に操作が追加されたり、削除されたりするような変化が生じても習慣性操作クラスタに対して対話クラスタが設定されて、柔軟な対応が可能となる。
 以上の処理により、以下で示すような複数の操作が一括操作される習慣性操作クラスタの変更を容易に実現することが可能となる。
 例えば、就寝時の習慣的な複数の操作を組み合わせ、「おやすみ」という発話フレーズで、エアコンを消す操作を含む習慣性操作クラスタからなるマクロが存在するものとする。
 このようなマクロが存在する場合、暑い季節になってきたのでユーザが、「エアコンを消さないでおやすみ」と発話すると、「エアコンを消す操作」は、習慣性操作クラスタから削除された操作として、確認対話フラグfaがtrueに設定されて、対話クラスタとして記録される。
 そして、次回以降においては、ユーザが「おやすみ」を発話するときには、確認対話フラグに基づいて、例えば、「エアコンを消しますか?」といった問い合わせの発話がなされ、ユーザの応答として「エアコンを消さない」といった実行拒否応答が続くと、「エアコンを消す操作」の確認情報Ia内の実行確率が下がる。
 さらに実行拒否応答が継続して、エアコンを消す操作の確認情報Ia内の実行確率が下限規定値以下になると、「エアコンを消す操作」が習慣性操作クラスタからなるマクロから削除されて、以降においてはユーザの「おやすみ」発話で問い合わせなくエアコンは消されることなくマクロが実行される。
 すなわち、上述した動作により、季節の変化(暑くなる)と共にユーザの習慣性操作として、エアコンをつけて寝るといった発話がなされることで、「エアコンを消す操作」がなされることなくマクロが実行されるように、習慣性操作クラスタを変更することが可能となる。
 <観測コンテキストに依存する操作>
 次に、図19を参照して、観測コンテキストに依存する操作について説明する。
 上述した習慣性操作クラスタリング処理により、例えば、図19の左部で示される状態ST181で示される操作1乃至8からなる習慣性操作クラスタが生成されて、実行される場合について考える。
 尚、状態ST181については、図10の状態ST101と同一である。
 ここで、図19の左部の状態ST181で示される、操作1乃至8のうち、操作3の出発駅入力について、依存コンテキスト種別Dcとしてlocationの属性が設定されるものとする。
 依存コンテキスト種別Dcは、習慣的な操作が実行される際に用いられるコンテキスト情報の種別を指定する情報である。
 このように、依存コンテキスト種別Dcとしてlocationの属性が設定されている場合、例えば、GPSセンサ等により検出される(観測される)位置情報が、観測コンテキスト情報Coとして取得されて、操作3のEntityとの比較により一致するとき、状態ST182で示されるようにコンテキスト対話フラグfcが設定される。
 コンテキスト対話フラグfcとは、例えば、習慣性操作クラスタにより設定された一括操作される操作のうち、依存コンテキスト種別Dcが設定された操作のEntityと観測コンテキスト情報Coとが異なる操作がなされた場合に、ユーザに対して対話により操作の選択肢を提示して、選択させる処理を実現させるか否かを設定するフラグである。
 例えば、操作3における「出発駅に”大崎”を入力」するという操作のEntityである”大崎”付近が、観測コンテキスト情報Coにおける位置情報として検出される場合、図19の状態ST182で示されるように、操作3にはコンテキスト対話フラグfcがtrueに設定される。
 また、コンテキスト対話フラグfcがtrueに設定されるとき、コンテキスト情報Icが初期値の状態で設定される。
 ここでは、コンテキスト情報Icには、初期値として予め設定された依存コンテキスト種別Dcとしての”Location”が設定され、検出回数の合計回数totalが2(total:2)に設定され、観測コンテキスト情報Coの入力回数(Co:1)として1が設定され、Entityの入力回数として大崎が1に設定(entity:{大崎:1})される。
 以降において、ユーザが出発駅を入力すると、コンテキスト情報Icの合計回数total、入力Entity、または観測コンテキスト情報Coが1インクリメントされて、選択肢の入力確率(入力回数/合計回数)が計算される。尚、初期値において、観測コンテキスト情報Coの入力回数と、Entityの入力回数とのそれぞれの入力確率が同一になるように合計回数totalについては、2に設定される。
 従って、状態ST182においては、観測コンテキスト情報Coと大崎とのそれぞれの入力確率が0.5となる。
 <観測コンテキスト依存操作判定処理>
 次に、図20のフローチャートを参照して、観測コンテキスト依存操作判定処理について説明する。尚、図20のフローチャートにおける観測コンテキスト依存操作判定処理は、図9のフローチャートにおけるステップS56の処理である。
 ステップS221において、操作記憶実行制御部53は、操作nのIntent属性には、依存コンテキスト種別Dcが設定されているか否かを判定する。
 ステップS221において、操作nのIntent属性には、依存コンテキスト種別Dcが設定されていると判定された場合、処理は、ステップS222に進む。
 ステップS222において、操作記憶実行制御部53は、依存コンテキスト種別Dcに対応する観測コンテキスト情報Coが、操作nのEntityと一致するか否かを判定する。
 ステップS222において、依存コンテキスト種別Dcに対応する観測コンテキスト情報Coが、操作nのEntityと一致すると判定された場合、処理は、ステップS223に進む。
 ステップS223において、操作記憶実行制御部53は、操作nにコンテキスト情報Icの初期値を設定する。
 ステップS224において、操作記憶実行制御部53は、操作nにコンテキスト対話フラグfcを設定し、コンテキスト対話フラグfcをtrueに設定する。
 以上の処理により、予め設定された依存コンテキスト種別Dcの観測コンテキスト情報Coが、操作nのEntityと一致すると、操作nに対して、コンテキスト情報Icの初期値として観測コンテキスト情報の入力回数Coおよびentityの入力回数がそれぞれ1に設定され、合計回数が2に設定されると共に、コンテキスト対話フラグfcがtrueに設定される。
 <対話クラスタ候補のコンテキスト情報更新処理>
 次に、図21のフローチャートを参照して、対話クラスタ候補のコンテキスト情報更新処理について説明する。尚、図21のフローチャートにおける対話クラスタ候補のコンテキスト情報更新処理は、図9のフローチャートにおけるステップS72の処理である。
 ステップS251において、操作記憶実行制御部53は、対話クラスタ候補と同一シーケンスの記憶済みのクラスタZの操作のうち、未処理の操作を処理対象の操作mに設定する。
 ステップS252において、操作記憶実行制御部53は、対話クラスタ候補における操作mのコンテキスト対話フラグfcがtrueで、かつ、記憶済みのクラスタZにおける操作mのコンテキスト対話フラグfcがtrueであるか否かを判定する。
 ステップS252において、対話クラスタ候補における操作mのコンテキスト対話フラグfcがtrueで、かつ、記憶済みクラスタZにおける操作mのコンテキスト対話フラグfcがtrueであるとみなされた場合、処理は、ステップS253に進む。
 ステップS253において、操作記憶実行制御部53は、対話クラスタ候補における操作m内のコンテキスト情報IcのEntity Ecと、記憶済みクラスタZにおける操作mのコンテキスト情報Icの入力確率が最大値となるEntity Emaxとが一致するであるか否かを判定する。
 ステップS253において、対話クラスタ候補における操作m内のコンテキスト情報IcのEntity Ecと、記憶済みクラスタZにおける操作mのコンテキスト情報Icの入力確率が最大値となるEntity Emaxとが一致しないと判定された場合、処理は、ステップS254に進む。
 ステップS254において、操作記憶実行制御部53は、クラスタZの操作mのコンテキスト情報Icの観測コンテキスト情報Coの入力回数を1インクリメントする。
 ステップS255において、操作記憶実行制御部53は、クラスタZの操作mのコンテキスト情報Icの合計回数totalを1インクリメントする。
 ステップS256において、操作記憶実行制御部53は、記憶済みのクラスタZの操作mのコンテキスト情報Icを、対話クラスタ候補の操作mのコンテキスト情報Icに設定する。
 すなわち、対話クラスタ候補における操作m内のコンテキスト情報IcのEntity Ecと、記憶済みクラスタZにおける操作mのコンテキスト情報Icの入力確率が最大値となるEntity Emaxとが一致しない場合には、記憶済みのクラスタZのコンテキスト情報Icが更新される。
 また、ステップS253において、対話クラスタ候補における操作m内のコンテキスト情報IcのEntity Ecと、記憶済みクラスタにおける操作mのコンテキスト情報Icの入力確率が最大値となるEntity Emaxとが一致すると判定された場合、ステップS254,S255の処理がスキップされて、処理は、ステップS256に進む。
 すなわち、対話クラスタ候補における操作m内のコンテキスト情報IcのEntity Ecと、記憶済みクラスタにおける操作mのコンテキスト情報Icの入力確率が最大値となるEntity Emaxとが一致する場合には、対話クラスタ候補の操作mのコンテキスト情報Icが、記憶済みのクラスタZのコンテキスト情報Icと同一の情報に設定される。
 ステップS257において、操作記憶実行制御部53は、対話クラスタ候補と同一シーケンスの記憶済みクラスタZの操作のうち、未処理の操作があるか否かを判定する。
 ステップS257において、対話クラスタ候補と同一シーケンスの記憶済みクラスタZの操作のうち、未処理の操作があると判定された場合、処理は、ステップS251に戻る。
 すなわち、対話クラスタ候補と同一シーケンスの記憶済みクラスタZの操作の全てについて、処理がなされるまで、ステップS251乃至S257の処理が繰り返される。
 そして、ステップS257において、対話クラスタ候補と同一シーケンスの記憶済みクラスタZの操作のうち、未処理の操作がないと判定された場合、対話クラスタ候補と同一シーケンスの記憶済みクラスタZの操作の全てについて、処理がなされたとみなされた場合、処理は、ステップS258に進む。
 ステップS258において、操作記憶実行制御部53は、対話クラスタ候補と同一シーケンスの記憶済みクラスタZを削除して、処理を終了する。
 以上の処理により、対話クラスタ候補と同一シーケンスの記憶済みクラスタZが存在する場合には、記憶済みクラスタZのコンテキスト情報Icにより、対話クラスタ候補のコンテキスト情報Icが更新される。
 <観測コンテキスト依存操作に対する対話生成事例>
 次に、図22を参照して、観測コンテキスト依存操作に対する対話生成事例について説明する。
 例えば、図22で示されるような状態ST201で示されるような対話クラスタが設定された場合について考える。尚、状態ST201の対話クラスタについては、図19の状態ST182と同一の対話クラスタである。
 図22の左部における操作3においては、コンテキスト対話フラグfcがtrueに設定されているため、対話クラスタによる実行がなされる状態に設定されている。
 ここで、例えば、図22の右部で示されるように、処理SC141において、ユーザ11により「乗り換え案内」といった発話がなされると、操作記憶実行制御部53は、乗り換え案内に係る図22の左部で示される対話クラスタを実行する指示がなされたものと認識する。
 処理Ex141において、操作記憶実行制御部53は、「乗り換え案内」との発話に応じて、図22の左部で示される操作1,2のマクロを実行する。また、ここでは、観測コンテキスト情報Coとして”品川”が検出されるものとする。
 処理Ex142において、操作記憶実行制御部53は、操作3の処理を実行して、コンテキスト対話フラグfcがtrueに設定されているので、コンテキスト情報Icに基づいて、処理を実行する。
 より詳細には、ここでは、観測コンテキスト情報Coとして”品川”が検出されており、コンテキスト情報IcにおけるEntityである”大崎”と一致しないことになるので、操作記憶実行制御部53は、Entityにおける選択肢を入力確率の高い順に提示する。尚、入力確率が同一である場合については、例えば、直近で入力された選択肢から提示されるようにしてもよい。
 そして、処理Ex143において、操作記憶実行制御部53は、「出発駅は品川でよいですか?」といった提示した選択肢の選択を促す音声を出力する。
 ここで、処理SC142において、ユーザにより「品川でいいよ」といった発話がなされると、操作記憶実行制御部53は、選択肢として「品川」が選択されたことを認識する。
 そこで、処理Ex144において、操作記憶実行制御部53は、出発駅に品川を入力してコンテキスト情報Icを更新すると共に、操作4乃至8を実行する。
 すなわち、コンテキスト対話フラグfcがtrueである場合、コンテキスト情報Ic内のEntityの中で最大の入力確率を持つEntity Emax(大崎)と、現在の観測コンテキスト情報Co(品川)が合致しないとき、選択肢となるEntityが提示されて、問い合わせの発話が出力され、選択されたEntityによりマクロが実行される。
 また、コンテキスト情報Ic内のEntityの中で最大の入力確率を持つEntity Emax(大崎)と、現在の観測コンテキスト情報Co(大崎)が合致する場合、ユーザに対しての問い合わせがなされることなく、Entity Emax(大崎)によりマクロが実行される。
 さらに、提示した選択肢以外の発話入力がなされた場合、コンテキスト情報Icに追加されて更新される。
 コンテキスト情報Ic内の観測コンテキスト情報Coの入力確率が規定値(例:0.8)以上になるとコンテキスト対話フラグfcがfalseとされて、以降は観測コンテキスト情報CoがEntityとして固定されたマクロが実行される。
 また、コンテキスト情報Ic内の特定のEntityの入力確率が規定値(例:0.8)以上になると、コンテキスト対話フラグfcがfalseとされて、以降は入力確率が規定値以上のEntityで固定されたマクロが実行される。
 このような一連の処理により、習慣性操作に変化が生じて、観測コンテキスト情報Coが、登録された入力確率が最も高いEntity Emaxと異なるときには、Entityが選択肢として提示されて、いずれかの選択を促す問い合わせの対話がなされ、選択結果に応じた処理が実行される。
 結果として、習慣性操作に付随するコンテキストに変化が生じても習慣性操作クラスタに対して対話クラスタが設定されて、柔軟な対応が可能となる。
 <観測コンテキスト依存操作に対する対話処理>
 次に、図23のフローチャートを参照して、観測コンテキスト依存操作に対する対話処理について説明する。
 尚、この処理は、コンテキスト対話フラグfcがtrueに設定された操作がなされるとき実行される。すなわち、例えば、図22の状態ST201における操作3の処理がなされるときに実行される処理である。
 ステップS281において、操作記憶実行制御部53は、現在の予め設定された依存コンテキスト種別Dcの観測コンテキスト情報Coと、コンテキスト情報Ic内のEntityの中で入力確率が最大値となるEntity Emaxとが合致するか否かを判定する。
 ステップS281において、現在の予め設定された依存コンテキスト種別Dcの観測コンテキスト情報Coと、コンテキスト情報Ic内のEntityの中で入力確率が最大値となるEntity Emaxとが合致すると判定された場合、処理は、ステップS282に進む。
 ステップS282において、操作記憶実行制御部53は、現在の予め設定された依存コンテキスト種別Dcの観測コンテキスト情報CoをEntityとして操作nを実行する。
 一方、ステップS281において、現在の予め設定された依存コンテキスト種別Dcの観測コンテキスト情報Coと、コンテキスト情報Ic内のEntityの中で入力確率が最大値となるEntity Emaxとが合致しないと判定された場合、処理は、ステップS283に進む。
 ステップS283において、操作記憶実行制御部53は、Intent毎に予め登録されている問い合わせフレーズに基づいて、ユーザに選択肢に対する選択(応答)を促すシステム発話を出力する。
 ステップS284において、操作記憶実行制御部53は、選択肢に対するユーザの選択結果である応答発話があったか否かを判定し、応答発話があったと判定されるまで、同様の処理を繰り返す。
 そして、ステップS284において、選択肢に対するユーザの選択結果である応答発話があったとみなされた場合、処理は、ステップS285に進む。
 ステップS285において、操作記憶実行制御部53は、応答発話に対応する選択肢のEntityにより操作nを実行する。
 ステップS286において、操作記憶実行制御部53は、観測コンテキスト情報Coがユーザの応答発話のEntityであるか否かを判定する。
 ステップS286において、観測コンテキスト情報Coがユーザの応答発話のEntityであると判定された場合、処理は、ステップS287に進む。
 ステップS287において、操作記憶実行制御部53は、コンテキスト情報Icに含まれる観測コンテキスト情報Coの入力回数を1インクリメントし、処理は、ステップS291に進む。
 一方、ステップS286において、観測コンテキスト情報Coがユーザの応答発話のEntityではないと判定された場合、処理は、ステップS288に進む。
 ステップS288において、操作記憶実行制御部53は、応答発話により選択されたEntityがコンテキスト情報Ic内に含まれるEntityであるか否かを判定する。
 ステップS288において、応答発話により選択されたEntityがコンテキスト情報Ic内に含まれるEntityであると判定された場合、処理は、ステップS289に進む。
 ステップS289において、操作記憶実行制御部53は、コンテキスト情報Icにおけるユーザが選択したEntityの入力回数の情報を1インクリメントする。
 一方、ステップS288において、応答発話により選択されたEntityがコンテキスト情報Ic内に含まれるEntityではない判定された場合、処理は、ステップS290に進む。
 ステップS290において、操作記憶実行制御部53は、コンテキスト情報Icにおけるユーザが選択したEntityの入力回数を初期値1として新規に追加して設定する。
 ステップS291において、操作記憶実行制御部53は、コンテキスト情報Icにおける合計回数totalの情報を1インクリメントする。
 ステップS292において、操作記憶実行制御部53は、コンテキスト情報Icにおける観測コンテキスト情報Coの入力確率が規定値以上であるか否かを判定する。
 ステップS292において、コンテキスト情報Icにおける観測コンテキスト情報Coの入力確率が規定値以上であると判定された場合、処理は、ステップS293に進む。
 ステップS293において、操作記憶実行制御部53は、コンテキスト対話フラグfcをfalseに設定すると共に、観測コンテキスト情報CoにEntityを固定する操作に設定し、処理を終了する。
 ステップS292において、コンテキスト情報Icにおける観測コンテキスト情報Coの入力確率が規定値以上ではないと判定された場合、処理は、ステップS294に進む。
 ステップS294において、操作記憶実行制御部53は、コンテキスト情報IcにおけるEntityの中で入力確率が規定値以上のEntityがあるか否かを判定する。
 ステップS294において、コンテキスト情報IcにおけるEntityの中で入力確率が規定値以上のEntityがあると判定された場合、処理は、ステップS295に進む。
 ステップS295において、操作記憶実行制御部53は、コンテキスト対話フラグfcをfalseに設定すると共に、入力確率が規定値以上のEntityに固定する操作に設定し、処理を終了する。
 ステップS295において、コンテキスト情報IcにおけるEntityの中で入力確率が規定値以上のEntityがない場合、ステップS295の処理がスキップされて、処理を終了する。
 以上の一連の処理により、コンテキスト対話フラグfcがtrueに設定された操作については、観測コンテキスト情報Coがコンテキスト情報IcにおけるEntityの最大値となるEntity Emaxであるときには、Entity EmaxをEntityとして操作が実行される。
 また、観測コンテキスト情報Coがコンテキスト情報IcにおけるEntityの最大値となるEntity Emaxではないときには、入力確率順に選択肢となるEntityが提示されて選択が促され、選択されたEntityにより処理が実行される。
 そして、選択されたEntityについては、回数が1インクリメントされ、Total回数が1インクリメントされる。このとき、選択肢として提示したEntity以外の新規のEntityが選択された場合については、新たに選択肢として登録されると共に回数が1に設定される。
 さらに、観測コンテキスト情報CoとEntityとのそれぞれの入力確率が順次計算されて、規定値以上になった場合については、ユーザにより、観測コンテキスト情報CoまたはEntityとして規定値以上の選択肢が常に選択されるものとみなされて、コンテキスト対話フラグfcがfalseに設定されて、常に選択される入力確率が規定値以上の観測コンテキスト情報CoまたはEntityに固定された操作に設定される。
 すなわち、このように観測コンテキスト情報CoまたはEntityが固定された操作になると、以降においては、対話がなされることのない、通常の習慣性操作クラスタとして機能する。
 結果として、習慣性操作に変化が生じても習慣性操作クラスタに対して対話クラスタが設定されて、柔軟な対応が可能となる。
 (応用例1)
 以上においては、依存コンテキスト種別Dcが、location(位置情報)である場合の例について説明してきたが、それ以外であってもよく、例えば、依存コンテキスト種別Dcがdialog(対話)に設定されるようにしてもよい。
 例えば、依存コンテキスト種別Dcがdialog(対話)に設定される場合、直前の対話に基づいて、乗換案内の到着駅入力操作が実行されるようにしてもよい。
 すなわち、この場合、直前の対話より得られるコンテキスト情報として、習慣性操作クラスタが実行されるタイミングから規定時間以内に行われた対話内容やチャット・メッセージ・SNS等のコミュニケーションの内容が利用されて、乗換案内の到着駅入力操作が実行される。
 より具体的には、依存コンテキスト種別Dcがdialog(対話)に設定されていた場合、到着駅入力=横浜が直前のチャットに話題として含まれていたときには、コンテキスト対話フラグfcがtrueに設定されて、コンテキスト情報IcのEntityに横浜が記憶される。
 すなわち、この場合、到着駅の場所の依存コンテキスト種別Dcは、location(位置情報)ではなく、直前のdialog(対話)とされる。
 従って、例えば、習慣性操作クラスタからなるマクロが実行される際、直前のチャットの内容に基づいて得られる観測コンテキスト情報Coが、コンテキスト情報IcのEntityとして登録された「横浜」ではなく、「池袋」が含まれていたときには、到着駅が観測コンテキスト情報Coである池袋とするかを問い合わせる発話がなされ、ユーザの応答に応じた到着駅入力操作がなされて、マクロが実行される。
 (応用例2)
 依存コンテキスト種別Dcは、バイタル系のコンテキスト情報であってもよい。
 すなわち、依存コンテキスト種別Dcは、例えば、脈拍値を示すpulseなどのバイタル系のコンテキスト情報に設定されるようにしてもよく、音楽のプレイリスト選択操作を含むマクロが存在するときには、プレイリストに、メタ情報として脈拍範囲が設定されるようにしてもよい。
 このようにすることで、例えば、低い脈拍範囲のメタ情報に対応するプレイリストには、落ち着いた楽曲が設定されるようにし、高い脈拍範囲のメタ情報に対応するプレイリストには、ランニング中向けの楽曲が設定されるようにする。
 そして、プレイリスト選択操作時に、選択したプレイリストにメタ情報として設定されている脈拍範囲の観測コンテキスト情報Coとしての脈拍が観測(検出)されていれば、コンテキスト対話フラグfcがtrueに設定されるようにし、コンテキスト情報IcのEntityのメタ情報に選択したプレイリストの脈拍範囲が記憶されるようにする。
 音楽のプレイリスト選択操作を含むマクロが実行される際には、観測コンテキスト情報Coである脈拍値がコンテキスト情報Icに記憶されている脈拍範囲外のときには、プレイリスト選択操作を実行するか否かが問い合わされるようにする。
 クラスタ実行時の観測コンテキスト情報Coである脈拍値が脈拍範囲となるメタ情報を持つプレイリストが選択肢として提示されて、問い合わせがなされるようにしてもよい。
 また、プレイリスト選択操作における依存コンテキスト種別Dcは、例えば、感情などを示すemotionに設定されるようにしてもよい。
 ここで、依存コンテキスト種別Dcがemotionに設定される場合のコンテキスト情報は、例えば、ユーザの画像認識結果、脈拍値、または血圧値等に基づいた感情認識結果であり、感情認識結果に応じたプレイリストの選択操作を促すような発話による問い合わせがなされるようにしてもよい。
 (応用例3)
 依存コンテキスト種別Dcには、周囲の人物の属性を示すattributeが設定されるようにしてもよい。
 より詳細には、視聴動画コンテンツ選択操作をするマクロが存在する場合、依存コンテキスト種別Dcがattributeに設定されるときのコンテキスト情報は、視聴動画コンテンツ選択操作を行うユーザの周辺にいる人物の属性にする。
 例えば、ユーザの周辺にいる人物の属性として年齢層などの設定が可能である場合には、視聴動画コンテンツ選択操作において選択肢となるコンテンツにはメタ情報として、例えば、子供向け(12歳まで)や、18歳以上等の対象年齢範囲が設定されるようにする。
 これにより、視聴動画コンテンツ選択操作からなるマクロの実行時に、選択したコンテンツにメタ情報として設定されている対象年齢範囲に、画像により認識したユーザの周辺にいる人物の年齢からなる依存コンテキスト種別Dcの観測コンテキスト情報Coが検出されればコンテキスト対話フラグfcがtrueに設定され、コンテキスト情報IcのEntityとしてメタ情報に選択したコンテンツの対象年齢範囲が記憶されるようにする。
 そして、視聴動画コンテンツ選択操作からなるマクロの実行時において、画像認識したユーザの周辺にいる人物の年齢からなる観測コンテキスト情報Coがコンテキスト情報Icに記憶されている対象年齢範囲外の場合は、視聴動画コンテンツ選択操作の際に、対象年齢外の人物が周辺にいるが、動画を再生させてもよいか否かを問い合わせるように発話するようにしてもよい。
 例えば、視聴動画コンテンツ選択操作からなるマクロの実行時において、習慣的に子供と一緒に見ている子供向け動画コンテンツ選択を、子供がいない時にも選択してよいかを問い合わせるようにしてもよい。
 (その他の応用例)
 依存コンテキスト種別Dcは、ユーザ間のネットワークを介したオンライン/オフライン状態等にして、例えば、観測コンテキスト情報Coであるオンライン/オフラインに応じて、オンライン状態のユーザはメッセージをすぐに受信して読むことができるものとみなし、オフライン状態のユーザはメッセージをすぐに読むことができないものとみなすようにしてもよい。
 この場合、例えば、観測コンテキスト情報Coであるオンライン/オフラインの情報に応じて、メッセージをすぐに受信して読むことができるユーザをメッセージ送信の宛先に指定した場合には問い合わせ対話を行わず、メッセージをすぐに読むことができないユーザをメッセージ送信の宛先に指定した場合には宛先に含めて良いかの問い合わせ対話を行うようにしてもよい。
 また、依存コンテキスト種別Dcは、その場にいる人物との関係性等にしてもよく、例えば、観測コンテキスト情報Coであるその場にいる人物との関係性に応じて、プライバシに関する入力や提示系の操作のオンまたはオフが設定されるようにしてもよい。
 さらに、依存コンテキスト種別Dcは、「天気を教えて」等の問い合わせが成される際の時間帯などであってもよく、観測コンテキスト情報Coである時間帯に応じて、例えば、朝であれば今日一日の天気が提示されるようにして、夜であれば、明日の天気が提示されるようにしてもよい。
 (変形例1)
 習慣性操作クラスタからなるマクロが実行される前/後の操作の修正/追加に対しても対話フラグを設定させるようにしてもよい。
 すなわち、例えば、「出発駅を品川にしていつもの乗り換え案内」といった場合、出発駅の選択肢が提示されるような選択対話フラグfsが設定されるようにしてもよい。
 また、「いつもの乗り換え案内」の発話によりマクロが実行された後、「横浜経由でやり直し」といった発話により、「横浜経由でやり直し」により実行される操作を追加操作とみなして、確認対話フラグfaが設定されるようにして、追加操作の要否を問い合わせるようにしてもよい。
 (変形例2)
 スマートスピーカ等のような機器を介して連携することで家電機器のコントロール機能を使用して、習慣性操作クラスタからなるマクロ内の特定の操作がコンテキスト依存で実行できずエラーが発生してしまうような場合には、エラーの要因となる依存コンテキスト種別Dcを変化させられるものであれば問い合わせ発話なしで変化させることで、エラーの発生を抑制しつつマクロを実行するようにしてもよい。
 すなわち、例えば、エアコンの電源状態を示す依存コンテキスト種別Dcのコンテキスト情報に基づいて、エアコン温度設定操作を含むマクロが実行される場合、エアコンの電源がOFF状態のまま、マクロが実行されるときには、エアコン温度設定操作がなされるタイミングにおいてエアコンの電源がONにされるようにして、エアコン温度設定操作を実現できるようにしてもよい。
 (変形例3)
 また、図9のフローチャートを参照して説明した対話クラスタリング処理により特定の操作に対して異種および複数の対話フラグが設定され、特定の操作を実行する際に複数回の発話による問い合わせが行われることも想定される。
 このような場合、ユーザの問い合わせに対する応答内容によっては以降のシーケンスが機能上不整合を起こすことも考えられる。
 この不整合は操作が数回実行されるとユーザ応答の習慣性が反映されることで解消されるが、ユーザの応答時に以降のシーケンスの不整合の有無に応じて、問い合わせをしないようにしてもよい。
 すなわち、例えば、出発駅が大崎であり、到着駅が横浜および本厚木のいずれかが選択対話フラグにより選択され、経由駅が横浜であることが確認対話フラグにより確認されることにより乗り換え案内を実現するマクロがあった場合、実行時にユーザから到着駅として横浜が選択された後、経由駅として横浜が選択されると、到着駅と経由駅とが同一になるため不整合が生じる。
 そこで、このように到着駅として横浜が選択された時点で、同時に経由駅が横浜であることは不整合であるので、経由駅を横浜とするか否かについての問い合わせはしないようにしてもよい。
 以上の如く、本開示においては、習慣性が高く変更の必要のない操作はまとめて習慣性操作クラスタとして1つのマクロとして一括実行され、状況などによって変更したい操作は問い合わせの応答に基づいて実行される。
 これにより、ユーザにとって気の利いた最適な対話によりマクロを形成する習慣性操作クラスタを変更させることが可能となる。
 また、特定操作の問い合わせに対するユーザ応答が同じ回答が習慣化したとみなされる場合、対話クラスタ内の確率情報(入力確率、または実行確率)が更新されて、規定値よりも大きくなると、習慣化した回答に固定された操作がなされて、問い合わせが行われなくなるので、ユーザは不要な対話を行わずに複数の操作に変化を加えて一括実行させることが可能となる。
 さらに、ユーザの置かれているその場の状況(コンテキスト)に応じて必要な場合のみ問い合わせが行われるため、ユーザは習慣的に複合操作を行う状況と異なる状況でも適切な操作内容の変更を低負荷で実現することが可能となる。
 <<3.ソフトウェアにより実行させる例>>
 ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のコンピュータなどに、記録媒体からインストールされる。
 図24は、汎用のコンピュータの構成例を示している。このパーソナルコンピュータは、CPU(Central Processing Unit)1001を内蔵している。CPU1001にはバス1004を介して、入出力インタフェース1005が接続されている。バス1004には、ROM(Read Only Memory)1002およびRAM(Random Access Memory)1003が接続されている。
 入出力インタフェース1005には、ユーザが操作コマンドを入力するキーボード、マウスなどの入力デバイスよりなる入力部1006、処理操作画面や処理結果の画像を表示デバイスに出力する出力部1007、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部1008、LAN(Local Area Network)アダプタなどよりなり、インターネットに代表されるネットワークを介した通信処理を実行する通信部1009が接続されている。また、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、もしくは半導体メモリなどのリムーバブル記憶媒体1011に対してデータを読み書きするドライブ1010が接続されている。
 CPU1001は、ROM1002に記憶されているプログラム、または磁気ディスク、光ディスク、光磁気ディスク、もしくは半導体メモリ等のリムーバブル記憶媒体1011ら読み出されて記憶部1008にインストールされ、記憶部1008からRAM1003にロードされたプログラムに従って各種の処理を実行する。RAM1003にはまた、CPU1001が各種の処理を実行する上において必要なデータなども適宜記憶される。
 以上のように構成されるコンピュータでは、CPU1001が、例えば、記憶部1008に記憶されているプログラムを、入出力インタフェース1005及びバス1004を介して、RAM1003にロードして実行することにより、上述した一連の処理が行われる。
 コンピュータ(CPU1001)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記憶媒体1011に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
 コンピュータでは、プログラムは、リムーバブル記憶媒体1011をドライブ1010に装着することにより、入出力インタフェース1005を介して、記憶部1008にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部1009で受信し、記憶部1008にインストールすることができる。その他、プログラムは、ROM1002や記憶部1008に、あらかじめインストールしておくことができる。
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 尚、図24におけるCPU1001が、図4の操作記憶実行制御部53の機能を実現させ、記憶部1008やリムーバブル記憶媒体1011が、ユーザ操作履歴記憶部54、および習慣性操作/対話クラスタ記憶部55の機能を実現する。
 また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
 なお、本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、本開示は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
 また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
 さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
 尚、本開示は、以下のような構成も取ることができる。
<1> ユーザ操作の習慣性を示す習慣性スコアを算出し、
 前記習慣性スコアが所定の閾値よりも高い操作およびユーザに対する対話に応じた操作を含む複数の操作からなるクラスタを登録する制御部
 を備える情報処理装置。
<2> 前記ユーザに対する対話に応じた操作は、操作種別が同一で属性が異なる操作であり、
 前記制御部は、前記操作種別が同一で前記属性が異なる操作における、前記属性の選択に係る対話を実行するか否かを選択対話フラグにより設定する
 <1>に記載の情報処理装置。
<3> 前記制御部は、前記属性の選択に係る対話を実行するとき、前記選択対話フラグをtrueに設定すると共に、前記対話において選択肢となる前記属性の情報を選択肢情報として設定する
 <2>に記載の情報処理装置。
<4> 前記制御部は、前記選択肢情報における前記選択肢となる前記属性を、前記ユーザに提示することで前記対話を実行し、前記ユーザにより選択された前記選択肢に対応する前記属性に基づいて操作を実行する
 <3>に記載の情報処理装置。
<5> 前記制御部は、前記選択肢情報における前記選択肢のそれぞれについて、前記ユーザにより選択された回数を選択回数として設定すると共に、全ての前記選択回数の合計回数を設定する
 <4>に記載の情報処理装置。
<6> 前記制御部は、前記選択肢情報における選択肢のそれぞれの前記選択回数と、前記合計回数とに基づいて、前記選択肢のそれぞれの入力確率を求め、前記入力確率に応じた順序で、前記属性を前記ユーザに提示することで前記対話を実行し、前記ユーザにより選択された前記選択肢に対応する前記属性に基づいて操作を実行する
 <5>に記載の情報処理装置。
<7> 前記制御部は、前記選択肢のいずれかの前記入力確率が規定値よりも大きくなった場合、前記選択対話フラグをfalseに設定し、前記入力確率が規定値よりも高い選択肢となる前記属性を固定した操作を実行する
 <6>に記載の情報処理装置。
<8> 前記ユーザに対する対話に応じた操作は、登録された前記クラスタを構成する複数の操作より、追加された操作および削除された操作を含む操作であり、
 前記制御部は、前記追加された操作または削除された操作を実行するか否かを確認する対話を実行するか否かを確認対話フラグにより設定する
 <1>に記載の情報処理装置。
<9> 前記制御部は、前記追加された操作または削除された操作の実行を確認する対話を実行するとき、前記確認対話フラグをtrueに設定すると共に、前記対話による前記確認がなされたことにより前記追加された操作または削除された操作が実行された実行回数と、前記確認がなされた合計回数とを確認情報として設定する
 <8>に記載の情報処理装置。
<10> 前記制御部は、前記追加された操作または削除された操作の実行を確認する対話を実行し、前記ユーザの応答に応じて操作を実行する
 <9>に記載の情報処理装置。
<11> 前記制御部は、前記確認情報における前記追加された操作または削除された操作について、前記実行回数と、前記合計回数とに基づいて、前記確認情報における前記追加された操作または削除された操作が実行されたい実行確率を求める
 <10>に記載の情報処理装置。
<12> 前記制御部は、前記追加された操作または削除された操作の前記実行確率が規定値よりも大きくなった場合、前記確認対話フラグをfalseに設定する
 <11>に記載の情報処理装置。
<13> 前記制御部は、前記追加された操作または削除された操作の前記実行確率が規定値よりも小さくなった場合、前記確認対話フラグが設定された前記クラスタを削除する
 <11>に記載の情報処理装置。
<14> 前記ユーザに対する対話に応じた操作は、観測コンテキストに依存する操作からなる観測コンテキスト依存操作であり、
 前記制御部は、前記観測コンテキスト依存操作における選択肢の選択に係る対話を実行するか否かをコンテキスト対話フラグにより設定する
 <1>に記載の情報処理装置。
<15> 前記制御部は、前記観測コンテキスト依存操作からなる選択肢の選択に係る対話を実行するとき、前記コンテキスト対話フラグをtrueにすると共に、前記対話において選択肢となる、前記観測コンテキストに依存する属性の情報、および前記観測コンテキストの情報をコンテキスト情報として設定する
 <14>に記載の情報処理装置。
<16> 前記制御部は、前記コンテキスト情報における前記選択肢となる前記観測コンテキストに依存する属性と前記観測コンテキストとを、前記ユーザに提示することで前記対話を実行し、前記ユーザにより選択された前記選択肢に対応する前記属性に基づいて操作を実行する
 <15>に記載の情報処理装置。
<17> 前記制御部は、前記コンテキスト情報における前記選択肢のそれぞれについて、前記ユーザにより選択された回数を選択回数として設定すると共に、全ての前記選択回数の合計回数を設定する
 <16>に記載の情報処理装置。
<18> 前記制御部は、前記コンテキスト情報における選択肢のそれぞれの選択回数と、前記合計回数とに基づいて、前記選択肢のそれぞれの入力確率を求め、前記入力確率に応じた順序で、前記属性を前記ユーザに提示することで前記対話を実行し、前記ユーザにより選択された前記選択肢に対応する前記属性に基づいて操作を実行する
 <17>に記載の情報処理装置。
<19> 前記制御部は、前記選択肢のいずれかの前記入力確率が規定値よりも大きくなった場合、前記コンテキスト対話フラグをfalseに設定し、前記入力確率が規定値よりも高い選択肢となる前記属性、または、前記観測コンテキストを固定した操作を実行する
 <18>に記載の情報処理装置。
<20> 前記習慣性スコアは、直前の操作から現在の操作までの時間間隔、前記直前の操作から現在の操作までの遷移回数、および前記直前の操作から現在の操作への遷移確率の調和関数に基づいて算出される
 <1>乃至<19>のいずれかに記載の情報処理装置。
<21> ユーザ操作の習慣性を示す習慣性スコアを算出し、
 前記習慣性スコアが所定の閾値よりも高い操作およびユーザに対する対話に応じた操作を含む複数の操作からなるクラスタを登録する
 を備える情報処理方法。
<22> ユーザ操作の習慣性を示す習慣性スコアを算出し、
 前記習慣性スコアが所定の閾値よりも高い操作およびユーザに対する対話に応じた操作を含む複数の操作からなるクラスタを登録する制御部
 としてコンピュータを機能させるプログラム。
 41 情報処理装置, 51 入力操作部, 52 機能アプリケーションプログラム実行部, 53 操作記憶実行制御部, 54 ユーザ操作履歴記憶部, 55 習慣性操作/対話クラスタ記憶部, 56 音声入力部, 57 音声認識処理部, 58 発話意味理解処理部, 59 画像入力部, 60 画像認識処理部, 61 センサ入力部, 62 センサ認識部, 63 応答生成部, 64 表示画像処理部, 65 音声合成処理部, 66 画像出力部, 67 音声出力部

Claims (20)

  1.  ユーザ操作の習慣性を示す習慣性スコアを算出し、
     前記習慣性スコアが所定の閾値よりも高い操作およびユーザに対する対話に応じた操作を含む複数の操作からなるクラスタを登録する制御部
     を備える情報処理装置。
  2.  前記ユーザに対する対話に応じた操作は、操作種別が同一で属性が異なる操作であり、
     前記制御部は、前記操作種別が同一で前記属性が異なる操作における、前記属性の選択に係る対話を実行するか否かを選択対話フラグにより設定する
     請求項1に記載の情報処理装置。
  3.  前記制御部は、前記属性の選択に係る対話を実行するとき、前記選択対話フラグをtrueに設定すると共に、前記対話において選択肢となる前記属性の情報を選択肢情報として設定する
     請求項2に記載の情報処理装置。
  4.  前記制御部は、前記選択肢情報における前記選択肢となる前記属性を、前記ユーザに提示することで前記対話を実行し、前記ユーザにより選択された前記選択肢に対応する前記属性に基づいて操作を実行する
     請求項3に記載の情報処理装置。
  5.  前記制御部は、前記選択肢情報における前記選択肢のそれぞれについて、前記ユーザにより選択された回数を選択回数として設定すると共に、全ての前記選択回数の合計回数を設定する
     請求項4に記載の情報処理装置。
  6.  前記制御部は、前記選択肢情報における選択肢のそれぞれの前記選択回数と、前記合計回数とに基づいて、前記選択肢のそれぞれの入力確率を求め、前記入力確率に応じた順序で、前記属性を前記ユーザに提示することで前記対話を実行し、前記ユーザにより選択された前記選択肢に対応する前記属性に基づいて操作を実行する
     請求項5に記載の情報処理装置。
  7.  前記制御部は、前記選択肢のいずれかの前記入力確率が規定値よりも大きくなった場合、前記選択対話フラグをfalseに設定し、前記入力確率が規定値よりも高い選択肢となる前記属性を固定した操作を実行する
     請求項6に記載の情報処理装置。
  8.  前記ユーザに対する対話に応じた操作は、登録された前記クラスタを構成する複数の操作より、追加された操作および削除された操作を含む操作であり、
     前記制御部は、前記追加された操作または削除された操作を実行するか否かを確認する対話を実行するか否かを確認対話フラグにより設定する
     請求項1に記載の情報処理装置。
  9.  前記制御部は、前記追加された操作または削除された操作の実行を確認する対話を実行するとき、前記確認対話フラグをtrueに設定すると共に、前記対話による前記確認がなされたことにより前記追加された操作または削除された操作が実行された実行回数と、前記確認がなされた合計回数とを確認情報として設定する
     請求項8に記載の情報処理装置。
  10.  前記制御部は、前記追加された操作または削除された操作の実行を確認する対話を実行し、前記ユーザの応答に応じて操作を実行する
     請求項9に記載の情報処理装置。
  11.  前記制御部は、前記確認情報における前記追加された操作または削除された操作について、前記実行回数と、前記合計回数とに基づいて、前記確認情報における前記追加された操作または削除された操作が実行されたい実行確率を求める
     請求項10に記載の情報処理装置。
  12.  前記制御部は、前記追加された操作または削除された操作の前記実行確率が規定値よりも大きくなった場合、前記確認対話フラグをfalseに設定する
     請求項11に記載の情報処理装置。
  13.  前記制御部は、前記追加された操作または削除された操作の前記実行確率が規定値よりも小さくなった場合、前記確認対話フラグが設定された前記クラスタを削除する
     請求項11に記載の情報処理装置。
  14.  前記ユーザに対する対話に応じた操作は、観測コンテキストに依存する操作からなる観測コンテキスト依存操作であり、
     前記制御部は、前記観測コンテキスト依存操作における選択肢の選択に係る対話を実行するか否かをコンテキスト対話フラグにより設定する
     請求項1に記載の情報処理装置。
  15.  前記制御部は、前記観測コンテキスト依存操作からなる選択肢の選択に係る対話を実行するとき、前記コンテキスト対話フラグをtrueにすると共に、前記対話において選択肢となる、前記観測コンテキストに依存する属性の情報、および前記観測コンテキストの情報をコンテキスト情報として設定する
     請求項14に記載の情報処理装置。
  16.  前記制御部は、前記コンテキスト情報における前記選択肢となる前記観測コンテキストに依存する属性と前記観測コンテキストとを、前記ユーザに提示することで前記対話を実行し、前記ユーザにより選択された前記選択肢に対応する前記属性に基づいて操作を実行する
     請求項15に記載の情報処理装置。
  17.  前記制御部は、前記コンテキスト情報における前記選択肢のそれぞれについて、前記ユーザにより選択された回数を選択回数として設定すると共に、全ての前記選択回数の合計回数を設定する
     請求項16に記載の情報処理装置。
  18.  前記制御部は、前記コンテキスト情報における選択肢のそれぞれの選択回数と、前記合計回数とに基づいて、前記選択肢のそれぞれの入力確率を求め、前記入力確率に応じた順序で、前記属性を前記ユーザに提示することで前記対話を実行し、前記ユーザにより選択された前記選択肢に対応する前記属性に基づいて操作を実行する
     請求項17に記載の情報処理装置。
  19.  前記制御部は、前記選択肢のいずれかの前記入力確率が規定値よりも大きくなった場合、前記コンテキスト対話フラグをfalseに設定し、前記入力確率が規定値よりも高い選択肢となる前記属性、または、前記観測コンテキストを固定した操作を実行する
     請求項18に記載の情報処理装置。
  20.  前記習慣性スコアは、直前の操作から現在の操作までの時間間隔、前記直前の操作から現在の操作までの遷移回数、および前記直前の操作から現在の操作への遷移確率の調和関数に基づいて算出される
     請求項1に記載の情報処理装置。
PCT/JP2020/040799 2019-11-13 2020-10-30 情報処理装置 WO2021095564A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021556018A JPWO2021095564A1 (ja) 2019-11-13 2020-10-30
US17/768,220 US20240111487A1 (en) 2019-11-13 2020-10-30 Information processing apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-205541 2019-11-13
JP2019205541 2019-11-13

Publications (1)

Publication Number Publication Date
WO2021095564A1 true WO2021095564A1 (ja) 2021-05-20

Family

ID=75912012

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/040799 WO2021095564A1 (ja) 2019-11-13 2020-10-30 情報処理装置

Country Status (3)

Country Link
US (1) US20240111487A1 (ja)
JP (1) JPWO2021095564A1 (ja)
WO (1) WO2021095564A1 (ja)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002032370A (ja) * 2000-07-18 2002-01-31 Fujitsu Ltd 情報処理装置
JP2011253309A (ja) * 2010-06-01 2011-12-15 Panasonic Corp 操作履歴生成装置、電子機器、携帯端末、操作履歴生成方法および操作履歴生成プログラム
JP2012008770A (ja) * 2010-06-24 2012-01-12 Fujitsu Ltd 情報処理装置および情報処理方法
JP2013161412A (ja) * 2012-02-08 2013-08-19 Ntt Docomo Inc ユーザインタフェース装置、ユーザインタフェース方法及びプログラム
US20140281959A1 (en) * 2013-03-14 2014-09-18 Siemens Aktiengesellschaft Devices, methods and computer readable mediums for on demand personalization of a user interface
JP2015064715A (ja) * 2013-09-25 2015-04-09 日本電気株式会社 入力支援装置、入力支援方法及び入力支援プログラム
JP2016178373A (ja) * 2015-03-18 2016-10-06 株式会社リコー 表示制御装置、表示制御プログラム、画像処理システム及び画像処理システムの制御方法
JP2018513431A (ja) * 2015-01-30 2018-05-24 マイクロソフト テクノロジー ライセンシング,エルエルシー クラウドソーシングに基づいてデジタルパーソナルアシスタントのための言語理解分類子モデルを更新すること

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002032370A (ja) * 2000-07-18 2002-01-31 Fujitsu Ltd 情報処理装置
JP2011253309A (ja) * 2010-06-01 2011-12-15 Panasonic Corp 操作履歴生成装置、電子機器、携帯端末、操作履歴生成方法および操作履歴生成プログラム
JP2012008770A (ja) * 2010-06-24 2012-01-12 Fujitsu Ltd 情報処理装置および情報処理方法
JP2013161412A (ja) * 2012-02-08 2013-08-19 Ntt Docomo Inc ユーザインタフェース装置、ユーザインタフェース方法及びプログラム
US20140281959A1 (en) * 2013-03-14 2014-09-18 Siemens Aktiengesellschaft Devices, methods and computer readable mediums for on demand personalization of a user interface
JP2015064715A (ja) * 2013-09-25 2015-04-09 日本電気株式会社 入力支援装置、入力支援方法及び入力支援プログラム
JP2018513431A (ja) * 2015-01-30 2018-05-24 マイクロソフト テクノロジー ライセンシング,エルエルシー クラウドソーシングに基づいてデジタルパーソナルアシスタントのための言語理解分類子モデルを更新すること
JP2016178373A (ja) * 2015-03-18 2016-10-06 株式会社リコー 表示制御装置、表示制御プログラム、画像処理システム及び画像処理システムの制御方法

Also Published As

Publication number Publication date
US20240111487A1 (en) 2024-04-04
JPWO2021095564A1 (ja) 2021-05-20

Similar Documents

Publication Publication Date Title
US11676575B2 (en) On-device learning in a hybrid speech processing system
US20230053350A1 (en) Encapsulating and synchronizing state interactions between devices
US11367439B2 (en) Electronic device and method for providing artificial intelligence services based on pre-gathered conversations
US10579912B2 (en) User registration for intelligent assistant computer
US11495229B1 (en) Ambient device state content display
JP2018190413A (ja) ユーザ発話の表現法を把握して機器の動作やコンテンツ提供範囲を調整し提供するユーザ命令処理方法およびシステム
US11687526B1 (en) Identifying user content
JP7347217B2 (ja) 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム
WO2020202862A1 (ja) 応答生成装置及び応答生成方法
CN111862974A (zh) 智能设备的控制方法及智能设备
US20220161131A1 (en) Systems and devices for controlling network applications
WO2020241293A1 (ja) 情報処理装置
JP2017064853A (ja) ロボット、コンテンツ決定装置、コンテンツ決定方法、及びプログラム
JP2006189730A (ja) 音声対話方法および音声対話装置
JP2021026261A (ja) 情報処理システム、方法およびプログラム
JP2000207214A (ja) 対話装置
JPWO2017175442A1 (ja) 情報処理装置、および情報処理方法
EP3776173A1 (en) Intelligent device user interactions
WO2021095564A1 (ja) 情報処理装置
KR20210027991A (ko) 전자장치 및 그 제어방법
US12094454B2 (en) Multimodal intent understanding for automated assistant
US11798538B1 (en) Answer prediction in a speech processing system
JP7428130B2 (ja) マクロのセキュリティリスクの度合いを判定する情報処理装置
US11790898B1 (en) Resource selection for processing user inputs
US20240212687A1 (en) Supplemental content output

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021556018

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 17768220

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20887564

Country of ref document: EP

Kind code of ref document: A1