  In this paper, we present a survey on the utility of machine learning (ML)
algorithms for applications in cognitive radio networks (CRN). We start with a
high-level overview of some of the major challenges in CRNs, and mention the ML
architectures and algorithms that can be used to alleviate them. In particular,
our focus is on two fundamental applications in CRNs, namely spectrum sensing
-- with non-cooperative and cooperative scenarios, and dynamic spectrum access
-- with spectrum auction and prediction. We present a detailed study of recent
advancements in the field of ML in CRNs for these applications, and briefly
discuss the set of challenges in real-time implementation of ML techniques for
CRNs.
