1.small data做机器学习

复杂的模型容易出现过拟合。

随机森林、xgoost等适用于较小data。

线性回归适用于更少的data。

But 在化学这种方面只能做实验获取data,并且人工标注耗费时间。所以想寻找一个能获取最少label的data的方法。

2.Active Learning 主动学习 - 拿到的是最小数据集

 源码

 核心内容:通过选择更有效的数据,用更少的data实现更好的acc。

比如c的data就比b的data更有效,更接近真实的分界线。

    

流程图:uncertainty的理解是关键。

三、手搓代码

思路:

1)首先在未标记的数据集中选取少量样本进行标注,构成训练集;

2)选取训练模型,使用少量标注样本的训练集对模型进行训练,此时模型的性能不高;

3)使用训练好的模型预测未标注的样本;

4)定义查询策略,根据策略返回未标注样本的优先级评分,选择出的需要标注的数据,进行人工标注;

5)将新选择的数据加入到训练集中更新训练集,使用更新后的训练集来训练模型;

6)判断模型是否达到停止准则?若未达到停止标准,则继续利用查询策略选择需要被标记的样本并进行人工标注,循环第4-5-6步,直到达到停止标准(这个准则可以是迭代次数,也可以是准确率等指标达到设定值例如模型精度超过99%),表示模型已训练好可以应用。

策略包括:

1· Least Confident:看到上上图可以理解,LC会通过当前的model计算整个X_pool中最靠近分界线的data,也就是分为两类概率相同/接近的data,即最uncertainty的就是最先选择的。然后把选好的data组成一个data set,就构成了需要最少label的数据集。所以只要是能度量uncertainty的模型都能用这个AL的方法。

    

2· Query-by-committee:用之前data训练出多个不同model,然后互相找出意见最不一样的点,作为uncertainty的度量。

四、贝叶斯优化

已经train完了,用于大模型调整超参数,即神经网络这种黑盒模型 无法数学表达出参数。比网格搜索和随机搜索更高效。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐