预训练的基本原理,是先用某相关领域的廉价大数据集或相同领域的噪声数据(noisy data)训练神经网络(或其他机器学习算法)。尽管这种方法不能直接解决原始问题,但它能使神经网络对于要预测的问题形成一个模糊的印象。第二步,针对要解决的问题获取一个更小、更昂贵的数据集,并利用它来进一步优化神经网络的参数。 其流程如下图所示: 当数据集很难获取时:先在某相关领域的廉价大数据集上对神经网络进行预训练;而后,在标注准确的高价值数据集上对神经网络进行优化调整。同小数据集训练相比,该方法能使算法的性能得到很大的提升。 在优化调整时,类别数可能会发生改变:人们通常在类别数为1000的数据集(如ImageNet)上预训练神经网络,然后根据所要解决的特定问题来对神经网络进行优化调整,这些问题的类别数可能不同。 这就意味着必须重新初始化最后一层网络。最后一层网络的学习速率通常会设置得高一点,因为它需要从零开始学习,而前面几层的学习速率设置则较低。对于像ImageNet这样的数据集来说,(最后全连接层的)特征学习非常通用,可直接用来处理其他计算机视觉问题。 如何来获取预训练所需的数据? 预训练数据源 1、预训练模型:网上有很多经过训练的模型。首先要推荐的就是Model Zoos。 Model Zoos网站上发布有一系列不同的已训练模型,它们都已经过专家学者、公司机构与深度学习爱好者的训练。 可查看 https://github.com/BVLC/caffe/wiki/Model-Zoo https://github.com/fchollet/deep-learning-models 2、公共数据集:网上还有很多数据集。所以在自己动手采集数据前,要先检查网上是否已存在能够解决你手上问题的那些数据集。 可查看: https://github.com/caesar0301/awesome-public-datasets https://archive.ics.uci.edu/ml/datasets.html 3、数据抓取:如果找不到公开的预训练模型或数据集,你可以用一种懒办法来生成数据集,无需你手动标记:做一个能自动从特定网站抓取标注数据的爬虫。这样你就能自动生成一个新的数据集。 预训练数据源 弱标注数据(Weakly labeled data) 我们是在标注准确的数据上优化调整神经网络,因而在所谓的弱标注数据上进行预训练是可行的。 弱标记数据是指标注不完全准确的数据(比如,90%的标注是正确的,剩下的10%是错误的)。这种数据的优势是可以自动获取,无需人类手动进行标注。这与那些由人类手动标注每张图像的数据相比,在成本上较为低廉。 举例来说:读博期间,我从维基百科和IMDB抓取了500张面部图像。结合个人档案的出生日期与照片标题所暗示的拍摄日期,我们就能为每张图像估算一个大致的年龄。注意,某些情况下,图像标题中的年份可能是错误的;或是照片显示有多人,但面部检测器所选择的人脸却是另一个人的。这样一来,我们就不能确保年龄标注在所有情况下都正确。但结果说明,相比只在准确标注的小型数据集上训练,在弱标注的大型数据集上进行预训练更有助于提升算法的性能。 同样的逻辑可以用在医学影像检测的问题上,该问题要求,多位医生必须独立标注相同的图像,以确保百分之百的准确率。这样的数据集可用作优化调整。此外,采用仅由一人来做的弱标注,我们就能采集到一个更大的数据集。由此,我们不仅降低了标注的总成本,同时还仍能确保神经网络训练图像的多样性。 总之,提升性能并不总是意味着你要进行非常昂贵的手工标注,你还是能以免费或极低的成本来获取到一个标注数据集。 心得 II:实际标注分配的注意事项 实际分配(via:r4risk.com.au) 获得预训练和优化调整所需的数据后,我们就能进行下一步了——开始训练神经网络。这一环节上,学术研究与现实世界之间又大不相同。 在学术研究中,直播,数据集通常是平衡的。这就意味着,对于监督分类问题,每个类别的样本数大抵相同。 下面是两个实例: MNIST 是一个非常有名的手写数字数据集,其中每个数字的样本数大致相等。 Food 101是学术数据集的另一典型,其中每种食物类别(共101个)都准确包含1000张图像。 MNIST和Food101都是平衡的数据集 不平衡的标注分配 我再一次用这两个现实案例来说明问题: 医学影像检测:医学影像训练的数据非常不平衡。大部分人都是健康的,只有一小部分的人患有某种疾病。 信用评分:事实上,大部分客户都会偿还贷款,只有1–2%的客户会违约。 不平衡的实际标注分配 如上图所示,这两个实例中的标注分配很不平衡。这在绝大部分现实应用中都很典型。事实上,每个类别都是相同数量的样本才很罕见。 误分类的不均衡成本 不幸的是,这种情况会变得更糟:在学术数据集中,各类别的误分类成本通常相同。但在现实应用中,直播,情况却大为不同: (责任编辑:本港台直播) |