I. Introduction
With the development of Internet of Thing (IoT) and big data, machine learning has achieved many impressive successes in IoT applications to improve the system performance and provide more diversified services for people. Nowadays, the architectures of machine learning tend to aggregate several data owners to achieve the collaborative learning, including the distributed learning and federated learning. Together with the greatly enhanced computation capability of IoT devices, collaborative machine learning (termed as federated learning as well) has emerged as a vastly-developed learning scheme in the real world IoT application. In collaborative learning, each task node owns its local training data and trains its local model. Then, all task nodes periodically exchange their trained gradients and update the global model with or without a central server.