超好用的自信学习:1行代码查找标签错误,3行代码学习噪声标签
十三 发自 凹非寺
量子位 报道 | 公众号 QbitAI
你知道吗?就连ImageNet中也可能至少存在10万个标签问题。
在大量的数据集中去描述或查找标签错误本身就是挑战性超高的任务,多少英雄豪杰为之头痛不已。
最近,MIT和谷歌的研究人员便提出了一种广义的自信学习(Confident Learning,CL)方法,可以直接估计给定标签和未知标签之间的联合分布。
这种广义的CL,也是一个开源的Clean Lab Python包,在ImageNet和CIFAR上的性能比其他前沿技术高出30%。
这种方法有多厉害?举个栗子。
上图是2012年ILSVRC ImageNet训练集中使用自信学习发现的标签错误示例。研究人员将CL发现的问题分为三类:
1、蓝色:图像中有多个标签;
2、绿色:数据集中应该包含一个类;
3、红色:标签错误。
通过自信学习,就可以在任何数据集中使用合适的模型来发现标签错误。下图是其他三个常见数据集中的例子。
△目前存在于Amazon Reviews、MNIST和Quickdraw数据集中的标签错误的例子,这些数据集使用自信学习来识别不同的数据模式和模型。
这么好的方法,还不速来尝鲜?
什么是自信学习?
自信学习已然成为监督学习的一个子领域。
从上图不难看出,CL需要2个输入:
1、样本外预测概率;
2、噪声标签;
对于弱监督而言,CL包括三个步骤:
1、估计给定的、有噪声的标签和潜在的(未知的)未损坏标签的联合分布,这样就可以充分描述类条件标签噪声;
2、查找并删除带有标签问题的噪声(noisy)示例;
3、进行消除错误的训练,然后根据估计的潜在先验重新加权示例。
那么CL的工作原理又是什么呢?
我们假设有一个数据集包含狗、狐狸和奶牛的图像。CL的工作原理就是估计噪声标签和真实标签的联合分布(下图中右侧的Q矩阵)。
△左:自信计数的示例;右:三类数据集的噪声标签和真实标签的联合分布示例。
接下来,CL计数了100张被标记为“狗”的图像,这些图像就很可能是“狗”类(class dog),如上图左侧的C矩阵所示。
CL还计数了56张标记为狗,但高概率属于狐狸的图像,以及32张标记为狗,但高概率属于奶牛的图像。
而后的中心思想就是,当一个样本的预测概率大于每个类的阈值时,我们就可以自信地认为这个样本是属于这个阈值的类。
此外,每个类的阈值是该类中样本的平均预测概率。
轻松上手Clean Lab
刚才也提到,本文所说的广义CL,其实是一个Clean Lab Python包。而它之所以叫Clean Lab,是因为它能“clean”标签。
Clean Lab具有以下优势:
速度快:单次、非迭代、并行算法(例如,不到1秒的时间就可以查找ImageNet中的标签错误);
鲁棒性:风险最小化保证,包括不完全概率估计;
通用性:适用于任何概率分类器,包括 PyTorch、Tensorflow、MxNet、Caffe2、scikit-learn等;
独特性:唯一用于带有噪声标签或查找任何数据集/分类器标签错误的多类学习的软件包。
1行代码就查找标签错误!
# Compute psx (n x m matrix of predicted probabilities) on your own, with any classifier.
# Be sure you compute probs in a holdout/out-of-sample manner (e.g. cross-validation)
# Now getting label errors is trivial with cleanlab... its one line of code.
# Label errors are ordered by likelihood of being an error. First index is most likely error.
fromcleanlab.pruning importget_noise_indices
ordered_label_errors = get_noise_indices(
s = numpy_array_of_noisy_labels,
psx = numpy_array_of_predicted_probabilities,
sorted_index_method= 'normalized_margin', # Orders label errors
)
3行代码学习噪声标签!
fromcleanlab.classification importLearningWithNoisyLabels
fromsklearn.linear_model importLogisticRegression
# Wrap around any classifier. Yup, you can use sklearn/pyTorch/Tensorflow/FastText/etc.
lnl = LearningWithNoisyLabels(clf=LogisticRegression)
lnl.fit(X = X_train_data, s = train_noisy_labels)
# Estimate the predictions you would have gotten by training with *no* label errors.
predicted_test_labels = lnl.predict(X_test)
接下来,是Clean Lab在MNIST上表现。可以在这个数据集上自动识别50个标签错误。
原始MNIST训练数据集的标签错误使用rankpruning算法进行识别。描述24个最不自信的标签,从左到右依次排列,自顶向下增加自信(属于给定标签的概率),在teal中表示为conf。预测概率最大的标签是绿色的。明显的错误用红色表示。
传送门
项目地址:
https://github.com/cgnorthcutt/cleanlab/
自信学习博客:
https://l7.curtisnorthcutt.com/confident-learning
Reddit讨论:
https://www.reddit.com/r/MachineLearning/comments/drhtkl/r_announcing_confident_learning_finding_and/
— 完—
问卷福利!人工智能行业白皮书即将发布
量子位&IDC中国将联合发布「2019中国人工智能行业白皮书」,并于12月6日MEET大会重磅发布,特请小伙伴们填写一下问卷,谢谢大家支持~
填写福利:发布后第一时间获得白皮书,AI内参、大会观众票3折优惠券。 点击下图即可填写问卷、领取问卷福利:
榜单征集!三大奖项,锁定AI Top玩家
2019中国人工智能年度评选启幕,将评选领航企业、商业突破人物、最具创新力产品3大奖项,并于MEET 2020大会揭榜,欢迎优秀的AI公司扫码报名!
量子位 QbitAI · 头条号签约作者
վ'ᴗ' ի 追踪AI技术和产品新动态
喜欢就点「在看」吧 !
相关文章
-
苹果6手机卡顿反应慢怎么解决卡
-
阿里京东拼多多合围下沉市场,拼购“三国杀”一触即发
-
阿伦茨现身时装秀一起和大家分享未来计划
-
9个月巨亏8.6亿,瑞幸咖啡会不会成为下一下ofo?
-
鲸鱼加速器为什么获取不了验证码
-
从酒类的“超级品类日”,浅谈电商产品运营的规划设计
-
华为MateX亮相MWC2019原来不只是5G和折叠屏
-
汽车物流界三“大佬”会面,组建联合物流技术研究中心
-
微软Win11硬件检测工具更新,可告诉用户为什么不符合要求
-
不断肢解的锤子难再翻身对科技圈最大的遗憾是什么?
-
物美接盘近半数邻家门店,更名为“多点便利店”
-
有赞:将执行996工作制,工作家庭平衡不好可以离婚
-
马化腾青腾大学演讲:人口红利正在向创新红利转变
-
新书《阿尔加》:将未来金融和科幻大胆融合,一场人机博弈悄然上演!
-
国内知名音乐站无法访问疑倒闭,创始人曾被坤音娱乐控诉挪用1000万
-
研发实战:如何用OculusMedium快速雕刻模拟3D形状
-
在寻找深圳最后一台途歌时,我们走进了一个破旧院子
-
《古董局中局》互动剧上线腾讯视频,「互影科技」说“互动内容”才是未来
-
微信怎样注意隐私安全
-
苹果A14或成首款超3GHz的Arm处理器,多核跑分高A13芯片33%
-
“风口杀手”罗永浩:电子烟迎禁令,因370万债务被限制高消费
-
进口大虾激战中国江湖,三四线城市成重要消费市场
-
想找不用休息只会工作的员工?RPA就是你一直期待的那个“人”
-
瑞幸北京裁撤80家店,今年要关掉近五分之一
-
百人谈|在线教育普惠化的未来,已经从音视频开始
-
阿里凶猛
-
晓觅云|工业4.0下,中小微企业该何去何从?
-
"坤伦大战"带火微博超话兴趣社区值得不值得?
-
半小时后离开社交媒体,你可能会更快乐