Patents by Inventor Kit Man Wan

Kit Man Wan has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11847576
    Abstract: Disclosed herein is a technique for implementing a framework that enables application developers to enhance their applications with dynamic adjustment capabilities. Specifically, the framework, when utilized by an application on a mobile computing device that implements the framework, can enable the application to establish predictive models that can be used to identify meaningful behavioral patterns of an individual who uses the application. In turn, the predictive models can be used to preempt the individual's actions and provide an enhanced overall user experience. The framework is configured to interface with other software entities on the mobile computing device that conduct various analyses to identify appropriate times for the application to manage and update its predictive models. Such appropriate times can include, for example, identified periods of time where the individual is not operating the mobile computing device, as well as recognized conditions where power consumption is not a concern.
    Type: Grant
    Filed: August 12, 2019
    Date of Patent: December 19, 2023
    Assignee: Apple Inc.
    Inventors: Binu K. Mathew, Kit-Man Wan, Gaurav Kapoor
  • Patent number: 11693414
    Abstract: An autonomous navigation system may navigate through an environment in which one or more non-solid objects, including gaseous and/or liquid objects, are located. Non-solid objects may be determined, using sensor data, to present an obstacle or interference based on determined chemical composition, size, position, velocity, concentration, etc. of the objects.
    Type: Grant
    Filed: February 28, 2022
    Date of Patent: July 4, 2023
    Assignee: Apple Inc.
    Inventors: Byron B. Han, Young Woo Seo, Kit-Man Wan
  • Publication number: 20230177350
    Abstract: The subject technology provides receiving a neural network (NN) model to be executed on a target platform, the NN model including multiple layers that include operations and some of the operations being executable on multiple processors of the target platform. The subject technology further sorts the operations from the multiple layers in a particular order based at least in part on grouping the operations that are executable by a particular processor of the multiple processors. The subject technology determines, based at least in part on a cost of transferring the operations between the multiple processors, an assignment of one of the multiple processors for each of the sorted operations of each of the layers in a manner that minimizes a total cost of executing the operations. Further, for each layer of the NN model, the subject technology includes an annotation to indicate the processor assigned for each of the operations.
    Type: Application
    Filed: September 6, 2022
    Publication date: June 8, 2023
    Inventors: Gaurav KAPOOR, Cecile M. FORET, Francesco ROSSI, Kit-Man WAN, Umesh S. VAISHAMPAYAN, Etienne BELANGER, Albert ANTONY, Alexey MARINICHEV, Marco ZULIANI, Xiaojin SHI
  • Patent number: 11496600
    Abstract: In an exemplary process for remote execution of machine-learned models, one or more signals from a second electronic device is detected by a first electronic device. The second electronic device includes a machine-learned model associated with an application implemented on the first electronic device. Based on the one or more signals, a communication connection is established with the second electronic device and a proxy to the machine-learned model is generated. Input data is obtained via a sensor of the first electronic device. A representation of the input data is sent to the second electronic device via the proxy and the established communication connection. The representation of the input data is processed through the machine-learned model to generate an output. A result derived from the output is received via the communication connection and a representation of the result is outputted.
    Type: Grant
    Filed: August 28, 2019
    Date of Patent: November 8, 2022
    Assignee: Apple Inc.
    Inventors: Umesh S. Vaishampayan, Gaurav Kapoor, Kit-man Wan
  • Patent number: 11468338
    Abstract: The subject technology provides receiving a neural network (NN) model to be executed on a target platform, the NN model including multiple layers that include operations and some of the operations being executable on multiple processors of the target platform. The subject technology further sorts the operations from the multiple layers in a particular order based at least in part on grouping the operations that are executable by a particular processor of the multiple processors. The subject technology determines, based at least in part on a cost of transferring the operations between the multiple processors, an assignment of one of the multiple processors for each of the sorted operations of each of the layers in a manner that minimizes a total cost of executing the operations. Further, for each layer of the NN model, the subject technology includes an annotation to indicate the processor assigned for each of the operations.
    Type: Grant
    Filed: January 30, 2019
    Date of Patent: October 11, 2022
    Assignee: Apple Inc.
    Inventors: Francesco Rossi, Cecile M. Foret, Gaurav Kapoor, Kit-Man Wan, Umesh S. Vaishampayan, Etienne Belanger, Albert Antony, Alexey Marinichev, Marco Zuliani, Xiaojin Shi
  • Publication number: 20220253061
    Abstract: An autonomous navigation system may navigate through an environment in which one or more non-solid objects, including gaseous and/or liquid objects, are located. Non-solid objects may be determined, using sensor data, to present an obstacle or interference based on determined chemical composition, size, position, velocity, concentration, etc. of the objects.
    Type: Application
    Filed: February 28, 2022
    Publication date: August 11, 2022
    Applicant: Apple Inc.
    Inventors: Byron B. Han, Young Woo Seo, Kit-Man Wan
  • Patent number: 11262762
    Abstract: An autonomous navigation system may autonomously navigate a vehicle through an environment in which one or more non-solid objects, including gaseous and/or liquid objects, are located. Sensors, including sensors which can detect chemical substances in a region of the environment, may detect non-solid objects independently of an opacity of the objects. Non-solid objects may be determined to present an obstacle or interference based on determined chemical composition, size, position, velocity, concentration, etc. of the objects. The vehicle may be autonomously navigated to avoid non-solid objects based on positions, trajectories, etc. of the non-solid objects. The vehicle may be navigated according to avoidance driving parameters to avoid non-solid objects, and a navigation system may characterize a non-solid object as a solid object having dimensions and position which encompasses the non-solid object, so that the vehicle is navigated in avoidance of non-solid objects as if the non-solid objects were solid.
    Type: Grant
    Filed: September 22, 2016
    Date of Patent: March 1, 2022
    Assignee: Apple Inc.
    Inventors: Byron B. Han, Young Woo Seo, Kit-Man Wan
  • Publication number: 20210397957
    Abstract: The subject technology provides a framework for multi-processor training of neural networks. Multi-processor training of neural networks can include performing a forward pass of a training iteration using a neural processor, and performing a backward pass of the training iteration using a CPU or a GPU. Additional operations for facilitating the multi-processor training are disclosed.
    Type: Application
    Filed: June 16, 2021
    Publication date: December 23, 2021
    Inventors: Umesh S. VAISHAMPAYAN, Kit-Man WAN, Aaftab A. MUNSHI, Cecile M. FORET, Yen-Fu LIU
  • Publication number: 20210398021
    Abstract: A device implementing a system to execute machine learning models from memory includes at least one processor configured to receive a request to provide an input to one or more machine learning (ML) models arranged into a graph of connected layers, the one or more ML models stored in the first type of memory. The at least one processor is further configured to divide the graph of connected layers into a plurality of segments such that at least two of the plurality of segments concurrently fits within allocated space of the second type of memory. The at least one processor is further configured to cause the input to be processed through the first segment of the plurality of segments using the second type of memory while a second segment of the plurality of segments is concurrently loaded from the first type of memory into the second type of memory.
    Type: Application
    Filed: June 14, 2021
    Publication date: December 23, 2021
    Inventors: Umesh S. VAISHAMPAYAN, Gaurav KAPOOR, Kit-Man WAN
  • Publication number: 20210390087
    Abstract: This application relates to features for a mobile device that allow the mobile device to assign utility values to applications and thereafter suggest applications for a user to execute. The suggested application can be derived from a list of applications that have been assigned a utility by software in the mobile device. The utility assignment of the individual applications from the list of applications can be performed based on the occurrence of an event, an environmental change, or a period of frequent application usage. A feedback mechanism is provided in some embodiments for more accurately assigning a utility to particular applications. The feedback mechanism can track what a user does during a period of suggestion for certain applications and thereafter modify the utility of applications based on what applications a user selects during the period of suggestion.
    Type: Application
    Filed: June 23, 2021
    Publication date: December 16, 2021
    Inventors: Stephen C. PETERS, Kit-Man WAN, Gaurav KAPOOR
  • Patent number: 11048681
    Abstract: This application relates to features for a mobile device that allow the mobile device to assign utility values to applications and thereafter suggest applications for a user to execute. The suggested application can be derived from a list of applications that have been assigned a utility by software in the mobile device. The utility assignment of the individual applications from the list of applications can be performed based on the occurrence of an event, an environmental change, or a period of frequent application usage. A feedback mechanism is provided in some embodiments for more accurately assigning a utility to particular applications. The feedback mechanism can track what a user does during a period of suggestion for certain applications and thereafter modify the utility of applications based on what applications a user selects during the period of suggestion.
    Type: Grant
    Filed: December 9, 2016
    Date of Patent: June 29, 2021
    Assignee: Apple Inc.
    Inventors: Stephen C. Peters, Kit-Man Wan, Gaurav Kapoor
  • Patent number: 10936358
    Abstract: In some implementations, a mobile device can be configured to monitor environmental, system and user events. The occurrence of one or more events can trigger adjustments to system settings. In some implementations, the mobile device can be configured to keep frequently invoked applications up to date based on a forecast of predicted invocations by the user. In some implementations, the mobile device can receive push notifications associated with applications that indicate that new content is available for the applications to download. The mobile device can launch the applications associated with the push notifications in the background and download the new content. In some implementations, before running an application or accessing a network interface, the mobile device can be configured to check energy and data budgets and environmental conditions of the mobile device to preserve a high quality user experience.
    Type: Grant
    Filed: January 29, 2019
    Date of Patent: March 2, 2021
    Assignee: Apple Inc.
    Inventors: David Michael Chan, John Iarocci, Gaurav Kapoor, Kit-Man Wan, Phillip Stanley-Marbell, Jonathan J. Andrews, Matthew E. Shepherd, Amit K. Vyas, Anand Ramadurai, Lee Russell, Brittany D. Hughes, David B. Myszewski, Andrew M. Matuschak, Joshua V. Graessley, Marc J. Krochmal, Daniel Vinegrad, Stephen C. Peters
  • Publication number: 20200382616
    Abstract: In an exemplary process for remote execution of machine-learned models, one or more signals from a second electronic device is detected by a first electronic device. The second electronic device includes a machine-learned model associated with an application implemented on the first electronic device. Based on the one or more signals, a communication connection is established with the second electronic device and a proxy to the machine-learned model is generated. Input data is obtained via a sensor of the first electronic device. A representation of the input data is sent to the second electronic device via the proxy and the established communication connection. The representation of the input data is processed through the machine-learned model to generate an output. A result derived from the output is received via the communication connection and a representation of the result is outputted.
    Type: Application
    Filed: August 28, 2019
    Publication date: December 3, 2020
    Inventors: Umesh S. VAISHAMPAYAN, Gaurav KAPOOR, Kit-man WAN
  • Patent number: 10657819
    Abstract: Methods, apparatuses, and non-transitory computer readable storage media for external vehicle communication are described.
    Type: Grant
    Filed: September 21, 2017
    Date of Patent: May 19, 2020
    Assignee: APPLE INC.
    Inventors: Kit-Man Wan, Lilli I. Jonsson
  • Publication number: 20200104732
    Abstract: Disclosed herein is a technique for implementing a framework that enables application developers to enhance their applications with dynamic adjustment capabilities. Specifically, the framework, when utilized by an application on a mobile computing device that implements the framework, can enable the application to establish predictive models that can be used to identify meaningful behavioral patterns of an individual who uses the application. In turn, the predictive models can be used to preempt the individual's actions and provide an enhanced overall user experience. The framework is configured to interface with other software entities on the mobile computing device that conduct various analyses to identify appropriate times for the application to manage and update its predictive models. Such appropriate times can include, for example, identified periods of time where the individual is not operating the mobile computing device, as well as recognized conditions where power consumption is not a concern.
    Type: Application
    Filed: December 2, 2019
    Publication date: April 2, 2020
    Inventors: Binu K. MATHEW, Kit-Man WAN, Gaurav KAPOOR
  • Publication number: 20200082274
    Abstract: The subject technology provides receiving a neural network (NN) model to be executed on a target platform, the NN model including multiple layers that include operations and some of the operations being executable on multiple processors of the target platform. The subject technology further sorts the operations from the multiple layers in a particular order based at least in part on grouping the operations that are executable by a particular processor of the multiple processors. The subject technology determines, based at least in part on a cost of transferring the operations between the multiple processors, an assignment of one of the multiple processors for each of the sorted operations of each of the layers in a manner that minimizes a total cost of executing the operations. Further, for each layer of the NN model, the subject technology includes an annotation to indicate the processor assigned for each of the operations.
    Type: Application
    Filed: January 30, 2019
    Publication date: March 12, 2020
    Inventors: Francesco ROSSI, Cecile M. FORET, Gaurav KAPOOR, Kit-Man WAN, Umesh S. VAISHAMPAYAN, Etienne BELANGER, Albert ANTONY, Alexey MARINICHEV, Marco ZULIANI, Xiaojin SHI
  • Publication number: 20200082273
    Abstract: The subject technology runs a compiled neural network (NN) model on a particular processor with multiple priority queues for executing different processes, the compiled NN model being assigned to a particular priority queue, and the compiled NN model includes context switch instructions that were previously inserted into a neural network (NN) model from which the compiled NN model was compiled. The subject technology determines that a particular context switch instruction has been executed by the particular processor. The subject technology determines that a different process is waiting to be executed, the different process being assigned to a different priority queue and the different process being a higher priority process than the running compiled NN model. In response to executing the particular context switch instruction, the subject technology performs a context switch to the different process assigned to the different priority queue when the different process is waiting to be executed.
    Type: Application
    Filed: January 30, 2019
    Publication date: March 12, 2020
    Inventors: Francesco ROSSI, Cecile M. FORET, Gaurav KAPOOR, Kit-Man WAN, Umesh S. VAISHAMPAYAN, Etienne BELANGER
  • Publication number: 20200034725
    Abstract: Disclosed herein is a technique for implementing a framework that enables application developers to enhance their applications with dynamic adjustment capabilities. Specifically, the framework, when utilized by an application on a mobile computing device that implements the framework, can enable the application to establish predictive models that can be used to identify meaningful behavioral patterns of an individual who uses the application. In turn, the predictive models can be used to preempt the individual's actions and provide an enhanced overall user experience. The framework is configured to interface with other software entities on the mobile computing device that conduct various analyses to identify appropriate times for the application to manage and update its predictive models. Such appropriate times can include, for example, identified periods of time where the individual is not operating the mobile computing device, as well as recognized conditions where power consumption is not a concern.
    Type: Application
    Filed: August 12, 2019
    Publication date: January 30, 2020
    Inventors: Binu K. MATHEW, Kit-Man WAN, Gaurav KAPOOR
  • Patent number: 10528872
    Abstract: Disclosed herein is a technique for implementing a framework that enables application developers to enhance their applications with dynamic adjustment capabilities. Specifically, the framework, when utilized by an application on a mobile computing device that implements the framework, can enable the application to establish predictive models that can be used to identify meaningful behavioral patterns of an individual who uses the application. In turn, the predictive models can be used to preempt the individual's actions and provide an enhanced overall user experience. The framework is configured to interface with other software entities on the mobile computing device that conduct various analyses to identify appropriate times for the application to manage and update its predictive models. Such appropriate times can include, for example, identified periods of time where the individual is not operating the mobile computing device, as well as recognized conditions where power consumption is not a concern.
    Type: Grant
    Filed: September 29, 2014
    Date of Patent: January 7, 2020
    Assignee: APPLE INC.
    Inventors: Binu K. Mathew, Kit-Man Wan, Gaurav Kapoor
  • Patent number: 10491708
    Abstract: Disclosed are systems, methods, and non-transitory computer-readable storage media for notifying context clients of changes to the current context of a computing device. In some implementations, a context client can register to be called back when the context daemon detects specified context. For example, the context client can specify a context in which the context client is interested. When the context daemon detects that the current context of the computing device corresponds to the registered context, the context daemon can notify the context client that the current context matches the context in which the context client is interested. Thus, context clients do not require the programming necessary to independently obtain context updates and detect changes in context that are relevant or of interest to the context client.
    Type: Grant
    Filed: May 10, 2016
    Date of Patent: November 26, 2019
    Assignee: Apple Inc.
    Inventors: Michael R. Siracusa, Joao Pedro Forjaz de Lacerda, Kit-Man Wan, Gaurav Kapoor, Umesh S. Vaishampayan