深度学习第三课 多层感知机

补充d2l.torch库里面缺失train_ch3函数 深度学习 d2l库 阅读详情

        多层感知机针对于中间有隐藏层的神经网络结构,对于数据的每一层传递都会相应的多一层[w,b],这中间使用的传参函数称之为激活函数,如果激活函数是线性的话,那么就没什么意义,无论中间有多少层,其实和没有隐藏层是一样的,所以需要非线性的函数作为激活函数。

        常使用的有sigmoid(),tanh(),Relu()等,sigmoid()函数在比较深的神经网络中容易出现梯度消失的情况,这是因为sigmoid在越远离原点的位置梯度趋近于零,Relu()函数在输入小于零时,会将数据转化为零,会丢失一些信息,不过影响不大,没什么关系,Relu()的优点主要是计算比较简单。

        本次感知机的实现采用的激活函数为Relu(),多层感知机手动实现:

%matplotlib inline
import gluonbook as gb
from mxnet import nd
from mxnet.gluon import loss as gloss

#参数初始化
batch_size = 256
train_iter,test_iter = gb.load_data_fashion_mnist(batch_size)
num_inputs,num_outputs,num_hiddens = 784,10,512

w1 = nd.random.normal(scale = 0.01,shape = (num_inputs,num_hiddens))
b1 = nd.zeros(num_hiddens)
w2 = nd.random.normal(scale = 0.01,shape = (num_hiddens,num_outputs))
b2 = nd.zeros(num_outputs)
params = [w1,b1,w2,b2]

for param in params:
    param.attach_grad()
    
#定义激活函数Relu
def relu(x):
    return nd.maximum(x,0)
def net(x):
    x = x.reshape((-1,num_inputs))
    h = relu(nd.dot(x,w1)+b1)
    yhat = nd.dot(h,w2) + b2
    return yhat
#定义损失函数
loss = gloss.SoftmaxCrossEntropyLoss()   #直接使用了gluon库中的Softmax运算和交叉熵损失计算的loss
#训练模型
num_epochs , lr = 5,0.5
gb.train_ch3(net,train_iter,test_iter,loss,num_epochs,batch_size,params,lr)  #直接调用了gluonbook中的train_ch3函数,具体函数可看第二章的多层感知机
#通过改变隐藏层数发现,当增加隐藏层时,loss是减小的,而训练精度和测试精度变化不大。

结果为:

1)maxinum()函数:

参考链接:https://blog.youkuaiyun.com/优快云5529/article/details/79038544

多层感知机的gluon实现:

import gluonbook as gb
from mxnet import gluon,init
from mxnet.gluon import loss as gloss,nn

net = nn.Sequential()
net.add(nn.Dense(256,activation = 'relu'),nn.Dense(10))
net.initialize(init.Normal(sigma = 0.01))


#读取数据,训练模型
batch_size = 256
train_iter,test_iter = gb.load_data_fashion_mnist(batch_size)

loss = gloss.SoftmaxCrossEntropyLoss()
trainer = gluon.Trainer(net.collect_params(),'sgd',{'learning_rate':0.5})
num_epochs = 5
gb.train_ch3(net,train_iter,test_iter,loss,num_epochs,batch_size,None,None,trainer)

使用gluon结果:

深度学习基础——多层感知机 多层感知机(Multilayer Perceptron, MLP)是最简单的深度网络。本文回顾多层感知机的相关内容及一些基本概念术语。 阅读详情

相关推荐

「多层感知机」手把手带你0基础学懂弄通多层感知机思路【深度学习】附源码及解析

随`机器学习、深度学习`不断的深入我们的学习生活中,越来越多的学生尤其是研究生开始离不开深度学习的学习,但是深度学习是一门知识面非常广的学科,正好我最近在研读花书,想着出几期博客,0基础的带大家逐渐的入门深度学习,今天和大家分享的主要内容为:多层感知机的实现

2301_77017955的博客 1856

学习笔记:动手学深度学习 15 多层感知机的简洁实现

Python 3.8.8 (default, Apr 13 2021, 15:08:03) [MSC v.1916 64 bit (AMD64)] Type 'copyright', 'credits' or 'license' for more information IPython 7.22.0 -- An enhanced Interactive Python. Type '?' for help. PyDev console: using IPython 7.22.0 Python 3.8.8 (.

weixin_43137437的博客 535

深度学习之多层感知机

文章目录基础知识表达公式激活函数ReLU函数Sigmoid函数tanh函数激活函数的选择多层感知机多层感知机的pytorch实现导入必要的包获取数据集初始化模型和各个参数定义损失函数定义优化函数训练 基础知识 单层感知机只能表示线性空间,深度学习主要关注多层模型。多层感知机在单层神经网络的基础上引入一个或多个隐藏层(hidden layer)。隐藏层位于输入层和输出层之间。一个多层感知机神经网络如...

li_shucai的博客 3432

动手深度学习——训练详解

从简单到复杂,简单阐述了下三种深度学习训练过程

rylrmr的博客 1917

【深度学习】Java DL4J基于多层感知机(MLP)构建公共交通优化模型

而通过深度学习技术,我们能够深入挖掘乘客出行数据和公交车辆运行数据中隐藏的规律与模式。例如,从乘客出行数据中可以分析出不同时间段、不同区域的出行需求特点,包括出发地、目的地、出行高峰低谷时段等信息;从公交车辆运行数据里能获取车辆的行驶速度、站点停留时间、满载率等情况。利用这些丰富的信息,我们可以构建智能化的公共交通优化模型,对公交线路进行动态调整,如开辟新线路、优化现有线路站点设置,同时合理安排公交车辆的调度,实现精准投放运力,提高公交车辆的利用率,减少空驶里程,最终显著提升公共交通的效率和服务质量,缓解城

在技术的广袤天地里,本博客如精准罗盘。剖析前沿科技,深掘代码奥秘,以精炼笔触,带您穿越复杂技术迷宫,速达知识彼岸。 6160

Java 人工智能应用:使用 DL4J 实现深度学习算法

本文介绍了如何使用Java深度学习库DL4J实现深度学习算法。DL4J是为Java开发者设计的开源分布式深度学习库,可与Hadoop和Spark集成处理大规模数据。文章详细讲解了DL4J开发环境的搭建步骤,包括Maven依赖配置和Java环境准备。重点演示了如何使用DL4J构建多层感知机(MLP)模型,涵盖数据准备、模型构建、训练和评估的完整流程。通过示例代码展示了如何实现数据预处理、神经网络配置、模型训练和性能评估,为Java开发者提供了深度学习应用的实践指南。文中采用的MLP模型适用于二分类问题,可作为

shrgegrb的博客 2463

module ‘d2l.torch‘ has no attribute ‘train_ch3 ‘解决方法

新版本的d2l(1.0.3版本)包中没有train_ch3函数的封装,李沐老师上课用的是0.17.5版本,因此可以将新版本卸载,然后下载旧的版本。打开文件路径后找到d2l的文件夹,再打开torch的文件,可以用记事本或者pycharm打开。但是在安装旧版本时我遇到了问题,于是寻求新的解决办法。可以自己在d2l包中加入相关train_ch3函数的定义。首先,找到d2l包的文件路径,通过win+R后输入cmd,输入pip show d2l可以找到。加完后保存,重新打开代码运行就可以正常运行了。

m0_65252751的博客 1万+

Windows环境Oracle19C安装与配置全攻略

本文详细介绍了在Windows环境下安装与配置Oracle19C数据库的完整流程,包括环境准备、安装步骤、网络配置、客户端工具设置及常见问题解决方案。特别针对Windows 10和Windows Server 2016及以上版本提供了优化建议,帮助用户高效完成Oracle19C的部署与维护。

weixin_28455801的博客 487

[已解决]-常见d2l.train_ch3报错:AttributeError: model ‘d2l.torch‘ has no attribute ‘train_ch3‘-动手学深度学习

动手学深度学习-d2l.train_ch3报错:softmax回归的简洁实现里的报错——解决方法

科研汪小陈的主页:https://chensuzeyu.github.io 4902

SD-WAN组网案例——数据中心

SD-WAN组网案例——数据中心

2301_78457663的博客 706

利用Matlab实现矩形波导电磁场分布图的绘制

1.利用Matlab实现矩形波导电磁场分布图的绘制;2.学会使用 Matlab 进行数值计算,并绘出相应的图形;通过Matlab 计算并绘出任意时刻金属矩形波导的主模 TE10 模的电磁场分布图。波导尺寸、工作频率及时刻均由外部给定。(1)矩形波导中传输的主模为TE10模。设金属波导尺寸为a*b,TE10模的截止波长为2*a。其电磁场分量可推导表示如下:.......1-1上式中各参量如下:......1-2。

qq_26335381的博客 3059

动手学深度学习第三课:多层感知机(MLP)

多层感知机多层感知机的基本介绍激活函数关于激活函数的选择多层感知机代码解读其他函数 多层感知机的基本介绍 课程讲解的十分详尽,这里就简记一下知识点。 下图展示了一个多层感知机的神经网络图,它含有一个隐藏层,该层中有5个隐藏单元。 含单隐藏层的多层感知机,其输出On×qO^{n\times q}On×q计算为(nnn是批量大小,qqq是输出类别数): H=XWh+bhH=XW_h+b_hH=XWh...

weixin_42098609的博客 578

M6 Mac mini涨价2500值不值?深度拆解硬件成本与购买决策

统一内存架构将CPU、GPU和内存封装在一起,通过共享高带宽内存池提升数据交换效率,尤其适合本地AI推理和视频渲染等场景。在苹果生态中,起步内存和存储的配置直接决定设备生命周期,因为后期无法自行升级。M6 Mac mini将起步内存从16GB提升至24GB、存储从256GB提升至512GB,同时芯片制程和GPU核心数均有升级,持续负载性能保持率明显改善。对于开发者、内容创作者和本地大模型推理用户,这些变化能转化为实际效率收益;而轻度办公用户则可能面临性能冗余。理解硬件成本结构与自身工作流需求,才能判断这25

weixin_30846347的博客 268

【深度学习基础】多层感知机02:多层感知机的实现

本文讲解深度学习中多层感知机的实现。实现简单的多层感知机很容易,然而如果有大量的层就会变得很麻烦。我们可以使用高级API更简洁地实现多层感知机。对于相同的分类问题,多层感知机的实现与softmax回归的实现相同,只是增加了带有激活函数的隐藏层。

Morse_Chen的博客 1700

sam3.1 部署笔记 推理封装

sam3.1 部署笔记

jacke121的专栏 424

Python 爬虫实战:从零搭建第一个爬虫程序(附完整代码)

本文介绍了Python网络爬虫的入门实战,以豆瓣Top250电影榜单为例,详细讲解爬虫开发全流程。内容包括爬虫基础原理、环境搭建、请求发送与响应处理、数据解析与保存等核心环节,并提供了可直接运行的完整代码示例。文章还分析了常见问题解决方案,并强调了爬虫开发的合规注意事项。通过本教程,读者可快速掌握Python爬虫的基本思路和实操技巧,为后续深入学习BeautifulSoup、XPath等进阶技术打下基础。

2503_91057718的博客 2316

【深度学习基础】多层感知机01:多层感知机概述

本文讲解深度学习中的多层感知机。多层感知机在输出层和输入层之间增加一个或多个全连接隐藏层,并通过激活函数转换隐藏层的输出。常用的激活函数包括ReLU函数、sigmoid函数和tanh函数。

Morse_Chen的博客 2200

Vue3 - 详细实现移动端H5网页调用摄像头拍照功能,微信公众号网页h5页面打开本地摄像头并点击按钮照相,vue3获取摄像头画面执行拍照保存,调整摄像头前置后置抓拍图片给用户展示或保存手机上传服务器

vue3,H5网页,手机移动端,vue3摄像头拍照,前端h5调用手机摄像头,移动端网页调用摄像头,H5实现手机拍照和选择上传,调用本地摄像头实现拍照,vue3调用摄像头拍照,手机浏览器开启摄像头并进行拍照,H5移动端网页中调用手机摄像头,H5实现web调用摄像头在线照相,vue3h5调用摄像头,微信公众号网页如何调用摄像头拍照,公众号H5页面实现打开摄像头照相,怎么生成临时图片,vue3项目调用摄像头实现拍照功能,摄像头打不开没反应,浏览器不兼容怎么办,摄像头权限不弹出,只能在本地运行,拒绝权限后怎么办,

🏆 前端领域优质创作者 1万+

【深度学习】Java DL4J 基于多层感知机(MLP)构建公共交通优化模型

是一个基于 Java 的开源深度学习框架,它提供了完整的工具集来训练和部署深度神经网络。DL4J 支持多种神经网络架构,包括多层感知机(MLP)、卷积神经网络(CNN)等。DL4J的特点提供了高效的并行训练。支持 GPU 加速。与 Hadoop、Spark 集成,便于大规模数据处理。提供了易于使用的高层 API 和可扩展性。多层感知机(MLP)是一种前馈神经网络,它由多个层次的神经元组成。MLP 的每个神经元都与前一层的神经元全连接,因此它是一种典型的全连接神经网络。基本结构输入层。

小蜗牛的珍贵百宝箱 928

逆向分析顶象5代各类验证码类型的图片还原方法(附源码)

6.刷新滑块验证码图片,会进入之前的for循环断点,分析此处的代码会发现,该循环循环了处理了n字符串的值,取出n字符中的值并使用charCodeAt生成Unicode 编码,然后又调用了a函数,如果a函数返回true就会把之前生成的Unicode编码+1,a函数参数分别是c数组和Unicode取余32后的值,然后再把Unicode取余32后的值push进c数组,这里的n值为滑块碎片背景图的name。2.搜索"ranges":,会找到ranges赋值的地方,在此处代码断点,并点击跳过断点,结束此次调试。

老衲爱洗头的博客 1198

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

多层感知机与深度学习算法概述

从多层感知机的问题出发,引出深度学习算法。对深度学习算法的基本组成介绍明白。深度学习实现效果的总体评价方法做一个介绍。诚然,时至今日 深度学习是一个较大的计算机科学领域了。深度学习领域又可以分为若干小领域。按应用场景分:CV、NLP、数据分析…(每个应用场景又分出好多细分领域…)按算法分:CV的卷积神经网络、NLP的transformer/注意力机制、强化学习…(每个算法也有若干细分算法,适用于各种应用场景)那么多场景,那么多算法;

weixin_42923076的博客 4715

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

【深度学习】多层感知机(MLP)

多层感知机(Multilayer Perceptron,简称MLP)是一种前向人工神经网络模型,由多个神经元组成的网络层间以全连接的方式连接。MLP由若干个神经元组成的多个层次组成,其中包括输入层、隐藏层和输出层。输入层接收输入数据,并将数据传递给隐藏层。隐藏层通过激活函数将输入值转换为输出值,并将其传递到输出层。输出层给出最终的预测结果。每个神经元在隐藏层和输出层中都有权重和偏置,可以看作一个非线性的函数,它接收来自上一层神经元的输入,并根据权重和偏置进行一系列的计算,最终产生输出。

九筠的博客 1万+

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

【DL】多层感知机

介绍机器学习中的多层感知机

qq_43557907的博客 1300

【深度学习】基于多层感知机的手写数字识别

案例2:构建自己的多层感知机: MNIST手写数字识别 相关知识点: numpy科学计算包,如向量化操作,广播机制等 1 任务目标 1.1 数据集简介 ​ MNIST手写数字识别数据集是图像分类领域最常用的数据集之一,它包含60,000张训练图片,10,000张测试图片,图片中的数字均被缩放到同一尺寸且置于图像中央,图片大小为28×28。MNIST数据集中的每个样本都是一个大小为784×1的矩阵(从28×28转换得到)。MNIST数据集中的数字包括0到9共10类,如下图所示。注意,任何关于测试集的信息

你一定能够成为你想要去成为的人。 4112

从0开始深度学习(11)——多层感知机

前面介绍了线性神经网络,但是线性模型是有可能出错的,因为,但是现实中往往很复杂。例如,我们想要根据体温预测死亡率。对体温高于37摄氏度的人来说,温度越高风险越大。然而,对体温低于37摄氏度的人来说,温度越高风险就越低。所以在深度神经网络中,我们使用观测数据来联合学习表示和应用于该表示的线性预测器,以此来克服线性模型的限制。

立志成为炼丹师? 1622

AI遮天传 DL-多层感知机

本文介绍多层感知机,会先按照历史顺序介绍多层感知机诞生前的一些模型,后面介绍具体实现与其算法。

suic009的博客 2001
上一篇: 深度学习第二课 Softmax回归
下一篇: 深度学习第四课 模型选择、欠拟合和过拟合
Halo_Linch
博客等级 码龄11年 11粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值