CN113741783A - Key identification method and device for identifying key - Google Patents

Key identification method and device for identifying key Download PDF

Info

Publication number
CN113741783A
CN113741783A CN202110874455.6A CN202110874455A CN113741783A CN 113741783 A CN113741783 A CN 113741783A CN 202110874455 A CN202110874455 A CN 202110874455A CN 113741783 A CN113741783 A CN 113741783A
Authority
CN
China
Prior art keywords
key
historical
falling point
target user
input interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110874455.6A
Other languages
Chinese (zh)
Other versions
CN113741783B (en
Inventor
余天照
崔欣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Sogou Technology Development Co Ltd
Original Assignee
Beijing Sogou Technology Development Co Ltd
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 Beijing Sogou Technology Development Co Ltd filed Critical Beijing Sogou Technology Development Co Ltd
Priority to CN202110874455.6A priority Critical patent/CN113741783B/en
Publication of CN113741783A publication Critical patent/CN113741783A/en
Application granted granted Critical
Publication of CN113741783B publication Critical patent/CN113741783B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • 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/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • 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
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • 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/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

The embodiment of the application discloses a key identification method and device and a device for identifying keys. An embodiment of the method comprises: acquiring real-time falling point coordinates and the above input characters in the input process of a target user; and determining the target key clicked by the target user in the input interface based on the real-time falling point coordinates, the input characters, the historical falling point coordinate distribution of each key in the input interface and a pre-trained language model. This embodiment improves the accuracy of key identification.

Description

Key identification method and device for identifying key
Technical Field
The embodiment of the application relates to the technical field of computers, in particular to a key identification method and device and a device for identifying keys.
Background
With the development of computer technology, more and more electronic devices (including Virtual Reality (VR) devices and physical electronic devices) and client applications running thereon are configured with a Virtual keyboard, and the electronic devices can receive information input by a user by recognizing keys touched by the user in the Virtual keyboard.
In the prior art, a key clicked by a user is determined by determining a key area to which a drop point coordinate position belongs, and then the key is responded. However, in the case of a user miss-touch, a drop point shift, or the like, the key recognition result in this manner often does not match the user's intention, resulting in low accuracy of key recognition.
Disclosure of Invention
The embodiment of the application provides a key identification method and device and a device for identifying keys, so as to solve the technical problem of low accuracy of key identification in the prior art.
In a first aspect, an embodiment of the present application provides a key identification method, where the method includes: acquiring real-time falling point coordinates and the above input characters in the input process of a target user; and determining the target key clicked by the target user in the input interface based on the real-time falling point coordinates, the input characters, the historical falling point coordinate distribution of each key in the input interface and a pre-trained language model.
In some embodiments, the historical drop point coordinate distribution is statistically obtained in advance by the following steps: acquiring historical input data of a plurality of users, wherein the plurality of users comprise the target user, and the historical input data comprise historical falling point coordinates of each key of an input interface; and counting the historical falling point coordinates to obtain the historical falling point coordinate distribution of each key.
In some embodiments, the historical drop point coordinate distribution is statistically obtained in advance by the following steps: acquiring historical input data of the target user, wherein the historical input data comprises historical falling point coordinates of all keys in an input interface; and counting the historical falling point coordinates to obtain the historical falling point coordinate distribution of each key.
In some embodiments, the determining a target button clicked by the target user in the input interface based on the real-time drop coordinates, the above input characters, a historical drop coordinate distribution of buttons in the input interface, and a pre-trained language model includes: inputting the above input characters into a pre-trained language model to obtain a first click probability of the target user on each key in the input interface; based on the obtained first click probability, adjusting parameters of the historical falling point coordinate distribution of each key so as to update the historical falling point coordinate distribution of each key; and determining the target key clicked by the target user in the input interface based on the real-time falling point coordinates and the updated historical falling point coordinate distribution of each key.
In some embodiments, the determining a target key clicked by the target user in the input interface based on the real-time drop point coordinates and the updated historical drop point coordinate distribution of the keys includes: acquiring a probability density function of the updated historical falling point coordinate distribution of each key; inputting the real-time drop point coordinates into each probability density function to obtain a second click probability of each key; and determining the key with the maximum second click probability in the input interface as the target key clicked by the target user.
In some embodiments, the historical drop point coordinate distribution of each key is a gaussian distribution; the historical falling point coordinate distribution of each key comprises historical falling point abscissa distribution and historical falling point ordinate distribution; the adjusted parameters include at least one of: the standard deviation of the distribution of the abscissa of the historical drop point and the standard deviation of the distribution of the ordinate of the historical drop point.
In some embodiments, the determining a target button clicked by the target user in the input interface based on the real-time drop coordinates, the above input characters, a historical drop coordinate distribution of buttons in the input interface, and a pre-trained language model includes: determining a first click probability of each key by the target user based on the real-time falling point coordinates and the historical falling point coordinate distribution of each key in the input interface; inputting the input characters to a pre-trained language model to obtain a second click probability of the target user on each key; and determining a target key clicked by the target user in the input interface based on the first click probability and the second click probability.
In some embodiments, the determining, based on the real-time drop point coordinates and a historical drop point coordinate distribution of each key in an input interface, a first click probability of each key by the target user includes: acquiring a probability density function of historical falling point coordinate distribution of each key in an input interface; and inputting the real-time falling point coordinates into each probability density function to obtain the first click probability of the target user on each key.
In some embodiments, after determining the target key clicked by the target user in the input interface, the method further comprises: and updating the historical falling point coordinate distribution of the target key based on the real-time falling point coordinate.
In a second aspect, an embodiment of the present application provides a key identification apparatus, where the apparatus includes: the acquisition unit is configured to acquire real-time falling point coordinates and the above input characters in the input process of a target user; a determining unit configured to determine a target key clicked by the target user in the input interface based on the real-time falling point coordinates, the above input characters, a historical falling point coordinate distribution of each key in the input interface, and a pre-trained language model.
In some embodiments, the historical drop point coordinate distribution is statistically obtained in advance by the following steps: acquiring historical input data of a plurality of users, wherein the plurality of users comprise the target user, and the historical input data comprise historical falling point coordinates of each key of an input interface; and counting the historical falling point coordinates to obtain the historical falling point coordinate distribution of each key.
In some embodiments, the historical drop point coordinate distribution is statistically obtained in advance by the following steps: acquiring historical input data of the target user, wherein the historical input data comprises historical falling point coordinates of all keys in an input interface; and counting the historical falling point coordinates to obtain the historical falling point coordinate distribution of each key.
In some embodiments, the determining unit is further configured to: inputting the above input characters into a pre-trained language model to obtain a first click probability of the target user on each key in the input interface; based on the obtained first click probability, adjusting parameters of the historical falling point coordinate distribution of each key so as to update the historical falling point coordinate distribution of each key; and determining the target key clicked by the target user in the input interface based on the real-time falling point coordinates and the updated historical falling point coordinate distribution of each key.
In some embodiments, the determining unit is further configured to: acquiring a probability density function of the updated historical falling point coordinate distribution of each key; inputting the real-time drop point coordinates into each probability density function to obtain a second click probability of each key; and determining the key with the maximum second click probability in the input interface as the target key clicked by the target user.
In some embodiments, the historical drop point coordinate distribution of each key is a gaussian distribution; the historical falling point coordinate distribution of each key comprises historical falling point abscissa distribution and historical falling point ordinate distribution; the adjusted parameters include at least one of: the standard deviation of the distribution of the abscissa of the historical drop point and the standard deviation of the distribution of the ordinate of the historical drop point.
In some embodiments, the determining unit is further configured to: determining a first click probability of each key by the target user based on the real-time falling point coordinates and the historical falling point coordinate distribution of each key in the input interface; inputting the input characters to a pre-trained language model to obtain a second click probability of the target user on each key; and determining a target key clicked by the target user in the input interface based on the first click probability and the second click probability.
In some embodiments, the determining unit is further configured to: acquiring a probability density function of historical falling point coordinate distribution of each key in an input interface; and inputting the real-time falling point coordinates into each probability density function to obtain the first click probability of the target user on each key.
In some embodiments, the apparatus further comprises: an updating unit configured to update a historical drop point coordinate distribution of the target key based on the real-time drop point coordinate.
In a third aspect, an embodiment of the present application provides an apparatus for identifying a key, including a memory, and one or more programs, where the one or more programs are stored in the memory, and the one or more programs configured to be executed by the one or more processors include instructions for performing the method of any of the first aspects.
In a fourth aspect, the present application provides a computer-readable medium, on which a computer program is stored, which when executed by a processor implements the method as described in any one of the embodiments of the first aspect.
According to the key identification method and device and the device for identifying the keys, the target key clicked by the target user in the input interface is determined by acquiring the real-time falling point coordinate and the upper input character in the input process of the target user and then based on the real-time falling point coordinate, the upper input character, the historical falling point coordinate distribution of each key in the input interface and a pre-trained language model. Because the real-time falling point coordinates and the above input characters are considered in the key identification process, and the current input intention of the user is associated with the above input characters, the key which the user intends to click can be determined even if the user touches by mistake, the falling point deviates and the like, and the accuracy of key identification is improved.
Drawings
Other features, objects and advantages of the present application will become more apparent upon reading of the following detailed description of non-limiting embodiments thereof, made with reference to the accompanying drawings in which:
FIG. 1 is a flow diagram of one embodiment of a key identification method according to the present application;
FIG. 2 is a flow diagram of yet another embodiment of a key identification method according to the present application;
FIG. 3 is a schematic block diagram of one embodiment of a key identification device according to the present application;
FIG. 4 is a schematic diagram of an arrangement for identifying keys according to the present application;
FIG. 5 is a schematic diagram of a server in accordance with some embodiments of the present application.
Detailed Description
The present application will be described in further detail with reference to the following drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the relevant invention and not restrictive of the invention. It should be noted that, for convenience of description, only the portions related to the related invention are shown in the drawings.
It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict. The present application will be described in detail below with reference to the embodiments with reference to the attached drawings.
Referring to FIG. 1, a flow 100 of one embodiment of a method for key identification according to the present application is shown. The key identification method can be operated in various electronic devices including but not limited to: a server, a smart phone, a tablet computer, an e-book reader, an MP3 (Moving Picture Experts Group Audio Layer III) player, an MP4 (Moving Picture Experts Group Audio Layer IV) player, a laptop, a vehicle-mounted computer, a desktop computer, a set-top box, an intelligent tv, a wearable device, a virtual reality device, and so on.
The input method application mentioned in the embodiment of the present application may refer to an input method client, which is capable of supporting multiple input methods. The input method may be an encoding method used for inputting various symbols to electronic devices such as computers and mobile phones, and a user may conveniently input a desired character or character string to the electronic devices using the input method application. It should be noted that, in the embodiment of the present application, in addition to the common chinese input method (such as pinyin input method, wubi input method, zhuyin input method, phonetic input method, handwriting input method, etc.), the input method may also support other languages (such as english input method, japanese hiragana input method, korean input method, etc.), and the input method and the language category of the input method are not limited at all.
The key identification method in this embodiment may include the following steps:
step 101, obtaining real-time falling point coordinates and the above input characters in the input process of a target user.
In this embodiment, various client applications such as an input method application and an instant messaging application may be installed in an execution main body of the key identification method (e.g., the electronic device). One or more installed client applications may have an input interface therein in which a plurality of keys may be presented. Taking the input method application as an example, the input interface may be a keyboard panel of the input method, and the keyboard panel may present a plurality of coding keys (such as "a", "b", "c" and other pinyin keys) and function keys (such as delete, confirm and other keys). The user can input contents by touching keys in the interface, thereby realizing the man-machine interaction with the execution main body.
In this embodiment, the execution main body may detect a key behavior in the input process of the target user in real time. For example, when it is detected by the pressure sensor that the user performs a touch operation in the screen area corresponding to the input interface, it may be considered that the user performs a key pressing action. After each key pressing action occurs, the execution main body can obtain corresponding falling point coordinates and the input characters.
The falling point coordinate is a coordinate of a position where the user's key action occurs, that is, a coordinate of a position clicked or touched by the user. The coordinates of the drop point may include an abscissa and an ordinate in a preset coordinate system. The preset coordinate system may be pre-established based on a display screen or an input interface, and may be a common coordinate system such as a rectangular coordinate system. The real-time falling point coordinate is the falling point coordinate in the real-time input process of the target user. The above input characters are characters corresponding to the key press actions executed before the current key press actions are executed. The above input character may be one or more characters, which are not limited herein. For example, if the user intends to input a character "i" and inputs a character "s" and a character "h" by sequentially clicking the keyboard key "i", the character "sh" may be used as the above input character.
And 102, determining a target key clicked by a target user in the input interface based on the real-time falling point coordinates, the input characters, the historical falling point coordinate distribution of each key in the input interface and a pre-trained language model.
In this embodiment, the execution body may store in advance a historical placement coordinate distribution of each key in the input interface. The historical falling point distribution of each key can be obtained by statistics in advance according to the historical input data of the user. For example, the historical drop point coordinate distribution of each key may be a gaussian distribution. The parameters of a gaussian distribution may include an expected value (which may be denoted as μ) and a standard deviation (which may be denoted as σ). It should be noted that other types of distributions may also be adopted as the historical drop point coordinate distribution, and are not specifically limited herein.
In some examples, the historical drop point coordinate distribution for each key may have two, respectively a distribution of abscissas in the historical drop point coordinates (which may be referred to as a historical drop point abscissa distribution) and a distribution of ordinates in the historical drop point coordinates (which may be referred to as a historical drop point ordinate distribution). Taking a Gaussian distribution as an example, the Gaussian parameters of the distribution of the abscissa of the historical drop point may include an expectation (which may be denoted as μx) And standard deviation (which can be expressed as σ)x) The Gaussian parameters of the historical drop point ordinate distribution may include an expectation (which may be noted as μ)y) And standard deviation (which can be expressed as σ)y)。
In some examples, the historical drop point coordinate distribution for each key may be embodied in the form of a probability density function. Because each key can correspond to the historical falling point abscissa distribution and the historical falling point ordinate distribution, each key can correspond to two probability density functions, namely a horizontal axis probability density function and a vertical axis probability density function. For the horizontal axis probability density function, the independent variable may be an abscissa value, and the dependent variable may be a probability that the abscissa value matches a key, that is, a click probability of the target user on the key when the drop point is at the abscissa. Similarly, for the probability density function of the vertical axis, the independent variable may be a vertical coordinate value, and the dependent variable may be a probability that the vertical coordinate value matches the key, that is, a probability that the target user clicks the key when the drop point is at the vertical coordinate.
In some scenarios, the historical drop point coordinate distribution may be obtained by counting the historical drop point coordinates of multiple users. The plurality of users may include a target user. The execution main body can firstly acquire historical input data of the plurality of users, and the historical input data can comprise historical falling point coordinates of each key of the input interface. And then, counting the historical falling point coordinates to obtain the historical falling point coordinate distribution of each key. Thus, the distribution of the historical landing point coordinates of each key can be applied to the plurality of users.
In other scenarios, the historical drop point coordinate distribution can be obtained by counting the historical drop point coordinates of the target user, so that the historical drop point coordinate distribution can be more targeted. The execution main body can firstly acquire historical input data of a target user, and the historical input data can comprise historical falling point coordinates of all keys in an input interface. Then, the historical falling point coordinates can be counted to obtain the historical falling point coordinate distribution of each key.
In this embodiment, the execution agent may further store a pre-trained Language Model (LM). The language model is a language abstract mathematical modeling based on language objective facts, and is a corresponding relationship. Here, the trained language model may predict the user's next input character based on the user's previous input character. In practice, the language model may be pre-trained by machine learning methods (e.g., supervised learning methods). The data set used to train the language model may be obtained from historical input data of a user (which may be the target user or multiple users including the target user). The historical input data can be historical input data of the same keyboard layout (such as 26-key keyboards or 9-key keyboards), or historical input data of the same input language (such as 26-key pinyin keyboards) and the keyboard layout together. The language model may employ various model results, such as an end-to-end model structure including an Encoder (Encoder) and a decoder (decoder), a BERT (Bidirectional Encoder representation based converter) model structure, and the like, without limitation.
In this embodiment, the execution subject may determine the target key clicked by the target user in the input interface in various ways based on the real-time falling point coordinates, the above input characters, the historical falling point coordinate distribution of each key in the input interface, and the pre-trained language model. As an example, the user click probability of each key may be determined first based on the real-time drop coordinates and the historical drop coordinate distribution of each key in the input interface. The key that the user clicks (which may be referred to as a predicted key) is then predicted based on the above input characters and the pre-trained language model. The language model may calculate the user click probability of each key, and may select one or more keys in order of magnitude as predicted keys. And finally, adjusting the user click probability of the predicted keys according to a preset rule, so that the key with the maximum user click probability is selected as the target key. As another example, the candidate key in the input interface whose distance from the real-time drop point coordinate is less than a certain threshold may be selected based on the real-time drop point coordinate, and then the target key may be selected from the candidate keys in the same or similar manner, so that the amount of data calculated may be reduced.
In some optional implementations of this embodiment, the executing main body may identify the target key according to the following steps:
firstly, inputting the input characters to a pre-trained language model to obtain a first click probability of each key in an input interface of a target user.
As an example, the character is "t" and the input interface includes 26 keys, i.e., "a", "b", … and "z", respectively. The language model can calculate the probability of the 26 characters "a", "b", … and "z" as the next character "t", i.e. the first click probability of the user on "a", "b", … and "z", respectively.
And secondly, adjusting parameters of the historical falling point coordinate distribution of each key based on the obtained first click probability so as to update the historical falling point coordinate distribution of each key.
Taking the historical placement coordinate distribution as a gaussian distribution as an example, the historical placement coordinate distribution of each key can be updated by updating the standard deviation (i.e., σ) of the historical placement coordinate distribution of each key.
In some examples, since the historical drop point coordinate distribution of each key includes a historical drop point abscissa distribution and a historical drop point ordinate distribution, parameters of the historical drop point abscissa distribution and the historical drop point ordinate distribution may be adjusted respectively. For example, the adjusted parameters may include at least one of: standard deviation (i.e. sigma) of the distribution of the abscissa of the historical drop pointx) Standard deviation of vertical coordinate distribution of historical falling point (i.e. sigma)y)。
In practice, the execution subject may adjust the parameters of the distribution of the historical drop point coordinates in various ways. As an example, σ may be assigned to keys with a probability greater than a thresholdxAnd/or sigmayExpanding (e.g., to a specified multiple), e.g., by σ for keys having a probability less than the thresholdxAnd/or sigmayAnd (e.g., reduced to a specified multiple). As yet another example, the determined click probability for each key may be directly related to the σ corresponding to that keyxAnd/or sigmayMultiplying respectively to update sigma corresponding to each keyxAnd/or sigmayAnd (4) parameters.
And thirdly, determining a target key clicked by a target user in the input interface based on the real-time falling point coordinates and the updated historical falling point coordinate distribution of each key.
Here, the probability density function of the updated historical falling point coordinate distribution of each key may be acquired first. And then, inputting the real-time falling point coordinates into each probability density function to obtain a second click probability of each key. Finally, the keys can be arranged according to the descending order of the second click probability, and the key arranged as the first key (i.e. the key with the highest second click probability) is used as the target key clicked by the target user.
In some examples, each key may have a horizontal axis probability density function and a vertical axis probability density function. When calculating the second click probability of each key, for each key, the execution main body may input an abscissa (which may be referred to as a current abscissa) in the real-time drop point coordinate to the abscissa probability density function corresponding to the key, to obtain a probability that the current abscissa is matched with the key, that is, the click probability of the target user on the key when the drop point is on the current abscissa. Similarly, the executing entity may input the ordinate (which may be referred to as the current ordinate) in the real-time drop point coordinate to the ordinate probability density function of the key, to obtain the probability that the current ordinate matches the key, that is, the click probability of the target user on the key when the drop point is on the current ordinate. The execution body may combine (e.g., add and multiply) the two obtained probabilities to obtain a second click probability of the target user on the key. After the operation is performed on each key, the second click probability of the target user on each key can be obtained.
In some optional implementations of this embodiment, the executing main body may identify the target key according to the following steps:
the method comprises the steps of firstly, determining first click probability of a target user on each key based on real-time falling point coordinates and historical falling point coordinate distribution of each key in an input interface. This step may be referred to as the third step in the above alternative implementation, and is not described here again.
And secondly, determining second click probability of the target user to each key based on the input characters and the pre-trained language model. This step can be referred to as the first step in the above alternative implementations, and is not described here again.
And thirdly, determining a target key clicked by a target user in the input interface based on the first click probability and the second click probability.
Here, the execution body may first determine a comprehensive click probability of each key based on the first click probability and the second click probability. For example, the first click probability and the second click probability of each key may be multiplied to obtain a comprehensive click probability of the key. Then, the execution subject may determine a target key clicked by a target user in the input interface based on the integrated click probability of each key. For example, the keys may be arranged in descending order of the integrated click probability, and the key arranged first may be the target key clicked by the target user.
In some optional implementation manners of this embodiment, after determining a target key clicked by a target user in an input interface, the execution main body may further update the historical falling point coordinate distribution of the target key based on the real-time falling point coordinate, so that the historical falling point coordinate distribution is dynamically updated in real time based on the real-time input condition of the user, and the accuracy of key identification is improved.
According to the method provided by the embodiment of the application, the real-time falling point coordinates and the upper input characters in the input process of the target user are obtained, and then the target key clicked by the target user in the input interface is determined based on the real-time falling point coordinates, the upper input characters, the historical falling point coordinate distribution of each key in the input interface and a pre-trained language model. Because the real-time falling point coordinates and the above input characters are considered in the key identification process, and the current input intention of the user is associated with the above input characters, the key which the user intends to click can be determined even if the user touches by mistake, the falling point deviates and the like, and the accuracy of key identification is improved.
With further reference to FIG. 2, a flow 200 of yet another embodiment of a key identification method is shown. The process 200 of the key identification method includes the following steps:
step 201, obtaining real-time falling point coordinates and the above input characters in the input process of the target user.
Step 201 in this embodiment can refer to step 101 in the corresponding embodiment of fig. 1, and is not described herein again.
Step 202, inputting the above input characters into a pre-trained language model to obtain a first click probability of the target user on each key in the input interface.
In this embodiment, the execution subject of the key recognition method (e.g., the electronic device described above) may store a language model trained in advance. The language model may predict a next input character for the user based on the user's previous input characters. The language model may be pre-trained by machine learning methods (e.g., supervised learning methods). The data set used to train the language model may be obtained from historical input data of a user (which may be the target user or multiple users including the target user). The historical input data can be historical input data of the same keyboard layout (such as 26-key keyboards or 9-key keyboards), or historical input data of the same input language (such as 26-key pinyin keyboards) and the keyboard layout together. The language model may employ various model results, such as an end-to-end model structure including an encoder and a decoder, a BERT model structure, and the like, without limitation.
In this embodiment, the executing entity may input the input characters to a pre-trained language model, and obtain the first click probability of each key output by the language model. As an example, the character is "t" and the input interface includes 26 keys, i.e., "a", "b", … and "z", respectively. The language model can calculate the probability of the 26 characters "a", "b", … and "z" as the next character "t", i.e. the first click probability of the user on "a", "b", … and "z", respectively.
And step 203, adjusting parameters of the historical falling point coordinate distribution of each key based on the obtained first click probability so as to update the historical falling point coordinate distribution of each key.
In this embodiment, the execution body may store in advance a historical placement coordinate distribution of each key in the input interface. The historical falling point distribution of each key can be obtained by statistics in advance according to the historical input data of the user. For example, the historical drop point coordinate distribution of each key may be a gaussian distribution. The parameters of a gaussian distribution may include an expected value (which may be denoted as μ) and a standard deviation (which may be denoted as σ). It should be noted that other types of distributions may also be adopted as the historical drop point coordinate distribution, and are not specifically limited herein.
In this embodiment, the execution subject may adjust a parameter of the historical falling point coordinate distribution of each key based on the obtained first click probability, so as to update the historical falling point coordinate distribution of each key. Taking the historical placement coordinate distribution as a gaussian distribution as an example, the historical placement coordinate distribution of each key can be updated by updating the standard deviation (i.e., σ) of the historical placement coordinate distribution of each key.
In some examples, the historical drop point coordinate distribution for each key may have two, respectively a distribution of abscissas in the historical drop point coordinates (which may be referred to as a historical drop point abscissa distribution) and a distribution of ordinates in the historical drop point coordinates (which may be referred to as a historical drop point ordinate distribution). Taking a Gaussian distribution as an example, the Gaussian parameters of the distribution of the abscissa of the historical drop point may include an expectation (which may be denoted as μx) And standard deviation (which can be expressed as σ)x) The Gaussian parameters of the historical drop point ordinate distribution may include an expectation (which may be noted as μ)y) And standard deviation (which can be expressed as σ)y). At this time, the standard deviation (i.e.,. sigma.). sup.x) And/or the standard deviation (i.e., σ) of the vertical coordinate distribution of historical drop pointsy) And adjusting to update the historical falling point coordinate distribution of each key.
In practice, the execution subject may adjust the parameters of the distribution of the historical drop point coordinates in various ways. As an example, σ for keys with a first probability of clicking greater than a threshold may be assignedxAnd/or sigmayExpanding (e.g., to a specified multiple), and assigning a first click probability less than σ for the key corresponding to the thresholdxAnd/or sigmayAnd (e.g., reduced to a specified multiple). As yet another example, the determined first click probability for each key may be directly related to the σ corresponding to that keyxAnd/or sigmayMultiplying respectively to update sigma corresponding to each keyxAnd/or sigmayAnd (4) parameters.
And step 204, determining a target key clicked by a target user in the input interface based on the real-time falling point coordinates and the updated historical falling point coordinate distribution of each key.
In this embodiment, the historical falling point coordinate distribution of each key may be embodied in the form of a probability density function. The execution body may first obtain an updated probability density function of the historical falling point coordinate distribution of each key. And then, inputting the real-time falling point coordinates into each probability density function to obtain a second click probability of each key. Finally, the keys can be arranged according to the descending order of the second click probability, and the key arranged as the first key (i.e. the key with the highest second click probability) is used as the target key clicked by the target user.
In some examples, each key may correspond to two probability density functions, namely a horizontal axis probability density function and a vertical axis probability density function, because each key may correspond to a historical falling point abscissa distribution and a historical falling point ordinate distribution. For the horizontal axis probability density function, the independent variable may be an abscissa value, and the dependent variable may be a probability that the abscissa value matches a key, that is, a click probability of the target user on the key when the drop point is at the abscissa. Similarly, for the probability density function of the vertical axis, the independent variable may be a vertical coordinate value, and the dependent variable may be a probability that the vertical coordinate value matches the key, that is, a probability that the target user clicks the key when the drop point is at the vertical coordinate.
When calculating the second click probability of each key, for each key, the execution main body may input an abscissa (which may be referred to as a current abscissa) in the real-time drop point coordinate to the abscissa probability density function corresponding to the key, to obtain a probability that the current abscissa is matched with the key, that is, the click probability of the target user on the key when the drop point is on the current abscissa. Similarly, the executing entity may input the ordinate (which may be referred to as the current ordinate) in the real-time drop point coordinate to the ordinate probability density function of the key, to obtain the probability that the current ordinate matches the key, that is, the click probability of the target user on the key when the drop point is on the current ordinate. The execution body may combine (e.g., add and multiply) the two obtained probabilities to obtain a second click probability of the target user on the key. After the operation is performed on each key, the second click probability of the target user on each key can be obtained.
According to the method provided by the embodiment of the application, the click probability of the target user on each key in the input interface is determined through the input characters and the pre-trained language model, and then the historical falling point coordinate distribution of each key is updated based on the click probability of each key, so that the target key corresponding to the real-time falling point coordinate is determined based on the updated historical falling point coordinate distribution. Because the current input intention of the user is associated with the input characters, the input characters and the historical falling point coordinate distribution of the user are combined to determine the target key in the key identification process, the key which is intended to be clicked by the user can be determined under the conditions of mistaken touch of the user, deviation of the falling point and the like, and the accuracy of key identification is improved.
With further reference to fig. 3, as an implementation of the method shown in the above-mentioned figures, the present application provides an embodiment of a key identification apparatus, which corresponds to the embodiment of the method shown in fig. 1, and which can be applied to various electronic devices.
As shown in fig. 3, the key identification apparatus 300 of the present embodiment includes: an obtaining unit 301 configured to obtain real-time landing coordinates and the above input characters in a target user input process; a determining unit 302 configured to determine a target key clicked by the target user in the input interface based on the real-time point coordinates, the input character, a historical point coordinate distribution of keys in the input interface, and a pre-trained language model.
In some optional implementation manners of this embodiment, the historical falling point coordinate distribution is obtained by performing statistics in advance through the following steps: acquiring historical input data of a plurality of users, wherein the plurality of users comprise the target user, and the historical input data comprise historical falling point coordinates of each key of an input interface; and counting the historical falling point coordinates to obtain the historical falling point coordinate distribution of each key.
In some optional implementation manners of this embodiment, the historical falling point coordinate distribution is obtained by performing statistics in advance through the following steps: acquiring historical input data of the target user, wherein the historical input data comprises historical falling point coordinates of all keys in an input interface; and counting the historical falling point coordinates to obtain the historical falling point coordinate distribution of each key.
In some optional implementations of this embodiment, the determining unit is further configured to: inputting the above input characters into a pre-trained language model to obtain a first click probability of the target user on each key in the input interface; adjusting parameters of the historical falling point coordinate distribution of each key based on the obtained first click probability so as to update the historical falling point coordinate distribution of each key; and determining the target key clicked by the target user in the input interface based on the real-time falling point coordinates and the updated historical falling point coordinate distribution of each key.
In some optional implementations of this embodiment, the determining unit is further configured to: acquiring a probability density function of the updated historical falling point coordinate distribution of each key; inputting the real-time falling point coordinates into each probability density function to obtain a second click probability of each key; and determining the key with the maximum second click probability in the input interface as the target key clicked by the target user.
In some optional implementation manners of the present embodiment, the historical falling point coordinate distribution of each key is gaussian distribution; the historical falling point coordinate distribution of each key comprises historical falling point abscissa distribution and historical falling point ordinate distribution; the adjusted parameters include at least one of: the standard deviation of the distribution of the abscissa of the historical drop point and the standard deviation of the distribution of the ordinate of the historical drop point.
In some optional implementations of this embodiment, the determining unit is further configured to: determining a first click probability of each key by the target user based on the real-time falling point coordinates and the historical falling point coordinate distribution of each key in the input interface; inputting the above input characters into a pre-trained language model to obtain a second click probability of the target user on each key; and determining a target key clicked by the target user in the input interface based on the first click probability and the second click probability.
In some optional implementations of this embodiment, the determining unit is further configured to: acquiring a probability density function of historical falling point coordinate distribution of each key in an input interface; and inputting the real-time falling point coordinates into each probability density function to obtain the first click probability of the target user on each key.
In some optional implementations of this embodiment, the apparatus further includes: and the updating unit is configured to update the historical falling point coordinate distribution of the target key based on the real-time falling point coordinate.
The device provided by the embodiment of the application determines the target key clicked by the target user in the input interface by acquiring the real-time falling point coordinate and the upper input character in the input process of the target user and then based on the real-time falling point coordinate, the upper input character, the historical falling point coordinate distribution of each key in the input interface and a pre-trained language model. Because the real-time falling point coordinates and the above input characters are considered in the key identification process, and the current input intention of the user is associated with the above input characters, the key which the user intends to click can be determined even if the user touches by mistake, the falling point deviates and the like, and the accuracy of key identification is improved.
Fig. 4 is a block diagram illustrating an apparatus 400 for recognizing a key according to an exemplary embodiment, where the apparatus 400 may be an intelligent terminal or a server. For example, the apparatus 400 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, an exercise device, a personal digital assistant, and the like.
Referring to fig. 4, the apparatus 400 may include one or more of the following components: processing components 402, memory 404, power components 406, multimedia components 408, audio components 410, input/output (I/O) interfaces 412, sensor components 414, and communication components 416.
The processing component 402 generally controls overall operation of the apparatus 400, such as operations associated with display, telephone calls, data communications, camera operations, and recording operations. The processing element 402 may include one or more processors 420 to execute instructions to perform all or part of the steps of the methods described above. Further, the processing component 402 can include one or more modules that facilitate interaction between the processing component 402 and other components. For example, the processing component 402 can include a multimedia module to facilitate interaction between the multimedia component 408 and the processing component 402.
The memory 404 is configured to store various types of data to support operations at the apparatus 400. Examples of such data include instructions for any application or method operating on the device 400, contact data, phonebook data, messages, pictures, videos, and so forth. The memory 404 may be implemented by any type or combination of volatile or non-volatile memory devices such as Static Random Access Memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic or optical disks.
Power supply components 406 provide power to the various components of device 400. The power components 406 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the apparatus 400.
The multimedia component 408 includes a screen that provides an output interface between the device 400 and a user. In some embodiments, the screen may include a Liquid Crystal Display (LCD) and a Touch Panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive an input signal from a user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundary of the touch or slide action but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 408 includes a front facing camera and/or a rear facing camera. The front-facing camera and/or the rear-facing camera may receive external multimedia data when the device 400 is in an operational mode, such as a shooting mode or a video mode. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.
The audio component 410 is configured to output and/or input audio signals. For example, audio component 410 includes a Microphone (MIC) configured to receive external audio signals when apparatus 400 is in an operational mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signals may further be stored in the memory 404 or transmitted via the communication component 416. In some embodiments, audio component 410 also includes a speaker for outputting audio signals.
The I/O interface 412 provides an interface between the processing component 402 and peripheral interface modules, which may be keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to: a home button, a volume button, a start button, and a lock button.
The sensor component 414 includes one or more sensors for providing various aspects of status assessment for the apparatus 400. For example, the sensor assembly 414 may detect an open/closed state of the device 400, the relative positioning of the components, such as a display and keypad of the apparatus 400, the sensor assembly 414 may also detect a change in the position of the apparatus 400 or a component of the apparatus 400, the presence or absence of user contact with the apparatus 400, orientation or acceleration/deceleration of the apparatus 400, and a change in the temperature of the apparatus 400. The sensor assembly 414 may include a proximity sensor configured to detect the presence of a nearby object without any physical contact. The sensor assembly 414 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 414 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
The communication component 416 is configured to facilitate wired or wireless communication between the apparatus 400 and other devices. The apparatus 400 may access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof. In an exemplary embodiment, the communication component 416 receives broadcast signals or broadcast related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 416 further includes a Near Field Communication (NFC) module to facilitate short-range communications. For example, the NFC module may be implemented based on Radio Frequency Identification (RFID) technology, infrared data association (IrDA) technology, Ultra Wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
In an exemplary embodiment, the apparatus 400 may be implemented by one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), controllers, micro-controllers, microprocessors or other electronic components for performing the above-described methods.
In an exemplary embodiment, a non-transitory computer-readable storage medium comprising instructions, such as the memory 404 comprising instructions, executable by the processor 420 of the apparatus 400 to perform the above-described method is also provided. For example, the non-transitory computer readable storage medium may be a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
Fig. 5 is a schematic diagram of a server in some embodiments of the present application. The server 500 may vary widely in configuration or performance and may include one or more Central Processing Units (CPUs) 522 (e.g., one or more processors) and memory 532, one or more storage media 530 (e.g., one or more mass storage devices) storing applications 542 or data 544. Memory 532 and storage media 530 may be, among other things, transient storage or persistent storage. The program stored on the storage medium 530 may include one or more modules (not shown), each of which may include a series of instruction operations for the server. Still further, the central processor 522 may be configured to communicate with the storage medium 530, and execute a series of instruction operations in the storage medium 530 on the server 500.
The server 500 may also include one or more power supplies 526, one or more wired or wireless network interfaces 550, one or more input-output interfaces 558, one or more keyboards 556, and/or one or more operating systems 541, such as Windows Server, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
A non-transitory computer readable storage medium having instructions stored thereon that, when executed by a processor of a device (smart terminal or server), enable the device to perform a key identification method, the method comprising: acquiring real-time falling point coordinates and the above input characters in the input process of a target user; and determining the target key clicked by the target user in the input interface based on the real-time falling point coordinates, the input characters, the historical falling point coordinate distribution of each key in the input interface and a pre-trained language model.
Optionally, the historical drop point coordinate distribution is obtained by performing statistics in advance through the following steps: acquiring historical input data of a plurality of users, wherein the plurality of users comprise the target user, and the historical input data comprise historical falling point coordinates of each key of an input interface; and counting the historical falling point coordinates to obtain the historical falling point coordinate distribution of each key.
Optionally, the historical drop point coordinate distribution is obtained by performing statistics in advance through the following steps: acquiring historical input data of the target user, wherein the historical input data comprises historical falling point coordinates of all keys in an input interface; and counting the historical falling point coordinates to obtain the historical falling point coordinate distribution of each key.
Optionally, the determining, based on the real-time drop point coordinate, the above input character, the historical drop point coordinate distribution of each key in the input interface, and a pre-trained language model, a target key clicked by the target user in the input interface includes: inputting the above input characters into a pre-trained language model to obtain a first click probability of the target user on each key in the input interface; based on the obtained first click probability, adjusting parameters of the historical falling point coordinate distribution of each key so as to update the historical falling point coordinate distribution of each key; and determining the target key clicked by the target user in the input interface based on the real-time falling point coordinates and the updated historical falling point coordinate distribution of each key.
Optionally, the determining a target key clicked by the target user in the input interface based on the real-time drop point coordinate and the updated historical drop point coordinate distribution of each key includes: acquiring a probability density function of the updated historical falling point coordinate distribution of each key; inputting the real-time drop point coordinates into each probability density function to obtain a second click probability of each key; and determining the key with the maximum second click probability in the input interface as the target key clicked by the target user.
Optionally, the historical falling point coordinate distribution of each key is gaussian distribution; the historical falling point coordinate distribution of each key comprises historical falling point abscissa distribution and historical falling point ordinate distribution; the adjusted parameters include at least one of: the standard deviation of the distribution of the abscissa of the historical drop point and the standard deviation of the distribution of the ordinate of the historical drop point.
Optionally, the determining, based on the real-time drop point coordinate, the above input character, the historical drop point coordinate distribution of each key in the input interface, and a pre-trained language model, a target key clicked by the target user in the input interface includes: determining a first click probability of each key by the target user based on the real-time falling point coordinates and the historical falling point coordinate distribution of each key in the input interface; inputting the input characters to a pre-trained language model to obtain a second click probability of the target user on each key; and determining a target key clicked by the target user in the input interface based on the first click probability and the second click probability.
Optionally, the determining, based on the real-time drop point coordinate and the historical drop point coordinate distribution of each key in the input interface, a first click probability of the target user on each key includes: acquiring a probability density function of historical falling point coordinate distribution of each key in an input interface; and inputting the real-time falling point coordinates into each probability density function to obtain the first click probability of the target user on each key.
Optionally, the device being configured to execute the one or more programs by the one or more processors includes instructions for: and updating the historical falling point coordinate distribution of the target key based on the real-time falling point coordinate.
Other embodiments of the present application will be apparent to those skilled in the art from consideration of the specification and practice of the application disclosed herein. This application is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the application and including such departures from the present disclosure as come within known or customary practice in the art to which the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the application being indicated by the following claims.
It will be understood that the present application is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the application is limited only by the appended claims.
The above description is only exemplary of the present application and should not be taken as limiting the present application, as any modification, equivalent replacement, or improvement made within the spirit and principle of the present application should be included in the protection scope of the present application.
The key identification method, the key identification device and the key identification device provided by the application are described in detail above, and specific examples are applied in the description to explain the principles and the embodiments of the application, and the description of the above embodiments is only used to help understand the method and the core idea of the application; meanwhile, for a person skilled in the art, according to the idea of the present application, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present application.

Claims (15)

1. A method for key identification, the method comprising:
acquiring real-time falling point coordinates and the above input characters in the input process of a target user;
and determining the target key clicked by the target user in the input interface based on the real-time falling point coordinates, the input characters, the historical falling point coordinate distribution of each key in the input interface and a pre-trained language model.
2. The method of claim 1, wherein the historical drop point coordinate distribution is pre-statistically derived by:
acquiring historical input data of a plurality of users, wherein the plurality of users comprise the target user, and the historical input data comprise historical falling point coordinates of each key of an input interface;
and counting the historical falling point coordinates to obtain the historical falling point coordinate distribution of each key.
3. The method of claim 1, wherein the historical drop point coordinate distribution is pre-statistically derived by:
acquiring historical input data of the target user, wherein the historical input data comprises historical falling point coordinates of all keys in an input interface;
and counting the historical falling point coordinates to obtain the historical falling point coordinate distribution of each key.
4. The method of claim 1, wherein determining the target button clicked by the target user in the input interface based on the real-time point coordinates, the above input characters, a distribution of historical point coordinates of buttons in the input interface, and a pre-trained language model comprises:
inputting the above input characters into a pre-trained language model to obtain a first click probability of the target user on each key in the input interface;
based on the obtained first click probability, adjusting parameters of the historical falling point coordinate distribution of each key so as to update the historical falling point coordinate distribution of each key;
and determining the target key clicked by the target user in the input interface based on the real-time falling point coordinates and the updated historical falling point coordinate distribution of each key.
5. The method of claim 4, wherein determining the target button clicked by the target user in the input interface based on the real-time drop point coordinates and the updated historical drop point coordinate distribution of the buttons comprises:
acquiring a probability density function of the updated historical falling point coordinate distribution of each key;
inputting the real-time drop point coordinates into each probability density function to obtain a second click probability of each key;
and determining the key with the maximum second click probability in the input interface as the target key clicked by the target user.
6. The method of claim 4, wherein the historical drop point coordinate distribution of each key is a Gaussian distribution; the historical falling point coordinate distribution of each key comprises historical falling point abscissa distribution and historical falling point ordinate distribution; the adjusted parameters include at least one of: the standard deviation of the distribution of the abscissa of the historical drop point and the standard deviation of the distribution of the ordinate of the historical drop point.
7. The method of claim 1, wherein determining the target button clicked by the target user in the input interface based on the real-time point coordinates, the above input characters, a distribution of historical point coordinates of buttons in the input interface, and a pre-trained language model comprises:
determining a first click probability of each key by the target user based on the real-time falling point coordinates and the historical falling point coordinate distribution of each key in the input interface;
inputting the input characters to a pre-trained language model to obtain a second click probability of the target user on each key;
and determining a target key clicked by the target user in the input interface based on the first click probability and the second click probability.
8. The method of claim 7, wherein determining a first probability of clicking on each key by the target user based on the real-time point coordinates and a historical point coordinate distribution of each key in an input interface comprises:
acquiring a probability density function of historical falling point coordinate distribution of each key in an input interface;
and inputting the real-time falling point coordinates into each probability density function to obtain the first click probability of the target user on each key.
9. The method of claim 1, wherein after determining a target key in the input interface that the target user clicks, the method further comprises:
and updating the historical falling point coordinate distribution of the target key based on the real-time falling point coordinate.
10. A key identification device, the device comprising:
the acquisition unit is configured to acquire real-time falling point coordinates and the above input characters in the input process of a target user;
a determining unit configured to determine a target key clicked by the target user in the input interface based on the real-time falling point coordinates, the above input characters, a historical falling point coordinate distribution of each key in the input interface, and a pre-trained language model.
11. The apparatus of claim 9, wherein the historical drop point coordinate distribution is pre-calculated by:
acquiring historical input data of a plurality of users, wherein the plurality of users comprise the target user, and the historical input data comprise historical falling point coordinates of each key of an input interface;
and counting the historical falling point coordinates to obtain the historical falling point coordinate distribution of each key.
12. The apparatus of claim 9, wherein the determining unit is further configured to:
inputting the above input characters into a pre-trained language model to obtain a first click probability of the target user on each key in the input interface;
based on the obtained first click probability, adjusting parameters of the historical falling point coordinate distribution of each key so as to update the historical falling point coordinate distribution of each key;
and determining the target key clicked by the target user in the input interface based on the real-time falling point coordinates and the updated historical falling point coordinate distribution of each key.
13. The apparatus of claim 9, wherein the determining unit is further configured to:
determining a first click probability of each key by the target user based on the real-time falling point coordinates and the historical falling point coordinate distribution of each key in the input interface;
inputting the input characters to a pre-trained language model to obtain a second click probability of the target user on each key;
and determining a target key clicked by the target user in the input interface based on the first click probability and the second click probability.
14. An apparatus for identifying a keyboard, comprising a memory, and one or more programs, wherein the one or more programs are stored in the memory, and wherein the one or more programs, when executed by the one or more processors, perform the steps of the method of any one of claims 1-7.
15. A computer-readable medium, on which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1-7.
CN202110874455.6A 2021-07-30 2021-07-30 Key identification method and device for identifying keys Active CN113741783B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110874455.6A CN113741783B (en) 2021-07-30 2021-07-30 Key identification method and device for identifying keys

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110874455.6A CN113741783B (en) 2021-07-30 2021-07-30 Key identification method and device for identifying keys

Publications (2)

Publication Number Publication Date
CN113741783A true CN113741783A (en) 2021-12-03
CN113741783B CN113741783B (en) 2024-07-05

Family

ID=78729676

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110874455.6A Active CN113741783B (en) 2021-07-30 2021-07-30 Key identification method and device for identifying keys

Country Status (1)

Country Link
CN (1) CN113741783B (en)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040136564A1 (en) * 2002-08-20 2004-07-15 Helena Roeber System and method for determining an input selected by a user through a virtual interface
JP2012248153A (en) * 2011-05-31 2012-12-13 Kddi Corp Character input device and program
CN107229348A (en) * 2016-03-23 2017-10-03 北京搜狗科技发展有限公司 A kind of input error correction method, device and the device for inputting error correction
US20180143964A1 (en) * 2016-11-18 2018-05-24 Microsoft Technology Licensing, Llc Data input system using trained keypress encoder
CN109246607A (en) * 2018-10-23 2019-01-18 青岛禧泰房地产数据有限公司 A kind of real estate application method showing drop point site based on geographic area mode
CN110472242A (en) * 2019-08-05 2019-11-19 腾讯科技(深圳)有限公司 A kind of text handling method, device and computer readable storage medium
CN110673747A (en) * 2019-09-24 2020-01-10 科大讯飞股份有限公司 Input candidate character display method and related device
CN110795014A (en) * 2018-08-01 2020-02-14 北京搜狗科技发展有限公司 Data processing method and device and data processing device
CN111708477A (en) * 2020-06-09 2020-09-25 北京百度网讯科技有限公司 Key identification method, device, equipment and storage medium
CN112509560A (en) * 2020-11-24 2021-03-16 杭州一知智能科技有限公司 Voice recognition self-adaption method and system based on cache language model
CN112558783A (en) * 2019-09-25 2021-03-26 北京搜狗科技发展有限公司 Input error correction method and related device

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040136564A1 (en) * 2002-08-20 2004-07-15 Helena Roeber System and method for determining an input selected by a user through a virtual interface
JP2012248153A (en) * 2011-05-31 2012-12-13 Kddi Corp Character input device and program
CN107229348A (en) * 2016-03-23 2017-10-03 北京搜狗科技发展有限公司 A kind of input error correction method, device and the device for inputting error correction
US20180143964A1 (en) * 2016-11-18 2018-05-24 Microsoft Technology Licensing, Llc Data input system using trained keypress encoder
CN110795014A (en) * 2018-08-01 2020-02-14 北京搜狗科技发展有限公司 Data processing method and device and data processing device
CN109246607A (en) * 2018-10-23 2019-01-18 青岛禧泰房地产数据有限公司 A kind of real estate application method showing drop point site based on geographic area mode
CN110472242A (en) * 2019-08-05 2019-11-19 腾讯科技(深圳)有限公司 A kind of text handling method, device and computer readable storage medium
CN110673747A (en) * 2019-09-24 2020-01-10 科大讯飞股份有限公司 Input candidate character display method and related device
CN112558783A (en) * 2019-09-25 2021-03-26 北京搜狗科技发展有限公司 Input error correction method and related device
CN111708477A (en) * 2020-06-09 2020-09-25 北京百度网讯科技有限公司 Key identification method, device, equipment and storage medium
CN112509560A (en) * 2020-11-24 2021-03-16 杭州一知智能科技有限公司 Voice recognition self-adaption method and system based on cache language model

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
OH, , SANG YEOB: "Key-word Error Correction System using Syllable Restoration Algorithm", 《JOURNAL OF THE KOREA SOCIETY OF COMPUTER AND INFORMATION》, vol. 15, no. 10, 31 December 2010 (2010-12-31) *
李攀;秦拯;: "一种利用拇指控制的触屏手机虚拟键盘按键提取方法", 计算机***应用, no. 11, 15 November 2010 (2010-11-15) *
陈正, 李开复: "拼写纠正在拼音输入法中的应用", 计算机学报, no. 07, 12 July 2001 (2001-07-12) *

Also Published As

Publication number Publication date
CN113741783B (en) 2024-07-05

Similar Documents

Publication Publication Date Title
CN107102746B (en) Candidate word generation method and device and candidate word generation device
CN107229348B (en) Input error correction method and device for input error correction
CN107564526B (en) Processing method, apparatus and machine-readable medium
CN111831806A (en) Semantic integrity determination method and device, electronic equipment and storage medium
CN110795014B (en) Data processing method and device and data processing device
CN107132927B (en) Input character recognition method and device for recognizing input characters
CN108073291B (en) Input method and device and input device
CN106020694B (en) Electronic equipment, and method and device for dynamically adjusting selected area
CN110673753B (en) Key false touch error correction method and device
CN107977089B (en) Input method and device and input device
CN113741783B (en) Key identification method and device for identifying keys
CN112083811B (en) Candidate item display method and device
CN111722727B (en) Model training method applied to handwriting input, handwriting input method and device
CN111221710B (en) Method, device and equipment for identifying user type
CN112306251A (en) Input method, input device and input device
CN108345590B (en) Translation method, translation device, electronic equipment and storage medium
CN112905023A (en) Input error correction method and device for input error correction
CN107765884B (en) Sliding input method and device and electronic equipment
CN112486603A (en) Interface adaptation method and device for adapting interface
CN111103986A (en) User word stock management method and device and input method and device
WO2022127063A1 (en) Input method and device, and device for input
CN113222075B (en) Evaluation method and device and electronic equipment
CN111124142B (en) Input method, device and device for inputting
CN115509371A (en) Key identification method and device for identifying keys
CN112925423A (en) Dynamic error correction method and device for dynamic error correction

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant