fine-tuning

fine-tuning是微调的意思,是用别人训练好的模型(即pre-trained model),加上我们自己的数据,来训练新的模型。fine tune相当于使用别人的模型的前几层,来提取浅层特征,然后在最后再落入我们自己的分类中。

一般来说我们自己需要做的方向,比如在一些特定的领域的识别分类中,我们很难拿到大量的数据。因为像在ImageNet上毕竟是一个千万级的图像数据库,通常我们可能只能拿到几千张或者几万张某一特定领域的图像,比如识别衣服啊、标志啊、生物种类等等。在这种情况下重新训练一个新的网络是比较复杂的,而且参数不好调整,数据量也不够,因此fine-tuning微调就是一个比较理想的选择。

如果想网络中某几层参数不变,可以设置对应learning rate为0让这些层的参数不学习

关于fine-tuning两个比较好的博客:

http://www.cnblogs.com/louyihang-loves-baiyan/p/5038758.html

http://www.cnblogs.com/alexcai/p/5469478.html

知乎上的一个问题:

https://www.zhihu.com/question/35754716

时间: 2024-12-28 20:20:46

fine-tuning的相关文章

dbrd 8.4.6 源代码编译安装

---------------------------- 0.系统环境 ---------------------------- db01 192.168.50.10 /dev/sdb1 主节点 db02 192.168.50.20 /dev/sdb1 备节点 # grep -v "#" /etc/hosts 192.168.50.10 db01 db01.mysql.com 192.168.50.20 db02 db02.mysql.com #一块新硬盘 ll /dev/sd* ll

centos 7.2 Apache+mysql+php step by step备忘

1. 如何允许laravel程序执行sudo shell脚本? chmod u+w /etc/sudoers ; echo "apache ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers 再注释掉Defaults requiretty这行,否则会要求有tty才能运行!(TODO: 写shell实现自动化) chmod u-w /etc/sudoers2. OS: CentOS 7.2 x643. 安装zend server ce: (由于ze

(转)The 9 Deep Learning Papers You Need To Know About (Understanding CNNs Part 3)

Adit Deshpande CS Undergrad at UCLA ('19) Blog About The 9 Deep Learning Papers You Need To Know About (Understanding CNNs Part 3) Introduction Link to Part 1Link to Part 2 In this post, we’ll go into summarizing a lot of the new and important develo

Caffe基础介绍

Caffe的全称应该是Convolutional Architecture for Fast Feature Embedding,它是一个清晰.高效的深度学习框架,它是开源的,核心语言是C++,它支持命令行.Python和Matlab接口,它既可以在CPU上运行也可以在GPU上运行.它的license是BSD 2-Clause. Deep Learning比较流行的一个原因,主要是因为它能够自主地从数据上学到有用的feature.特别是对于一些不知道如何设计feature的场合,比如说图像和sp

Delphi DLL制作和加载 Static, Dynamic, Delayed 以及 Shared-Memory Manager

一 Dll的制作一般分为以下几步:1 在一个DLL工程里写一个过程或函数2 写一个Exports关键字,在其下写过程的名称.不用写参数和调用后缀.二 参数传递1 参数类型最好与window C++的参数类型一致.不要用DELPHI的数据类型.2 最好有返回值[即使是一个过程],来报出调用成功或失败,或状态.成功或失败的返回值最好为1[成功]或0[失败].一句话,与windows c++兼容.3 用stdcall声明后缀.4 最好大小写敏感.5 无须用far调用后缀,那只是为了与windows 1

部分经典IT书籍

[系统,网路管理]1) Learning the Unix Operating System 1565923901 O'reilly/1997-4ed ***强力推荐给想入门unix的网友们!! 就只有薄薄的不到100页,在书局偶然发现....深觉其内容适合初学者 相信只要读它,一个下午就可以了解基本UNIX的操作!! 2) Unix : Visual Quickstart Guide 0201353954 A-W/1998-1ed ***强力推荐给想入门unix的网友们!! 比上面那本大了点,

PyQt5应用与实践

一个典型的GUI应用程序可以抽象为:主界面(菜单栏.工具栏.状态栏.内容区域),二级界面(模态.非模态),信息提示(Tooltip),程序图标等组成.本篇根据作者使用PyQt5编写的一个工具,介绍如何使用PyQt5构建一个典型的GUI应用. 1. 主界面 QMainWindow类提供一个有菜单条.锚接窗口(例如工具条)和一个状态条的主应用程序窗口.主窗口通常用在提供一个大的中央窗口部件(例如文本编辑或者绘制画布)以及周围菜单.工具条和一个状态条.QMainWindow常常被继承,因为这使得封装中

【CS-4476-project 6】Deep Learning

AlexNet / VGG-F network visualized by mNeuron. Project 6: Deep LearningIntroduction to Computer Vision Brief Due date: Tuesday, December 6th, 11:55pm Project materials including starter code, training and testing data, and html writeup template: proj

C#的多线程——使用async和await来完成异步编程(Asynchronous Programming with async and await)

https://msdn.microsoft.com/zh-cn/library/mt674882.aspx 侵删 更新于:2015年6月20日 欲获得最新的Visual Studio 2017 RC文档,参考Visual Studio 2017 RC Documentation. 使用异步编程,你可以避免性能瓶颈和提升总体相应效率.然而,传统的异步方法代码的编写方式比较复杂,导致它很难编写,调试和维护. Visual Studio 2012引入了一个简单的异步编程的方法,依赖.NET Fram

程序包管理之rpm/yum/编译

本次操作的环境依然还是在CentOS6.6上. 第一部分:rpm解释说明 1.对rpm包的一些简单的解释 在windows系统中,安装一个程序很简单.直接点击下一步一直安装下去即可.但是在linux系统下,却不是.如果玩转linux系统,却连软甲都不会装,确实有些说不过去.因此,今天写点关于linux程序包管理安装的东西. 1.先对linux软件程序需要的程序包进行一定的了解.所谓程序包,其实就是所需程序的安装包.在不同的linux系统上,程序包的格式以及管理工具也有些不同在redhat上以rp