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. ubuntu下查询网络的常用命令

    1.查看无线路由器(网关)的IP地址 在terminal中输入如下命令,即可查询到当前使用的路由器的IP地址(我电脑是连着一个无线网络还有一个DSL连接): route|grep -i default ...

  2. 基因调控网络 (Gene Regulatory Network) 01

    本文为入门级的基因调控网络文章,主要介绍一些基本概念及常见的GRN模型. 概念:基因调控网络 (Gene Regulatory Network, GRN),简称调控网络,指细胞内或一个基因组内基因和基 ...

  3. error_reporting() 设置 PHP 的报错级别并返回当前级别

    error_reporting() 设置 PHP 的报错级别并返回当前级别. 语法 error_reporting(report_level) 如果参数 level 未指定,当前报错级别将被返回.下面 ...

  4. LeetCode Input Initial Code

    说明 LeetCode提供的样本输入,显示上是数组Array,而后台的实际测试用例则是树TreeNode,链表ListNode等. 如果你是在页面手撸代码直接提交的,那没什么影响. 如果你是在本地ID ...

  5. 《深入理解java虚拟机》-目录结构

    第一部分 走进Java第1章 走进Java 第二部分 自动内存管理机制 第2章 Java内存区域与内存溢出异常2.1 概述2.2 运行时数据区域2.2.1 程序计数器2.2.2 java虚拟机栈2.2 ...

  6. goweb- session和数据存储

    session和数据存储 Web开发中一个很重要的议题就是如何做好用户的整个浏览过程的控制,因为HTTP协议是无状态的,所以用户的每一次请求都是无状态的,我们不知道在整个Web操作过程中哪些连接与该用 ...

  7. iOS 直接使用16进制颜色

    在做iOS开发时,一般我们会吸色,就是产品给的图我们一般会吸色,但是最近吸色时候,老大说有较大的颜色偏差,所以要求我们直接使用UI给出的额16进制颜色,你也可以搜索<RGB颜色值转换成十六进制颜 ...

  8. 放贷额度相关的ROI计算

    违约模型得到概率估计, 将概率值划分5档, 每一档确定一个授信系数 新的授信 = 每月收入* 授信系数 - 老的授信 计算新增授信额度 计算余额损失

  9. 计算文本长度-boundingRectWithSize

    - (void)viewDidLoad {    [super viewDidLoad]; //新建lable控件 UILabel *lable=[[UILabel alloc]init]; labl ...

  10. TPO6-1Powering the Industrial Revolution

    The source had long been known but not exploited. Early in the eighteenth century, a pump had come i ...