这7 个深度学习实用技巧,你掌握了吗?

2018-02-12 16:21:00 来源:推酷
标签:
前几天,深度学习工程师George Seif发表了一篇博文,总结了7个深度学习的技巧,主要从提高深度学习模型的准确性和速度两个角度来分析这些小技巧。在使用深度学习的时候,我们不能仅仅把它看成一个黑盒子,因为网络设计、训练过程、数据处理等很多步骤都需要精心的设计。作者分别介绍了7个非常实用小技巧:数据量、优化器选择、处理不平衡数据、迁移学习、数据增强、多个模型集成、加快剪枝。相信掌握了这7个技巧,能让你在实际工作中事半功倍!
 
7 Practical Deep Learni ng Tips
 
7个实用的深度学习技巧
深度学习已经成为解决许多具有挑战性问题的方法。 在目标检测,语音识别和语言翻译方面,深度学习是迄今为止表现最好的方法。 许多人将深度神经网络(DNNs)视为神奇的黑盒子,我们输入一些数据,出来的就是我们的解决方案! 事实上,事情要复杂得多。
 
在设计和应用中,把DNN用到一个特定的问题上可能会遇到很多挑战。 为了达到实际应用所需的性能标准,数据处理、网络设计、训练和推断等各个阶段的正确设计和执行至关重要。 在这里,我将与大家分享7个实用技巧,让你的深度神经网络发挥最大作用。
 
 
▌ 1-数据,数据,数据
这不是什么大秘密,深度学习机需要大量的“燃料”, 那“燃料”就是数据。拥有的标签数据越多,模型的表现就越好。 更多数据产生能更好性能的想法,已经由谷歌的大规模数据集(有3亿图像)证明!为了感受数据带给深度学习模型的性能提升,在部署Deep Learning模型时,你应该不断地为其提供更多的数据和微调以继续提高其性能。 Feed the beast:如果你想提高你的模型的性能,就要提供更多的数据!
 
图显示数据量的增加会得到更好的性能
 
▌ 2-你应该选择哪一个优化器
多年来,已经开发了许多梯度下降优化算法,他们各有其优缺点。 一些最流行的方法如下:
 
Stochastic Gradient Descent (SGD) with momentum
 
Adam
 
RMSprop
 
Adadelta
 
RMSprop,Adadelta和Adam被认为是自适应优化算法,因为它们会自动更新学习率。 使用SGD时,您必须手动选择学习率和动量参数,通常会随着时间的推移而降低学习率。
 
在实践中,自适应优化器倾向于比SGD更快地收敛, 然而,他们的最终表现通常稍差。 SGD通常会达到更好的minimum,从而获得更好的最终准确性。但这可能需要比某些优化程序长得多的时间。 它的性能也更依赖于强大的初始化和学习率衰减时间表,这在实践中可能非常困难。
 
因此,如果你需要一个优化器来快速得到结果,或者测试一个新的技术。 我发现Adam
 
很实用,因为它对学习率并不是很敏感。 如果您想要获得绝对最佳的表现,请使用SGD + Momentum,并调整学习率,衰减和动量值来使性能最优化。
 
▌ 两全其美的办法
最近已经证明,可以得到两全其美的结果:从 Adam   到SGD的高性能高速训练! 这个想法是,实际上由于在训练的早期阶段SGD对参数调整和初始化非常敏感。 因此,我们可以通过使用Adam来开始训练,这将节省相当长的时间,而不必担心初始化和参数调整。 那么,一旦Adam获得较好的参数,我们可以切换到SGD +动量优化,以达到最佳性能!
 
 
Adam vs SGD 性能 
 
▌ 3-如何处理不平衡数据
在很多情况下,都要处理不平衡的数据,特别是实际应用程序中。 一个简单而实际的例子如下:训练您的深度网络以预测视频流中是否有人持有致命武器。 但是在你的训练数据中,你只有50个拿着武器的人的视频和1000个没有武器的人的视频! 如果你只是用这些数据来训练你的网络,那么你的模型肯定会非常偏向于预测没有人有武器!
 
你可以做用以下的方法来解决它:
 
在损失函数中使用类权重。 本质上就是,让实例不足的类在损失函数中获得较高的权重,因此任何对该类的错分都将导致损失函数中非常高的错误。
 
过度采样:重复一些实例较少的训练样例,有助于平衡分配。 如果可用的数据很小,这个方法最好。
 
欠采样:一些类的训练实例过多,可以简单地跳过一些实例。 如果可用数据非常大,这个方法最好。
 
为少数类增加数据。可以为少数类创建更多的训练实例! 例如,在前面检测致命武器的例子中,你可以改变属于具有致命武器的类别的视频的颜色和光照等。
 
 
关注与非网微信 ( ee-focus )
限量版产业观察、行业动态、技术大餐每日推荐
享受快时代的精品慢阅读
 

 

继续阅读
深度学习框架比较,Caffe/Tensorflow/ Keras有何不同?
深度学习框架比较,Caffe/Tensorflow/ Keras有何不同?

人工智能的浪潮正席卷全球,诸多词汇时刻萦绕在我们的耳边,如人工智能,机器学习,深度学习等。“人工智能”的概念早在1956年就被提出,顾名思义用计算机来构造复杂的,拥有与人类智慧同样本质特性的机器。

让摩尔定律死亡的不是芯片工艺和设计,而是AI芯片的出现?
让摩尔定律死亡的不是芯片工艺和设计,而是AI芯片的出现?

昨天,OpenAI发布了一份名为《AI与计算》的分析报告,自2012年以来,AI训练任务所运用的算力每3.43个月就会翻倍,这一数字大大超越了芯片产业长期存在的摩尔定律(每18-24个月芯片的性能会翻一倍)。

谷歌I/O 2018回顾,除了AI还是AI?

2018 年 5 月 8 日,一年一度的谷歌 I/O 开发者大会在美国加州山景城开幕。

在自动驾驶领域,人工智能不是万能的
在自动驾驶领域,人工智能不是万能的

随着深度学习技术的突飞猛进,人工智能技术也得到了爆发式的发展,而就在这样的背景下,人工智能技术正在走向汽车,无人驾驶 开始成为如今创投圈内最为耀眼的明星。

英特尔正部署人工智能全栈式解决方案,你能干啥?
英特尔正部署人工智能全栈式解决方案,你能干啥?

近日,以“应用人工智能”为主题,英特尔与O’Reilly联合主办的中国人工智能大会在北京举行,英特尔在会上分享了人工智能实际应用方面的技术和最新创新成果,展示了人工智能全栈解决方案,分享了如何利用英特尔人工智能产品和技术深入挖掘不同行业数据价值,解决实际问题,加速人工智能产业落地的洞察和实践经验。

更多资讯
可穿戴设备只能买贵的?

如今手机非常普及,但因受制于便携或功能上已接近极限,不少市民开始将目光放到可穿戴设备上。

大数据妙用让深圳与众不同

手机点一点,就能解决上下班通勤难题;眼睛眨一眨,就能办好100项政务服务;鼠标动一动,就能享受快捷的便民服务。在深圳这样一座科技创新之都,大数据、云计算、物联网、移动互联网、人工智能等新兴技术风起云涌,正在给人们的生活带来巨大改变。

华为又要放大招,余承东出马说“很吓人”
华为又要放大招,余承东出马说“很吓人”

此前,华为消费者BG总裁余承东透露今年华为会有更大的技术突破,并以“很吓人”三个字来形容这项技术突破。而据了解,这项技术将于近期正式发布。

SLAM算法在AGV小车中的使用
SLAM算法在AGV小车中的使用

AGV想要自主行走主要是解决“在哪里?”、“要去哪?”、“怎么去?”这三个问题。“在哪里?”是定位的问题,“要去哪?”是路径规划的问题,“怎么去?”是导航的问题,解决了这三个问题也就基本上解决了agv自由行走的问题。

有了这套系统,工厂产线将成为“永动机”
有了这套系统,工厂产线将成为“永动机”

在机器人自动化生产工厂中,有两大问题一直困扰着工厂的生产管理者。

Moore8直播课堂
电路方案