Information processing device, information processing method, and information processing program

The information processing device addresses the challenge of inferring user context during incorrect unit inputs by using an estimation unit to analyze input error patterns, effectively enhancing data processing accuracy.

JP7671707B2Active Publication Date: 2025-05-02LY CORP
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2022023686
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-02-18
Publication Date
2025-05-02
Estimated Expiration
2042-02-18

AI Technical Summary

Technical Problem

Existing technologies fail to infer the context of a user when an incorrect unit is input for a numerical value, lacking understanding of the user's context during such errors.

Method used

An information processing device with a reception unit for user input, a judgment unit to determine input errors, and an estimation unit that infers the user's context based on the pattern of input errors, assuming specific actions based on typos close to the correct characters.

Benefits of technology

Enables accurate estimation of the user's context from the content and type of incorrect operations, improving data processing by understanding the user's actions and environment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007671707000001
    Figure 0007671707000001
  • Figure 0007671707000002
    Figure 0007671707000002
  • Figure 0007671707000003
    Figure 0007671707000003
Patent Text Reader

Abstract

To provide an information processing device capable of estimating a context of a user from contents and types of incorrect operations of the user, an information processing method, and an information processing program.SOLUTION: An information processing device 1 comprises an acceptance unit which accepts an input from a user, a determination unit which determines whether or not the user has made an input mistake, and an estimation unit which estimates a context from the tendency to an input mistake of the user. The estimation unit estimates behavior of the user at the time of the occurrence of an input mistake by using a model which has learned relevancy between an input mode of an input mistake and behaviors at the time of the occurrence of an input mistake when the user has made an input mistake.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to an information processing device, an information processing method, and an information processing program. [Background technology]

[0002] A technology is disclosed that corrects a value or unit to a more appropriate one even if a set unit is misidentified and a numerical value is input incorrectly, or an incorrect unit is input for a numerical value. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2021-152736 A Summary of the Invention [Problem to be solved by the invention]

[0004] However, the above-mentioned conventional technology merely corrects an input of an incorrect unit for a numerical value to a more appropriate value or unit, but does not know the context of the user when the input of an incorrect unit for a numerical value is made.

[0005] The present application has been made in consideration of the above, and has an object to estimate a user's context from the content and type of the user's erroneous operation. [Means for solving the problem]

[0006] The information processing device according to the present application includes a receiving unit that receives an input from a user, a determining unit that determines whether the user has made an input error, and an estimating unit that estimates a context from a tendency of the user's input errors. The estimation unit estimates that the user is taking a first action when a predetermined first typo close in position to the correct character is input when a correct character should be input, and estimates that the user is taking a second action when a predetermined second typo close in position to the correct character is input. It is characterized by: Effect of the Invention

[0007] According to one aspect of the embodiment, the user's context can be inferred from the content and type of the user's erroneous operation. [Brief description of the drawings]

[0008] [Figure 1] FIG. 1 is an explanatory diagram showing an overview of an information processing method according to an embodiment. [Diagram 2] FIG. 2 is a diagram illustrating an example of the configuration of an information processing system according to the embodiment. [Diagram 3] FIG. 3 is a diagram illustrating an example of the configuration of a terminal device according to the embodiment. [Figure 4] FIG. 4 is a diagram illustrating an example of the configuration of a server device according to the embodiment. [Diagram 5] FIG. 5 is a diagram illustrating an example of the user information database. [Figure 6] FIG. 6 is a diagram illustrating an example of the history information database. [Figure 7] FIG. 7 is a diagram showing an example of the erroneous input information database. [Figure 8] FIG. 8 is a flowchart showing a processing procedure according to the embodiment. [Figure 9] FIG. 9 is a diagram illustrating an example of a hardware configuration. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0009] Hereinafter, the information processing device, the information processing method, and the information processing program according to the present application will be described in detail with reference to the drawings. Note that the information processing device, the information processing method, and the information processing program according to the present application are not limited to the embodiments. In addition, the same components in the following embodiments are given the same reference numerals, and duplicated descriptions are omitted.

[0010] [1. Overview of information processing method] First, an overview of an information processing method performed by an information processing device according to an embodiment will be described with reference to Fig. 1. Fig. 1 is an explanatory diagram showing an overview of an information processing method according to an embodiment. Note that Fig. 1 describes an example in which a user's context is estimated from the content and type of an erroneous operation by the user.

[0011] 1, the information processing system 1 includes a terminal device 10 and a server device 100. The terminal device 10 and the server device 100 are connected to each other via a network N (see FIG. 2) in a wired or wireless manner so as to be able to communicate with each other. In this embodiment, the terminal device 10 cooperates with the server device 100.

[0012] The terminal device 10 is a smart device such as a smartphone or tablet terminal used by a user U, and is a mobile terminal device capable of communicating with any server device via a wireless communication network such as 4G (Generation) or LTE (Long Term Evolution). The terminal device 10 has a screen such as a liquid crystal display having a touch panel function, and accepts various operations on display data such as content, such as tapping, sliding, scrolling, etc., performed by the user U using a finger or a stylus. An operation performed on an area of ​​the screen where the content is displayed may be regarded as an operation on the content. The terminal device 10 may be not only a smart device, but also an information processing device such as a desktop PC (Personal Computer) or a notebook PC.

[0013] The server device 100 is an information processing device that cooperates with the terminal device 10 of each user U and provides each user U's terminal device 10 with API (Application Programming Interface) services for various applications (hereinafter, apps), etc., as well as various data, and is realized by a computer, a cloud system, etc.

[0014] The server device 100 may also be an information processing device that provides some kind of online Web service to the terminal device 10 of each user U. For example, the server device 100 may provide services such as Internet connection, search service, SNS (Social Networking Service), electronic commerce (EC), electronic payment, online games, online banking, online trading, hotel and ticket reservations, video and music distribution, news, maps, route search, route guidance, line information, operation information, and weather forecasts as Web services. In practice, the server device 100 may cooperate with various servers that provide the above-mentioned Web services, and may mediate the Web services or be responsible for processing the Web services.

[0015] The server device 100 can acquire user information about the user U. For example, the server device 100 acquires information about the attributes of the user U, such as the gender, age, and residential area of ​​the user U. The server device 100 then stores and manages the information about the attributes of the user U together with identification information (such as a user ID) indicating the user U.

[0016] The server device 100 also acquires various types of history information (log data) indicating the actions of the user U from the terminal device 10 of the user U or from various servers based on the user ID or the like. For example, the server device 100 acquires a location history, which is a history of the location and date and time of the user U, from the terminal device 10. The server device 100 also acquires a search history, which is a history of search queries input by the user U, from a search server (search engine). The server device 100 also acquires a browsing history, which is a history of content browsed by the user U, from a content server. The server device 100 also acquires a purchase history (payment history), which is a history of product purchases and payment processing by the user U, from an electronic commerce server or a payment processing server. The server device 100 may also acquire a listing history, which is a history of listings on the marketplace by the user U, and a sales history, from the electronic commerce server or the payment processing server. The server device 100 also acquires a posting history, which is a history of posts by the user U, from a posting server that provides a word-of-mouth posting service or an SNS server.

[0017] In this embodiment, the terminal device 10 of the user U starts an app or executes a program, and in cooperation with the server device 100, estimates the context (situation) of the user U from the tendency of input errors (misinput, typo, etc.) made by the user U. At this time, the terminal device 10 estimates the context of the user U from the tendency of input errors made by the user U, who is the user / owner of the terminal. The server device 100 estimates the context of each user U from the tendency of input errors made by each user U notified from the terminal.

[0018] The context of the user U is not limited to the behavior or situation of the user U himself / herself, but may be the situation or environment (surrounding environment, other users, etc.) of the user U and the terminal device 10. Alternatively, the context of the user U may be a comprehensive context of the user U and his / her surroundings.

[0019] For example, when inputting Japanese, if the character to be input is "ta" or "ya" instead of "ma," the terminal device 10 and server device 100 infer that the user U is "looking away," and if "mi" or "mu" is entered, they infer that the user U is "running."

[0020] Furthermore, when the same character is repeated, such as "mamama" during Japanese input, or when a small character (discarded kana) "っ" is inserted in an unnecessary place during romaji input, the terminal device 10 and server device 100 infer that the user U or the terminal device 10 is shaking, or that the user U is in a state where he or she cannot input calmly. For example, the terminal device 10 and server device 100 infer that the user U is inputting while on a shaking vehicle, or that the user U is inputting while his or her fingers are shaking due to the cold, etc.

[0021] The terminal device 10 and the server device 100 learn about the combination of the tendency of mistakes made during input and the context of the user U. At this time, the terminal device 10 and the server device 100 may find a rule or infer the context from the tendency of mistakes made during input. For example, the terminal device 10 and the server device 100 train a model on the characters (or character strings) input by mistake and the context at that time, and use this model to infer (infer) the context at that time from the characters input by mistake.

[0022] In addition to the combination of the tendency for input errors and the context of the user U, the terminal device 10 and the server device 100 may also learn the "input method," "language used for input," "type of input device (keyboard, etc.)," ​​"hand used for input (right or left hand)," etc.

[0023] In this way, the terminal device 10 and the server device 100 use a model that has learned the relationship between the input pattern of an incorrect input and the behavior when the incorrect input occurs to estimate the behavior of user U at the time when user U makes an incorrect input.

[0024] [1-1. Learning Phase] 1, the terminal device 10 of the user U accepts character input from the user U (step S1). For example, the terminal device 10 acquires characters (or character strings) input by the user U in a search window (search box, search bar) of a search engine, an input field of an app, an input form of a website, or the like.

[0025] Next, the terminal device 10 of the user U transmits the characters input by the user U to the server device 100 via the network N (see FIG. 2) (step S2).

[0026] Next, the terminal device 10 of the user U cooperates with the server device 100 to determine whether or not the user U has made an input error (step S3-1). The server device 100 determines whether or not each user U has made an input error (step S3-2). At this time, the terminal device 10 and the server device 100 may use a model for estimating input errors to determine whether or not the user U has made an input error. Furthermore, publicly known technology may be used to determine whether or not a user U has made an input error.

[0027] Next, when the user U makes an input error, the terminal device 10 of the user U checks what action the user U was taking at the time (step S4-1). When the user U makes an input error, the server device 100 checks what action the user who made the input error was taking at the time (step S4-2).

[0028] In this embodiment, when the user U makes an input error, the terminal device 10 of the user U inquires of the user U what action he / she was taking at the time. When an input error is made, the server device 100 inquires of the user U who made the input error what action he / she was taking at the time. In other words, the terminal device 10 and the server device 100 make the user who made the input error answer about the action he / she was taking at the time of the input error.

[0029] In practice, the terminal device 10 and the server device 100 may estimate the behavior, state, and surrounding circumstances of the user U who made the input error from sensor information and location information of the terminal device 10 at the time the input error was made, history information of the user U, and the like. The sensor information of the terminal device 10 is information on the output results (detection and measurement results) of various sensors (acceleration sensors, etc.) mounted on the terminal device 10. The history information of the user U is information on the search history, purchase history, and the like accumulated in the server device 100.

[0030] Next, the terminal device 10 of the user U creates a model that estimates the tendency of input errors of the user U through machine learning (step S5-1). The server device 100 creates a model that estimates the tendency of input errors of each user U through machine learning (step S5-2).

[0031] At this time, the terminal device 10 may receive the distribution of the underlying model from the server device 100 via the network N (see FIG. 2). After that, the terminal device 10 of the user U may repeat on-device machine learning to reconstruct the model and improve the accuracy of the estimation.

[0032] Moreover, the terminal device 10 may manage a local model (terminal-side model) unique to the terminal, and the server device 100 may manage a global model (server-side model) common to all terminals. Furthermore, the terminal device 10 and the server device 100 may perform machine learning in a distributed state without aggregating data by using federated learning.

[0033] For example, the terminal device 10 and the server device 100 use machine learning to create a model that takes as input a pair of a “correct character (or character string)” to be input and an “incorrect character (or character string)” that is actually input, and outputs the “action” at that time.

[0034] The terminal device 10 and the server device 100 may further learn the difference in input mode between a correct character (or character string) and an incorrect character (or character string) (such as flick input, keyboard positional relationship, or the difference in distance between vowels and consonants on the keyboard in the case of romaji input). The terminal device 10 and the server device 100 may further learn the "language to be input" and the "hand used for input (right or left hand)".

[0035] Next, the server device 100 provides the terminal device 10 with the processing result corresponding to the characters input by the user U via the network N (see FIG. 2) (step S6). At this time, the server device 100 may provide the terminal device 10 with the model based on the learning result or its parameters, differences, etc.

[0036] [1-2. Inference Phase] 1, the terminal device 10 of the user U accepts character input from the user U (step S11). For example, the terminal device 10 acquires characters (or character strings) input by the user U in a search window (search box, search bar) of a search engine, an input field of an app, an input form of a website, or the like.

[0037] Next, the terminal device 10 of the user U transmits the characters input by the user U to the server device 100 via the network N (see FIG. 2) (step S12).

[0038] Next, the terminal device 10 of the user U cooperates with the server device 100 to determine whether or not the user U has made an input error (step S13-1). The server device 100 determines whether or not each user U has made an input error (step S13-2). A publicly known technique may be used to determine whether or not an input error has occurred.

[0039] Next, the terminal device 10 uses the trained model to estimate behavior from the incorrect input (step S14-1). The server device 100 uses the trained model to estimate behavior from the incorrect input (step S14-2). That is, the terminal device 10 and the server device 100 input the incorrectly input character (or character string) to the model, and obtain, as output, information about the behavior when the character (or character string) was incorrectly input.

[0040] For example, the terminal device 10 and the server device 100 use a trained model to input the actually input “incorrect character (or character string)” and obtain as output the “correct character (or character string)” that should have been input and the “action” taken when the incorrect input occurred.

[0041] In practice, the terminal device 10 and the server device 100 may use a trained model to input a pair of the actually input "incorrect character (or character string)" and the "action" at the time the incorrect input occurred, and obtain as output the "correct character (or character string)" that should have been input.

[0042] The terminal device 10 may transmit the estimated action to the server device 100 via the network N (see FIG. 2). The terminal device 10 may also transmit the estimated correct characters to the server device 100 via the network N (see FIG. 2). The terminal device 10 may also perform processing according to the estimated action on the terminal.

[0043] Next, the server device 100 provides the terminal device 10 of the user U who made the erroneous input with a processing result corresponding to the estimated behavior (step S15). In this embodiment, the server device 100 estimates a correct character from the erroneously input character and the estimated behavior, and provides the terminal device 10 of the user U who made the erroneous input with a processing result corresponding to the estimated correct character.

[0044] For example, when a search is performed using the server device 100 as a search engine, if an incorrect input occurs in the search query, the terminal device 10 uses the model to estimate the behavior. Then, the terminal device 10 transmits the search query (a character string including the incorrectly input character) and the estimated behavior to the server device 100 via the network N (see FIG. 2). The server device 100 uses the model to estimate a correct search query from the search query (a character string including the incorrectly input character) and the estimated behavior, and changes the listing (list) of search results according to the correct search query.

[0045] The terminal device 10 and the server device 100 may use the estimation result for any purpose. For example, the estimation result may be used for listing search results (creating or changing a list), recommending products / services, delivering advertisements, selecting music, or the like. In other words, the terminal device 10 and the server device 100 may perform processing such as listing search results, recommending products / services, delivering advertisements, or selecting music, depending on the estimated behavior, and provide the processing result to the terminal device 10 of the user U.

[0046] Furthermore, the terminal device 10 and the server device 100 may collect and analyze the estimation results. For example, the terminal device 10 and the server device 100 may collect and analyze the characters that each user U inputs incorrectly and the behavior of the user U when the incorrect input was made.

[0047] Furthermore, based on the estimation result, the server device 100 may provide various information on services, products, etc. related to the estimation result to the terminal device 10 of the user U who made the erroneous input. For example, the server device 100 may provide various information on services, products, etc. related to the action (running, cooking, etc.) of the user U when he made the erroneous input to the terminal device 10 of the user U.

[0048] The above "1-1. Learning Phase" and "1-2. Inference Phase" may be performed in parallel. That is, the terminal device 10 and the server device 100 may perform learning and inference in parallel.

[0049] At this time, the terminal device 10 and the server device 100 may inquire of the user U about the behavior of the user U at the time only if they are unable to estimate the behavior of the user U who made the input error at the time, and may newly learn about the combination of the input error and the behavior.

[0050] Furthermore, the terminal device 10 and the server device 100 may use a trained model to estimate an action from an input error, present the estimated action (or a processing result according to the action) to the user U, and if the presented information is incorrect, may inquire of the user U about the action he or she was performing at the time of the input error, and may relearn the combination of the input error and the action. That is, if the estimated action is incorrect, the terminal device 10 and the server device 100 may have the user U correct the action to the correct one, and may relearn the combination of the input error and the action.

[0051] [1-3.Other] In this manner, in this embodiment, the terminal device 10 and the server device 100 can estimate the user's context based on the type of typo (misprinted text) made by the user. For example, the terminal device 10 and the server device 100 can learn the distribution of typos made when held in the right hand, the distribution of typos made when held in the left hand, the distribution of typos made when running, the distribution of typos made when angry, and the like, to create a model, and input the typo into the model, thereby estimating the user's context according to the typo.

[0052] Furthermore, the terminal device 10 and the server device 100 may learn a typo and sensor information (information indicating a context) at the time when the typo was input. Furthermore, the terminal device 10 and the server device 100 may learn a typo and location information at the time when the typo was input. Furthermore, the terminal device 10 and the server device 100 may learn a typo and time information related to the time zone when the typo was input. Furthermore, the terminal device 10 and the server device 100 may learn a typo, sensor information, location information, and time information in any combination.

[0053] In this embodiment, the erroneous input of characters (or character strings) is described as an example, but the characters (or character strings) are merely an example. In reality, numbers, symbols, etc. may be used. Furthermore, the input of Japanese is merely an example. In reality, the erroneous input may be an alphabetic character input or a numeric character input. Furthermore, the erroneous input may be an operation other than the character input, such as selecting a drop-down list (pull-down), operating an icon, moving or deleting a file, etc. In other words, the erroneous input may be an erroneous operation, not limited to an erroneous input. For example, the terminal device 10 of the user U starts an application or executes a program, and in cooperation with the server device 100, estimates the context of the user U from the tendency of errors made during the operation of the user U. At this time, the terminal device 10 trains a model on the operation error and the context at that time, and estimates (infers) the context at that time from the operation error using this model.

[0054] [2. Example of information processing system configuration] Next, the configuration of an information processing system 1 including a server device 100 according to an embodiment will be described with reference to Fig. 2. Fig. 2 is a diagram showing an example of the configuration of the information processing system 1 according to an embodiment. As shown in Fig. 2, the information processing system 1 according to an embodiment includes a terminal device 10 and a server device 100. These various devices are connected to each other via a network N so as to be able to communicate with each other by wire or wirelessly. The network N is, for example, a LAN (Local Area Network) or a WAN (Wide Area Network) such as the Internet.

[0055] Furthermore, the number of devices included in the information processing system 1 shown in Fig. 2 is not limited to that shown in the figure. For example, in Fig. 2, for the sake of simplicity, only one terminal device 10 is shown, but this is merely an example and is not limiting, and two or more devices may be included.

[0056] The terminal device 10 is an information processing device used by a user U. For example, the terminal device 10 is a smart device such as a smartphone or a tablet terminal, a feature phone, a PC (Personal Computer), a PDA (Personal Digital Assistant), a game machine or AV device equipped with a communication function, a car navigation system, a wearable device such as a smart watch or a head-mounted display, smart glasses, or the like.

[0057] In addition, the terminal device 10 can connect to the network N via a wireless communication network such as LTE (Long Term Evolution), 4G (4th Generation), or 5G (5th Generation: 5th generation mobile communication system), or via short-range wireless communication such as Bluetooth (registered trademark) or wireless LAN (Local Area Network), and communicate with the server device 100.

[0058] The server device 100 is, for example, a computer such as a PC or a blade server, or a mainframe or a workstation, etc. The server device 100 may be realized by cloud computing.

[0059] [3. Example of terminal device configuration] Next, the configuration of the terminal device 10 will be described with reference to Fig. 3. Fig. 3 is a diagram showing an example of the configuration of the terminal device 10. As shown in Fig. 3, the terminal device 10 includes a communication unit 11, a display unit 12, an input unit 13, a positioning unit 14, a sensor unit 20, a control unit 30 (controller), and a storage unit 40.

[0060] (Communications Department 11) The communication unit 11 is connected to a network N (see FIG. 2) by wire or wirelessly, and transmits and receives information to and from the server device 100 via the network N. For example, the communication unit 11 is realized by a NIC (Network Interface Card), an antenna, or the like.

[0061] (Display section 12) The display unit 12 is a display device that displays various information such as position information. For example, the display unit 12 is a liquid crystal display (LCD) or an organic electro-luminescent display (OLED). The display unit 12 is a touch panel display, but is not limited to this.

[0062] (Input section 13) The input unit 13 is an input device that accepts various operations from the user U. For example, the input unit 13 has buttons for inputting characters, numbers, and the like. The input unit 13 may be an input / output port (I / O port), a USB (Universal Serial Bus) port, or the like. In addition, when the display unit 12 is a touch panel display, a part of the display unit 12 functions as the input unit 13. In addition, the input unit 13 may be a microphone that accepts voice input from the user U, or the like. The microphone may be wireless.

[0063] (Positioning unit 14) The positioning unit 14 receives a signal (radio wave) transmitted from a satellite of a GPS (Global Positioning System), and acquires position information (e.g., latitude and longitude) indicating the current position of the terminal device 10, which is the device itself, based on the received signal. That is, the positioning unit 14 measures the position of the terminal device 10. Note that the GPS is merely an example of a GNSS (Global Navigation Satellite System).

[0064] The positioning unit 14 can measure the position by various methods other than GPS. For example, the positioning unit 14 may measure the position by using various communication functions of the terminal device 10 as described below as an auxiliary positioning means for position correction or the like.

[0065] (Wi-Fi positioning) For example, the positioning unit 14 uses a Wi-Fi (registered trademark) communication function of the terminal device 10 or a communication network provided by each communication company to measure the position of the terminal device 10. Specifically, the positioning unit 14 performs Wi-Fi communication or the like and measures the distance to a nearby base station or access point to measure the position of the terminal device 10.

[0066] (Beacon positioning) The positioning unit 14 may measure the position by using a Bluetooth (registered trademark) function of the terminal device 10. For example, the positioning unit 14 measures the position of the terminal device 10 by connecting to a beacon transmitter connected by the Bluetooth (registered trademark) function.

[0067] (geomagnetic positioning) The positioning unit 14 also measures the position of the terminal device 10 based on a geomagnetic pattern of a structure measured in advance and a geomagnetic sensor included in the terminal device 10.

[0068] (RFID positioning) Furthermore, for example, if the terminal device 10 has a function of an RFID (Radio Frequency Identification) tag equivalent to a contactless IC card used at station ticket gates, stores, etc., or has a function of reading an RFID tag, the location of use is recorded together with information on a payment or the like made by the terminal device 10. The positioning unit 14 may obtain such information to measure the location of the terminal device 10. Furthermore, the location may be measured by an optical sensor, an infrared sensor, or the like provided in the terminal device 10.

[0069] The positioning unit 14 may, if necessary, measure the position of the terminal device 10 using one or a combination of the above-mentioned positioning means.

[0070] (Sensor unit 20) The sensor unit 20 includes various sensors mounted on or connected to the terminal device 10. The connection may be wired or wireless. For example, the sensors may be detection devices other than the terminal device 10, such as wearable devices and wireless devices. In the example shown in FIG. 3, the sensor unit 20 includes an acceleration sensor 21, a gyro sensor 22, an air pressure sensor 23, a temperature sensor 24, a sound sensor 25, a light sensor 26, a magnetic sensor 27, and an image sensor (camera) 28.

[0071] The above-mentioned sensors 21 to 28 are merely examples and are not intended to be limiting. That is, the sensor unit 20 may be configured to include some of the sensors 21 to 28, or may include other sensors such as a humidity sensor in addition to or instead of the sensors 21 to 28.

[0072] The acceleration sensor 21 is, for example, a three-axis acceleration sensor, and detects physical movements of the terminal device 10, such as the moving direction, speed, and acceleration of the terminal device 10. The gyro sensor 22 detects physical movements of the terminal device 10, such as tilts in three axial directions, based on the angular velocity, etc. of the terminal device 10. The air pressure sensor 23 detects, for example, the air pressure around the terminal device 10.

[0073] Since the terminal device 10 includes the above-mentioned acceleration sensor 21, gyro sensor 22, and air pressure sensor 23, it is possible to measure the position of the terminal device 10 using a technique such as Pedestrian Dead-Reckoning (PDR) that uses these sensors 21 to 23. This makes it possible to obtain indoor position information that is difficult to obtain using a positioning system such as GPS.

[0074] For example, the number of steps, walking speed, and distance walked can be calculated by a pedometer using the acceleration sensor 21. In addition, the moving direction, line of sight direction, and body inclination of the user U can be known by using the gyro sensor 22. In addition, the altitude and floor number on which the terminal device 10 of the user U is located can be known from the air pressure detected by the air pressure sensor 23.

[0075] The air temperature sensor 24 detects, for example, the air temperature around the terminal device 10. The sound sensor 25 detects, for example, the sound around the terminal device 10. The light sensor 26 detects the illuminance around the terminal device 10. The magnetic sensor 27 detects, for example, the geomagnetism around the terminal device 10. The image sensor 28 captures an image around the terminal device 10.

[0076] The above-mentioned air pressure sensor 23, temperature sensor 24, sound sensor 25, light sensor 26, and image sensor 28 can detect the air pressure, temperature, sound, and illuminance, and capture images of the surroundings, thereby detecting the environment and situation around the terminal device 10. In addition, the accuracy of the location information of the terminal device 10 can be improved based on the environment and situation around the terminal device 10.

[0077] (Control unit 30) The control unit 30 includes, for example, a microcomputer having a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM, an input / output port, and various other circuits. The control unit 30 may also be configured with hardware such as an integrated circuit, for example, an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array). The control unit 30 includes a transmission unit 31, a reception unit 32, a processing unit 33, a reception unit 34, a determination unit 35, a confirmation unit 36, and an estimation unit 37.

[0078] (Transmitter 31) The transmission unit 31 can transmit, for example, various information input by the user U using the input unit 13, various information detected by each sensor 21-28 mounted on or connected to the terminal device 10, and location information of the terminal device 10 measured by the positioning unit 14 to the server device 100 via the communication unit 11.

[0079] (Receiving unit 32) The receiving unit 32 can receive various types of information provided by the server device 100 and requests for various types of information from the server device 100 via the communication unit 11.

[0080] (Processing section 33) The processing unit 33 controls the entire terminal device 10, including the display unit 12, etc. For example, the processing unit 33 can output various information transmitted by the transmission unit 31 and various information received from the server device 100 by the reception unit 32 to the display unit 12 for display.

[0081] Furthermore, the processing unit 33 may function as a receiving unit 34, a determining unit 35, a confirming unit 36, and an estimating unit 37 described below by starting an application or executing a program.

[0082] (Reception Department 34) The reception unit 34 receives input from the user U via the input unit 13. For example, the reception unit 34 receives input of a search query from the user U. The reception unit 34 also receives some operation from the user U on the terminal device 10. The reception unit 34 also receives sensor information resulting from the behavior of the user U from the sensor unit 20 as input from the user U.

[0083] (Judgment section 35) The determination unit 35 determines whether or not the user U has made an input error. For example, the determination unit 35 determines whether or not the user U has made an input error from the input character (or character string). At this time, the determination unit 35 may determine whether or not the user U has made an input error by using a model that estimates an input error from the input character (or character string). Furthermore, publicly known technology may be used to determine whether or not a user U has made an input error.

[0084] (Verification Section 36) When the user U makes an input error, the confirmation unit 36 ​​confirms what action the user U was taking at the time. For example, when the user U makes an input error, the confirmation unit 36 ​​inquires of the user U what action he or she was taking at the time. That is, the terminal device 10 and the server device 100 have the user who made the input error answer what action he or she was taking at the time of the input error.

[0085] In practice, the confirmation unit 36 ​​may estimate the behavior or state of the user U who made the input error, the surrounding situation, etc., from the sensor information and location information of the terminal device 10 at the time the input error was made, the history information of the user U, etc. The sensor information of the terminal device 10 is information on the output results (detection and measurement results) of various sensors (acceleration sensors, etc.) mounted on the terminal device 10. The history information of the user U is information on the search history, purchase history, etc., accumulated in the server device 100.

[0086] (Estimation part 37) The estimation unit 37 estimates the context from the tendency of input errors of the user U. For example, when the user U makes an input error, the estimation unit 37 estimates the behavior of the user U at the time the input error occurs, using a model that has learned the relationship between the input mode of the input error and the behavior at the time the input error occurs.

[0087] In addition, the estimation unit 37 estimates that user U is taking a first behavior when a predetermined first typo that is located close to the correct character is input when a correct character should be input, and estimates that user U is taking a second behavior when a predetermined second typo that is located close to the correct character is input.

[0088] Furthermore, when correct characters are input unnecessarily in succession when correct characters should be input, the estimation unit 37 estimates that the user U is taking a predetermined action.

[0089] In addition, the estimation unit 37 uses a model that has learned the relationship between correct input, the input pattern of incorrect input, and the behavior when the incorrect input occurs, to estimate the behavior of user U when the incorrect input occurs when user U makes an incorrect input, and also estimates the correct input.

[0090] In addition, the estimation unit 37 uses a model that has learned the relationship between at least one of the input modes of erroneous input, such as the input method, the input language, the type of input device, and the hand used to input (right or left hand), and the behavior when an erroneous input occurs, to estimate the behavior of user U when an erroneous input occurs.

[0091] In addition, the estimation unit 37 estimates the behavior of user U when an incorrect input occurs, using a model that has learned the relationship between the input manner of the incorrect input, at least one of the sensor information, history information, location information, and time information at the time the incorrect input occurs, and the behavior at the time the incorrect input occurs.

[0092] Furthermore, the estimation unit 37 estimates a given situation or environment in which the user U is placed, along with the behavior of the user U.

[0093] Furthermore, when the user U makes an input error in the search query, the estimation unit 37 estimates the behavior of the user U from the manner in which the user U made the input error, and changes the listing (list) of the search results according to the estimated behavior. That is, the estimation unit 37 also functions as a change unit that changes the listing of the search results according to the estimated behavior. Note that the estimation unit 37 may estimate the listing of the search results according to the estimated behavior using a model that estimates the listing of the search results from the behavior.

[0094] (Storage unit 40) The storage unit 40 is realized by, for example, a semiconductor memory element such as a random access memory (RAM) or a flash memory, or a storage device such as a hard disk drive (HDD), a solid state drive (SSD), an optical disk, etc. Various programs and various data are stored in the storage unit 40.

[0095] [4. Example of Server Device Configuration] Next, the configuration of the server device 100 according to the embodiment will be described with reference to Fig. 4. Fig. 4 is a diagram showing an example of the configuration of the server device 100 according to the embodiment. As shown in Fig. 4, the server device 100 includes a communication unit 110, a storage unit 120, and a control unit 130.

[0096] (Communication unit 110) The communication unit 110 is realized by, for example, a network interface card (NIC), etc. The communication unit 110 is also connected to a network N (see FIG. 2) in a wired or wireless manner.

[0097] (Storage unit 120) The storage unit 120 is realized by, for example, a semiconductor memory element such as a random access memory (RAM) or a flash memory, or a storage device such as a HDD, an SSD, an optical disk, etc. As shown in FIG. 4, the storage unit 120 has a user information database 121, a history information database 122, and an erroneous input information database 123.

[0098] (User Information Database 121) The user information database 121 stores user information about the user U. For example, the user information database 121 stores various information such as the attributes of the user U. Fig. 5 is a diagram showing an example of the user information database 121. In the example shown in Fig. 5, the user information database 121 has items such as "User ID (Identifier)", "Age", "Gender", "Home", "Workplace", and "Interests".

[0099] The "user ID" indicates identification information for identifying the user U. The "user ID" may be the contact information of the user U (such as a telephone number or an email address), or may be identification information for identifying the terminal device 10 of the user U.

[0100] Furthermore, "age" indicates the age of user U identified by the user ID. Note that "age" may be information indicating the specific age of user U (e.g., 35 years old) or information indicating the generation of user U (e.g., 30s). Alternatively, "age" may be information indicating user U's date of birth or information indicating user U's generation (e.g., born in the 1980s). Furthermore, "gender" indicates the gender of user U identified by the user ID.

[0101] Furthermore, "home" indicates the location information of the home of user U identified by the user ID. In the example shown in Fig. 5, "home" is illustrated as an abstract code such as "LC11", but it may also be latitude and longitude information, etc. Furthermore, for example, "home" may also be a region name or an address.

[0102] Furthermore, "workplace" indicates location information of the workplace (school in the case of a student) of user U identified by the user ID. Note that in the example shown in Fig. 5, "workplace" is illustrated as an abstract code such as "LC12", but it may also be latitude and longitude information, etc. Furthermore, for example, "workplace" may also be the name of a region or an address.

[0103] Furthermore, "interests" indicate the interests of a user U identified by a user ID. In other words, "interests" indicate subjects in which a user U identified by a user ID is highly interested. For example, "interests" may be search queries (keywords) that a user U inputs into a search engine. Note that, although one "interest" is illustrated for each user U in the example shown in FIG. 5, there may be multiple "interests."

[0104] For example, in the example shown in FIG. 5, the age of user U identified by user ID "U1" is "20s" and the gender is "male." Furthermore, for example, the user U identified by user ID "U1" indicates that his / her home address is "LC11." Furthermore, for example, the user U identified by user ID "U1" indicates that his / her workplace is "LC12." Furthermore, for example, the user U identified by user ID "U1" indicates that he / she is interested in "sports."

[0105] Here, in the example shown in Fig. 5, abstract values ​​such as "U1", "LC11", and "LC12" are used for illustration, but "U1", "LC11", and "LC12" are assumed to store information such as specific character strings and numerical values. In the following figures relating to other information, abstract values ​​may also be illustrated.

[0106] The user information database 121 may store various information according to the purpose, not limited to the above. For example, the user information database 121 may store various information related to the terminal device 10 of the user U. The user information database 121 may also store information related to the attributes of the user U, such as demographic attributes, psychographic attributes, geographic attributes, and behavioral attributes. For example, the user information database 121 may store information such as name, family structure, place of origin (hometown), occupation, job title, income, qualifications, type of residence (detached house, apartment, etc.), whether or not the user has a car, commuting time, commuting route, commuter pass section (station, line, etc.), frequently used station (other than the nearest station to home or workplace), extracurricular activities (location, time zone, etc.), hobbies, interests, and lifestyle.

[0107] (Historical Information Database 122) The history information database 122 stores various information related to history information (log data) indicating the behavior of the user U. Fig. 6 is a diagram showing an example of the history information database 122. In the example shown in Fig. 6, the history information database 122 has items such as "user ID", "location history", "search history", "browsing history", "purchase history", and "post history".

[0108] "User ID" indicates identification information for identifying user U. "Location history" indicates location history, which is a history of user U's location and movements. "Search history" indicates search history, which is a history of search queries entered by user U. "Browse history" indicates browse history, which is a history of content viewed by user U. "Purchase history" indicates purchase history, which is a history of purchases made by user U. "Post history" indicates posting history, which is a history of posts made by user U. "Post history" may include questions regarding user U's possessions.

[0109] For example, in the example shown in Figure 6, user U identified by user ID "U1" moved as shown in "Location History #1," searched as shown in "Search History #1," viewed content as shown in "Browse History #1," purchased specified products etc. at specified stores etc. as shown in "Purchase History #1," and posted as shown in "Post History."

[0110] Here, in the example shown in Figure 6, abstract values ​​such as "U1," "Location History #1," "Search History #1," "Browse History #1," "Purchase History #1," and "Post History #1" are used to illustrate the data; however, specific information such as character strings and numbers is stored in "U1," "Location History #1," "Search History #1," "Browse History #1," "Purchase History #1," and "Post History #1."

[0111] The history information database 122 may store various information according to the purpose, without being limited to the above. For example, the history information database 122 may store the usage history of a specific service by the user U. The history information database 122 may also store the history of the user U's visit to a physical store or the history of the user U's visit to a facility. The history information database 122 may also store the payment history of the user U's payment (electronic payment) using the terminal device 10.

[0112] (Incorrect input information database 123) The erroneous input information database 123 stores various information regarding the relationship between erroneous inputs and actions of the user U. Fig. 7 is a diagram showing an example of the erroneous input information database 123. In the example shown in Fig. 7, the erroneous input information database 123 has items such as "user ID," "correct character," "incorrect character," and "action."

[0113] "User ID" indicates identification information for identifying user U. "Correct characters" indicates the correct characters (or strings) that should have been entered. "Incorrect characters" indicates characters (or strings) that were entered by mistake where correct characters should have been entered. "Behavior" indicates the behavior of user U when an incorrect character was entered. Note that "behavior" is not limited to the behavior of user U, but may also indicate the situation or environment in which user U finds himself. In other words, "behavior" may be anything that indicates user U's context.

[0114] For example, in the example shown in Figure 7, user U identified by user ID "U1" entered the incorrect character "ta" when the correct character should have been "ma," and it is estimated that the user was "looking away" at the time.

[0115] The erroneous input information database 123 may store various information according to the purpose, not limited to the above. For example, the erroneous input information database 123 may store attribute information of the user U. In this case, the erroneous input information database 123 may store attribute information instead of "user ID". That is, the relationship between the erroneous input and the behavior may be shown for each attribute of the user, not for each individual user. The erroneous input information database 123 may also store information regarding the input mode of the erroneous input. For example, as the input mode of the erroneous input, information indicating the input method, the language used for input, the type of input device, the hand that inputs (right hand or left hand), etc. may be stored. The erroneous input information database 123 may also store history information of the user U, sensor information of the terminal device 10, position information, time information, etc. when the erroneous input occurs.

[0116] (Control unit 130) Returning to Fig. 4, the description will be continued. The control unit 130 is a controller, and is realized by, for example, a CPU (Central Processing Unit), an MPU (Micro Processing Unit), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or the like, executing various programs (corresponding to an example of an information processing program) stored in a storage device inside the server device 100 using a storage area such as a RAM as a working area. In the example shown in Fig. 4, the control unit 130 has an acquisition unit 131, a determination unit 132, a confirmation unit 133, an estimation unit 134, and a provision unit 135.

[0117] (Acquisition part 131) The acquisition unit 131 acquires user information related to the user U via the communication unit 110. For example, the acquisition unit 131 acquires identification information (such as a user ID) indicating the user U, location information of the user U, attribute information of the user U, and the like from the terminal device 10 of the user U. Furthermore, the acquisition unit 131 may acquire the identification information indicating the user U, the attribute information of the user U, and the like when the user U is registered. Then, the acquisition unit 131 registers the user information in the user information database 121 of the storage unit 120.

[0118] Furthermore, the acquisition unit 131 acquires various types of history information (log data) indicating the behavior of the user U via the communication unit 110. For example, the acquisition unit 131 acquires various types of history information indicating the behavior of the user U from the terminal device 10 of the user U, or from various servers based on a user ID or the like. Then, the acquisition unit 131 registers the various types of history information in the history information database 122 of the storage unit 120.

[0119] The acquisition unit 131 also receives an input from the user U via the communication unit 110. That is, the acquisition unit 131 also functions as a reception unit that receives an input from the user U. For example, the acquisition unit 131 acquires a search query input by the user U. At this time, when the user U inputs a search query into a search engine or the like to perform a keyword search, the acquisition unit 131 acquires the search query via the communication unit 110. That is, the acquisition unit 131 acquires a keyword input by the user U into a search box of a search engine, a site, or an app via the communication unit 110.

[0120] (Judgment unit 132) The determination unit 132 determines whether or not the user U has made an input error. For example, the determination unit 132 determines whether or not the user U has made an input error from an input character (or character string). At this time, the determination unit 132 may determine whether or not the user U has made an input error by using a model that estimates an input error from an input character (or character string). Furthermore, publicly known technology may be used to determine whether or not a user U has made an input error.

[0121] (Verification Section 133) When a user U of any of the terminal devices 10 makes an input error, the confirmation unit 133 confirms what action the user U was taking at the time. For example, when an input error is made, the confirmation unit 133 inquires of the user U who made the input error via the communication unit 110 about what action the user U was taking at the time. In other words, the confirmation unit 133 makes the user who made the input error answer about the action he or she was taking when the input error was made.

[0122] In practice, the confirmation unit 133 may estimate the behavior or state of the user U who made the input error, the surrounding situation, etc., from the sensor information and location information of the terminal device 10 at the time the input error was made, the history information of the user U, etc. The sensor information of the terminal device 10 is information on the output results (detection and measurement results) of various sensors (acceleration sensors, etc.) mounted on the terminal device 10. The history information of the user U is information on the search history, purchase history, etc., accumulated in the server device 100.

[0123] (Estimation part 134) The estimation unit 134 estimates the context from the tendency of input errors of the user U. For example, when the user U makes an input error, the estimation unit 134 estimates the behavior of the user U at the time the input error occurs, using a model that has learned the relationship between the input mode of the input error and the behavior at the time the input error occurs.

[0124] In addition, the estimation unit 134 estimates that user U is taking a first behavior when a predetermined first typo that is located close to the correct character is input when a correct character should be input, and estimates that user U is taking a second behavior when a predetermined second typo that is located close to the correct character is input.

[0125] Furthermore, when correct characters are input unnecessarily in succession when correct characters should be input, the estimation unit 134 estimates that the user U is taking a predetermined action.

[0126] In addition, the estimation unit 134 uses a model that has learned the relationship between correct input, the input pattern of incorrect input, and the behavior when an incorrect input occurs, to estimate the behavior of user U when an incorrect input occurs when user U makes an incorrect input, and also estimates the correct input.

[0127] In addition, the estimation unit 134 uses a model that has learned the relationship between at least one of the input modes of erroneous input, such as the input method, the input language, the type of input device, and the hand used to input (right or left hand), and the behavior when an erroneous input occurs, to estimate the behavior of user U when an erroneous input occurs.

[0128] In addition, the estimation unit 134 estimates the behavior of user U when an incorrect input occurs, using a model that has learned the relationship between the input manner of the incorrect input, at least one of the sensor information, history information, location information, and time information at the time the incorrect input occurs, and the behavior at the time the incorrect input occurs.

[0129] Furthermore, the estimation unit 134 estimates a given situation or environment in which the user U is placed, along with the behavior of the user U.

[0130] Furthermore, when the user U makes an input error in the search query, the estimation unit 134 estimates the behavior of the user U from the manner in which the user U made the input error, and changes the listing (list) of the search results according to the estimated behavior. That is, the estimation unit 134 also functions as a change unit that changes the listing of the search results according to the estimated behavior. Note that the estimation unit 134 may estimate the listing of the search results according to the estimated behavior using a model that estimates the listing of the search results from the behavior.

[0131] (Provider 135) The providing unit 135 provides a processing result according to the estimated behavior in response to an input from the user U via the communication unit 110. For example, the providing unit 135 provides a search result listed according to the estimated behavior in response to an input of a search query from the user U via the communication unit 110 to the terminal device 10 of the user U.

[0132] Furthermore, the providing unit 135 may provide a model serving as a basis for various estimation models to the terminal device 10 of the user U via the communication unit 110. For example, the providing unit 135 may provide a model serving as a basis for a model that estimates the context of the user U from the tendency of the user U to make input errors to the terminal device 10 of the user U via the communication unit 110.

[0133] 5. Processing Procedure Next, a processing procedure performed by the terminal device 10 and the server device 100 according to the embodiment will be described with reference to Fig. 8. Fig. 8 is a flowchart showing the processing procedure according to the embodiment. Note that the processing procedure shown below is repeatedly executed by the control unit 30 of the terminal device 10 and the control unit 130 of the server device 100.

[0134] 8, the reception unit 34 of the terminal device 10 receives an input from a user U via the input unit 13 (step S101). At this time, the acquisition unit 131 of the server device 100 receives an input from each user U from the terminal device 10 of each user U via the communication unit 110.

[0135] Next, the determination unit 35 of the terminal device 10 determines whether or not the user U has made an input error (step S102). At this time, the determination unit 132 of the server device 100 determines whether or not each user U has made an input error.

[0136] Next, the confirmation unit 36 ​​of the terminal device 10 confirms what action the user U was taking at the time when the user U made an input error (step S103). At this time, when any user U of each terminal device 10 makes an input error, the confirmation unit 133 of the server device 100 confirms via the communication unit 110 what action the user U who made the input error was taking at the time.

[0137] Next, the estimation unit 37 of the terminal device 10 learns about the combination of the tendency of mistakes made by the user U when making an input and the behavior of the user U when the input error occurs, and creates a model that has learned the relationship between the input mode of the incorrect input and the behavior when the incorrect input occurs (step S104). At this time, the estimation unit 134 of the server device 100 learns about the combination of the tendency of mistakes made by the user U when making an input error and the behavior of the user U at that time, and creates a model that has learned the relationship between the input mode of the incorrect input and the behavior when the incorrect input occurs.

[0138] At this time, the estimation unit 37 of the terminal device 10 and the estimation unit 134 of the server device 100 may learn the "input method," "language used for input," "type of input device (keyboard, etc.)," ​​"hand used for input (right or left hand)," etc., in addition to the combination of the user U's tendency to make errors when inputting and the user U's behavior.

[0139] Next, the reception unit 34 of the terminal device 10 receives input from the user U via the input unit 13 (step S105). At this time, the acquisition unit 131 of the server device 100 receives input from each user U from the terminal device 10 of each user U via the communication unit 110.

[0140] Next, the determination unit 35 of the terminal device 10 determines whether or not the user U has made an input error (step S106). At this time, the determination unit 132 of the server device 100 determines whether or not each user U has made an input error.

[0141] Next, the estimation unit 37 of the terminal device 10 estimates the behavior of the user U when the user U makes an erroneous input, using a model that has learned the relationship between the input mode of the erroneous input and the behavior when the erroneous input occurs (step S107). At this time, the acquisition unit 131 of the server device 100 estimates the behavior of the user U when the user U makes an erroneous input, using a model that has learned the relationship between the input mode of the erroneous input and the behavior when the erroneous input occurs.

[0142] For example, the estimation unit 37 of the terminal device 10 and the estimation unit 134 of the server device 100 use a model that has learned the relationship between at least one of the input modes of erroneous input, such as the input method, the input language, the type of input device, and the hand used to input (right or left hand), and the behavior when an erroneous input occurs, to estimate the behavior of user U when an erroneous input occurs.

[0143] In addition, the estimation unit 37 of the terminal device 10 and the estimation unit 134 of the server device 100 may estimate the behavior of user U when an incorrect input occurs, using a model that has learned the relationship between the input manner of the incorrect input, at least one of sensor information, history information, location information, and time information at the time the incorrect input occurs, and the behavior at the time the incorrect input occurs.

[0144] Next, the providing unit 135 of the server device 100 provides a processing result according to the estimated behavior in response to the input from the user U via the communication unit 110 (step S108). For example, the providing unit 135 provides the terminal device 10 of the user U with search results listed according to the estimated behavior in response to the input of a search query from the user U via the communication unit 110.

[0145] 6. Modifications The above-described terminal device 10 and server device 100 may be implemented in various different forms other than the above-described embodiment. Therefore, the following describes modifications of the embodiment.

[0146] In the above embodiment, some or all of the processing executed by the server device 100 may actually be executed by the terminal device 10. For example, the processing may be completed in a stand-alone manner (by the terminal device 10 alone). In this case, the terminal device 10 is assumed to have the functions of the server device 100 in the above embodiment. Also, in the above embodiment, since the terminal device 10 works in conjunction with the server device 100, from the perspective of the user U, it appears that the processing of the server device 100 is also executed by the terminal device 10. In other words, from another perspective, it can be said that the terminal device 10 is equipped with the server device 100.

[0147] Furthermore, in the above embodiment, the terminal device 10 and the server device 100 may learn about a combination of the type of the terminal device 10 used for input, the tendency of errors during input, and the context of the user U. For example, the terminal device 10 and the server device 100 train a model on the type of the terminal device 10, the characters (or character strings) input by mistake, and the context at that time, and use this model to estimate (infer) the context at that time from the characters input by mistake. It is presumed that the tendency of errors during input differs depending on the type of the terminal device 10 (whether it is a smartphone, tablet, or PC).

[0148] Furthermore, in the above embodiment, the terminal device 10 and the server device 100 may learn a combination of the attribute information of the user U, the tendency of mistakes when inputting, and the context of the user U. For example, the terminal device 10 and the server device 100 train a model on the attribute information of the user U, the characters (or character strings) input by mistake, and the context at that time, and use this model to estimate (infer) the context at that time from the characters input by mistake. It is presumed that the tendency of mistakes when inputting differs depending on the attribute information of the user U (gender, age, residential area, health condition, long-standing habits, etc.).

[0149] [7. Effects] As described above, the information processing device (terminal device 10 and server device 100) of the present application includes a reception unit that receives input from user U, a judgment unit that judges whether user U has made an input error, and an estimation unit that estimates a context from the tendency of user U's input errors.

[0150] The estimation unit uses a model that has learned the relationship between the input pattern of an incorrect input and the behavior when the incorrect input occurs to estimate the behavior of user U when the incorrect input occurs when user U makes an incorrect input.

[0151] The estimation unit estimates that user U is taking a first behavior when a predetermined first typo that is located close to the correct character is input when a correct character should be input, and estimates that user U is taking a second behavior when a predetermined second typo that is located close to the correct character is input.

[0152] When correct characters are input unnecessarily in succession when correct characters should be input, the estimation unit estimates that the user U is taking a predetermined action.

[0153] The estimation unit uses a model that has learned the relationship between correct input, the input pattern of incorrect input, and the behavior when an incorrect input occurs, to estimate the behavior of user U when an incorrect input occurs when user U makes an incorrect input, and also estimates the correct input.

[0154] The estimation unit uses a model that has learned the relationship between at least one of the input modes of erroneous input, such as the input method, the input language, the type of input device, and the hand used to input (right or left hand), and the behavior when an erroneous input occurs, to estimate the behavior of user U when an erroneous input occurs.

[0155] The estimation unit estimates the behavior of user U when an incorrect input occurs, using a model that has learned the relationship between the input manner of the incorrect input, at least one of sensor information, history information, location information, and time information at the time the incorrect input occurs, and the behavior at the time the incorrect input occurs.

[0156] The estimation unit estimates the behavior of the user U as well as a given situation or environment in which the user U is placed.

[0157] The reception unit receives input of a search query from user U, the determination unit determines whether user U has made an input error, and if user U has made an input error, the estimation unit estimates user U's behavior from the nature of user U's input error and changes the listing of the search results according to the estimated behavior.

[0158] The information processing device according to the present application further includes a providing unit that provides a processing result according to the estimated context.

[0159] By performing any one or a combination of the above-described processes, the information processing device according to the present application can estimate the user's context from the content or type of the user's erroneous operation.

[0160] [8. Hardware Configuration] Moreover, the terminal device 10 and the server device 100 according to the above-described embodiment are realized by a computer 1000 having a configuration as shown in Fig. 9, for example. The server device 100 will be described below as an example. Fig. 9 is a diagram showing an example of a hardware configuration. The computer 1000 is connected to an output device 1010 and an input device 1020, and has a configuration in which a calculation device 1030, a primary storage device 1040, a secondary storage device 1050, an output I / F (Interface) 1060, an input I / F 1070, and a network I / F 1080 are connected by a bus 1090.

[0161] The arithmetic device 1030 operates based on programs stored in the primary storage device 1040 and the secondary storage device 1050, programs read from the input device 1020, and the like, and executes various processes. The arithmetic device 1030 is realized by, for example, a CPU (Central Processing Unit), an MPU (Micro Processing Unit), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or the like.

[0162] The primary storage device 1040 is a memory device such as a RAM (Random Access Memory) that primarily stores data used by the arithmetic device 1030 for various calculations. The secondary storage device 1050 is a storage device in which data used by the arithmetic device 1030 for various calculations and various databases are registered, and is realized by a ROM (Read Only Memory), an HDD (Hard Disk Drive), an SSD (Solid State Drive), a flash memory, or the like. The secondary storage device 1050 may be an internal storage device or an external storage device. The secondary storage device 1050 may be a removable storage medium such as a USB (Universal Serial Bus) memory or an SD (Secure Digital) memory card. The secondary storage device 1050 may be a cloud storage (online storage), a NAS (Network Attached Storage), a file server, or the like.

[0163] The output I / F 1060 is an interface for transmitting information to be output to an output device 1010 that outputs various types of information, such as a display, a projector, a printer, etc., and is realized by a connector conforming to a standard such as USB (Universal Serial Bus), DVI (Digital Visual Interface), or HDMI (registered trademark) (High Definition Multimedia Interface). The input I / F 1070 is an interface for receiving information from various input devices 1020, such as a mouse, a keyboard, a keypad, a button, a scanner, etc., and is realized by a USB, etc.

[0164] Furthermore, the output I / F 1060 and the input I / F 1070 may be wirelessly connected to the output device 1010 and the input device 1020, respectively. That is, the output device 1010 and the input device 1020 may be wireless devices.

[0165] The output device 1010 and the input device 1020 may be integrated into one device, such as a touch panel. In this case, the output I / F 1060 and the input I / F 1070 may also be integrated into one device, such as an input / output I / F.

[0166] The input device 1020 may be a device that reads information from, for example, an optical recording medium such as a CD (Compact Disc), a DVD (Digital Versatile Disc), or a PD (Phase change rewritable Disk), a magneto-optical recording medium such as an MO (Magneto-Optical disk), a tape medium, a magnetic recording medium, or a semiconductor memory.

[0167] The network I / F 1080 receives data from other devices via the network N and sends it to the arithmetic device 1030, and also transmits data generated by the arithmetic device 1030 to other devices via the network N.

[0168] The arithmetic unit 1030 controls the output device 1010 and the input device 1020 via the output I / F 1060 and the input I / F 1070. For example, the arithmetic unit 1030 loads a program from the input device 1020 or the secondary storage device 1050 onto the primary storage device 1040 and executes the loaded program.

[0169] For example, when the computer 1000 functions as the server device 100, the arithmetic unit 1030 of the computer 1000 executes a program loaded onto the primary storage device 1040 to realize the functions of the control unit 130. The arithmetic unit 1030 of the computer 1000 may also load a program acquired from another device via the network I / F 1080 onto the primary storage device 1040 and execute the loaded program. The arithmetic unit 1030 of the computer 1000 may also cooperate with the other device via the network I / F 1080 and use functions and data of a program by calling them from another program of the other device.

[0170] [9. Others] Although the embodiments of the present application have been described above, the present invention is not limited to the contents of these embodiments. The above-described components include those that can be easily imagined by a person skilled in the art, those that are substantially the same, and those that are within the so-called equivalent range. Furthermore, the above-described components can be appropriately combined. Furthermore, various omissions, substitutions, or modifications of the components can be made without departing from the spirit of the above-described embodiments.

[0171] Furthermore, among the processes described in the above embodiments, all or part of the processes described as being performed automatically can be performed manually, or all or part of the processes described as being performed manually can be performed automatically by a known method. In addition, the information including the processing procedures, specific names, various data and parameters shown in the above documents and drawings can be changed arbitrarily unless otherwise specified. For example, the various information shown in each drawing is not limited to the illustrated information.

[0172] In addition, each component of each device shown in the figure is a functional concept, and does not necessarily have to be physically configured as shown in the figure. In other words, the specific form of distribution and integration of each device is not limited to that shown in the figure, and all or part of them can be functionally or physically distributed and integrated in any unit according to various loads, usage conditions, etc.

[0173] For example, the above-mentioned server device 100 may be realized by multiple server computers, and depending on the functions, the configuration can be flexibly changed, such as by calling an external platform using an API (Application Programming Interface) or network computing.

[0174] Furthermore, the above-described embodiments and modifications can be appropriately combined as long as the processing contents are not contradictory.

[0175] Furthermore, the above-mentioned "section, module, unit" can be read as "means" or "circuit", etc. For example, an acquisition section can be read as an acquisition means or an acquisition circuit. [Explanation of symbols]

[0176] 1. Information Processing Systems 10 Terminal Equipment 34 Reception Department 35 Judgment section 36 Verification Department 37 Estimation part 100 Server device 110 Communications Department 120 Storage section 121 User Information Database 122 History Information Database 123 Mis-entry information database 130 Control section 131 Acquisition Department 132 Judgment section 133 Verification Department 134 Estimation Department 135 Provision Department

Claims

1. A reception unit that receives input from a user; a determination unit for determining whether the user has made an input error; An estimation unit that estimates a context from a tendency of input errors made by the user; Equipped with The estimation unit estimates that the user is taking a first action when a predetermined first typo close in position to the correct character is inputted when a correct character should be inputted, and estimates that the user is taking a second action when a predetermined second typo close in position to the correct character is inputted.

23. An information processing apparatus comprising:

2. The estimation unit estimates, when the user makes an erroneous input, the behavior or state of the user at the time the erroneous input occurs, using a model that has learned the relationship between the input mode of the erroneous input and the behavior or state at the time the erroneous input occurs.

2. The information processing apparatus according to claim 1,

3. When a correct character is to be input but the correct character is input unnecessarily in succession, the estimation unit uses the model to estimate that the user is in a predetermined state in which the correct character is input unnecessarily in succession.

3. The information processing apparatus according to claim 2.

4. The estimation unit estimates the behavior or state of the user when the user makes an incorrect input by using a model that has learned the relationship between a correct input, an input mode of an incorrect input, and the behavior or state when the incorrect input occurs, and estimates the correct input for the incorrect input.

4. The information processing apparatus according to claim 2, wherein the information processing apparatus is a computer.

5. The estimation unit estimates, when the user makes an erroneous input, the behavior or state of the user at the time the erroneous input occurs based on at least one of the input method, the input language, the type of input device, and the hand that made the input, using a model that has learned the relationship between the input mode of the erroneous input, which is at least one of the input method, the input language, the type of input device, and the hand that made the input, and the behavior or state of the user at the time the erroneous input occurs.

5. The information processing device according to claim 2, wherein the information processing device is a computer.

6. The estimation unit estimates the behavior of the user when the user makes an input error by using a model that has learned a relationship between an input mode of the input error, at least one of sensor information, history information, position information, and time information at the time the input error occurs, and the behavior or state at the time the input error occurs.

6. The information processing device according to claim 2, wherein the information processing device is a computer.

7. The estimation unit estimates the situation or environment in which the user is placed as well as the behavior of the user when the erroneous input occurs, using a model that has learned the relationship between the input mode of the erroneous input, the behavior when the erroneous input occurs, and the situation or environment when the erroneous input occurs.

7. The information processing device according to claim 2, wherein the information processing device is a computer.

8. The receiving unit receives an input of a search query from a user; The determination unit determines whether or not the user has made an input error, When the user makes an input error, the estimation unit estimates the user's behavior from the manner in which the user made the input error, and changes the listing of the search results in accordance with the estimated behavior.

8. The information processing device according to claim 1, wherein the information processing device is a computer.

9. a providing unit that provides a processing result according to the estimated context; 9. The information processing device according to claim 1, further comprising:

10. An information processing method executed by an information processing device, a receiving step of receiving an input from a user; a determination step of determining whether the user has made an input error; an estimation step of estimating a context based on a tendency of input errors made by the user; Including, In the estimation step, when a correct character should be input, if a predetermined first typographical error close to the position of the correct character is input, it is estimated that the user is taking a first action, and when a predetermined second typographical error close to the position of the correct character is input, it is estimated that the user is taking a second action.

23. An information processing method comprising:

11. A reception procedure for receiving input from a user; a determination step for determining whether the user has made an input error; An estimation step of estimating a context based on a tendency of input errors made by the user; An information processing program for causing a computer to execute the above, In the estimation step, when a correct character should be input, if a predetermined first typographical error close to the position of the correct character is input, it is estimated that the user is taking a first action, and when a predetermined second typographical error close to the position of the correct character is input, it is estimated that the user is taking a second action.

23. An information processing program comprising:

Citation Information

Patent Citations

  • Input device, input method, and program

    JP2013073317A

  • Erroneous operation prevention device, erroneous operation prevention method, and program

    JP2015043139A

  • Information processing system, information processor and control method thereof, and program

    JP2021135697A

  • Electronic apparatus, calculation method, and program

    JP2021152736A

  • Systems for real-time intelligent haptic correction to typing errors and methods thereof

    US11112909B1