Internet of things (IoT) that integrate a variety of devices into networks to
provide advanced and intelligent services have to protect user privacy and
address attacks such as spoofing attacks, denial of service attacks, jamming
and eavesdropping. In this article, we investigate the attack model for IoT
systems, and review the IoT security solutions based on machine learning
techniques including supervised learning, unsupervised learning and
reinforcement learning. We focus on the machine learning based IoT
authentication, access control, secure offloading and malware detection schemes
to protect data privacy. In this article, we discuss the challenges that need
to be addressed to implement these machine learning based security schemes in
practical IoT systems.