好久不写了,几点这次项目经验吧,本次训练位多任务训练,主要目的训练人脸角度,具体公司项目不细谈。

讲一下主要碰到的坑:

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杂谈的更多相关文章

  1. DIV+CSS中标签dl dt dd常用的用法

    转自:http://smallpig301.blog.163.com/blog/static/9986093201010262499229/ < dl>< /dl>用来创建一个 ...

  2. [CUDA] CUDA to DL

    又是一枚祖国的骚年,阅览做做笔记:http://www.cnblogs.com/neopenx/p/4643705.html 这里只是一些基础知识.帮助理解DL tool的实现. “这也是深度学习带来 ...

  3. 深度学习 - DL

    雷锋网 - 2016 | 人工智能在深度学习领域的前世今生(原文链接) Deep Learning - DL,深度学习是机器学习的一种. 深度学习最重要的作用:表示学习 深度学习实践的四个关键要素 计 ...

  4. 【转】PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数

    原文地址: PHP 杂谈<重构-改善既有代码的设计>之一 重新组织你的函数 思维导图   点击下图,可以看大图.    介绍   我把我比较喜欢的和比较关注的地方写下来和大家分享.上次我写 ...

  5. [DL学习笔记]从人工神经网络到卷积神经网络_2_卷积神经网络

    先一层一层的说卷积神经网络是啥: 1:卷积层,特征提取 我们输入这样一幅图片(28*28): 如果用传统神经网络,下一层的每个神经元将连接到输入图片的每一个像素上去,但是在卷积神经网络中,我们只把输入 ...

  6. 动态加载框架DL分析

    动态加载框架DL分析 插件化开发,主要解决三个问题1.动态加载未安装的apk,dex,jar等文件2.activity生命周期的问题,还有service3.Android的资源调用的问题 简单说一下怎 ...

  7. HTML 列表 <ol><ul><li><dl><dt><dd>

    <ol>标签-有序列表 定义和用法: <ol>标签定义有序列表. HTML 与 XHTML 之间的差异 在 HTML 4.01 中,ol 元素的 "compact&q ...

  8. ul和dl的区别

    列表中有标题的时候就用dl,没有的话就用ul

  9. 【管理心得之三十二】PMP杂谈---------爱情必胜术

    这次一反常态,没有场景设计,我想借此文普及一下PMP是什么? 但我不知道这样枯燥的话题能否能引起你的兴趣,我不得不套用“标题党”<爱情必胜术>来博你眼球. 我真没有说谎,此文是献给那些孤身 ...

随机推荐

  1. 转载 ----MAC 上搭建lua

    MAC 上搭建lua   其实mac上搭建lua环境,google上大把资料,我只是整合一下,因为小弟搭建的时候确实碰到一些问题. 下载和安装lua:(转自这里) 1.  下载最新版的lua-5.2. ...

  2. Java知识点梳理——读写分离

    1.读写分离:可以通过Spring提供的AbstractRoutingDataSource类,重写determineCurrentLookupKey方法,实现动态切换数据源的功能:读写分离可以有效减轻 ...

  3. mongodb 集群部署--分片服务器搭建

    部署分片服务器 1.分片 为了突破单点数据库服务器的I/O能力限制,对数据库存储进行水平扩展,严格地说,每一个服务器或者实例或者复制集就是一个分片. 2.优势 提供类似现行增·长架构 提高数据可用性 ...

  4. js为Object对象动态添加属性和值 eval c.k c[k]

    const appendInfo = () => { const API_SECRET_KEY = 'https://github.com/dyq086/wepy-mall/tree/maste ...

  5. php依据地理坐标获取国家、省份、城市,及周边数据类

    功能:当App获取到用户的地理坐标时,能够依据坐标知道用户当前在那个国家.省份.城市.及周边有什么数据. 原理:基于百度Geocoding API 实现.须要先注冊百度开发人员.然后申请百度AK(密钥 ...

  6. Java线程池的配置

    1.ThreadPoolExecutor的重要参数 1.corePoolSize:核心线程数 * 核心线程会一直存活,及时没有任务需要执行 * 当线程数小于核心线程数时,即使有线程空闲,线程池也会优先 ...

  7. Feature Selection 其一 —— Filter Approach

    这一个部分都将只涉及到选择特征的某个子集的方法,将高纬度的特征空间映射到低维度空间的方法(如PCA)都不会涉及到. 一. 单变量 优点:运算速度快,独立于分类器 缺点:忽略的特征之间的联系,忽略了与分 ...

  8. 最新App Store审核指南与10大被拒理由

    最近,苹果在官网给出了截至2015年2月份应用被拒绝的十大理由,其中50%以上的应用被拒绝都是因为这10个原因,其中7个理由和2014年相同,其中排名前三的原因分别是:需要补充更多信息.存在明显的bu ...

  9. iOS开发中集成Reveal

    [转]http://blog.devzeng.com/blog/ios-reveal-integrating.html 配置方式一简介有效. Reveal 是一个界面调试工具.使用Reveal,我们可 ...

  10. vector缩减容量

    在C++标准库容器vector的容量是不会自动的缩减的,也就是说删除元素操作,其引用.指针.迭代器也会继续有效.那么当在一个较大的vector中删除了大量的元素之后,其实际的size比较小,而其cap ...