数据规范化和数据预处理的简单认知

数据规范化
数据规范化(Normalization)也称为数据归一化(Regularization),都是翻译的词汇,明白意思就好。
使用TensorFlow等机器学习框架之后,原先最复杂的部分,比如算法实现,都已经由框架帮你解决掉了,完全不懂算法也可以靠抄样例的方式完成工作。事实上现在新的算法不断出现,你已经不太可能搞明白所有算法了,参考成熟算法完成工作已经成为常态。
但是原来算法实现的工作量虽然降低了,但数据从采集、规范化、输入给程序,到完成机器学习运算,再转换为合理的输出。这些工作难度不仅没有降低,而且随着机器学习应用场景的广泛化变得更为复杂。
可以说很多项目的阻碍,都在于无法找到合理的数据规范化方法,从而无法将机器学习应用到场景中。

数据预处理
由数据规范化带来的数据预处理问题往往很复杂,几乎每一个机器学习系统中都可能有不同的实现。而机器学习本身的内核翻来覆去不过就那几个算法,类似前两年一个神经网络就包打了天下。所以机器学习编程语言的能力,就有了很高的要求。
而python刚好是这样可塑性极好的一种语言,并且有丰富的第三方扩展库来实现各种各样的功能。比如图像处理的skimage / cv2(opencv) / pillow / matplotlib,声音处理的librosa / eyed3 / pydub / pyaudio等。有句行间逗比的话说“没有什么是一个python库解决不了的,如果有,那就是两个”。
所以至少当前,机器学习的重点转移到了数字化、大数据和算法,适应性如此之强的python就成了首先工具。
也因为数据预处理往往需要大量长期实际工作经验的积淀,所以实际上机器学习行业虽然是新兴学科,但仍然很需要大量经验丰富的程序员加入其中。很多刚毕业的学生,因为了解到人工智能的火爆,在学校冲刺学习了机器学习的知识,但碰到具体问题时候往往无法下手,所差的大多不是机器学习本身,而是在数据预处理方面经验不足。

样本集分组
科学是可以重复的,科学的研究需要科学的手段,很类似现代西医对药物临床试验的要求,对于“魔法师”一般神奇的人工智能,验证其有效性是很关键的环节。
对于收集到用于机器学习的样本,通常是要划分成三组:训练集、验证集和测试集。分别用于对算法模型进行训练、微调算法参数用验证集样本选择最优的算法以及对一个训练完成的模型使用测试集样本计算这个模型的正确率。
完全独立的划分成三组数据的原因比较复杂,这个原因很类似药物的临时实验的需求,在这里也略去只说结果,通常会把数据集划分成60%:20%:20%的比例,当然具体情况也要具体看。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值