2、 神经网络的搭建以及迁移学习的测试

7.项目总结
通过本次水果图片卷积池化全连接试验分类项目的实践,我对卷积、池化、全连接等相关的理论的理解更加全面和清晰了。试验主要采用python高级编程语言的TensorFlow和Keras这两个库。在实验学习的过程中,开始时,对于TensorFlow和Keras并不是很了解,里面提供的许多方法也不熟悉,但经过老师课堂的讲解和演示一些关键的、和常用的方法或函数,以及对相关参数的传递、变化,如:权值的变化、图片尺寸的变化、图片通道的变化、偏置的设置、优化函数的选取及学习率的选择等等,这些原本不是很了解很熟悉的知识,通过本项目实践和老师的指导以及通过互联网学习平台和课本......我现在已经对这方面的知识已经了解得很是深入了,对TensorFlow这个python库相关变量、常量、方法函数等定义和使用,也十分的熟悉了,并且现在我能够做到使用TensorFlow搭建任意层次的神经网络卷积层、池化层、全连接层,对于一些常量和变量的设定以及它们之间的传递关系也了然于心了,对于基于Keras的VGG19的迁移学习以及使用呢TensorBoard对神经网络层各种参数的可视化等技术和理论知识,也有了很大的进步和了解。
但在实验过程中,我遇到了许多的问题,比如一个最大的问题就是:我搭建的神经网络层的准确率特别的低,由于这个问题,还牵涉到了其它的许多小问题,但我都通过自己的努力解决了。准确率低的原因有很多,以下是我对实验准确率低的一个总结,也是我整个小学期期间尝试最"苦"的地方:
1、神经网络的学习率太大,导致欠拟合
2、搭建的神经网络的层次太多,导致过拟合
3、图片的深度设置太小,导致欠拟合
4、图片的深度设置太大,导致过拟合
5、图片预处理时,裁剪得太多,导致图片许多关键的特征丢失
6、神经网络学习循环的次数太少,也会导致准确率低
7、神经网络优化器选定不当,导致准确率低
8、图片的标签与图片没有对应上
9、加载训练数据时,没有事先乱序处理
10、乱序时,图片数据与标签没有做相对应的变化
11、降低图片的通道数也会导致准确率低
就是这样通过实验的摸索和验证,我对整一个项目的所有知识点慢慢地理解得更加通透、这方面的代码编写能力也有了很大的提高。
8.收获与体会
总的来说,这整一个小学期我的收获有很多,比如深度学习的许多理论知识:卷积、池化、全连接、激活函数、权值、偏置以及如何设定它们来搭建一个或多个深度学习的神经网络层、迁移学习、TensorBoard可视化参数等理论和知识,并且能够独自使用Keras和TensorFlow这两个python库搭建起任意复杂度的卷积神经网络层来进行分析和处理相关的数据了。
通过互联网和各种深度学习资料书,也对TensorFlow的编程框架有了更加清晰、深入的理解,相关的案例都已经了然于胸,也一一动手把案例通过编程实现了出来。对于优化函数部分,也有了更加深入的理解,这部分知识写在了报告的前一部分,作为TensorFlow框架的一部分。正是因为对优化函数的理解,使得我能够对不同的数据处理状况和正确设置相关学习率有了更大的自信。
在此,我要特别地感谢这小学期期间教导我的苏老师,以及给予我帮助和我一起学习、讨论问题的同学,他们都在我学习的过程中给予了很大的帮助,没有他们的指导、讨论,我也不可能短时间内,对深度学习卷积神经网络这一块的知识理解和掌握得那么快,我也会好好努力,以便自己更好地帮助他人解疑答惑,对老师、同学们给予的帮助,再次表示衷心的感谢......

吴裕雄--天生自然 神经网络人工智能项目:基于深度学习TENSORFLOW框架的图像分类与目标跟踪报告(续四)的更多相关文章

  1. 吴裕雄--天生自然 python数据分析:基于Keras使用CNN神经网络处理手写数据集

    import pandas as pd import numpy as np import matplotlib.pyplot as plt import matplotlib.image as mp ...

  2. 吴裕雄--天生自然神经网络与深度学习实战Python+Keras+TensorFlow:使用TensorFlow和Keras开发高级自然语言处理系统——LSTM网络原理以及使用LSTM实现人机问答系统

    !mkdir '/content/gdrive/My Drive/conversation' ''' 将文本句子分解成单词,并构建词库 ''' path = '/content/gdrive/My D ...

  3. 吴裕雄--天生自然神经网络与深度学习实战Python+Keras+TensorFlow:TensorFlow与神经网络的实现

    import tensorflow as tf import numpy as np ''' 初始化运算图,它包含了上节提到的各个运算单元,它将为W,x,b,h构造运算部件,并将它们连接 起来 ''' ...

  4. 吴裕雄--天生自然神经网络与深度学习实战Python+Keras+TensorFlow:Bellman函数、贪心算法与增强性学习网络开发实践

    !pip install gym import random import numpy as np import matplotlib.pyplot as plt from keras.layers ...

  5. 吴裕雄--天生自然神经网络与深度学习实战Python+Keras+TensorFlow:RNN和CNN混合的鸡尾酒疗法提升网络运行效率

    from keras.layers import model = Sequential() model.add(embedding_layer) #使用一维卷积网络切割输入数据,参数5表示每各个单词作 ...

  6. 吴裕雄--天生自然神经网络与深度学习实战Python+Keras+TensorFlow:LSTM网络层详解及其应用

    from keras.layers import LSTM model = Sequential() model.add(embedding_layer) model.add(LSTM(32)) #当 ...

  7. 吴裕雄--天生自然python机器学习:基于支持向量机SVM的手写数字识别

    from numpy import * def img2vector(filename): returnVect = zeros((1,1024)) fr = open(filename) for i ...

  8. 吴裕雄--天生自然 PYTHON数据分析:基于Keras的CNN分析太空深处寻找系外行星数据

    #We import libraries for linear algebra, graphs, and evaluation of results import numpy as np import ...

  9. 吴裕雄--天生自然 pythonTensorFlow图形数据处理:解决module 'tensorflow' has no attribute 'Session'

    原因:因为是tensorflow 2.0版本

随机推荐

  1. Morse code(多模式串匹配)

    链接:https://ac.nowcoder.com/acm/contest/3665/E来源:牛客网 题目描述 Morse code is a character encoding scheme u ...

  2. LeetCode——787. K 站中转内最便宜的航班

    有 n 个城市通过 m 个航班连接.每个航班都从城市 u 开始,以价格 w 抵达 v. 现在给定所有的城市和航班,以及出发城市 src 和目的地 dst,你的任务是找到从 src 到 dst 最多经过 ...

  3. UML-领域模型-如何找到概念类

    有3个方法 方法1:对已有的重用和修改(这是最好的方法) 重用和修改现有模型.这些模型来源于之前的项目.网上的 方法2:使用分类列表 从网上搜索该领域的常见分类,或参考书籍Martin Fowler的 ...

  4. css 传数据套路

    <input type=hidden> 那么该标签就不会显示 但是我们可以用这个标签储存数据 这是一个利用标签元素隐藏

  5. springBoot中mybatis错误之 Property 'configuration' and 'configLocation' can not specified with together 解决

    mybatis.config-location与mybatis.config-locations不同 mybatis.config-location不加载全局配置文件

  6. 项目中关于RPC 和rocketMQ使用场景的感受

    在花生待的这半年,切身体会了系统之间交互场景的接口技术实现方式,个人总结.仅供参考: 1.关于rpc接口,一般情况下 都是同步的.A系统的流程调用B系统.等着B返回,根据返回结果继续进行A接下来的流程 ...

  7. git commit撤回操作

    git commit 之后没有push,怎么回撤commit操作呢? $ git reset HEAD~

  8. Python_自动化运维

    1. 生成磁盘使用情况的日志文件 #!/usr/bin/env python#!coding=utf-8​import timeimport os​new_time = time.strftime(' ...

  9. 使用js/jquery动态提交表单数据到搜索引擎或者接口

    现在一般需要用jquery等方式动态提交到某个接口,比如通过iframe <iframe id="mainIframe" name="mainIframe" ...

  10. Linux基础篇八:VIM

    新知识: 普通模式光标跳转: G     ##光标跳转到末端  (shift +g) gg   ##光标跳转到开端 Ngg 15gg  ##光标跳转到当前文本中的15行 $     ##光标移动到当前 ...