【python】keras包:深度学习( MLP多层感知器 Multi-Layer Perceptron)

news/2024/11/1 12:37:13/

MLP多层感知器 Multi-Layer Perceptron

Part 1. 算法逻辑

实现经典问题——如何通过图像区分猫和狗
神经网络:建立模型,模仿人的思考机制
在这里插入图片描述

将“机器学习_逻辑回归”按照神经元的逻辑,组成逻辑网络。
解释: 假设自变量x[]和应变量y,机器学习只能做到 y= f(x)的拟合;而神经网络学习做到的是,生成中间变量 z[]=f(x[]),并拟合 y=g(z[]),从而得到 y=g(f(x[]))。这个过程好像神经元的生成过程。
简化理解: 就是多个逻辑回归、线性回归的“迭代”,越迭代越准确。

Part 2. 算法流程

Step 1. 建立 Sequential模型

from keras.models import Sequential
model = Sequential()

Step 2. 通过.add()叠加各层神经网络

from keras.layers import Dense,activation
model.add( Dense(units=3,activation='sigmoid',input_dim=3) )
# 表示:添加一个隐藏层,隐藏层符合下述规则
# 该层(输出层)有units个神经元,输入层有input_dim个神经元
# 该层(输出)采用"sigmoid"即逻辑回归法,作为中间神经联系
model.add( Dense(units=1,activation='sigmoid') )

注:activation 激活参数 的常见参数
sigmoid: 逻辑回归
softmax

Step 3. 通过.compile()配置模型求解过程的参数

model.compile(loss='categorical_crossentropy',optimizer='sgd' )
# loss表示所使用的损失函数
# 参数优化器 采用 'sgd'

注:loss 损失函数 的常见参数
categorical_crossentropy: 分类问题的损失函数
损失函数的选择,参考本链接

注:optimizer 参数优化器 的常见参数
'sgd'
'adam'
参数优化器的选择,参考本链接

Step 4. 模型训练

feature_size = (img1.shape[0])*(img1.shape[1])
x_train_format = x_train.reshape(x_train.shape[0],feature_size)
# 转换输入数据的维度model.fit(x_train,y_train,epochs=5)
# 迭代epoch次训练

Step 5. 结果预测

pred_y_test = model.predict_classes(x_test)

Step 6. 转换输出结果的格式

from keras.utils import to_categorical
y_train_format = to_categorical(y_train)

http://www.ppmy.cn/news/60542.html

相关文章

【开发工具】 Office Tool Plus 居然也可以部署 Office 365 我的天 真的是太厉害了

🚀 个人主页 极客小俊 ✍🏻 作者简介:web开发者、设计师、技术分享博主 🐋 希望大家多多支持一下, 我们一起进步!😄 🏅 如果文章对你有帮助的话,欢迎评论 💬点赞&#x1…

图像复原与重建

文章目录 一、实验目的二、实验内容1. 噪声图像及其直方图。2. 空间噪声滤波器。3. 逆滤波。 一、实验目的 了解一些常用随机噪声的生成方法。掌握根据指定退化函数对图像进行退化的方法。掌握当模糊图像只存在噪声时的几种滤波复原方法。掌握当模糊图像同时存在线性退化和噪声…

package.json配置

package.json配置 package.json 是一个非常重要的配置文件,用于描述 JavaScript 项目的依赖和属性。 几个常用的配置选项: name:项目名称,用于确定项目的唯一性,必须是字母数字加 - 组成。version:项目版本号,遵循语义化版本规范。description:项目描述,用于 npm 上展示。au…

Java 中的异常处理机制是什么(十)

Java 中的异常处理机制是一种用于处理程序运行过程中出现异常情况的机制。在 Java 中,异常被认为是一种线程不安全、非常规的情况,它可能会导致程序崩溃或产生未知的结果。Java 通过引入异常对象来代表这些异常情况,从而实现对异常的处理。 …

【2023-04-30】redis-缓存雪崩、击穿、穿透,布隆过滤器

缓存雪崩:redis的大量缓存key失效,所有请求直接到数据库,数据库压力激增,导致其他应用服务请求数据库故障,最终引发整个系统服务崩溃。 解决方案: ​ 1、设置key过期时间的时候,增加一个小范围…

网络安全攻防战:保护个人隐私与数据安全

网络安全一直是一个备受关注的话题,随着互联网的普及和发展,个人隐私和数据安全面临着越来越大的风险。网络攻击、数据泄露和隐私侵犯等问题不仅对个人造成巨大的损失,也可能对企业和组织的运营带来不可逆转的影响。因此,保护网络…

day42—编程题

文章目录 1.第一题1.1题目1.2思路1.3解题 2.第二题2.1题目2.2思路2.3解题 1.第一题 1.1题目 描述: nowcoder要和朋友交流一些敏感的信息,例如他的电话号码等。因此他要对这些敏感信息进行混淆,比如在数字中间掺入一些额外的符号&#xff0c…

MySQL基础篇3

MySQL基础 1. 创建和管理库表1.1 创建和管理数据库1.1.1 创建数据库1.1.2 使用数据库1.1.3 修改数据库1.1.4 删除指定数据库 1.2 创建和管理数据表1.2.1 创建数据表1.2.2 查看数据表相关信息1.2.3 修改数据表1.2.3.1 新增列1.2.3.2 修改列1.2.3.3 删除列1.2.3.4 重命名列 1.2.4…