A machine learning heterogeneous edge device, method, and system are disclosed. In an example embodiment, an edge device includes a communication module, a data collection device, a memory, a machine learning module, a group determination module, and a leader election module. The edge device analyzes collected data with a model, outputs a result, and updates the model to create a local model. The edge device communicates with other edge devices in a heterogeneous group. The edge device determines group membership and determines a leader edge device. The edge device receives a request for the local model, transmits the local model to the leader edge device, receives a mixed model created by the leader edge device performing a mix operation of the local model and a different local model, and replaces the local model with the mixed model.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. An edge device comprising: a communication module configured to communicate with a plurality of different edge devices; a data collection device configured to collect a first type of data; a memory configured to store data collected by the data collection device; a machine learning module; a group determination module; and a leader election module, wherein the edge device is configured to: analyze, using a first model relating to a predefined task, first data collected by the data collection device; output a result including at least one of a prediction, a classification, a clustering, an anomaly detection, and a recognition; update, based on a correctness of the result, the first model to create a first local model which relates to the predefined task; communicate with at least one other edge device in a first heterogeneous group of edge devices, wherein the first heterogeneous group of edge devices includes at least a first edge device and a second edge device, and the first edge device collects and analyzes the first type of data and the second edge device collects and analyzes a different second type of data; determine membership of a second heterogeneous group of edge devices from the first heterogeneous group of edge devices, the second group of edge devices being a subset of the first heterogeneous group of edge devices; determine a leader edge device from the second heterogeneous group of edge devices; receive, from the leader edge device, a request for the first local model; transmit the first local model to the leader edge device; receive, from the leader edge device, a mixed model which relates to the predefined task, wherein the mixed model is created by the leader edge device performing a mix operation of a plurality of the first local model and at least one different respective local model; and replace the first local model with the mixed model. 2. The edge device of claim 1, wherein the first type of data is video image data and the second type of data is velocity data. 3. The edge device of claim 1, wherein the edge device is elected as the leader edge device. 4. The edge device of claim 1, wherein each edge device in the second heterogeneous group of edge devices creates a respective local model. 5. The edge device of claim 1, wherein the second heterogeneous group of edge devices includes local models that output different types of results. 6. The edge device of claim 5, wherein the different types of results include different data types. 7. The edge device of claim 5, wherein the different types of results include different output variables. 8. The edge device of claim 1, wherein a randomly selected edge device determines membership of the second group. 9. The edge device of claim 1, wherein after a first period of time, the predefined task is changed to a new task. 10. The edge device of claim 1, wherein the first model has a fixed structure. 11. The edge device of claim 1, wherein the second heterogeneous group of edge devices is a strict subset of the first heterogeneous group of edge devices. 12. The edge device of claim 1, wherein the edge device is one of a shopping cart device and a surveillance camera. 13. The edge device of claim 1, wherein the edge device is incorporated in an automobile. 14. The edge device of claim 1, wherein the edge device is an automatic teller machine. 15. A computer readable medium storing instructions which, when executed by an edge device which comprises a communication module configured to communicate with a plurality of different edge devices, a data collection device configured to collect a first type of data, a memory configured to store data collected by the data collection device, a machine learning module, a group determination module, and a leader election module, cause the edge device to: analyze, using a first model relating to a predefined task, first data collected by the data collection device; output a result including at least one of a prediction, a classification, a clustering, an anomaly detection, and a recognition; update, based on a correctness of the result, the first model to create a first local model which relates to the predefined task; communicate with at least one other edge device in a first heterogeneous group of edge devices, wherein the first heterogeneous group of edge devices includes at least a first edge device and a second edge device, and the first edge device collects and analyzes the first type of data and the second edge device collects and analyzes a different second type of data; determine membership of a second heterogeneous group of edge devices from the first heterogeneous group of edge devices, the second group of edge devices being a subset of the first heterogeneous group of edge devices; determine a leader edge device from the second heterogeneous group of edge devices; receive, from the leader edge device, a request for the first local model; transmit the first local model to the leader edge device; receive, from the leader edge device, a mixed model which relates to the predefined task, wherein the mixed model is created by the leader edge device performing a mix operation of a plurality of the first local model and at least one different respective local model; and replace the first local model with the mixed model. 16. A method comprising: communicating, by a communication module in an edge device, with a plurality of different edge devices; collecting, with a data collection device, a first type of data; storing, in a memory, data collected by the data collection device; analyzing, using a first model relating to a predefined task, first data collected by the data collection device; outputting a result including at least one of a prediction, a classification, a clustering, an anomaly detection, and a recognition; updating, based on a correctness of the result, the first model to create a first local model which relates to the predefined task; communicating with at least one other edge device in a first heterogeneous group of edge devices, wherein the first heterogeneous group of edge devices includes at least a first edge device and a second edge device, and the first edge device collects and analyzes the first type of data and the second edge device collects and analyzes a different second type of data; determining membership of a second heterogeneous group of edge devices from the first heterogeneous group of edge devices, the second group of edge devices being a subset of the first heterogeneous group of edge devices; determining a leader edge device from the second heterogeneous group of edge devices; receiving, from the leader edge device, a request for the first local model; transmitting the first local model to the leader edge device; receiving, from the leader edge device, a mixed model which relates to the predefined task, wherein the mixed model is created by the leader edge device performing a mix operation of a plurality of the first local model and at least one different respective local model; and replacing the first local model with the mixed model. 17. The method of claim 16, wherein the first type of data is video image data and the second type of data is velocity data. 18. The method of claim 16, wherein the edge device is elected as the leader edge device. 19. The method of claim 16, wherein each edge device in the second heterogeneous group of edge devices creates a respective local model. 20. The method of claim 16, wherein the second heterogeneous group of edge devices includes local models that output different types of results.