处理多维特征的输入(Multiple Dimension Input)

 输入x有多个特征features,最终得到输出y的类别。

在上一节提到,左边是我们最开始了解的线性回归,右边是我们的logistics回归(返回值为一个离散的集合)。对于本节,就是在logistics回归输入x的基础上让其多一些特征。如下

每一行叫一个sample。每一列叫一个feature。

一:多维度特征模型

计算y_hat模型的变化:

   

根据上图的计算过程,得出我们的代码:

class Model(torch.nn.Module):def __init__(self):super(LogisticRegressionModel,self).__init__()self.linear = torch.nn.Linear(8,1)self.sigmoid = torch.nn.Sigmoid()def forward(self,x):#logistic回归和线性回归就差F.sigmoid这一步的运算 y_pred = F.sigmoid(self.linear(x))#先进行一次线性变换,随后进行sigmoid运算return y_predmodel = Model()

把之前的(1,1)变成(8,1)就可以,为什么是这样,可以看下图 。其实就是把八维的空间向量映射到一维的空间向量上。

维度是可以从高到低,也可以从低到高。

中间的步骤越多,中间的神经元越多,对非线性变化的学习能力就越强(那就好奇,学习能力强不是好事吗?那我直接从最高维一步一步变成最低维就好了)。

其实不然,学习能力越强并不一定是好事,因为学习能力过强,会将我们数据的噪声学会,而噪声是我们不想要的(希望最终的学习能力要有泛化能力)。

二:神经网络的构造

 

最开始输入是八维,通过layer1变成六维,使用Linear(8,6)

变换后的输入是六维,通过layer2变成四维,使用Linear(6,4)

最后使用得到的四维为输入,通过layer3变成一维,使用Linear(4,1)

分层降维可以学到更多的数据特征,但是过多层就会导致过拟合问题出现。

神经网络解决多维数据的分类问题四大步:建立数据集,设计模型,构造损失和优化器,训练。

三:数据集准备

最好准好csv文件,有比较全面的数值。课程所有的所需文件。

链接:https://pan.baidu.com/s/1cUI518pgLWY1oCn2DkjuEQ?pwd=kif1  提取码:kif1

import numpy as np
import torch
xy = np.loadtxt("./dataset/diabetes.csv",delimiter=',',dtype=np.float32)#糖尿病人的相关因素
x_data = torch.from_numpy(xy[:,:-1])#所有行,从第一列开始到最后一列(最后一列不要)
y_data = torch.from_numpy(xy[:,[-1]])#所有行,最后一列([]是为了保证最后一列是一个矩阵,否则就是一个向量)

 
四:建立模型

以上是模型的建立过程,一下是代码部分:

class Model(torch.nn.Module):def __init__(self):super(Model,self).__init__()self.linear1 = torch.nn.Linear(8,6)self.linear2 = torch.nn.Linear(6,4)self.linear3 = torch.nn.Linear(4,1)self.sigmoid = torch.nn.Sigmoid()def forward(self,x):x = self.sigmoid(self.linear1(x))#此时的x为图中的o1x = self.sigmoid(self.linear2(x))#此时的x为图中的o2x = self.sigmoid(self.linear3(x))#此时的x为图中的y_hat#在实际编写时,取前一个结果为当前输入,一系列同样操作时,建议只使用一个变量xreturn xmodel = Model()

五:构造损失和优化器

 

 与上一章没区别,因为损失依然是一个二分类的概率。

criterion = torch.nn.BCELoss(size_average=False)
optimizer = torch.optim.SGD(model.parameters(),lr=0.01)

五:训练模型 

由于数据量比较多,我们通常使用mini-batch,但是此时我们没使用,后续在DataLoader会使用。

for epoch in range(100):#Forwardy_pred = model(x_data)  #先计算出y_hatloss = criterion(y_pred,y_data) #再计算出lossprint(epoch,loss.item()) #Backwardoptimizer.zero_grad()#在反馈前将梯度清0loss.backward()#反馈#Updataoptimizer.step()#更新

大家可以使用其他的激活函数,我们使用的是sigmoid,下面也列出来了很多的激活函数,大家可以自己尝试使用(ReLU)。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/47175.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

中伟视界:矿山智能化——AI引领创新,行车不行人检测算法实现实时预警,防范行车不行人事故发生

行车不行人检测AI分析算法通过利用人工智能和深度学习技术,对井下行人和车辆的行驶情况进行实时检测和识别。该算法在提升矿山安全管理、减少事故发生方面具有重要作用。本文将详细介绍该AI算法的识别过程、应用场景及其技术特点。 一、识别过程 行车不行人检测AI分…

LM算法与TRF算法(含有在ICP配准情境下的两种算法对应代码)

在 ICP 配准中,使用LM算法通常会遇到找到的对应点对数量不足的问题 因为使用 Levenberg-Marquardt (LM) 算法进行最小二乘优化时,残差的数量小于变量的数量。 实际应用: ICP配准过程:针对两个三维点云数据,两个点云上均有相互对应的3D关键点。我需要在每个点云上的每个关…

3 万字 25 道 Nginx经典面试题总结

🍅 作者简介:哪吒,CSDN2021博客之星亚军🏆、新星计划导师✌、博客专家💪 🍅 哪吒多年工作总结:Java学习路线总结,搬砖工逆袭Java架构师 🍅 技术交流:定期更新…

Hadoop安装报错

报错:ERROR 2023-03-09 21:33:00,178 NetUtil.py:97 - SSLError: Failed to connect. Please check openssl library versions. 解决方案: 在安装失败得客户端执行 编辑 /etc/python/cert-verification.cfg 配置文件,将 [https] 节的 verify 项 设为禁用…

怎么查看一个网站的ip地址?

1、使用nslookup nslookup 是一个网络诊断工具,用于查询域名系统(DNS)记录,将域名解析为IP地址,或者查询其他DNS记录类型,如MX(邮件交换记录)、CNAME(别名记录&#xff…

css - - - - - 环形倒计时进度条实现

css - - - - - 环形倒计时进度条实现 1. 效果图展示2. 代码展示 1. 效果图展示 2. 代码展示 // html <view class"father"><view class"progress" style"--progress:{{red}}; --last:{{gray}}"></view> </view>// css …

推荐系统中的冷启动问题及其解决方案

目录 简介冷启动问题分类解决方案及实践方法1. 用户冷启动解决方案2. 物品冷启动解决方案3. 系统冷启动解决方案 结论 简介 推荐系统的冷启动问题是指在系统面临新用户或新物品时&#xff0c;无法有效地提供个性化推荐的挑战。这种情况下&#xff0c;系统缺乏足够的历史数据来…

如何成为一个厉害的人

要变得厉害&#xff0c;需要不断学习和实践。以下是一些建议&#xff0c;帮助提升技能和知识&#xff1a; 保持好奇心&#xff1a; 对世界保持好奇&#xff0c;积极探索和学习新知识。广泛阅读书籍、文章和研究论文。 系统学习&#xff1a; 学习基础学科如数学、逻辑、计算机科…

mac合并pdf文件最简单的方法,mac如何合并pdf文件

在数字化办公和学习的过程中&#xff0c;pdf 格式因其稳定性和跨平台兼容性而广受欢迎。但有时候&#xff0c;我们免不了需要将多个pdf文件合并为一个&#xff0c;以便于管理和分享。今天&#xff0c;就让我来为大家介绍几种简单高效的pdf合并方法&#xff0c;让你轻松合并文件…

深度学习落地实战:手势识别

前言 大家好&#xff0c;我是机长 本专栏将持续收集整理市场上深度学习的相关项目&#xff0c;旨在为准备从事深度学习工作或相关科研活动的伙伴&#xff0c;储备、提升更多的实际开发经验&#xff0c;每个项目实例都可作为实际开发项目写入简历&#xff0c;且都附带完整的代…

解决 Failed to get nested archive for entry BOOT-INF/lib/xxx.jar

使用zip工具替换jar包的class类文件是没有问题的&#xff0c;但是当换里面的jar包时就会出现Failed to get nested archive for entry BOOT-INF/lib/xxx.jar异常。解决步骤如下&#xff1a; 1、替换旧包 先解压jar包到本地目录 jar -xvf test.jar得到三个文件夹 BOOT-INFMET…

Android 11 HAL层集成FFMPEG

1.集成目录&#xff1a; android/vendor/noch/common/external/NoboMediaCodec 2.文件夹目录 3. Android.mk实现 # Copyright #LOCAL_PATH : $(call my-dir)SF_COMMON_MK : $(LOCAL_PATH)/common.mkinclude $(call first-makefiles-under,$(LOCAL_PATH))4.common.mk实现 # #…

【EI检索】第二届机器视觉、图像处理与影像技术国际会议(MVIPIT 2024)

一、会议信息 大会官网&#xff1a;www.mvipit.org 官方邮箱&#xff1a;mvipit163.com 会议出版&#xff1a;IEEE CPS 出版 会议检索&#xff1a;EI & Scopus 检索 会议地点&#xff1a;河北张家口 会议时间&#xff1a;2024 年 9 月 13 日-9 月 15 日 二、征稿主题…

Mysql解忧杂货铺

欢迎来到一夜看尽长安花 博客&#xff0c;您的点赞和收藏是我持续发文的动力 对于文章中出现的任何错误请大家批评指出&#xff0c;一定及时修改。有任何想要讨论的问题可联系我&#xff1a;3329759426qq.com 。发布文章的风格因专栏而异&#xff0c;均自成体系&#xff0c;不足…

小数循环节

小数循环节 题目迭代器相关查找选取元素 分析代码 题目 要求你对给定的两个整数做除法&#xff0c;如果是有限小数&#xff0c;直接表达。如果是无限循环小数&#xff0c;用方括号标出它的循环节。 【输入】1/7 【输出】0.[142857] 再例如&#xff0c;12345/1700&#xff1a; …

Elasticsearch(ES)集群监控

Elasticsearch(ES)集群监控 在Elasticsearch中&#xff0c;监控集群的健康状况、性能和运行指标是至关重要的。以下是一些常用的Elasticsearch监控工具和API的例子&#xff1a; 使用Elasticsearch自带的API来获取集群健康状态、节点信息和统计信息。 # 获取集群健康状况 curl…

【python虚拟环境管理】【mac m3】 使用pipx安装poetry

文章目录 一. 安装 pipx二. 安装Poetry1. 安装2. advanced 操作 官网文档&#xff1a;https://python-poetry.org/docs/ pipx介绍文档&#xff1a;https://blog.51cto.com/u_15064632/2570626 一. 安装 pipx pipx 用于全局安装 Python 命令行应用程序&#xff0c;同时在虚拟环…

注册安全分析报告:OneApm

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞 …

【大型实战】企业网络实验(华为核心交换、ESXI7.0vmware虚拟机、DHCP中继、服务端网络及用户端网络配置)

需求 实验 vmware网络配置&#xff08;企业内部一般为ESXI&#xff09; 这样服务器虚拟机使用192.168.200.X网段才能与用户侧互通 vmware虚拟机配置&#xff08;DHCP服务器网络配置&#xff09; 打开网络管理页面 nmtui重置一下网络连接&#xff08;重启网卡&#xff09; …

十分钟“手撕”七大排序

前言&#xff1a;可以通过目录来找你需要的排序的源代码。先是解释底层原理&#xff0c;后附带代码。 目录 稳定的概念 一、插入排序 二、希尔排序 三、选择排序 四、堆排序 五、冒泡排序 六、快速排序 七、归并排序 八、排序总结 额外&#xff1a;计数排序 稳定的…