数据、模型、算法三个维度去处理问题。
数据是机器学习的核心。在机器学习前对数据进行搜集、整理和预处理是必须的,在此基础上进行特征工程、信息挖掘大多数情况下也是必须的,尤其小样本情况下。越是小样本情况下,吃透数据越重要,俗称“好钢用在刀刃上”。对数据进行增广和转换是小样本问题解决策略中最直接见效的方式。当然数据增广不一定都是自身增广,可以借助无标签数据、其它相关数据。无监督学习、半监督学习、主动学习、生成式AI和大模型等技术的迅速发展为数据增广提供了更多的可能,如半监督学习中,标签传播方法和伪标签学习方法一定意义上就是数据增广的例子。
从模型角度基于先验知识限制假设空间的复杂度。一种是将样本投影到更易区分不同类别的低维空间,维度更低,特征表示更容易区分不同的类;一种是借助无标签数据或者其它任务数据,联合训练,限制模型的复杂度,即降低搜索空间的范围。基于模型解决小样本的算法主要有多任务学习、部分迁移学习、部分半监督学习、部分生成式模型、基于度量的元学习等。
通过先验知识优化假设空间中搜索算法,目的是使得模型获得一个较好的初始权重参数、优化器、学习率等。该类方法包括部分迁移学习、基于优化的元学习方法、自动调优、大模型相关应用等算法。
值得一提的是,传统机器学习已经发展了很多优秀的技术,如随机森林、支持向量机、朴素贝叶斯、Adaboost、Xgboost等。对数据和目标来讲,最适合的方法不一定就是复杂的深度学习方法。尤其在标签数据量少的情况下,传统机器学习也是一种不错的选择。传统机器学习相比深度学习有几个优势,1)可以适合较少的数据;2)对硬件及软件环境要求低;3)建模时间短;4)方便分析数据和提取特征,更好的理解数据。
摘自《小样本机器学习python算法与实践》作者帖子
https://mp.weixin.qq.com/s/ZPF3ahnNQnzG5Fr2GI-z2A