# CSDN_AI_HOMEWORK_W7_2 **Repository Path**: HataFeng/CSDN_AI_HOMEWORK_W7_2 ## Basic Information - **Project Name**: CSDN_AI_HOMEWORK_W7_2 - **Description**: 第七周作业2 进阶 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-03-05 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 第七周作业 2 # 冯炳驹_124298228_w7 ## 作业描述: 采用现有代码框架,实现Densenet算法,并在Tinymind上运行,最终输出验证结果:recall 和 Accuracy。 ### 作业过程描述: #### 第一阶段: 第一次运行结果是采用老师提供的框架上完成 Densenet,参考论文(教程为主和源论文)以及参考其他模式的实现方法去完成代码实现。 分别都尝试过采用 Densenet-121 Densenet-169 但发现运行速度太慢而且效果不好(不确定我的实现有没有问题导致), 后来果断采用开始实验的做法:growth_rate = k = 24 block cov : layers[5,5,5,5] 速度超快,但是收敛不明显,结果如下: ##### 运行结果:[https://www.tinymind.com/executions/zvzw3v8s](http://) ##### ![输入图片说明](https://gitee.com/uploads/images/2018/0304/133116_8dedd5b7_1686942.png "冯炳驹_124298228_W7_2.png") #### 第二阶段: 1. 采用官网框架建立模型 原因之一:发现Tinymind参数传递很麻烦,而且经常出现莫名问题,然后采用官网框架,把参数在写代码中,通过Github更新方法,这样减少莫名问题 2. 采用growth_rate = k = 24 block cov : layers[5,5,5,5] 3. 调参调整learning_rate (参考下面的训练过程) 1) 分别采用 0.1 0.001, 0.0001 运行,定位到 0.001 处得到目前效果较好 在0.1 时到最后,一直都无法继续收敛,然后在这基础上继续用 0.001 训练,效果提示了不少,但运行一段时间后有无法继续收敛.... 2)再采用: 0.05 0.005 ##### 运行结果: ##### 0.005 地址:[https://www.tinymind.com/executions/sqbosu78](https://www.tinymind.com/executions/sqbosu78) ##### ![输入图片说明](https://gitee.com/uploads/images/2018/0305/234909_5e0c2794_1686942.png "learning_late_0.005.png") #### 训练过程如下: ##### 0.1 地址:[https://www.tinymind.com/executions/k1aw2rcm](https://www.tinymind.com/executions/k1aw2rcm) ##### ![输入图片说明](https://gitee.com/uploads/images/2018/0305/153231_5712c438_1686942.png "learning_late_0.1.png") ##### 0.001 地址:[https://www.tinymind.com/executions/6np0skxh](https://www.tinymind.com/executions/6np0skxh) 这个是在 0.0001训练时最开始的地方输出的结果 ##### ![输入图片说明](https://gitee.com/uploads/images/2018/0305/153654_7f2a752b_1686942.png "learning_late_0.001.png") ##### 0.0001 地址:同上: [https://www.tinymind.com/executions/6np0skxh](https://www.tinymind.com/executions/6np0skxh) ##### ![输入图片说明](https://gitee.com/uploads/images/2018/0305/153918_37040f8f_1686942.png "learning_late_0.0001.png") ##### 0.004 地址:[https://www.tinymind.com/executions/6np0skxh](https://www.tinymind.com/executions/6np0skxh) 这个是在 0.006训练时最开始的地方输出的结果 ##### ![输入图片说明](https://gitee.com/uploads/images/2018/0305/214803_876bc70a_1686942.png "learning_late_0.004.png") ##### 0.006 地址:[https://www.tinymind.com/executions/584k2j66](https://www.tinymind.com/executions/584k2j66) 这个是在 0.0055训练时最开始的地方输出的结果 ##### ![输入图片说明](https://gitee.com/uploads/images/2018/0305/214944_3bdad99b_1686942.png "learning_late_0.006.png") ##### 0.005 地址:[https://www.tinymind.com/executions/sqbosu78](https://www.tinymind.com/executions/sqbosu78) ##### ![输入图片说明](https://gitee.com/uploads/images/2018/0305/235123_243ac299_1686942.png "learning_late_0.005s.png") ### 体会: 1. 体会到这种调参方式很麻烦,而且每次运行时间长,痛苦~~ 2. 通过实践的方式不断的把遇到的问题解决,最直接收获是对python,tensorflow和slim框架的理解, 3. 通过实现densenet网络,不断的学习和观看课程,最直接的收获是对论文结构和术语的认识以及对slim的用法和原理的理解 开始实现前多看源代码和API文档,这样可以更快速上手。 还有太多的地方需要学习、提升和理解(包括论文,原理感觉个人理解还差很远,需要看更多论文来提升),对Tinymind的运用 4. 体会最深的工具不熟(python,tensorflow,环境等),所以需要更快速提升。 #### 实现过程中的记录 1. 在Tinymind中浪费了太多时间,Tinymind存在问题,比如代码更新问题,基本需要先删除模式,再修改代码,即新建模型后第一次修改代码才起作用,郁闷~~ 模型运行也遇到启动需要差不多1个小时,而且这个时候不能终止,郁闷~~ 2. 再第二个作业时还是在Tinymind中浪费了太多时间,对参数传递不熟,而且最后还是需要看源代码才解决