Filtering input to user device

Through the sensor data and machine learning model of the user equipment, we distinguish user input from action input, solve the problem of difficult user equipment that leads to resource waste, and realize efficient input filtering.

CN120129892APending Publication Date: 2025-06-10QUALCOMM INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380075708.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-11-08
Filing Date
2023-09-19
Publication Date
2025-06-10

AI Technical Summary

Technical Problem

It is difficult for user equipment to distinguish between user input and actor input, resulting in unwanted actions being executed and resource consumption.

Method used

Through the sensor data of the user equipment, it is determined that the presence of an action other than the user is determined, the input type is identified using the machine learning model, and the input is accepted by the user or the input of the action is rejected.

Benefits of technology

Effectively filter the input of the actioner, reduce unwanted action execution, and save resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120129892A_ABST
    Figure CN120129892A_ABST
Patent Text Reader

Abstract

In some aspects, a user device may determine that an actor other than a user of the user device is present in proximity to the user device. A user device may obtain an input to the user device. The user device may determine whether the input is from the user or the actor based at least in part on a determination that the actor is present in the vicinity of the user device. The user device may accept the input based at least in part on the determination of the input from the user, or reject the input based at least in part on the determination of the automatic author of the input. Numerous other aspects are described.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross-reference

[0002] This application claims priority to Greek Patent Application No. 20220100915, filed on November 8, 2022, entitled "Filtering Inputs to a User Device" and assigned to the assignee hereof, the disclosure of which is hereby incorporated by reference in its entirety and considered a part of this patent application. Technical Field

[0003] Aspects of the present disclosure generally relate to user devices and, for example, to filtering inputs to a user device. Background Art

[0004] A user device may include a display for presenting a user interface (e.g., a graphical user interface). The user interface may permit interaction between a user of the user device and the user device. In some cases, a user may interact with the user interface to operate and / or control the user device to produce a desired result. For example, a user may interact with the user interface of the user device to cause the user device to perform an action. Summary of the Invention

[0005] Some aspects described herein relate to a method. The method may include determining, by a user device, that an actor other than a user of the user device is present in the vicinity of the user device. The method may include obtaining, by the user device, an input to the user device. The method may include determining, by the user device and at least partially based on determining that the actor is present in the vicinity of the user device, whether the input is from the user or the actor. The method may include accepting the input at least partially based on a determination that the input is from the user, or rejecting the input at least partially based on a determination that the input is from the actor.

[0006] Some embodiments described herein relate to a system. The system may include one or more memories, and one or more processors coupled to the one or more memories. The system may be configured to obtain sensor data related to the environment or condition of the user device. The system may be configured to determine, at least partially based on the sensor data, that an actor other than a user of the user device is present in the vicinity of the user device. The system may be configured to determine, at least partially based on determining that the actor is present in the vicinity of the user device, whether an input to the user device is to be accepted or rejected.

[0007] Some embodiments described herein relate to an apparatus. The apparatus may include components for determining the presence of an actor other than the user of the user equipment in the vicinity of the user equipment. The apparatus may include components for determining whether an input to the user equipment indicates an abnormal input based at least in part on determining the presence of the actor in the vicinity of the user equipment. The apparatus may include components for rejecting the input based at least in part on the determination that the input indicates an abnormal input.

[0008] Some embodiments described herein relate to a non-transitory computer-readable medium storing a set of instructions for a user equipment. When executed by one or more processors of the user equipment, the set of instructions may cause the user equipment to obtain sensor data related to the environment or condition of the user equipment. When executed by one or more processors of the user equipment, the set of instructions may cause the user equipment to determine the presence of an actor other than the user of the user equipment in the vicinity of the user equipment based at least in part on the sensor data. When executed by one or more processors of the user equipment, the set of instructions may cause the user equipment to determine whether an input to the user equipment is from the user or from the actor based at least in part on determining the presence of the actor in the vicinity of the user equipment. When executed by one or more processors of the user equipment, the set of instructions may cause the user equipment to selectively perform the action indicated by the input based at least in part on the determination of whether the input to the user equipment is from the user or from the actor.

[0009] Aspects generally include methods, apparatuses, systems, computer program products, non-transitory computer-readable media, user devices, user equipment, wireless communication devices, and / or processing systems substantially as described in conjunction with the figures and the description, and as illustrated in the figures and the description.

[0010] The features and technical advantages of examples in accordance with the present disclosure have been outlined above rather broadly in order that the detailed description that follows may be better understood. Additional features and advantages will be described hereinafter. The disclosed concepts and specific examples may be readily utilized as a basis for modifying or designing other structures for carrying out the same purposes of the present disclosure. Such equivalent constructions do not depart from the scope of the appended claims. When the following description is considered in conjunction with the accompanying figures, both the features of the concepts disclosed herein, its structural and operational methods, and associated advantages will be better understood. Each figure is provided for purposes of illustration and description and is not intended as a definition of the limits of the claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] Accordingly, the above features of the present disclosure can be understood in detail, and a more specific description of the above brief summary of the invention can be made with reference to the various aspects, some of which are illustrated in the accompanying drawings. However, it will be noted that the drawings only illustrate certain typical aspects of the present disclosure and should not be considered as limiting its scope, as the description may admit other equally valid aspects. In the different drawings, the same reference numerals may identify the same or similar elements.

[0012] Figure 1 is a diagram of an example environment in which the systems and / or methods described herein may be implemented.

[0013] Figure 2 is a diagram showing example components of a device according to the present disclosure.

[0014] Figures 3A to 3D is a diagram showing an example related to filtering inputs to a user device according to the present disclosure.

[0015] Figure 4 is a flowchart of an example process related to filtering inputs to a user device.

[0016] Figure 5 is a flowchart of an example process related to filtering inputs to a user device.

[0017] Figure 6 is a flowchart of an example process related to filtering inputs to a user device.

[0018] Figure 7 is a flowchart of an example process related to filtering inputs to a user device. Detailed Description

[0019] The various aspects of the present disclosure will be described more fully hereinafter with reference to the accompanying drawings. However, the present disclosure may be embodied in many different forms and should not be construed as limited to any specific structure or function presented throughout the present disclosure. Rather, these aspects are provided so that this disclosure will be thorough and complete and will fully convey the scope of the present disclosure to those skilled in the art. Those skilled in the art should understand that the scope of the present disclosure is intended to cover any aspect of the present disclosure disclosed herein, whether implemented independently or in combination with any other aspect of the present disclosure. For example, an apparatus may be implemented or a method may be practiced using any number of the aspects described herein. Additionally, the scope of the present disclosure is intended to cover such an apparatus or method practiced using other structures, functionality, or structures and functionality outside of or different from the various aspects of the present disclosure described herein. It should be understood that any aspect of the present disclosure disclosed herein may be embodied by one or more elements of the claims.

[0020] A user device may include input devices such as a keyboard, a mouse, one or more buttons, a touchpad, and / or a touchscreen. A user may provide input to the user device via the input device, and the input may cause the user device to perform an action indicated by the input (e.g., open or close a file or application, scroll in a user interface, display typing in a user interface, compose an email message, adjust the volume of a speaker, adjust the brightness of a display, etc.). In some examples, an actor other than the user may be close enough to the user device to also provide input to the user device. For example, the actor may be a child (e.g., a child grabbing a smartphone) or a pet (e.g., a pet walking across a keyboard). Thus, the input from the actor may be unintentional and / or not for a purpose desired by the user. However, the user device may not be able to distinguish the input from the user from the input from the actor. Thus, the user device may perform an action indicated by the input from the actor, even if those actions are unintentional and / or not desired by the user. As a result, the user device may expend a large amount of resources (e.g., processor resources, memory resources, and / or power resources, etc.) to perform the unwanted actions indicated by the input from the actor, perform corrective actions to undo or correct the unwanted actions, etc.

[0021] Some of the techniques and devices described herein are capable of filtering input to a user device. In some aspects, sensor data (e.g., microphone data, camera data, and / or touch sensor data, etc.) collected by the user device may be used to determine whether an actor other than the user of the user device is present in the vicinity of the user device. For example, audio context detection may be performed to determine the presence of an actor. At least in part based on determining the presence of an actor, input to the user device may be processed to identify anomalous input. For example, a machine learning model may be employed to classify the input as anomalous (e.g., from an actor) or non-anomalous (e.g., from the user). Based on the presence of an actor, the machine learning model may make such a classification with high accuracy (e.g., as opposed to making such a classification without knowing whether an actor is present), thereby reducing false positives and false negatives.

[0022] Input identified as anomalous (e.g., from an actor) may be rejected. That is, the user device may avoid performing an action indicated by the input identified as anomalous. Input identified as non-anomalous (e.g., from the user) may be accepted. That is, the user device may perform an action indicated by the input identified as non-anomalous. Thus, input from an actor may be filtered out of the input made on the user device. In this way, resources of the user device (e.g., processor resources, memory resources, and / or power resources, etc.) may be saved that otherwise may have been used to perform the unwanted actions indicated by the input from the actor and / or to perform corrective actions for those unwanted actions.

[0023] Figure 1 is a diagram of an example environment 100 in which the systems and / or methods described herein may be implemented. As Figure 1 shown, environment 100 may include user device 110, communication device 120, and network 130. Devices in environment 100 may be interconnected via a wired connection, a wireless connection, or a combination of wired and wireless connections.

[0024] As described elsewhere herein, user device 110 may include one or more devices capable of receiving, generating, storing, processing, and / or providing information associated with filtered input to user device 110. User device 110 may include a communication device and / or a computing device. For example, user device 110 may include a communication device, a mobile phone, a user device, a laptop computer, a tablet computer, a desktop computer, a gaming console, a set-top box, a wearable communication device (e.g., a smartwatch, smart glasses, a head-mounted display, or a virtual reality headset), or a device of a similar type. In some embodiments, user device 110 may include a keyboard and / or a mouse (e.g., capable of communicating with a computing device, either wired or wirelessly).

[0025] As described elsewhere herein, communication device 120 may include one or more devices capable of receiving, generating, storing, processing, providing, and / or routing information associated with filtering input to a user device. Communication device 120 may include a communication device and / or a computing device. For example, communication device 120 may include a server, such as an application server, a client server, a network server, a database server, a host server, a proxy server, a virtual server (e.g., executing on computing hardware), or a server in a cloud computing system. In some embodiments, communication device 120 may include computing hardware used in a cloud computing environment. In some embodiments, communication device 120 may include a user device (e.g., capable of communicating with a keyboard, a mouse, etc., either wired or wirelessly), as described herein.

[0026] Network 130 may include one or more wired and / or wireless networks. For example, network 130 may include a wireless wide area network (e.g., a cellular network or a public land mobile network), a local area network (e.g., a wired local area network or a wireless local area network (WLAN), such as a Wi-Fi network), a personal area network (e.g., a Bluetooth network), a near field communication network, a telephone network, a private network, the Internet, and / or a combination of these or other types of networks. Network 130 enables communication between devices in environment 100.

[0027] Figure 1 The number and arrangement of the devices and networks shown are provided as an example. In fact, compared with Figure 1Compared with that shown, there may be additional devices and / or networks, fewer devices and / or networks, different devices and / or networks, or devices and / or networks arranged differently. In addition, Figure 1 two or more of the devices shown may be implemented within a single device, or Figure 1 the single device shown may be implemented as multiple distributed devices. Additionally or alternatively, a set of devices (e.g., one or more devices) in environment 100 may perform one or more functions described as being performed by another set of devices in environment 100.

[0028] Figure 2 is a diagram showing example components of device 200 according to the present disclosure. Device 200 may correspond to user device 110 and / or communication device 120. In some aspects, user device 110 and / or communication device 120 may include one or more devices 200 and / or one or more components of device 200. As Figure 2 shown, device 200 may include bus 205, processor 210, memory 215, storage component 220, input component 225, output component 230, communication interface 235, and / or one or more sensors 240.

[0029] Bus 205 includes components that permit communication between the components of device 200. Processor 210 is implemented in hardware, firmware, or a combination of hardware and software. Processor 210 is a central processing unit (CPU), graphics processing unit (GPU), accelerated processing unit (APU), microprocessor, microcontroller, digital signal processor (DSP), field programmable gate array (FPGA), application specific integrated circuit (ASIC), or other type of processing component. In some aspects, processor 210 includes one or more processors capable of being programmed to perform functions. Memory 215 includes random access memory (RAM), read only memory (ROM), and / or another type of dynamic or static storage device (e.g., flash memory, magnetic memory, and / or optical memory) that stores information and / or instructions for use by processor 210.

[0030] Storage component 220 stores information and / or software related to the operation and use of device 200. For example, storage component 220 may include a hard disk (e.g., a magnetic disk, optical disk, magneto-optical disk, and / or solid state disk), a compact disc (CD), a digital versatile disc (DVD), a floppy disk, a cassette tape, a magnetic tape, and / or another type of non-transitory computer-readable medium, as well as corresponding drives.

[0031] The input component 225 includes components that permit the device 200 to receive information, such as via a user input (e.g., a touchscreen display, a keyboard, a keypad, a mouse, a button, a switch, and / or a microphone). Additionally or alternatively, the input component 225 may include components for determining the location or position of the device 200 (e.g., a Global Positioning System (GPS) component or a Global Navigation Satellite System (GNSS) component) and / or sensors for sensing information (e.g., an accelerometer, a gyroscope, an actuator, or another type of position or environmental sensor). The output component 230 includes components that provide output information from the device 200 (e.g., a display, a speaker, a haptic feedback component, and / or an audio or visual indicator).

[0032] The communication interface 235 includes transceiver-like components (e.g., a transceiver and / or separate receiver and transmitter) that enable the device 200 to communicate with other devices, such as via a wired connection, a wireless connection, or a combination of wired and wireless connections. The communication interface 235 may permit the device 200 to receive information from another device and / or provide information to another device. For example, the communication interface 235 may include an Ethernet interface, an optical interface, a coaxial interface, an infrared interface, a radio frequency interface, a Universal Serial Bus (USB) interface, a wireless local area network interface (e.g., a Wi-Fi interface), and / or a cellular network interface.

[0033] The sensor 240 includes one or more devices capable of detecting characteristics associated with the device 200 (e.g., characteristics related to the physical environment of the device 200 or characteristics related to the condition of the device 200). The sensor 240 may include one or more photodetectors (e.g., one or more photodiodes), one or more cameras, one or more microphones, one or more gyroscopes (e.g., microelectromechanical systems (MEMS) gyroscopes), one or more magnetometers, one or more accelerometers, one or more position sensors (e.g., a Global Positioning System (GPS) receiver or a local positioning system (LPS) device), one or more motion sensors, one or more temperature sensors, one or more pressure sensors, and / or one or more touch sensors, etc.

[0034] The device 200 may perform one or more of the processes described herein. The device 200 may execute these processes based on software instructions stored by a non-transitory computer-readable medium, such as the memory 215 and / or the storage component 220, by the processor 210. The computer-readable medium is defined herein as a non-transitory storage device. The storage device includes storage space within a single physical storage device or storage space distributed across multiple physical storage devices.

[0035] Software instructions can be read into the memory 215 and / or the storage component 220 from another computer-readable medium or another device via the communication interface 235. When executed, the software instructions stored in the memory 215 and / or the storage component 220 can cause the processor 210 to perform one or more of the processes described herein. Additionally or alternatively, hardwired circuitry may be used in place of or in combination with the software instructions to perform one or more of the processes described herein. Accordingly, aspects described herein are not limited to any particular combination of hardware circuitry and software.

[0036] In some aspects, the device 200 includes components for performing one or more of the processes described herein and / or components for performing one or more operations of the processes described herein. For example, the device 200 may include components for determining the presence of an agent other than the user of the user device in the vicinity of the user device; components for obtaining an input to the user device; components for determining whether the input is from the user or the agent at least in part based on determining the presence of the agent in the vicinity of the user device; components for accepting the input at least in part based on the determination that the input is from the user or rejecting the input at least in part based on the determination that the input is from the agent, etc. Additionally or alternatively, the device 200 may include components for obtaining sensor data related to the environment or condition of the user device; components for determining the presence of an agent other than the user of the user device in the vicinity of the user device at least in part based on the sensor data; components for determining whether an input to the user device is to be accepted or rejected at least in part based on determining the presence of the agent in the vicinity of the user device, etc. Additionally or alternatively, the device 200 may include components for determining the presence of an agent other than the user of the user device in the vicinity of the user device; components for determining whether an input to the user device indicates an abnormal input at least in part based on determining the presence of the agent in the vicinity of the user device; and components for rejecting the input at least in part based on the determination that the input indicates an abnormal input. Additionally or alternatively, the device 200 may include components for obtaining sensor data related to the environment or condition of the user device; components for determining the presence of an agent other than the user of the user device in the vicinity of the user device at least in part based on the sensor data; components for determining whether the input to the user device is from the user or the agent at least in part based on determining the presence of the agent in the vicinity of the user device; components for selectively performing the action indicated by the input at least in part based on the determination of whether the input to the user device is from the user or the agent, etc. In some aspects, these components may include one or more components of the device 200 described in Figure 2 connection with, such as the bus 205, the processor 210, the memory 215, the storage component 220, the input component 225, the output component 230, the communication interface 235, and / or the sensor 240.

[0037] Figure 2 The number and arrangement of the components shown are provided as an example. In fact, compared with the components shown in Figure 2 , device 200 may include additional components, fewer components, different components, or components arranged differently. Additionally or alternatively, a set of components (e.g., one or more components) of device 200 may perform one or more functions described as being performed by another set of components of device 200.

[0038] Figures 3A to 3D is a diagram illustrating example 300 related to filtering inputs to a user device according to the present disclosure. As Figures 3A to 3D shown, example 300 includes a user device (e.g., user device 110). The user device can be used by a user. That is, the user can provide an input to the user device indicating an action to be performed by the user device. Thus, the techniques described herein provide filtering of inputs to the user device to allow such intentional inputs made by the user to the user device and to block unintentional inputs made by another actor to the user device.

[0039] As Figure 3A shown, and by reference numeral 305, the user device can obtain sensor data related to the environment and / or condition of the user device. For example, the sensor data can relate to sounds in the user device's environment and / or visual aspects in the user device's environment, etc. Additionally or alternatively, the sensor data can be related to touches on the user device and / or pressure on the user device, etc. The user device can use a microphone, camera, touch sensor, and / or pressure sensor, etc. to obtain the sensor data. In some aspects, the user device can provide the sensor data, and a communication device (e.g., a server) can obtain the sensor data.

[0040] As shown by reference numeral 310, the user device can determine that an actor other than the user of the user device (e.g., other than the user) is present in the vicinity of the user device. The actor can be a person (e.g., a child) or an animal (e.g., a pet). The vicinity of the user device can be the room or building in which the user device is located, can be within a threshold distance (e.g., 10 feet, 25 feet, 50 feet, etc.) of the user device, can be within the detection range of one or more sensors of the user device, etc.

[0041] A user device may determine that an actor is present in the vicinity of the user device at least in part based on sensor data. For example, the sensor data may indicate sounds in the environment of the user device indicative of the presence of the actor and / or visual aspects in the environment of the user device. In some aspects, to determine the presence of the actor, the user device may perform audio context detection (which may also be referred to as audio event classification). Audio context detection may include operations that enable the user device to classify nearby objects (e.g., living beings and / or inanimate objects) at least in part based on sounds in the environment of the user device. For example, using audio context detection, the user device may classify sounds made by a crying baby, an ambulance siren, a cat, etc. To perform audio context detection, the user device may use a machine learning model (e.g., using an artificial neural network, a transformer, etc.), which is trained to output a classification of the sound data input to the machine learning model. Thus, the user device may determine that an actor is present in the vicinity of the user device at least in part based on the results of the audio context detection. For example, if the audio context detection classifies the sounds in the environment of the user device as a person (e.g., a child, a baby, etc.) or an animal (e.g., a dog, a cat, etc.), the user device may determine that an actor is present. Conversely, if the audio context detection does not classify the sounds in the environment of the user device as a person or an animal (e.g., the audio context detection classifies the sound as an inanimate object, such as a television, a motorcycle, etc.), the user device may not determine that an actor is present.

[0042] Additionally or alternatively, to determine the presence of an actor, the user device may use computer vision techniques (e.g., convolutional neural network techniques) to process images obtained by the camera of the user device. To perform the computer vision techniques, the user device may use a machine learning model (e.g., using artificial neural networks, transformers, etc.), which is trained to output a classification of one or more images input into the machine learning model. Thus, the user device may determine the presence of an actor near the user device in a similar manner as described above, at least in part based on the results of the computer vision techniques. Additionally or alternatively, to determine the presence of an actor, the user device may monitor inputs to the input devices of the user device (e.g., keyboard, touchpad, touch screen, etc.). For example, if the inputs to the input devices indicate that multiple actors (e.g., the user and an actor) are providing inputs, the user device may determine that an actor is present near the user device. The inputs may indicate multiple actors at least in part based on the frequency of the inputs, the location of the inputs (e.g., on the keyboard, touchpad, touch screen), the number of concurrent inputs (e.g., inputs that are all or partially overlapping in time), etc. In some aspects, if audio context detection and / or computer vision techniques cannot identify whether an actor is present, the user device may determine the presence of an actor at least in part based on the inputs to the input devices. At least in part based on determining the presence of an actor, the user device may activate an input filter of the user device.

[0043] In some aspects, a communication device that obtains sensor data from the user device may determine whether an actor is present near the user device in a similar manner as described above, at least in part based on the sensor data. For example, the communication device may use audio context detection, computer vision techniques, and / or by monitoring inputs to the input devices of the user device, etc., to determine whether an actor is present.

[0044] As Figure 3B shown, and by reference numeral 315, the user device may obtain an input to the user device. The input may be an input to an input device of the user device. For example, the input may be a touch screen input, a keyboard input, a touchpad input, a mouse input, and / or a voice input, etc. The input may include a single action (e.g., a single key on the keyboard, a single touch gesture on the touch screen, etc.) or a series of actions (e.g., multiple key presses on the keyboard, multiple touch gestures on the touch screen, etc.).

[0045] When an actor is present near the user device, the input can be provided by the user or the actor. In some aspects, the user device can receive multiple inputs to the user device simultaneously (e.g., fully or partially overlapping in time). For example, the user device can receive a first input to the user device while receiving a second input to the user device. In some cases, the first input can be from the user and the second input can be from the actor (e.g., when the actor is present near the user device). In some aspects, the user device can provide and the communication device can receive information associated with the input (e.g., multiple inputs), enabling the communication device to perform an evaluation of the input as described herein.

[0046] As Figure 3C shown, and by reference numeral 320, the user device (e.g., using an input filter) can determine whether an input (e.g., multiple inputs) to the user device will be accepted (e.g., allowed through the input filter) or rejected (e.g., blocked by the input filter). In some aspects, determining whether the input will be accepted or rejected can include determining whether the input indicates an abnormal input (e.g., determining whether the input is abnormal). In some aspects, determining whether the input will be accepted or rejected can include determining whether the input is from the user or the actor. In the case of providing multiple concurrent inputs to the user device, the user device can determine whether one of the first input and the second input is from the user and whether the other of the first input and the second input is from the actor. For example, the user device can determine that the first input is from the user and the second input is from the actor.

[0047] The user device can determine whether the input will be accepted or rejected (e.g., whether the input indicates an abnormal input and / or whether the input is from the user or the actor) at least in part based on determining that the actor is present near the user device. For example, in the absence of knowledge of the presence of the actor, it may be difficult to determine whether the input is abnormal and may result in false positives or false negatives. However, at least in part based on determining the presence of the actor, the user device can determine whether the input is abnormal with higher accuracy. In some aspects, the user device can further determine whether the input will be accepted or rejected (e.g., whether the input indicates an abnormal input and / or whether the input is from the user or the actor) at least in part based on the type of input device of the user device (e.g., keyboard, touch screen, etc.) and / or the type of the actor (e.g., dog, cat, baby, etc.). In some aspects, if the user device does not determine the presence of the actor, the user device can avoid determining whether the input will be accepted or rejected. For example, if the user device does not determine the presence of the actor, the input can be accepted.

[0048] As shown in the figure, the user equipment can use a machine learning model to determine whether an input will be accepted or rejected (e.g., whether the input indicates an abnormal input and / or whether the input is from a user or an actor). When an actor other than the user of the user equipment is present near the user equipment, the machine learning model can be trained to identify abnormal inputs to the user equipment. In some aspects, the machine learning model can be trained to identify abnormal inputs for a specific type of input device of the user equipment. For example, a first machine learning model can be trained to identify abnormal inputs for a touch screen, a second machine learning model can be trained to identify abnormal inputs for a keyboard, etc. In some aspects, the machine learning model can be trained to identify abnormal inputs for a specific type of actor determined to be present. For example, when a cat is present near the user equipment, a first machine learning model can be trained to identify abnormal inputs, and when a baby is present near the user equipment, a second machine learning model can be trained to identify abnormal inputs, etc.

[0049] The machine learning model can be trained through supervised learning techniques, semi-supervised learning techniques, or unsupervised learning techniques. In some aspects, the training process of the machine learning model can include performing forward propagation using the machine learning model ("forward propagation" or "forward computation" can refer to the computation performed from the input layer through one or more hidden layers to the output layer of the machine learning model to generate the output of the machine learning model) (e.g., using data indicating the input to the user equipment and data indicating whether an actor is present near the user equipment as inputs to the machine learning model), and applying a loss function to the result of the forward computation to identify the degree to which the output of the machine learning model deviates from the actual result (e.g., whether the input is from a user or an actor). In addition, the training process can include backpropagation of the machine learning model that uses the result of the loss function to determine the adjustment of the weights used by the machine learning model ("backpropagation" can include using an algorithm for tuning the weights of the machine learning model to traverse the machine learning model backward from the output layer through one or more hidden layers). The machine learning model can be updated using the adjustment of the weights. The above training process is an example technique for training the machine learning model, and one or more other training processes can be used to train the machine learning model.

[0050] In some aspects, a machine learning model can be trained using supervised learning techniques with labeled data related to inputs to a user device (e.g., labeled as "accepted" or "rejected"), sensor data obtained by the user device (e.g., via a microphone, camera, etc.), and / or labeled data related to the presence of an actor near the user device (e.g., audio context detection data). In some aspects, a machine learning model can be trained using semi-supervised learning techniques with unlabeled data related to inputs to a user device, sensor data obtained by the user device (e.g., via a microphone, camera, etc.), and / or labeled data related to the presence of an actor near the user device (e.g., audio context detection data).

[0051] Data related to inputs to a user device, sensor data, and / or data related to the presence of an actor near the user device can be an observation set for training a machine learning model. The observation set can include a feature set, and the feature set can include a variable set. Thus, a particular observation can include a set of variable values (or feature values) corresponding to the variable set. The feature set can be extracted from structured data and / or based on input from an operator. As an example, the feature set for the observation set can include the presence or absence of an actor, the type of actor present, the type of input (e.g., pressing a key, tapping a touch gesture, swiping a touch gesture, etc.), the frequency of the input, the location of the input (e.g., location on a keyboard, location on a touch screen, etc.), the accuracy of the input (e.g., whether a keyboard input includes a single click or multiple clicks of nearby keys, whether a tapping touch gesture is centered on the input element or off-center from the input element, etc.), and / or whether the inputs occur concurrently, etc. The observation set can be associated with a target variable, which can represent a variable with a numerical value, a variable with a numerical value that falls within a range of values or has some discrete possible values, a variable that can be selected from one of multiple options, and / or a variable with a boolean value. For example, the target variable can be a classification of accepted or rejected, a classification of abnormal or non-abnormal, a classification of a user or actor, a score indicating the probability of an input being abnormal, a score indicating the probability of an input being provided by an actor, etc.

[0052] Thus, the target variable can represent the value that the machine learning model is trained to predict, and the feature set can represent the variables that are input into the machine learning model to predict the value of the target variable. The machine learning model can be trained to identify patterns in the feature set that result in the target variable value. The machine learning model can be trained using the observation set and using one or more machine learning algorithms (such as regression algorithms, decision tree algorithms, neural network algorithms, k-nearest neighbor algorithms, support vector machine algorithms, etc.).

[0053] Once a machine learning model is trained (or retrained), the user device can use the machine learning model to determine whether an input will be accepted or rejected (e.g., whether the input indicates an abnormal input and / or whether the input is from a user or an actor). That is, the machine learning model can output information identifying the value of the target variable for a new observation. Additionally or alternatively, the output can include information identifying the cluster to which the new observation belongs, and / or information indicating the similarity between the new observation and one or more other observations (e.g., such as when unsupervised learning is employed).

[0054] In some aspects, a communication device can determine whether an input will be accepted or rejected in a manner similar to that described above (e.g., whether the input indicates an abnormal input and / or whether the input is from a user or an actor). For example, the communication device can determine whether an input will be accepted or rejected at least in part based on sensor data obtained by the communication device and / or information associated with the input obtained by the communication device (e.g., whether the input indicates an abnormal input and / or whether the input is from a user or an actor). In some aspects, the communication device can provide and the user device can obtain an indication of whether the input will be accepted or rejected (e.g., at least in part based on the communication device determining whether the input will be accepted or rejected).

[0055] As Figure 3D shown and by reference numeral 325, the user device can accept or reject an input. In some aspects, the user device can accept an input at least in part based on a determination that the input will be accepted, or reject an input at least in part based on a determination that the input will be rejected. For example, the user device can accept an input at least in part based on a determination that the input does not indicate an abnormal input, or reject an input at least in part based on a determination that the input indicates an abnormal input. As another example, the user device can accept an input at least in part based on a determination that the input is from a user, or reject an input at least in part based on a determination that the input is from an actor. In the case of providing multiple concurrent inputs to the user device, the user device can accept a first input at least in part based on a determination that the first input will be accepted (e.g., a determination that the first input does not indicate an abnormal input and / or a determination that the first input is from a user), and the user device can reject a second input at least in part based on a determination that the second input will be rejected (e.g., a determination that the second input indicates an abnormal input and / or a determination that the second input is from an actor).

[0056] To accept or reject an input, the user device can selectively perform the action indicated by the input (e.g., at least partially based on a determination of whether the input is to be accepted or rejected, such as a determination of whether the input indicates an abnormal input or a determination of whether the input is from a user or an actor). To accept the input, the user device can perform the action indicated by the input. To reject the input, the user device can avoid performing the action indicated by the input. The action indicated by the input can be to open or close a file or an application, scroll in a user interface, display typing in a user interface, compose an email message, adjust the volume of a speaker, or adjust the brightness of a display, etc.

[0057] In some aspects, the user device can perform one or more preventive actions at least partially based on rejecting the input (e.g., at least partially based on determining that the input indicates an abnormal input and / or the input is from an actor). In some aspects, the preventive action can include disabling the input device (e.g., keyboard, touch screen, etc.) of the user device at least partially based on rejecting the input. The user device can disable the input device for a specific duration or disable the input device until the user provides an indication that the input device is to be enabled. In some aspects, the user device can disable the area of the input device associated with the rejected input. For example, if the input is detected in the upper left corner of a touch screen, the user device can disable the upper left corner of the touch screen (while keeping the rest of the touch screen enabled). In some aspects, the preventive action can include causing the user device to provide an alert (e.g., an audible alert or a visual alert) that is intended to warn the user of the rejected input and / or prevent the actor from providing further input. In some aspects, the user device can perform one or more preventive actions at least partially based on (e.g., within a specific time period) a threshold number of rejections of input occurring.

[0058] In some aspects, the user device can perform the techniques described herein in an always-on manner. For example, the user device can continuously monitor for actors present in the vicinity of the user device and / or can continuously determine whether to accept or reject an input when an actor is present in the vicinity of the user device. In this way, unintended or unwanted inputs can be filtered at the user device. Thus, resources of the user device (e.g., processor resources, memory resources, and / or power resources, etc.) can be saved that might otherwise have been used to perform unwanted actions indicated by the actor's input and / or to perform corrective actions for those unwanted actions.

[0059] As indicated above, Figures 3A to 3D is provided as an example. Other examples can be different from the description regarding Figures 3A to 3D the description.

[0060] Figure 4is a flowchart of an example process 400 associated with filtering inputs of a user device. In some aspects, Figure 4 one or more process blocks of Figure 4 are performed by a user device (e.g., user device 110). In some aspects, Figure 4 one or more process blocks of

[0061] are performed by another device or a group of devices that are separate from or include the user device, such as a communication device (e.g., communication device 120). Additionally or alternatively, Figure 4 one or more process blocks of

[0062] can be performed by one or more components of device 200, such as processor 210, memory 215, storage component 220, input component 225, output component 230, communication interface 235, and / or sensor 240. Figure 4 As

[0063] shown, process 400 can include determining that an actor other than the user of the user device is present near the user device (block 410). For example, the user device can determine that an actor other than the user of the user device is present near the user device, as described above. Figure 4 As

[0064] further shown, process 400 can include obtaining an input to the user device (block 420). For example, the user device can obtain an input to the user device, as described above. Figure 4 As

[0065] further shown, process 400 can include determining whether the input is from the user or the actor, at least in part based on determining that the actor is present near the user device (block 430). For example, the user device can determine whether the input is from the user or the actor, at least in part based on determining that the actor is present near the user device, as described above.

[0066] In a first aspect, the input is a touchscreen input, a keyboard input, a touchpad input, a mouse input, or a voice input.

[0067] In a second aspect, alone or in combination with the first aspect, it is determined that an actor is present near the user device, at least in part based on sensor data obtained at the user device.

[0068] In a third aspect, alone or in combination with one or more of the first and second aspects, the sensor data is obtained via a microphone of the user device, a camera of the user device, or a touch sensor of the user device.

[0069] In a fourth aspect, alone or in combination with one or more of the first to third aspects, determining that an actor is present near the user device includes: performing audio context detection, and determining that an actor is present near the user device, at least in part based on the result of the audio context detection.

[0070] In a fifth aspect, alone or in combination with one or more of the first to fourth aspects, the input is a first input, and the first input is obtained simultaneously with a second input. Determining whether the input is from the user or from the actor includes determining that the first input is from the user and the second input is from the actor, and accepting or rejecting the input includes accepting the first input, at least in part based on the determination that the first input is from the user, and rejecting the second input, at least in part based on the determination that the second input is from the actor.

[0071] In a sixth aspect, alone or in combination with one or more of the first to fifth aspects, determining whether the input is from the user or from the actor includes using a machine learning model to determine whether the input is from the user or the actor.

[0072] In a seventh aspect, alone or in combination with one or more of the first to sixth aspects, the machine learning model is trained to: identify an abnormal input to the user device when an actor other than the user of the user device is present near the user device.

[0073] In an eighth aspect, alone or in combination with one or more of the first to seventh aspects, the machine learning model is trained by semi-supervised learning techniques or supervised learning techniques.

[0074] In a ninth aspect, alone or in combination with one or more of the first to eighth aspects, accepting the input includes performing the action indicated by the input.

[0075] In a tenth aspect, alone or in combination with one or more of the first to ninth aspects, rejecting the input includes avoiding performing the action indicated by the input.

[0076] Although Figure 4 example boxes of process 400 are shown, in some aspects, compared to Figure 4For the block shown, process 400 includes additional blocks, fewer blocks, different blocks, or blocks arranged differently. Additionally or alternatively, two or more blocks of process 400 may be executed in parallel.

[0077] Figure 5 is a flowchart of an example process 500 associated with filtering inputs to a user device. In some aspects, Figure 5 one or more process blocks of are executed by a system (e.g., user device 110, a system included in user device 110, communication device 120, a system included in communication device 120, and / or a system including user device 110 and / or communication device 120). In some aspects, Figure 5 one or more process blocks of are executed by another device or set of devices separate from or including the system. Additionally or alternatively, Figure 5 one or more process blocks of may be executed by one or more components of device 200, such as processor 210, memory 215, storage component 220, input component 225, output component 230, communication interface 235, and / or sensor 240.

[0078] As Figure 5 shown, process 500 may include obtaining sensor data related to the environment or condition of the user device (block 510). For example, the system may obtain sensor data related to the environment or condition of the user device, as described above.

[0079] As Figure 5 further shown in, process 500 may include determining that an actor other than the user of the user device is present near the user device, at least in part based on the sensor data (block 520). For example, the system may determine that an actor other than the user of the user device is present near the user device, at least in part based on the sensor data, as described above.

[0080] As Figure 5 further shown in, process 500 may include determining whether an input to the user device is to be accepted or rejected, at least in part based on determining that the actor is present near the user device (block 530). For example, the system may determine whether an input to the user device is to be accepted or rejected, at least in part based on determining that the actor is present near the user device, as described above.

[0081] Process 500 may include additional aspects, such as any single aspect or any combination of aspects described in one or more other processes described below and / or in combination with the rest of this document.

[0082] In a first aspect, the input is a touchscreen input, a keyboard input, a touchpad input, a mouse input, or a voice input.

[0083] In a second aspect, either alone or in combination with the first aspect, the sensor data is obtained via a microphone of the user device, a camera of the user device, or a touch sensor of the user device.

[0084] In a third aspect, either alone or in combination with one or more of the first and second aspects, process 500 includes: performing audio context detection and determining, at least in part based on the result of the audio context detection, that an actor is present in the vicinity of the user device.

[0085] In a fourth aspect, either alone or in combination with one or more of the first to third aspects, process 500 includes: accepting an input at least in part based on a determination that the input is from a user, or rejecting an input at least in part based on a determination that the input is from an actor.

[0086] In a fifth aspect, either alone or in combination with one or more of the first to fourth aspects, the input is a first input that occurs simultaneously with a second input to the user device, determining whether to accept or reject the input includes determining that the first input is from a user and the second input is from an actor, and accepting or rejecting the input includes accepting the first input at least in part based on the determination that the first input is from a user and rejecting the second input at least in part based on the determination that the second input is from an actor.

[0087] In a sixth aspect, either alone or in combination with one or more of the first to fifth aspects, process 500 includes using a machine learning model to determine whether the input is to be accepted or rejected.

[0088] In a seventh aspect, either alone or in combination with one or more of the first to sixth aspects, the machine learning model is trained to: identify an abnormal input to the user device when an actor other than the user of the user device is present in the vicinity of the user device.

[0089] In an eighth aspect, either alone or in combination with one or more of the first to seventh aspects, the machine learning model is trained by semi-supervised learning techniques or supervised learning techniques.

[0090] Although Figure 5 example blocks of process 500 are shown, in some aspects, compared to Figure 5 the blocks shown, process 500 includes additional blocks, fewer blocks, different blocks, or differently arranged blocks. Additionally or alternatively, two or more blocks of process 500 may be executed in parallel.

[0091] Figure 6 is a flowchart of an example process 600 associated with filtering inputs to a user device. In some aspects, Figure 6One or more process blocks are performed by a device (e.g., user equipment 110 or its components, or communication equipment 120 or its components). In some aspects, Figure 6 One or more process blocks are performed by another device or a set of devices that are separate from or include the device. Additionally or alternatively, Figure 6 One or more process blocks may be performed by one or more components of device 200, such as processor 210, memory 215, storage component 220, input component 225, output component 230, communication interface 235, and / or sensor 240.

[0092] As Figure 6 shown, process 600 may include determining that an actor other than the user of the user equipment is present in the vicinity of the user equipment (block 610). For example, the device may determine that an actor other than the user of the user equipment is present in the vicinity of the user equipment, as described above.

[0093] As Figure 6 further shown, process 600 may include determining whether an input to the user equipment indicates an abnormal input, at least in part based on determining that the actor is present in the vicinity of the user equipment (block 620). For example, the device may determine whether an input to the user equipment indicates an abnormal input, at least in part based on determining that the actor is present in the vicinity of the user equipment, as described above.

[0094] As Figure 6 further shown, process 600 may include rejecting the input, at least in part based on the determination that the input indicates an abnormal input (block 630). For example, the device may reject the input, at least in part based on the determination that the input indicates an abnormal input, as described above.

[0095] Process 600 may include additional aspects, such as any single aspect or any combination of aspects described below and / or in connection with one or more other processes described elsewhere herein.

[0096] In a first aspect, the input is a touch screen input, a keyboard input, a touchpad input, a mouse input, or a voice input.

[0097] In a second aspect, alone or in combination with the first aspect, determining that an actor is present in the vicinity of the user equipment includes: determining that an actor is present in the vicinity of the user equipment, at least in part based on sensor data obtained at the user equipment.

[0098] In a third aspect, alone or in combination with one or more of the first and second aspects, the sensor data is obtained via a microphone of the user equipment, a camera of the user equipment, or a touch sensor of the user equipment.

[0099] In a fourth aspect, alone or in combination with one or more of the first to third aspects, determining that an actor is present near the user device includes: performing audio context detection and determining that the actor is present near the user device based at least in part on the result of the audio context detection.

[0100] In a fifth aspect, alone or in combination with one or more of the first to fourth aspects, determining whether an input indicates an abnormal input includes: using a machine learning model to determine whether the input indicates an abnormal input.

[0101] In a sixth aspect, alone or in combination with one or more of the first to fifth aspects, rejecting an input includes avoiding performing the action indicated by the input.

[0102] Although Figure 6 example boxes of process 600 are shown, in some aspects, compared to Figure 6 the boxes shown, process 600 includes additional boxes, fewer boxes, different boxes, or boxes arranged differently. Additionally or alternatively, two or more boxes of process 600 may be executed in parallel.

[0103] Figure 7 is a flowchart of an example process 700 associated with filtering inputs to a user device. In some aspects, Figure 7 one or more process boxes of Figure 7 are executed by the user device (e.g., user device 110). In some aspects, Figure 7 one or more process boxes of

[0104] are executed by another device or a group of devices separate from or including the user device, such as a communication device (e.g., communication device 120). Additionally or alternatively, Figure 7 one or more process boxes of

[0105] As Figure 7 further shown, process 700 may include obtaining sensor data related to the environment or condition of the user device (block 710). For example, the user device may obtain sensor data related to the environment or condition of the user device, as described above.

[0106] AsFigure 7 As further shown in, process 700 may include determining whether an input to the user device is from the user or from the actor, at least in part based on determining that the actor is present in the vicinity of the user device (block 730). For example, the user device may determine whether an input to the user device is from the user or from the actor, at least in part based on determining that the actor is present in the vicinity of the user device, as described above.

[0107] As Figure 7 As further shown in, process 700 may include selectively performing an action indicated by the input, at least in part based on determining whether the input to the user device is from the user or from the actor (block 740). For example, the user device may selectively perform an action indicated by the input, at least in part based on determining whether the input to the user device is from the user or from the actor, as described above.

[0108] Process 700 may include additional aspects, such as any individual aspect or any combination of aspects described in one or more other processes described below and / or elsewhere in this document.

[0109] In a first aspect, process 700 includes performing audio context detection and determining that the actor is present in the vicinity of the user device, at least in part based on the results of the audio context detection.

[0110] In a second aspect, either alone or in combination with the first aspect, process 700 includes using a machine learning model to determine whether the input is from the user or from the actor.

[0111] Although Figure 7 example blocks of process 700 are shown, in some aspects, process 700 includes additional blocks, fewer blocks, different blocks, or differently arranged blocks compared to Figure 7 the blocks shown. Additionally or alternatively, two or more blocks of process 700 may be executed in parallel.

[0112] An overview of some aspects of the present disclosure is provided below:

[0113] Aspect 1: A method, comprising: determining, by a user device, that an actor other than the user of the user device is present in the vicinity of the user device; obtaining, by the user device, an input to the user device; determining, by the user device and at least in part based on determining that the actor is present in the vicinity of the user device, whether the input is from the user or the actor; and accepting the input at least in part based on a determination that the input is from the user, or rejecting the input at least in part based on a determination that the input is from the actor.

[0114] Aspect 2: The method according to aspect 1, wherein the input is a touch screen input, a keyboard input, a touchpad input, a mouse input, or a voice input.

[0115] Aspect 3: The method according to any one of Aspects 1 to 2, wherein determining that an actor is present near the user device is at least partially based on sensor data obtained at the user device.

[0116] Aspect 4: The method according to Aspect 3, wherein the sensor data is obtained through a microphone of the user device, a camera of the user device, or a touch sensor of the user device.

[0117] Aspect 5: The method according to any one of Aspects 1 to 4, wherein determining that an actor is present near the user device includes: performing audio context detection; and determining that an actor is present near the user device at least partially based on the result of the audio context detection.

[0118] Aspect 6: The method according to any one of Aspects 1 to 5, wherein the input is a first input, and the first input is obtained simultaneously with a second input, wherein determining whether the input is from the user or from the actor includes determining that the first input is from the user and the second input is from the actor, and wherein accepting or rejecting the input includes accepting the first input at least partially based on the determination that the first input is from the user, and rejecting the second input at least partially based on the determination that the second input is from the actor.

[0119] Aspect 7: The method according to any one of Aspects 1 to 6, wherein determining whether the input is from the user or from the actor includes using a machine learning model to determine whether the input is from the user or from the actor.

[0120] Aspect 8: The method according to Aspect 7, wherein the machine learning model is trained to: identify abnormal inputs to the user device when an actor other than the user of the user device is present near the user device.

[0121] Aspect 9: The method according to any one of Aspects 7 to 8, wherein the machine learning model is trained by semi-supervised learning techniques or supervised learning techniques.

[0122] Aspect 10: The method according to any one of Aspects 1 to 9, wherein accepting the input includes performing the action indicated by the input.

[0123] Aspect 11: The method according to any one of Aspects 1 to 10, wherein rejecting the input includes avoiding performing the action indicated by the input.

[0124] Aspect 12: A system, comprising: one or more memories; and one or more processors coupled to the one or more memories, the one or more processors being configured to: obtain sensor data related to the environment or condition of a user device; determine, at least in part based on the sensor data, that an actor other than the user of the user device is present near the user device; and determine, at least in part based on the determination that the actor is present near the user device, whether an input to the user device is to be accepted or rejected.

[0125] Aspect 13: The system according to aspect 12, wherein the input is a touch screen input, a keyboard input, a touchpad input, a mouse input, or a voice input.

[0126] Aspect 14: The system according to any one of aspects 12 to 13, wherein the sensor data is obtained by a microphone of the user device, a camera of the user device, or a touch sensor of the user device.

[0127] Aspect 15: The system according to any one of aspects 12 to 14, wherein, to determine that an actor is present near the user device, the one or more processors are configured to: perform audio context detection; and determine, at least in part based on the result of the audio context detection, that an actor is present near the user device.

[0128] Aspect 16: The system according to any one of aspects 12 to 15, wherein the one or more processors are further configured to: accept the input at least in part based on a determination that the input is from the user, or reject the input at least in part based on a determination that the input is from the actor.

[0129] Aspect 17: The system according to aspect 16, wherein the input is a first input that occurs simultaneously with a second input to the user device, and wherein, to determine whether the input is to be accepted or rejected, the one or more processors are configured to: determine that the first input is from the user and the second input is from the actor, and wherein, to accept or reject the input, the one or more processors are configured to: accept the first input at least in part based on a determination that the first input is from the user, and reject the second input at least in part based on a determination that the second input is from the actor.

[0130] Aspect 18: The system according to any one of aspects 12 to 17, wherein, to determine whether the input is to be accepted or rejected, the one or more processors are configured to: use a machine learning model to determine whether the input is to be accepted or rejected.

[0131] Aspect 19: The system according to aspect 18, wherein the machine learning model is trained to: identify an abnormal input to the user device when an actor other than the user of the user device is present near the user device.

[0132] Aspect 20: The system according to any one of aspects 18 to 19, wherein the machine learning model is trained by a semi-supervised learning technique or a supervised learning technique.

[0133] Aspect 21: An apparatus, comprising: means for determining the presence of an actor other than the user of the user equipment in the vicinity of the user equipment; means for determining whether an input to the user equipment indicates an abnormal input based at least in part on the determination of the presence of the actor in the vicinity of the user equipment; and means for rejecting the input based at least in part on the determination that the input indicates an abnormal input.

[0134] Aspect 22: The apparatus according to aspect 21, wherein the input is a touch screen input, a keyboard input, a touchpad input, a mouse input or a voice input.

[0135] Aspect 23: The apparatus according to any one of aspects 21 to 22, wherein the means for determining the presence of the actor in the vicinity of the user equipment comprises: means for determining the presence of the actor in the vicinity of the user equipment based at least in part on sensor data obtained at the user equipment.

[0136] Aspect 24: The apparatus according to aspect 23, wherein the sensor data is obtained by a microphone of the user equipment, a camera of the user equipment or a touch sensor of the user equipment.

[0137] Aspect 25: The apparatus according to any one of aspects 21 to 24, wherein the means for determining the presence of the actor in the vicinity of the user equipment comprises: means for performing audio context detection; and means for determining the presence of the actor in the vicinity of the user equipment based at least in part on the result of the audio context detection.

[0138] Aspect 26: The apparatus according to any one of aspects 21 to 25, wherein the means for determining whether the input indicates an abnormal input comprises: means for using a machine learning model to determine whether the input indicates an abnormal input.

[0139] Aspect 27: The apparatus according to any one of aspects 21 to 26, wherein the means for rejecting the input comprises: means for avoiding performing the action indicated by the input.

[0140] Aspect 28: A non-transitory computer-readable medium stores an instruction set that includes: one or more instructions that, when executed by one or more processors of a user device, cause the user device to: obtain sensor data related to the environment or condition of the user device; determine, at least in part based on the sensor data, that an actor other than the user of the user device is present in the vicinity of the user device; determine, at least in part based on determining that the actor is present in the vicinity of the user device, whether an input to the user device is from the user or from the actor; and selectively perform an action indicated by the input, at least in part based on the determination of whether the input to the user device is from the user or from the actor.

[0141] Aspect 29: The non-transitory computer-readable medium according to aspect 28, wherein the one or more instructions that cause the user device to determine that an actor is present in the vicinity of the user device cause the user device to: perform audio context detection; and determine, at least in part based on the result of the audio context detection, that an actor is present in the vicinity of the user device.

[0142] Aspect 30: The non-transitory computer-readable medium according to any one of aspects 28 to 29, wherein the one or more instructions that cause the user device to determine whether the input is from the user or the actor cause the user device to: use a machine learning model to determine whether the input is from the user or from the actor.

[0143] Aspect 31: A device includes: a processor; a memory coupled to the processor; and instructions stored in the memory and executable by the processor to cause the device to perform the method according to one or more of aspects 1 to 11.

[0144] Aspect 32: A device includes a memory and one or more processors coupled to the memory, the one or more processors being configured to perform the method according to one or more of aspects 1 to 11.

[0145] Aspect 33: A device includes at least one component for performing the method according to one or more of aspects 1 to 11.

[0146] Aspect 34: A non-transitory computer-readable medium stores code that includes instructions executable by a processor to perform the method according to one or more of aspects 1 to 11.

[0147] Aspect 35: A non-transitory computer-readable medium stores an instruction set that includes one or more instructions that, when executed by one or more processors of a device, cause the device to perform the method according to one or more of aspects 1 to 11.

[0148] Aspect 36: An apparatus, comprising: a processor; a memory coupled to the processor; and instructions stored in the memory and executable by the processor to cause the apparatus to perform the steps performed by one or more processors of one or more of Aspects 12 to 20.

[0149] Aspect 37: An apparatus, comprising a memory and one or more processors coupled to the memory, the one or more processors configured to perform the steps performed by one or more processors of one or more of Aspects 12 to 20.

[0150] Aspect 38: An apparatus, comprising at least one component for performing the steps performed by one or more processors of one or more of Aspects 12 to 20.

[0151] Aspect 39: A non-transitory computer-readable medium storing code, the code including instructions executable by a processor to perform the steps performed by one or more processors of one or more of Aspects 12 to 20.

[0152] Aspect 40: A non-transitory computer-readable medium storing an instruction set, the instruction set including one or more instructions that, when executed by one or more processors of a device, cause the device to perform the steps performed by one or more processors of one or more of Aspects 12 to 20.

[0153] Aspect 41: A method, comprising the steps performed by one or more processors of one or more of Aspects 12 to 20.

[0154] Aspect 42: An apparatus, comprising: a processor; a memory coupled to the processor; and instructions stored in the memory and executable by the processor to cause the apparatus to perform the steps performed by components of one or more of Aspects 21 to 27.

[0155] Aspect 43: An apparatus, comprising a memory and one or more processors coupled to the memory, the one or more processors configured to perform the steps performed by components of one or more of Aspects 21 to 27.

[0156] Aspect 44: A non-transitory computer-readable medium storing code, the code including instructions executable by a processor to perform the steps performed by components of one or more of Aspects 21 to 27.

[0157] Aspect 45: A non-transitory computer-readable medium storing an instruction set, the instruction set including one or more instructions that, when executed by one or more processors of a device, cause the device to perform the steps performed by components of one or more of Aspects 21 to 27.

[0158] Aspect 46: A method comprising steps performed by components of one or more of Aspects 21 to 27.

[0159] Aspect 47: An apparatus comprising: a processor; a memory coupled to the processor; and instructions stored in the memory and executable by the processor to cause the apparatus to perform steps performed by devices of one or more of Aspects 28 to 30.

[0160] Aspect 48: A device comprising a memory and one or more processors coupled to the memory, the one or more processors configured to perform steps performed by devices of one or more of Aspects 28 to 30.

[0161] Aspect 49: An apparatus comprising at least one component for performing steps performed by devices of one or more of Aspects 28 to 30.

[0162] Aspect 50: A non - transitory computer - readable medium storing code, the code comprising instructions executable by a processor to perform steps performed by devices of one or more of Aspects 28 to 30.

[0163] Aspect 51: A method comprising steps performed by devices of one or more of Aspects 28 to 30.

[0164] The foregoing disclosure provides illustration and description, but is not intended to be exhaustive or to limit the aspects to the precise forms disclosed. Modifications and variations may be made based on the above disclosure or may be acquired from practice of the aspects.

[0165] As used herein, the term "component" is intended to be broadly understood as a combination of hardware and / or hardware and software. Whether referred to as software, firmware, middleware, microcode, hardware description language, or otherwise, software shall be broadly construed as instructions, instruction sets, code, code segments, program code, programs, sub - programs, software modules, applications, software applications, software packages, routines, sub - routines, objects, executable programs, execution threads, processes, and / or functions, etc. As used herein, a processor is implemented as a combination of hardware and / or hardware and software. Obviously, the systems and / or methods described herein may be implemented in different forms of combinations of hardware and / or hardware and software. The actual specific control hardware or software code used to implement these systems and / or methods is not limited to these aspects. Thus, without reference to specific software code, the operation and behavior of the systems and / or methods are described herein, as those skilled in the art will understand that software and hardware can be designed to implement the systems and / or methods at least in part based on the description herein.

[0166] As used herein, depending on the context, meeting a threshold can mean that a value is greater than the threshold, greater than or equal to the threshold, less than the threshold, less than or equal to the threshold, equal to the threshold, not equal to the threshold, etc.

[0167] Although specific combinations of features are recited in the claims and / or disclosed in the specification, these combinations are not intended to limit the disclosure of the various aspects. Many of these features may be combined in ways that are not specifically recited in the claims and / or not specifically disclosed in the specification. The disclosure of the various aspects includes the combination of each dependent claim with every other claim in the claim set. As used herein, the phrase "at least one" in reference to a list of items means any combination of those items, including a single element. For example, "at least one of a, b, or c" is intended to cover a, b, c, a + b, a + c, b + c, and a + b + c, as well as any combination of multiple like elements (e.g., a + a, a + a + a, a + a + b, a + a + c, a + b + b, a + c + c, b + b, b + b + b, b + b + c, c + c, and c + c + c, or any other ordering of a, b, and c).

[0168] Unless explicitly described as critical or essential, elements, acts, or instructions used herein should not be construed as critical or essential. Further, as used herein, the articles "a" and "an" are intended to include one or more items and may be used interchangeably with "one or more." Additionally, as used herein, the article "the" is intended to include one or more items recited in conjunction with the article "the" and may be used interchangeably with "the one or more." Further, as used herein, the terms "set" and "group" are intended to include one or more items and may be used interchangeably with "one or more." If only one item is intended, the phrase "only one" or similar language is used. Additionally, as used herein, the terms "has," "have," "having," etc. are intended to be open-ended terms and do not limit the elements they modify (e.g., an element "having" A may also have B). Further, unless otherwise explicitly stated, the term "based on" means "at least partially based on." Additionally, as used herein, unless otherwise explicitly stated (e.g., when used in conjunction with "any one" or "only one"), the term "or" is inclusive when used in a series and may be used interchangeably with "and / or."

Claims

1. A method, comprising: determining, by a user device, that an actor other than a user of the user device is present in the vicinity of the user device; obtaining, by the user device, an input to the user device; determining, by the user device and at least in part based on determining that the actor is present in the vicinity of the user device, whether the input is from the user or the actor; and accepting the input at least in part based on a determination that the input is from the user, or rejecting the input at least in part based on a determination that the input is from the actor.

2. The method according to claim 1, wherein, the input is a touch screen input, a keyboard input, a touchpad input, a mouse input or a voice input.

3. The method according to claim 1, wherein, determining that the actor is present in the vicinity of the user device is at least in part based on sensor data obtained at the user device.

4. The method according to claim 3, wherein, the sensor data is obtained through a microphone of the user device, a camera of the user device or a touch sensor of the user device.

5. The method according to claim 1, wherein, determining that the actor is present in the vicinity of the user device includes: performing audio context detection; and determining, at least in part based on the result of the audio context detection, that the actor is present in the vicinity of the user device.

6. The method according to claim 1, wherein, the input is a first input, and the first input is obtained simultaneously with a second input, wherein determining whether the input is from the user or the actor includes: determining that the first input is from the user and the second input is from the actor, and wherein accepting or rejecting the input includes: accepting the first input at least in part based on a determination that the first input is from the user, and rejecting the second input at least in part based on a determination that the second input is from the actor.

7. The method according to claim 1, wherein, determining whether the input is from the user or the actor includes: using a machine learning model to determine whether the input is from the user or from the actor.

8. The method according to claim 7, wherein, the machine learning model is trained to: when an actor other than a user of the user device is present in the vicinity of the user device, identify an abnormal input to the user device.

9. The method according to claim 7, wherein, the machine learning model is trained by a semi-supervised learning technique or a supervised learning technique.

10. The method according to claim 1, wherein, accepting the input includes: performing an action indicated by the input.

11. The method according to claim 1, wherein, rejecting the input includes: avoiding performing an action indicated by the input.

12. A system, comprising: one or more memories; and one or more processors, coupled to the one or more memories, the one or more processors being configured to: Obtain sensor data related to the environment or condition of the user device; Determine, at least in part based on the sensor data, that an actor other than the user of the user device is present in the vicinity of the user device; And Determine, at least in part based on determining that the actor is present in the vicinity of the user device, whether an input to the user device is to be accepted or rejected.

13. The system according to claim 12, Wherein, The input is a touch screen input, a keyboard input, a touchpad input, a mouse input, or a voice input.

14. The system according to claim 12, Wherein, The sensor data is obtained through a microphone of the user device, a camera of the user device, or a touch sensor of the user device.

15. The system according to claim 12, Wherein, For determining that the actor is present in the vicinity of the user device, the one or more processors are configured to: Perform audio context detection; and Determine, at least in part based on the result of the audio context detection, that the actor is present in the vicinity of the user device.

16. The system according to claim 12, Wherein, The one or more processors are further configured to: Accept the input at least in part based on a determination that the input is from the user, or reject the input at least in part based on a determination that the input is from the actor.

17. The system according to claim 16, Wherein, The input is a first input, and the first input occurs simultaneously with a second input to the user device, Wherein, for determining whether the input is to be accepted or rejected, the one or more processors are configured to: Determine that the first input is from the user and the second input is from the actor, and Wherein, for accepting or rejecting the input, the one or more processors are configured to: Accept the first input at least in part based on a determination that the first input is from the user, and reject the second input at least in part based on a determination that the second input is from the actor.

18. The system according to claim 12, Wherein, For determining whether the input is to be accepted or rejected, the one or more processors are configured to: Use a machine learning model to determine whether the input is to be accepted or rejected.

19. The system according to claim 18, Wherein, The machine learning model is trained to: identify an abnormal input to the user device when an actor other than the user of the user device is present in the vicinity of the user device.

20. The system according to claim 18, Wherein, The machine learning model is trained by semi-supervised learning techniques or supervised learning techniques.

21. An apparatus, Comprising: Components for determining that an actor other than the user of the user device is present in the vicinity of the user device; Components for determining whether an input to the user device indicates an abnormal input at least in part based on determining that the actor is present in the vicinity of the user device; And A component for rejecting the input based at least in part on the determination of the abnormal input indicated by the input.

22. The apparatus according to claim 21, wherein, the input is a touch screen input, a keyboard input, a touchpad input, a mouse input or a voice input.

23. The apparatus according to claim 21, wherein, the component for determining the presence of the actor near the user equipment includes: a component for determining the presence of the actor near the user equipment based at least in part on sensor data obtained at the user equipment.

24. The apparatus according to claim 23, wherein, the sensor data is obtained through a microphone of the user equipment, a camera of the user equipment or a touch sensor of the user equipment.

25. The apparatus according to claim 21, wherein, the component for determining the presence of the actor near the user equipment includes: a component for performing audio context detection; and a component for determining the presence of the actor near the user equipment based at least in part on the result of the audio context detection.

26. The apparatus according to claim 21, wherein, the component for determining whether the input indicates the abnormal input includes: a component for using a machine learning model to determine whether the input indicates the abnormal input.

27. The apparatus according to claim 21, wherein, the component for rejecting the input includes: a component for avoiding performing the action indicated by the input.

28. A non-transitory computer-readable medium storing a set of instructions, the set of instructions including: one or more instructions that, when executed by one or more processors of a user equipment, cause the user equipment to: obtain sensor data related to the environment or condition of the user equipment; determine, at least in part based on the sensor data, the presence of an actor other than the user of the user equipment near the user equipment; determine, at least in part based on determining the presence of the actor near the user equipment, whether an input to the user equipment is from the user or from the actor; and selectively execute the action indicated by the input at least in part based on the determination of whether the input to the user equipment is from the user or from the actor.

29. The non-transitory computer-readable medium according to claim 28, wherein, the one or more instructions that cause the user equipment to determine the presence of the actor near the user equipment cause the user equipment to: perform audio context detection; and determine, at least in part based on the result of the audio context detection, the presence of the actor near the user equipment.

30. The non-transitory computer-readable medium according to claim 28, wherein, the one or more instructions that cause the user equipment to determine whether the input is from the user or the actor cause the user equipment to: use a machine learning model to determine whether the input is from the user or from the actor.