7月


7月

这半个月主要对·CNN的一些数理基础进行了推理和复习,虽然依旧有很多不能理解,但之后会继续学习。

一. 数理内容

对多层感知机和线性回归和逻辑回归,卷积层和下采样层,SoftMax回归

多层感知机

原始数据是非线性可分的,但是可以通过某种方法将其映射到一个线性可分的高维空间中,从而使用线性分类器完成分类

逻辑回归

逻辑回归的世界中,结果变量与自变量的对数概率(log-odds)具有线性关系,输出数据点在一个或另一个类别中的概率,而不是常规数值

SoftMax回归

使用广义线性模型来拟合这个多项分布,由广义线性模型推导出的目标函数hθ(x),hθ(x)即为SoftMax回归的分类模型。

卷积层和下采样层

局部感受野,每个隐层节点只连接到图像某个足够小局部的像素点上,从而大大减少需要训练的权值参数,权值共享,结构、功能是相同的,甚至是可以互相替代的。也就是,在卷积神经网中,同一个卷积核内,所有的神经元的权值是相同的,从而大大减少需要训练的参数,池化,也就是每次将原图像卷积后,都通过一个下采样的过程,来减小图像的规模

一. 代码内容

这里对代码的实现参考了github和csdn的一些博文和库。

多层感知机(MLP)

主要是numpy、theano,以及python自带的os、sys、time模块,代码细节不过多赘述,这里值得注意的是,对SoftMax是MLP的基本构件之一,网络整体取决于这几个东西的架构,主要分为定义MLP模型和将MLP应用于MNIST

逻辑回归

先定义sigmoid函数,声音随机梯度上升算法或随机梯度下降算法,初始化权重,然后进行迭代优化,计算损失,更新权重值,然后随机删除选中下标,再次迭代

SoftMax回归

处理损失函数和导数,简化冗余参数,计算每个样本的类概率,计算损失函数,构造示性函数,计算导数

卷积层和下采样层

具体依托与整个算法,在MLP中有过解释

效果

1. 基本理解一些数理内容的数学知识,但是对涉及概率统计的知识有所模糊,可能是还未学习的缘故。

2. 基本对代码内容有所了解,有利于以后调参

3. 时间耗费较多,主要是对涉及的数学知识应用能力不足

7月下半月

这个月依旧对基础知识进行学习和复习,除去练车和复习一天约2-3小时,主要对TensorFlow框架的环境架构和安装进行了了解,尤其是环境配置颇费时间,过程的难点在于老是出错误,最终安装成功。

ps:现在已经使用pytorch,显然更好上手和不容易出错。

一.安装

安装期间有一些奇怪的问题,但基本上解决了,主要参考CSDN和谷歌学术的一些问题解决和搜索,其中要求本身具有anaconda和VS

前期准备

由于以前会一些python,因此前期准备工作中anaconda有以及VS也具有,但是版本问题所以重新下载安装了一次

过程处理

我安装的是CPU版本,难点在于在conda环境下安装和类似于储存权限,以及下载需要用到镜像,否则会超时,大概反复尝试了十几次才使用先下载再安装的方案成功,实际上在处理过程中发现pip版本不能太高,否则出问题。

ps:pytorch已经安装GPU版本

二.基础学习

包括环境调试和对tensorflow的程序结构和变量变位符的基础学习,这里包含代码较多,所花费时间较多。

程序结构

程序分为两个独立的部分,构建任何拟创建神经网络的蓝图,包括计算图的定义及其执行,每个节点可以有零个或多个输入,但只有一个输出。网络中的节点表示对象(张量和运算操作),边表示运算操作之间流动的张量,添加变量和操作,并按照逐层建立神经网络的顺序传递它们

常量变量

常量是其值不能改变的张量变量又是分开存储的,它们可以存储在参数服务器上。占位符不包含任何数据,不需要初始化它们,所有常量、变量和占位符将在代码的计算图部分中定义,TensorFlow 支持的常见的数据类型

效果

  1. 对实际操作的一些软件进行了初步了解

  2. 充分理解了环境配置和实际操作出问题的困难性,以及对代码实际应用的难度有所认知,并了解了一些模型的应用方法


文章作者: fryssg
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 fryssg !
评论
  目录