当前位置: 首页 > news >正文

国外做海报的网站正常网站跳出率

国外做海报的网站,正常网站跳出率,wordpress 系统安装教程,如何购买网站域名简介#xff1a;随着人工智能#xff08;AI#xff09;蓬勃发展#xff0c;也有越来越多的人涌入到这一行业。下面简单介绍一下机器学习的各大领域#xff0c;机器学习包含深度学习以及强化学习#xff0c;在本节的机器学习中主要阐述一下机器学习的线性回归逻辑回归随着人工智能AI蓬勃发展也有越来越多的人涌入到这一行业。下面简单介绍一下机器学习的各大领域机器学习包含深度学习以及强化学习在本节的机器学习中主要阐述一下机器学习的线性回归逻辑回归二分类以及多分类问题以及深度学习的一些神经网络变型包括有CNN经典模型残差神经网络(ResNet),RNN经典模型长短时期记忆网络(LSTM)。 在人工智能上花一年时间这足以让人相信上帝的存在。--艾伦佩利 目录 1、激活函数 (1什么是激活函数 (2常见激活函数 2、线性回归与逻辑回归任务 3、梯度优化算法 (1梯度下降Gradient descent,简称GD (2梯度消失以及梯度爆炸 (3)学习率(learning rate,简称lr) 4、拟合问题 (1)训练集和测试集 (2)过拟合与欠拟合 (3)如何解决过拟合和欠拟合问题 (4)提前stop training 5、数据预处理部分 归一化Normalization与标准化Standardization 数据缺失 图像处理计算机视觉 6、RNN循环神经网络 LSTM算法 7、CNN卷积神经网络  8、使用Tensorflow1.0/2.0框架创建神经网络 1、激活函数 (1什么是激活函数 神经网络有单一的神经元接收上一层神经元的输出作为本神经元的输入即一种在神经元上运行的函数把神经元的输入映射到输出端。 图1 单神经元 如图1(单输入单输出神经元)所示p为输入w为权重b为偏置若引入激活函数f则相应的输出为af(wpb)但若无激活函数相应的输出awpb。其实也就是说 它的作用是引入非线性性质使得神经网络能够学习和逼近更复杂的函数。在实际生活中无论如何搭建神经网络输出都是对于输入的线性模型叠加。因此引入非线性因素后使得神经网络可以逼近任意非线性函数使得神经网络可以应用到大量的非线性模型中。 (2常见激活函数 tanh、relu、sigmoid、relkyrelu激活函数各个激活函数的图像在Tesorflow多层感知器实现广告的预测-CSDN博客 中有详细介绍其中softmax是一个特殊的整流函数。下面要与线性回归与逻辑回归联合在一起。 图2 softmax激活函数 由分类问题可以引出二分类以及多分类问题对于大多的二分类问题仅需要在预测结果回复True or False但对于多分类问题需要使用softmax激活函数为每一个类别分别设置一个概率这样便可以计算出每一个类别占总体的百分比。但仅这样是考虑不全面的当输入存在有负数时单靠上面那种方法显然是不可行的故有引入指数函数以保证最后每个单元输出的概率在范围(0,1)输出之和为1。 Softmax函数的特点包括 1将输入映射到0和1之间Softmax函数确保每个类别的概率在0和1之间因此可以用来表示每个类别的相对权重。 2归一化Softmax函数对原始分数进行归一化使所有类别的概率之和为1这使得它适用于多类别互斥的分类问题。 3放大差异Softmax函数会放大具有更高原始分数的类别的概率因此可以更好地区分不同类别的可能性。 2、线性回归与逻辑回归任务 回归分析是处理多变量间相关关系的一种数学方法当自变量为非随机变量而因变量为随机变量时它们的关系分析成为 回归分析。回归分析又可分为线性回归与逻辑回归。 什么是分类任务什么是回归任务 线性回归主要功能是拟合数据就是将输入项分别乘以一些常量constant,将他们的结果求和即为输出线性回归可以分为一元线性回归与多元线性回归。 线性回归易理解且快但对于一些相对复杂的模型比如非线性关系或样本属性的维度过大时预测结果不好。 一元线性回归,其中x为自变量a为相关系数b为截距Y则为因变量。多元线性回归(多自变量单因变量)其中为回归系数b为截距。 本人线性回归案例Tensorflow练手机器学习原理--线性回归-CSDN博客 逻辑回归主要功能是区分数据找到决策边界。 逻辑回归实际上是一种分类方法。 本人逻辑回归案例Tensorflow之逻辑回归与交叉熵-CSDN博客 图2 3、梯度优化算法 损失函数Loss function☞单个样本预测结果和正确结果的误差值。 代价函数Cost function☞所有样本损失函数的总和用来衡量评估模型的好坏一般情况下它的值越小则模型越好。 (1梯度下降Gradient descent,简称GD 对于线性关系y w*x b,而言需要找到最优的和使得训练的误差(损失Loss)最小对于计算机而言可以借助强大的计算能力去多次搜索和试错使得误差逐渐减小最简单的优化方法就是暴力搜索和随机试验但当面对大规模和高维度数据时效率极低下面介绍一下梯度下降算法。 将梯度下降算法配合强大的图形处理芯片GPU的并行加速能力非常适合优化海量数据的神经网络模型。 函数的梯度指的是函数对各个自变量的偏导数组成的向量多元微分梯度的方向是函数值变化最快的方向。 在建立好模型后会有相关的损失函数比如均方差损失函数或交叉熵损失函数等。分别对于每一个参数,求出损失函数关于其的梯度然后朝着梯度相反的方向使得函数值下降的最快反复求解梯度最后就能到达局部最小值。 在单变量函数中梯度其实就是函数的微分代表函数在给定的某一个点的切线的斜率。在多变量函数中梯度为多元微分组成的向量代表一个方向梯度的方向就指明了函数在给定点上升最快的方向。 梯度下降更新公式这里的包含网络参数w和bweight,bias。 梯度上升更新公式需要找最大时用梯度上升。 在下面举一个多变量函数的梯度下降过程目标函数为最小值对应为00假设初始起点为(1,2),(初始起点就相当于网络参数初始化部分有很多种方法random初始化Xavier初始化He初始化等选择合理的初始化方法有利于更好的处理网络梯度问题提高网络性能)初始学习率0.1则函数的梯度为多次Iterate, 就这样不断减小向最小值00不断逼近结束。 (2梯度消失以及梯度爆炸 梯度消失神经⽹络靠输⼊端的⽹络层的系数逐渐不再随着训练⽽变化或者变化⾮常缓慢。随着⽹络层数增加这个现象越发明显。 解决方案 使用更稳定的激活函数ReLU、Leaky ReLU 或 ELU 激活函数通常比 Sigmoid 和 Tanh 更不容易出现梯度消失问题使用 Batch NormalizationBatch Normalization 可以加速神经网络的收敛并且减少梯度消失问题。使用残差连接Residual ConnectionsResNet 中的残差连接可以帮助信息在网络中更快地传播减轻梯度消失问题。 梯度爆炸梯度爆炸是深度神经网络训练过程中的一种现象指的是在反向传播过程中梯度值因为多次相乘而急剧增大导致梯度变得非常巨大甚至溢出。这会造成参数更新过大导致模型无法收敛或产生不稳定的训练结果。 解决方案 梯度截断Gradient Clipping限制梯度的大小防止梯度爆炸。初始化权重使用适当的权重初始化方法如Xavier初始化可以帮助减少梯度爆炸的发生。调整学习率适当调整学习率的大小可能有助于避免梯度爆炸。 (3)学习率(learning rate,简称lr) 学习率代表在一次迭代过程中梯度向损失函数的最优解移动的步长通常用表示它的大小决定网络学习的快慢。 当学习率过大时网络参数学习会很快进而加快收敛速度但有可能会在最优解附近来回震荡导致最后难以收敛如图3中的红色箭头所示。当学习率过小时网络参数学习会很慢这样虽然不会错过最优解但也容易陷入局部最优。 因此选择一个合适的学习率对于网络参数的学习至关重要合适的学习率可以使网络参数以适当的速度逼近全局最优解如图3黄色箭头。但学习率一般是需要观察训练过程的各个参数的性能不能仅靠损失函数来判定需要多方面评估。学习率一般为0.10.0010.0001这样找到一个区间然后在区间内可以采用二分法逐步判断找到适合的学习率。但如果最后损失收敛在一个较大的范围可以考虑使用便学习率这样让损失最后收敛在一个较小的范围。 图3 4、拟合问题 模型的容量是指模型拟合复杂函数的能力。 (1)训练集和测试集 训练集(Train set)是用于模型拟合的数据样本。 验证集(Development set)是模型训练过程中单独留出的样本集它可以用于调整模型的超参数和用于对模型的能力进行初步评估。一般地通过验证集寻找最优的网络深度隐藏层个数以及网络的宽度每层的神经元个数。由原本的训练集数据划分而来用于调参和选择模型。 在这里超参数可以有很多主要包括一些在训练过程中不会发生变化的参数比如学习率(采用定学习率时),经验回放缓存大小小批量训练大小等。 测试集(Test set)用来评估模型最终的泛化能力。 图3 模型表现 (2)过拟合与欠拟合 过拟合是指学习时选择的模型所包含的参数过多以至于出现这一模型对已知数据预测的很好但对未知数据预测得很差的现象。这种情况下模型可能只是记住了训练集数据而不是学习到了数据特征。在这种情况下模型会在训练集上表现良好在测试集未见的数据集上表现不太好。欠拟合是指模型描述能力太弱以至于不能很好地学习到数据中的规律。产生欠拟合的原因通常是模型过于简单。在这种情况下模型在训练集和测试集表现都不会太好。 (3)如何解决过拟合和欠拟合问题 以及什么是droupout,如何解决过拟合问题 解决过拟合问题通过降低网络容量: 重新设计网络容量降低网络深度或减小网络宽度。增加训练数据样本或者是说为数据集扩增比如在强化学习中网络参数引入随机噪声加入Noisy Net名义上称为噪声实际可以对action产生与差不多的效果再训练或者是对原始图像做部分截取或旋转角度等。DropoutDropout是通过改动神经网络本身实现的在训练时随机断开神经网络的连接减少每次模型在训练时实际参与计算的参数量但在测试时为保证模型获得较好的性能Dropout会恢复所有的连接部分如图4所示。 图4 添加正则化手段L0,L1,L2提前停止训练。 解决欠拟合问题可以通过增加网络容量增加网络深度以及网络宽度尝试更加复杂的网络结构。 (4)提前stop training 一般地把对训练集中的一个Batch运算称作为一个step,对训练集的所有样本循环迭代一次称为一个Epoch。 当模型正常拟合的情况下模型的各个参数会趋向收敛的状态损失不再降低这时如果不及时停止训练模型就会导致模型过度学习训练的数据集不仅学习到了数据集的特征还把额外的观测误差也学习到极大的降低泛化能力。 # 带有Early stopping的网络训练算法 Output:the performence of the network parameter seta and test Random initialize the parameter seta Initialize the size of mini-banch and experience replay buffer |D| repeatfor step1,2,...,N doRandom sample Batch{(x,y)}~DUpdate seta with gradient descent algorithmendif every the n-th Epoch doTest the performence of all {(x,y)}~Dif Multiple failures to improve performance during validation doSave the state of the network,early stoppingend ifend if until Training to the maximum number of Epoch5、数据预处理部分 特征选择、特征提取、特征工程 特征选择从原始数据中选择最相关和最有价值的特征从而提高模型的性能和准确性同时减少模型的复杂度和计算资源消耗。就是为了消除一些冗余和目标无关的特征保留对预测目标有用的特征进而提高模型的泛化能力和效率。 使用的方法 特征提取将原始数据转换为具有更高维度或更有意义的特征表示的过程旨在提高模型的学习效果。 特征工程通过对数据进行处理和转换提取出更有用的特征以供机器学习模型使用从而改善模型的性能和效果有利于减少数据噪声提高模型的泛化能力。 为什么要建立特征工程 归一化Normalization与标准化Standardization 归一化与标准化都是对数据做变换的方式对数据特征缩放到某一个范围把原始数据的某一列数据转换到某一个范围或者某种形态。 归一化将某一列中的数据缩放到某一个区间范围内通常这个区间可以为[0,1],[-1,1]等可以根据实际需要设定归一化可以有很多种形式如 min-max normalization:,[0,1]区间 mean normalization:[-1,1]区间 标准化将数据变换为均值为0且标准差为1的分布此分布会追随原本数据的分布状态因此经标准化后数据的分布不一定是正态分布的。 standardization: 中心化零均值处理就是用原始数据减去这些数据的均值后的值。 批归一化Batch Normalization可以对每一批batch数据进行归一化传统的归一化操作一般都是在输入网络之前对特征进行归一化但是BN可以在网络的任意一层进行归一化处理。 数据缺失 数据缺失可由机械错误机械原因导致的数据集中缺失数据和人为错误由人的主观因素漏录无效数据等导致。若有数据缺失则要么删除有缺失项的数据整体要么是对数据缺失的数据项做一些处理再就是对其置之不理。 缺失值从缺失的分布来讲可以分为完全随机缺失数据的缺失是随机的数据的缺失不依赖任何不完全变量或完全变量随机缺失数据缺失不是完全随机的依赖于其他完全变量和非完全随机缺失数据缺失依赖于不完全变量本身。 缺失值从缺失属性来讲若所有缺失值都为同一属性同一列则为单值缺失若为不同的属性则为任意缺失。 1、删除包含缺失项的数据整体主要包含简单删除发和权重法。 简单删除将存在缺失值的个案删除当缺失值为非完全随机时可通过对完整数据加权来减小偏差用可能值插补缺失值 图像处理计算机视觉 图像透视变化☞改变图像的透视效果使得原本在三维空间中呈现的透视关系在二维图像中得到修正或变换。透视变换通常用于校正图像中的透视畸变例如将斜视角拍摄的图像调整为正视角或者将图像中的某些区域拉伸或压缩以改变其形状。 图像去噪/降噪☞在数字图像中减少或去除由于图像采集、传输或处理过程中引入的噪声的过程。噪声可以是由传感器、电路、环境等因素引起的随机干扰降噪技术旨在提高图像的质量和清晰度以便更好地进行后续的图像分析、处理或展示。 图像配准☞将多幅图像中的对应特征点或区域进行匹配和对齐的过程以使它们在同一坐标系下对齐或校准。这个过程通常涉及到图像中的旋转、平移、缩放和畸变等变换旨在消除图像间的空间差异以便进行后续的分析或处理。 图像分割☞将数字图像划分为多个具有独特特征或语义的区域或像素的过程。这些区域通常代表了图像中的不同对象、结构或区域。 数据清洗☞对数据进行检查、修复、删除或补充以确保数据质量符合特定标准或要求的过程。这包括识别和纠正数据中的错误、缺失、重复或不一致的部分以便在进行数据分析、建模或应用程序开发时能够得到准确、可靠的结果。 目标检测☞在图像或视频中自动识别和定位特定对象的过程目标检测不仅要确定图像中是否存在目标还要准确地标出目标的位置。 6、RNN循环神经网络 RNN中包含的模型目前主要有LSTM和GRU下面简单介绍一下LSTM算法。 RNN与传统全连接网络不同引入新的名词隐状态(hidden state)隐状态可以对序列行的数据提取特征再转换为输出。  其中和 经过上述变换后得到当前时间戳的新的状态向量并写入内存状态中然后对应在每个时间戳上均有输出产生。上述网路结构在时间戳上重叠网络循环接受序列的每个特征向量并刷新内部状态向量ht,同时形成输出yt。f一般为非线性激活函数且尤为重点的就是在RNN中计算时每一个时间戳计算时所用到的参数UWb都是一样的即经典RNN的参数是共享的RNN的权值是在同一个向量中只是时间戳t不同而已。 ...  其中在任意时间戳t对应为当前时间戳的输入对应为上一个时间戳的网络状态向量 图4 不带有输出 对于输出可以通过自己设定可以让当前时刻t的状态向量直接作为输出什么处理也不做即可以对做一个线性变换即输出也可以对做一个非线性处理比如在其外面再加入激活函数sigmoid,relu,softmax等变换即输出。这里要注意对状态向量做处理时也要遵守权值共享原则。 图5 带有输出 RNN的堆叠形式如图6左边所示展开则由图6中的右边所示RNN可以看成是一个神经网络的多次复制每一个神经网络模块A会把消息依次传递给下一个模块。 图6  解释一下RNN的短期和长期依赖问题 以自然语言处理为例当RNN在处理较简单的句子预测时前面的信息和预测的词间距很小时那么RNN会学会使用先前的信息较好的表现。但是当在一些复杂的场景时在预测“I grow up in China ... and I like China”这段文本的最后一个词China时可能会知道当前需要填写一个语言类型但是需要离当前位置较远的先前提到的“China”的前后文的。经研究人员发现RNN仅能理解有线长度范围内的信息对于较长范围内的有用信息往往不能很好地利用起来即会丧失学习连接到如此远的信息的能力称为短时记忆。 故经研究人员研究发现记忆能力更强一种更擅长处理较长的序列信号的数据LSTMLong Short-Term Memory,下面将介绍LSTM算法。  LSTM算法 下面讲述一下LSTM算法相对于基础的RNN网络只有一个状态向量LSTM新增了一个状态向量同时引入门控Gate机制通过门控单元来控制信息的遗忘和刷新。 所有的RNN网络都是一种具有重复神经网络的链式的结构在标准的RNN网络中这个重复的模块神经网络只有一个简单的结构例如一个tanh或sigmoid层tanh使得数据范围控制在[-1,1]之间有利于帮助调节流经神经网络的之值。但对于LSTM网络重复的模块有一个不同的结构LSTM中重复的模块一般包含有四个交互的层3个sigmoid和一个tanh层使用sigmoid的原因主要是因为其取值范围在[0,1],有利于较好的选取数据记忆更新或遗忘x*00,x*1x)。 图7 LSTM 在这里如图8讲一下各个符号代表的含义每一条黑线传输着一整个向量从一个节点的输出到其他节点的输入。圆圈代表pointwise的操作诸如向量的和或向量的乘看圈中是什么符号而黄色的矩阵就是学习到的神经网络层。合在一起的线表示向量的连接分开的线表示内容被复制然后分发到不同的位置。 图8 symbol 在这里由于LSTM由遗忘门、输入门和输出门组成下面简单叙述一下各部分的用处就能看懂各个部分的过程如图 9 遗忘门通过读取和做一个sigmoid等同于图9中的的非线性映射输出一个向量向量中的不同维度上的值有不同的意义1完全保留0忘记/丢失。 输入门会决定什么样的信息被存放在细胞状态中sigmoid决定什么值将要被更新tanh层创建了一个新的候选值向量Ct被加入到状态中。 输出门 图9 process 7、CNN卷积神经网络  首先阐述一下为什么要有卷积神经网络CNNCNN相比于全连接神经网络的好处有哪些 局部相关性以图片类型数据为输入的场景为例对于二维图片数据在传入全连接层之前fully-connected layer需将矩阵打平成为一维向量然后每个像素点与每个输出节点两两相连其输出与输入的关系为nodes(I)表示第I层的节点集合  下面找一种近似的简化模型可以分析输入节点对输出节点的重要性分布仅考虑较重要的一部分输入节点这样输出节点只需要与部分输入节点相连接表达为 其中top(I,j,k)表示第I层中对于J层中的j号节点重要性最高的前n个节点集合通过这种方式可以把权值个数由|| I ||*|| J || 减少到k*|| J ||其中 || I ||和|| J ||分别表示I、J层的节点数量。 接着问题转化为探索第I层中对于第J层中的j号输出节点重要分布然后认为图片每个像素点和周边像素点的关联度更大位置相关。以二维图片数据为例简单认为像素的欧氏距离小于等于x的像素点重要性较高大于x的像素点重要性较低这种仅关注和自己距离较近的部分节点而忽略距离较远的节点称为局部相关性。 权值共享每个输出节点仅与感受野区域内k*k个输入节点相连接输出节点数为|| J ||则当前层参数量为k*k*|| J ||通过权值共享的思路对于每个输出节点均使用相同的权值矩阵W那么无论输出节点数量|| J ||为多少网络参数量总是k*k。准确的说在但单入通道、单卷积核的条件下参数量由|| I ||*|| J ||成功减低到k*k。 CNN由输入层、卷积层、池化层、全连接层以及输出层组成。 输入层输入图像等信息。卷积层用来提取图像的底层特征。池化层/降采样防止过拟合将数据维度减小。全连接层汇总卷积层和池化层得到的图像的底层特征和信息。输出层根据全连接层的信息得到概率最大的结果。 图10 输入层就是把相对应的图像转换为与其对应的由像素构成的二维矩阵并将次二维矩阵存储起来等待后面操作。 卷积层可以包含有多个可学习的滤波器也称为卷积核)在输入数据上滑动进行卷积操作进而生成特征图图像领域中通常为新生成的二维矩阵且每个卷积核只能完成某种逻辑的特征提取当需要有多种逻辑特征提取时可以选择增加多个卷积核得到多种特征。 图11 以图片的二维矩阵为例想要提取其中特征那么卷积操作就会为存在特征的区域确定一个高值否则确定一个低值。 卷积核也是一个二维矩阵当然这个二维矩阵要比输入图像的二维矩阵要小或相等卷积核通过在输入图像的二维矩阵上不停的移动每一次移动按照从左到右移动到右边边界后回到行首接着从上到下的顺序移动一直移动到原始图片数据的右下方都进行一次乘积的求和作为此位置的值。 图12 中间的核函数就是卷积核左边红色方框内的四个元素称为感受野与卷积核的大小相同那么是如何得到特征图的呢卷积核与感受野之间的运算就是把两个矩阵对应的元素相乘得到的矩阵各元素求和填到特征图的对应位置上。卷积核为2*2感受野也为2*2每次移动的步长为2故在计算特征图的时候s1 a*k1b*k2e*k3f*k4,s2c*k1d*k2g*k3h*k4s3i*k1j*k2m*k3n*k4,s4k*k1l*k2o*k3p*k4,且s2填写在s1的右边最后特征图为[[s1,s2],[s3,s4]]。 下面讲解一下为什么要填充Padding 由于卷积核在计算特征图时需要与原本的图像数据中截取感受野大小的窗口进行计算随着每次移动一定的步长会发现靠近中间的图片像素数据会被计算多次但靠近边框的图片像素点数据被计算的次数会少很多因此选择在原始数据的外围扩展一些空格这样原本边框的数据也会被计算多次。 图13 池化层减小特征图的空间维度从而减少模型的参数量和计算复杂度并且可以增强模型的鲁棒性. 有几个卷积核就有多少个特征图现实中情况肯定更为复杂也就会有更多的卷积核那么就会有更多的特征图。池化层又称为下采样/降采样也就是说当我们进行卷积操作后再将得到的特征图进行特征提取将其中最具有代表性的特征提取出来保持主要特征并减少冗余信息来提取出更加重要的特征可以起到减小过拟合和降低维度的作用这个过程如下所示 图14 另外池化可以分为最大池化和平均池化。  最大池化就是每次取正方形中所有值的最大值这个最大值也就相当于当前位置最具有代表性的特征如图13所示最大池化用的稍微多点。 平均池化就是取此正方形区域中所有值的平均值考虑到每个位置的值对于此处特征的影响。 全连接层 对运算得到的特征图展平将其维度变为1*x然后进行计算得到输出值。 全连接层将卷积层和池化层提取到的特征连接起来并输出最终的分类或回归结果。它采用传统神经网络中常见的全连接结构每个神经元都与上一层的所有神经元相连。全连接层的作用是对特征进行组合和整合以便进行最终的预测。 图15 输出层输出最后的预测结果如图14所示二分类用sigmoid多分类用softmax。 import tensorflow as tf from tensorflow.keras import layers# 构建CNN模型 model tf.keras.Sequential()# 添加卷积层 model.add(layers.Conv2D(32, (3, 3), activationrelu, input_shape(64, 64, 3))) model.add(layers.MaxPooling2D((2, 2)))# 添加更多卷积层和池化层 model.add(layers.Conv2D(64, (3, 3), activationrelu)) model.add(layers.MaxPooling2D((2, 2)))model.add(layers.Conv2D(128, (3, 3), activationrelu)) model.add(layers.MaxPooling2D((2, 2)))# 将特征图展平为一维向量 model.add(layers.Flatten())# 添加全连接层 model.add(layers.Dense(64, activationrelu))# 输出层 model.add(layers.Dense(10, activationsoftmax))# 编译模型 model.compile(optimizeradam,losstf.keras.losses.SparseCategoricalCrossentropy(from_logitsTrue),metrics[accuracy])# 加载数据并训练模型 (x_train, y_train), (x_test, y_test) tf.keras.datasets.cifar10.load_data() model.fit(x_train, y_train, epochs10, validation_data(x_test, y_test)) 8、使用Tensorflow1.0/2.0框架创建神经网络 Tensorflow1.0代码注意1.0版本的对应x,y只是占位符张量形状此时已经有值是在下面对话session中传入的。 import tensorflow as tf# 定义神经网络的输入 x tf.placeholder(tf.float32, [None, 784])# 定义神经网络的参数 W tf.Variable(tf.zeros([784, 10])) b tf.Variable(tf.zeros([10]))# 定义神经网络的输出 y tf.nn.softmax(tf.matmul(x, W) b)# 定义损失函数 y_ tf.placeholder(tf.float32, [None, 10]) cross_entropy tf.reduce_mean(-tf.reduce_sum(y_ * tf.log(y), reduction_indices[1]))# 定义优化方法 train_step tf.train.GradientDescentOptimizer(0.5).minimize(cross_entropy)# 创建会话并进行训练 with tf.Session() as sess:sess.run(tf.global_variables_initializer())for i in range(1000):batch_xs, batch_ys mnist.train.next_batch(100)sess.run(train_step, feed_dict{x: batch_xs, y_: batch_ys}) Tensorflow2.0代码 import tensorflow as tf# 加载数据数据预处理部分 mnist tf.keras.datasets.mnist (x_train, y_train), (x_test, y_test) mnist.load_data() x_train, x_test x_train / 255.0, x_test / 255.0# 定义神经网络的模型 model tf.keras.Sequential([tf.keras.layers.Flatten(input_shape(28, 28)),tf.keras.layers.Dense(128, activationrelu),tf.keras.layers.Dropout(0.2),tf.keras.layers.Dense(10, activationsoftmax) ])# 编译模型 model.compile(optimizeradam,losssparse_categorical_crossentropy,metrics[accuracy])# 训练模型 model.fit(x_train, y_train, epochs5)# 评估模型 model.evaluate(x_test, y_test, verbose2) Reference [1]《Tensorflow深度学习》书籍 [2] 《Netural Network Design》书籍 [3]激活函数Activation Function小结_有一个机器学习常用的激活函数activation function,当输入0-CSDN博客 [4]学习率设置-CSDN博客 [5]回归分析线性回归、逻辑回归详解与 Python 实现_多变量逻辑回归分析-CSDN博客 [6]梯度下降算法原理讲解——机器学习-CSDN博客 [7]标准化和归一化请勿混为一谈透彻理解数据变换-CSDN博客 [8]如何从RNN起步一步一步通俗理解LSTM_rnn lstm-CSDN博客 [9]卷积神经网络CNN的由来为什么要用卷积_卷积神经网络为什么叫卷积-CSDN博客 [10]卷积神经网络CNN详细介绍及其原理详解-CSDN博客 [11]卷积神经网络 Convolutional Neural Network CNN-CSDN博客 [12]卷积神经网络Convolutional Neural NetworkCNN [13]https://zhuanlan.zhihu.com/p/589762877
http://www.tj-hxxt.cn/news/141489.html

相关文章:

  • 山东建设住建厅网站哪些网站设计好
  • 网站开发的对联中国设计在线网站
  • 华为做网站吗wordpress手机页面底部导航栏
  • 百度云服务器挂网站wordpress点击图片直接相册浏览
  • 网站图片地址怎么做的石家庄市网站建设
  • 做兼职写小说网站做代收水果是什么网站
  • 中文网站开发linux WordPress上传插件需要ftp
  • 电商网站seo方案dw博客网站怎么做
  • 甘肃省建设厅执业资格注册中心网站通知浦东新区专业做网站
  • 微信公号嵌入网站开发浅谈博星卓越网站建设
  • 网站建设厘金手指排名二二成都房产网最新楼盘
  • 专业的网站建设企业h5效果展示网站
  • 域名怎么和网站绑定珊瑚绒毯移动网站建设
  • 网页美工设计网站国内网站模板
  • 素材设计做的好的网站有哪些建设工程合同无效的情形有哪些
  • 淘宝的网站建设费用惠城网站建设费用
  • 铜川市建设集团网站企业管理咨询有限公司是干嘛的
  • 如何查找各种网站编程线上课程哪个机构好一些
  • 怎么做网站美工企业融资是做什么的
  • 百度分享wordpress插件东营seo整站优化
  • 全国建设管理信息网站柯桥区建设局网站
  • 连云港网站建设网站江西省住房城乡建设部网站
  • 儿童 网站模板如何做本地门户网站
  • 网站用什么格式做风兰网络
  • 招商加盟网站建设虚拟主机网站源码
  • 用php做的网站前后台模板wordpress socket
  • 企业站手机网站搜索关键词
  • 呼伦贝尔市住房和城乡建设局网站个人做外贸怎么做推广
  • 如何给自己网站做优化阿里巴巴装修网站
  • 基于php网站建设论文简单的手机网址大全