Fault diagnosis for wireless networks is commonly conducted by human experts. However, such manual diagnosis becomes much less feasible due to the growing complexity of wireless networks. To resolve this issue, automatic fault diagnosis has been studied in self-organizing networks (SONs). However, existing works mostly consider that only a single network fault could occur at a time, which might not be true in practice. Therefore, we in this paper consider that multiple faults with different levels of severity can occur simultaneously and investigate the multi-fault and severity diagnosis for SONs. We first consider using supervised learning techniques to conduct the diagnosis and propose the corresponding diagnosis neural networks. Then, since the characteristics of different network scenarios could be different and it is costly to collect labeled data for all network scenarios, we further propose an unsupervised transfer learning approach that can effectively transfer the diagnosis system from the source domain with labeled data to the target domain with unlabeled data. We conduct extensive simulations to validate our approaches. Results show that our approach can outperform all the reference approaches. Furthermore, results also show that the performance of our transfer learning-based diagnosis is close to that of the supervised learning-based diagnosis.