问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Tensorflow系列3:多层神经网络--解决非线性问题

发布网友 发布时间:2022-11-22 23:08

我来回答

1个回答

热心网友 时间:2023-12-31 04:35

这里拿医院的数据做一个简单的线性分类任务,任务特征是病人的年龄和肿瘤大小,任务目标是病人的肿瘤是良性的还是恶性的。

补充知识:

补充知识:

MSE的公式为:

cross entropy一般用于分类问题,表达的意思是样本属于某一类的概率,公式为:

这里用于计算的a也是经过分布统一化处理的(或者是经过Sigmoid函数激活的结果),取值范围在0~1之间。

在tensorflow中常见的交叉熵函数有:Sgimoid交叉熵,softmax交叉熵,Sparse交叉熵,加权Sgimoid交叉熵
MSE的预测值和真实值要控制在同样的数据分布内,假设预测值经过Sigmoid激活函数得到取值范围时候01之间,那么真实值也要归一化成01之间。
在tensorflow中没有单独的MSE函数,可以自己组合:
MSE=tf.rece_mean(tf.square(logits-outputs))

softmax_cross_entropy_with_logits 函数,必须要自己定义,比如:
loss = tf.rece_mean(-tf.rece_sum(labels*tf.log(logits_scaled),1))
损失函数的选取取决于输入标签数据的类型:如果输入是实数、无界的值,多使用MSE;如果输入标签是位矢量(分类标志),使用cross entropy比较合适

补充知识点:

reshape() 函数接受-1时,该行(列)数可以为任意值。[-1,1]代表行数随意,列数变成1。

模型生成的z用公式可以表示成z=x1w1+x2w2+b,如果将x1和x2映射到直角坐标系中的x和y坐标,那么z就可以被分为小于0和大于0两部分。当z=0时,就代表直线本身。

这次再在刚刚的二分类基础上再增加一类,变成三类,可以使用多条直线将数据分成多类。

生成的X,Y的数据样本如下内容:

常用的激活函数比如sigmoid,relu,tanh输出值只有两种,面对以上多分类问题,就需要使用softmax算法。该算法的主要应用就是多分类,而且是互斥的,即只能属于某一类。(对于不是互斥的分类问题,一般使用多个二分类来组成)

补充知识:

也可以画出更直观的图示:

例如:

对于线性不可分的数据样本,可以使用多层神经网络来解决,也就是在输入层和输出层中间多加一些神经元,每一层可以加多个,也可以加多层。

在模型训练过程中会出现欠拟合和过拟合的问题,欠拟合的原因并不是模型不行,而是我们的学习方法无法更精准地学习到适合的模型参数。模型越薄弱,对训练的要求就越高,但是可以采用增加节点或者增加隐藏层的方式,让模型具有更高的拟合性,从而降低模型的训练难度。过拟合的表现在模型在训练集上的表现非常好,loss很小;但是在测试集上的表现却非常差。

避免过拟合的方法很多:常用的有early stopping、数据集扩增、正则化、dropout

本质就是加入噪声,在计算loss时,在损失后面再加上意向,这样预测结果与标签间的误差就会受到干扰,导致学习参数W和b无法按照目标方向来调整,从而实现模型与训练数据无法完全拟合的效果,从而防止过拟合。

这个添加的干扰项必须具有如下特性:

这里有两个范数L1和L2:

tf.rece_sum(tf.abs(w))

tf.nn.l2_loss(t,name=None)

拿上面的异或数据做举例,dropout方法就是在刚刚的layer_1层后面再添加一个dropout层。

实际训练时,将keep_prob设置成0.6,意味着每次训练将仅允许0.6的节点参与学习运算。由于学习速度这样就变慢了,可以将learning_rate调大,加快训练速度。注意:在测试时,需要将keep_prob设置为1。

全连接神经网络是一个通用的拟合数据的框架,只要有足够多的神经元,及时只有一层hidden layer,利用常见的Sigmoid,relu等激活函数,就可以无限*近任何连续函数。在实际使用中,如果想利用浅层神经网络拟合复杂非线性函数,就需要你靠增加的神经元个数来实现,神经元过多会造成参数过多,从而增加网络的学习难度,并影响网络的泛化能力。因此,在实际构建网络结构时,一般倾向于使用更深的模型,开减少所需要的神经元数量。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? python ,tensorflow 拒绝reshape问题 锦鲤鱼池适合养什么植物 2020-09-19电吉他单块效果器的连接详解 突发火警,监控员如何处置? 韩子高的人物生平 安泉岭画多少钱一平尺? 对联现实对偶是什么 现实对什么? 反义词柔弱对什么现实对什么杰出对什么信力对什么抗议着什么诞生对什... 推荐几个比较好的颈椎按摩器牌子 诚信为本,和诚信会本有没有什么区别 谁记得电视里播的那个架在肩上的治疗颈椎病的牵引器械是什么牌子的? 对子问题现实对的是什么 父母只要用哪三个小妙招,能轻松让孩子告别说谎的坏习惯? 现实对什么词语 用绘本教育学生诚实—《打破杯子的鼠小弟》 对对子现实对什么 惠普屏幕有群创光电屏吗 华为手表的小度什么时候更新 复合维生素b族为什么不含b12 形容婚礼场面隆重的唯美句子 68块钱watch7是什么品牌 北的拼音怎么读 要想心情好,怎么办?交给我个方法 边伯贤说过的励志的话 免费点亮QQ图标方法大全|怎么熄灭和关闭所有QQ图标 谁知道QGQM怎么开? 跪求一首歌曲的名字 我知道几句歌词! 这首歌我实在新水浒传里听到了 有... 歌词自从你走后,每天多在梦游 急求一首歌~~自从你走后,我心XX,我想念你,每当风雨飘落. coolwind什么意思 there was a cool wind com.android.coolwind意外停止,请重试怎么办 xt5蜂鸟版怎么切换到两驱模式 凯迪拉克xt5蜂鸟版与凯迪拉克两驱豪华哪款值得买 凯迪拉克xt5两驱豪华为什么没有车道偏离预警系统 小儿捏脊的正确手法视频 凯迪拉克xt5两驱风尚版4s店为什么没有 凯迪拉克xt5怎么解除2驱 人们随意毁坏自然资源会导致哪些后果