DL杂谈
好久不写了,几点这次项目经验吧,本次训练位多任务训练,主要目的训练人脸角度,具体公司项目不细谈。
讲一下主要碰到的坑:
1 最主要问题,网络结构不对称,导致主任务与辅助任务之间的梯度关系不平衡从而导致没法收敛!!!!真的是调参调的心都碎了,最后显示梯度发现这个问题
caffe显示梯度代码:https://blog.csdn.net/jyli2_11/article/details/74989852
其间做过的其他尝试:
1.1 先训练辅助任务, 采用SGD设置大学习率,辅助任务下降至符合要求以后再训练主任务------结果主任务降不下来
1.2 先主任务后辅助,与上面差不多
1.3 交替训练,各跑几轮,都降不下来。。。。。我想死了已经
1.4 以训练终极应达到的loss为标准配比损失函数权重
1.5 以训练过程中的loss基本相同为标准配比损失函数权重
1.6 使用不同的优化方法,主要包括SGD和AdaDelta
以上在没改网络之前都是没用的东西,再改了网络以后采用1.5方法下降速度比较快
所以网络结构很重要!!!虽然其他大佬跟我讲我这个收敛不下来的问题应该网络不是主要原因,但这是我自己经验好吧,先记着。
具体说一下网络结构,使用Mobilenet基础上进行简化,上面讲的没对称指的就是分任务的时候没有同样使用Conv-BN-Scale-Relu结构,直接使用Conv-TanH导致上诉问题,
其实说白了也不是结构对称,就是差个归一化,导致梯度不一样
贴个美美的图吧

2 再讲一点关于caffe的
本次多任务使用主要使用concat层以及slice层,slice层图见上,concat层

数据输入部分采用ImageData格式,比原来那个好用的不行,强烈推荐
因为训练图片只有18W零旋转角度样本,其他角度需要代码生成,所以需要改一定的caffe源码
具体更改Image_Data_Layer.cpp方法见 https://www.cnblogs.com/haiyang21/p/7182676.html?utm_source=itdadao&utm_medium=referral
没改他这么多,自己调着用就行,主要注意top[1]初始化空间分配问题
ok,就讲这么多了,咖啡电视走起来~
DL杂谈的更多相关文章
- DIV+CSS中标签dl dt dd常用的用法
转自:http://smallpig301.blog.163.com/blog/static/9986093201010262499229/ < dl>< /dl>用来创建一个 ...
- [CUDA] CUDA to DL
又是一枚祖国的骚年,阅览做做笔记:http://www.cnblogs.com/neopenx/p/4643705.html 这里只是一些基础知识.帮助理解DL tool的实现. “这也是深度学习带来 ...
- 深度学习 - DL
雷锋网 - 2016 | 人工智能在深度学习领域的前世今生(原文链接) Deep Learning - DL,深度学习是机器学习的一种. 深度学习最重要的作用:表示学习 深度学习实践的四个关键要素 计 ...
- 【转】PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数
原文地址: PHP 杂谈<重构-改善既有代码的设计>之一 重新组织你的函数 思维导图 点击下图,可以看大图. 介绍 我把我比较喜欢的和比较关注的地方写下来和大家分享.上次我写 ...
- [DL学习笔记]从人工神经网络到卷积神经网络_2_卷积神经网络
先一层一层的说卷积神经网络是啥: 1:卷积层,特征提取 我们输入这样一幅图片(28*28): 如果用传统神经网络,下一层的每个神经元将连接到输入图片的每一个像素上去,但是在卷积神经网络中,我们只把输入 ...
- 动态加载框架DL分析
动态加载框架DL分析 插件化开发,主要解决三个问题1.动态加载未安装的apk,dex,jar等文件2.activity生命周期的问题,还有service3.Android的资源调用的问题 简单说一下怎 ...
- HTML 列表 <ol><ul><li><dl><dt><dd>
<ol>标签-有序列表 定义和用法: <ol>标签定义有序列表. HTML 与 XHTML 之间的差异 在 HTML 4.01 中,ol 元素的 "compact&q ...
- ul和dl的区别
列表中有标题的时候就用dl,没有的话就用ul
- 【管理心得之三十二】PMP杂谈---------爱情必胜术
这次一反常态,没有场景设计,我想借此文普及一下PMP是什么? 但我不知道这样枯燥的话题能否能引起你的兴趣,我不得不套用“标题党”<爱情必胜术>来博你眼球. 我真没有说谎,此文是献给那些孤身 ...
随机推荐
- 微信小程序页面之间的跳转
一.使用标签跳转 index.wxml: 在index.wxml页面添加一个<navigator>元素,在元素里面使用属性url就可以 二. ...
- 开源监控系统Prometheus介绍
前言 Prometheus是CNCF的一个开源项目,Google BorgMon监控系统的开源版本,是一个系统和服务的监控系统.周期性采集metrics指标,匹配规则和展示结果,以及触发某些条件的告警 ...
- python 基础 4.2 高阶函数上
一.高阶函数 把函数当做参数传递的一种函数 1>map()函数 map函数是python内置的一个高阶函数,它接受一个函数f和一个list,并把list元素以此传递给函数f,然后返回一个函数 ...
- 继续封装DBDA.php 加入ajax
<?php class DBDA { public $host = "localhost"; //服务器地址 public $uid = "root"; ...
- Eclipse + JDK + tomcat开发环境配置
第一步:下载jdk和tomcat:JDK下载 Tomcat下载 最新的jdk为1.6.10,tomcat为6.0,建议jdk1.4以上,tomcat4.0以上 第二步:安装和配置 ...
- 怎么查看自己的IP地址?
https://jingyan.baidu.com/article/63f2362816d56c0208ab3dd5.html 1.通过自己的电脑查看的是内部局域网的IP地址 2.通过网上查看的IP地 ...
- Locality-sensitive hashing Pr[m(Si) = m(Sj )] = E[JSˆ (Si, Sj )] = JS(Si, Sj )
A hash function that maps names to integers from 0 to 15. There is a collision between keys "Jo ...
- Python运维编程
Python运维编程 作者:Danbo 2015-10-11 什么是Python,为什么要使用Python? 这个大家自行谷歌,不过看看知乎你就知道Python有多么强大:http://www.zh ...
- SDUT 2766 小明传奇2
小明传奇2 Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 小明不但创建了自己的商店而且选择了建立了自己的货币系统. 传统地,一个 ...
- python学习笔记:第七天(函数)
Python3 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率. 与C一样,Python提供了许多内建函数,比如print().同 ...