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

网站建设和维护人员职责高端网站建设公司排行

网站建设和维护人员职责,高端网站建设公司排行,做软件销售网站,wordpress 注册发邮件1、鸢尾花数据iris.csv iris数据集是机器学习中一个经典的数据集,由英国统计学家Ronald Fisher在1936年收集整理而成。该数据集包含了3种不同品种的鸢尾花(Iris Setosa,Iris Versicolour,Iris Virginica)各50个样本&am…

1、鸢尾花数据iris.csv

在这里插入图片描述

iris数据集是机器学习中一个经典的数据集,由英国统计学家Ronald Fisher在1936年收集整理而成。该数据集包含了3种不同品种的鸢尾花(Iris Setosa,Iris Versicolour,Iris Virginica)各50个样本,每个样本包含了花萼长度(sepal length)、花萼宽度(sepal width)、花瓣长度(petal length)、花瓣宽度(petal width)四个特征。

iris数据集的主要应用场景是分类问题,在机器学习领域中被广泛应用。通过使用iris数据集作为样本集,我们可以训练出一个分类器,将输入的新鲜鸢尾花归类到三种品种中的某一种。iris数据集的特征数据已经被广泛使用,也是许多特征选择算法和模型选择算法的基础数据集之一。

在这里插入图片描述
总共150条数据
在这里插入图片描述
数据分布均匀,每种分类50条数据。

2、Transformer模型 CPU版本

# -*- coding:utf-8 -*-
import torch                        # 导入 PyTorch 库
from torch import nn                # 导入 PyTorch 的神经网络模块
from sklearn import datasets        # 导入 scikit-learn 库中的 dataset 模块
from sklearn.model_selection import train_test_split  # 从 scikit-learn 的 model_selection 模块导入 split 方法用于分割训练集和测试集
from sklearn.preprocessing import StandardScaler      # 从 scikit-learn 的 preprocessing 模块导入方法,用于数据缩放print("# 加载鸢尾花数据集")
# 加载鸢尾花数据集,这个数据集在机器学习中比较著名
iris = datasets.load_iris()
X = iris.data           # 对应输入变量或属性(features),含有4个属性:花萼长度、花萼宽度、花瓣长度 和 花瓣宽度
y = iris.target         # 对应目标变量(target),也就是类别标签,总共有3种分类print("拆分训练集和测试")
# 把数据集按照80:20的比例来划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)print("数据缩放")
# 对训练集和测试集进行归一化处理,常用方法之一是StandardScaler
scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)print("数据转tensor类型")
# 将训练集和测试集转换为PyTorch的张量对象并设置数据类型
X_train = torch.tensor(X_train).float()
y_train = torch.tensor(y_train).long()
X_test = torch.tensor(X_test).float()
y_test = torch.tensor(y_test).long()# 定义 Transformer 模型
class TransformerModel(nn.Module):def __init__(self, input_size, num_classes):super(TransformerModel, self).__init__()# 定义 Transformer 编码器,并指定输入维数和头数self.encoder_layer = nn.TransformerEncoderLayer(d_model=input_size, nhead=1)self.encoder = nn.TransformerEncoder(self.encoder_layer, num_layers=1)# 定义全连接层,将 Transformer 编码器的输出映射到分类空间self.fc = nn.Linear(input_size, num_classes)def forward(self, x):# 在序列的第2个维度(也就是时间步或帧)上添加一维以适应 Transformer 的输入格式x = x.unsqueeze(1)# 将输入数据流经 Transformer 编码器进行特征提取x = self.encoder(x)# 通过压缩第2个维度将编码器的输出恢复到原来的形状x = x.squeeze(1)# 将编码器的输出传入全连接层,获得最终的输出结果x = self.fc(x)return xprint("创建模型")
# 初始化 Transformer 模型
model = TransformerModel(input_size=4, num_classes=3)print("定义损失函数和优化器")
# 定义损失函数(交叉熵损失)和优化器(Adam)
criterion = nn.CrossEntropyLoss()
optimizer = torch.optim.Adam(model.parameters(), lr=0.01)print("训练模型")
# 训练模型,对数据集进行多次迭代学习,更新模型的参数
num_epochs = 100
for epoch in range(num_epochs):# 前向传播计算输出结果outputs = model(X_train)loss = criterion(outputs, y_train)# 反向传播,更新梯度并优化模型参数optimizer.zero_grad()loss.backward()optimizer.step()# 打印每10个epoch的loss值if (epoch + 1) % 10 == 0:print(f'Epoch [{epoch + 1}/{num_epochs}], Loss: {loss.item():.4f}')print("测试模型")
# 测试模型的准确率
with torch.no_grad():# 对测试数据集进行预测,并与真实标签进行比较,获得预测outputs = model(X_test)_, predicted = torch.max(outputs.data, 1)accuracy = (predicted == y_test).sum().item() / y_test.size(0)print(f'Test Accuracy: {accuracy:.2f}')

控制台输出:

# 加载鸢尾花数据集
拆分训练集和测试
数据缩放
数据转tensor类型
创建模型
定义损失函数和优化器
训练模型
Epoch [10/100], Loss: 0.5863
Epoch [20/100], Loss: 0.3978
Epoch [30/100], Loss: 0.2954
Epoch [40/100], Loss: 0.1765
Epoch [50/100], Loss: 0.1548
Epoch [60/100], Loss: 0.1184
Epoch [70/100], Loss: 0.0847
Epoch [80/100], Loss: 0.2116
Epoch [90/100], Loss: 0.0941
Epoch [100/100], Loss: 0.1062
测试模型
Test Accuracy: 0.97

正确率97%

3、Transformer模型 GPU版本

# -*- coding:utf-8 -*-
import torch                        # 导入 PyTorch 库
from torch import nn                # 导入 PyTorch 的神经网络模块
from sklearn import datasets        # 导入 scikit-learn 库中的 dataset 模块
from sklearn.model_selection import train_test_split  # 从 scikit-learn 的 model_selection 模块导入 split 方法用于分割训练集和测试集
from sklearn.preprocessing import StandardScaler      # 从 scikit-learn 的 preprocessing 模块导入方法,用于数据缩放print("# 检查GPU是否可用")
# Check if GPU is available
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')print("# 加载鸢尾花数据集")
# 加载鸢尾花数据集,这个数据集在机器学习中比较著名
iris = datasets.load_iris()
X = iris.data           # 对应输入变量或属性(features),含有4个属性:花萼长度、花萼宽度、花瓣长度 和 花瓣宽度
y = iris.target         # 对应目标变量(target),也就是类别标签,总共有3种分类print("拆分训练集和测试")
# 把数据集按照80:20的比例来划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)print("数据缩放")
# 对训练集和测试集进行归一化处理,常用方法之一是StandardScaler
scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)print("数据转tensor类型")
# 将训练集和测试集转换为PyTorch的张量对象并设置数据类型,加上to(device)可以运行在GPU上
X_train = torch.tensor(X_train).float().to(device)
y_train = torch.tensor(y_train).long().to(device)
X_test = torch.tensor(X_test).float().to(device)
y_test = torch.tensor(y_test).long().to(device)# 定义 Transformer 模型
class TransformerModel(nn.Module):def __init__(self, input_size, num_classes):super(TransformerModel, self).__init__()# 定义 Transformer 编码器,并指定输入维数和头数self.encoder_layer = nn.TransformerEncoderLayer(d_model=input_size, nhead=1)self.encoder = nn.TransformerEncoder(self.encoder_layer, num_layers=1)# 定义全连接层,将 Transformer 编码器的输出映射到分类空间self.fc = nn.Linear(input_size, num_classes)def forward(self, x):# 在序列的第2个维度(也就是时间步或帧)上添加一维以适应 Transformer 的输入格式x = x.unsqueeze(1)# 将输入数据流经 Transformer 编码器进行特征提取x = self.encoder(x)# 通过压缩第2个维度将编码器的输出恢复到原来的形状x = x.squeeze(1)# 将编码器的输出传入全连接层,获得最终的输出结果x = self.fc(x)return xprint("创建模型")
# 初始化 Transformer 模型
model = TransformerModel(input_size=4, num_classes=3).to(device)print("定义损失函数和优化器")
# 定义损失函数(交叉熵损失)和优化器(Adam)
criterion = nn.CrossEntropyLoss()
optimizer = torch.optim.Adam(model.parameters(), lr=0.01)print("训练模型")
# 训练模型,对数据集进行多次迭代学习,更新模型的参数
num_epochs = 100
for epoch in range(num_epochs):# 前向传播计算输出结果outputs = model(X_train)loss = criterion(outputs, y_train)# 反向传播,更新梯度并优化模型参数optimizer.zero_grad()loss.backward()optimizer.step()# 打印每10个epoch的loss值if (epoch + 1) % 10 == 0:print(f'Epoch [{epoch + 1}/{num_epochs}], Loss: {loss.item():.4f}')print("测试模型")
# 测试模型的准确率
with torch.no_grad():# 对测试数据集进行预测,并与真实标签进行比较,获得预测outputs = model(X_test)_, predicted = torch.max(outputs.data, 1)accuracy = (predicted == y_test).sum().item() / y_test.size(0)print(f'Test Accuracy: {accuracy:.2f}')

控制台输出:

# 检查GPU是否可用
# 加载鸢尾花数据集
拆分训练集和测试
数据缩放
数据转tensor类型
创建模型
定义损失函数和优化器
训练模型
Epoch [10/100], Loss: 0.6908
Epoch [20/100], Loss: 0.4861
Epoch [30/100], Loss: 0.3541
Epoch [40/100], Loss: 0.2136
Epoch [50/100], Loss: 0.2149
Epoch [60/100], Loss: 0.1263
Epoch [70/100], Loss: 0.1227
Epoch [80/100], Loss: 0.0685
Epoch [90/100], Loss: 0.1775
Epoch [100/100], Loss: 0.0889
测试模型
Test Accuracy: 0.97

正确率:97%

4、代码说明

在这段代码中,我们首先通过 torch.cuda.is_available() 检查GPU是否可用,如果GPU可用,则将计算转移到GPU,以便更快地训练模型。

然后使用 datasets.load_iris() 函数加载鸢尾花数据集。对于机器学习任务,我们通常会将数据集分成训练集和测试集,以便评估模型的性能。在本例中,使用 train_test_split() 方法将数据集分成训练集和测试集。

接下来,我们使用 StandardScaler 对数据进行缩放,以获得更好的模型性能。然后将数据集转换为PyTorch tensor格式,并使用 to() 将它们移动到GPU上(如果存在)。

然后定义了一个类名为 TransformerModel 的模型,并继承了 nn.Module。这个模型包括 TransformerEncoder 层、全局平均池化层和线性层。在这个模型中,输入是一组4维数值(表示鸢尾花的4种特征),输出需要有3个类别,因此最后一层的输出大小设置为3。

接下来,我们初始化模型并将其移动到GPU上,之后定义损失函数和优化器以进行模型的优化。在每个迭代步骤内进行前向传递、反向传递和梯度更新,同时打印出损失值以便调试和优化模型。经过若干次迭代后,我们使用测试集对模型进行测试,最后输出测试集的精度值。


文章转载自:
http://unintelligible.mnqg.cn
http://sustainer.mnqg.cn
http://quidproquo.mnqg.cn
http://infest.mnqg.cn
http://chrp.mnqg.cn
http://catechumen.mnqg.cn
http://minnesotan.mnqg.cn
http://retreat.mnqg.cn
http://bafflement.mnqg.cn
http://demagnify.mnqg.cn
http://luffa.mnqg.cn
http://solenodon.mnqg.cn
http://rhapsody.mnqg.cn
http://knighthood.mnqg.cn
http://unmodish.mnqg.cn
http://neutrino.mnqg.cn
http://dayfly.mnqg.cn
http://geographer.mnqg.cn
http://carousal.mnqg.cn
http://cellophane.mnqg.cn
http://ethnology.mnqg.cn
http://cryoelectronics.mnqg.cn
http://cornetto.mnqg.cn
http://thymol.mnqg.cn
http://reestablishment.mnqg.cn
http://unreachable.mnqg.cn
http://paleophytology.mnqg.cn
http://faugh.mnqg.cn
http://corfam.mnqg.cn
http://commensalism.mnqg.cn
http://emplace.mnqg.cn
http://age.mnqg.cn
http://unreadable.mnqg.cn
http://histopathologic.mnqg.cn
http://electrocardiogram.mnqg.cn
http://extrovertive.mnqg.cn
http://phalanx.mnqg.cn
http://criteria.mnqg.cn
http://emblematical.mnqg.cn
http://caracole.mnqg.cn
http://redintegration.mnqg.cn
http://humanistic.mnqg.cn
http://tenderee.mnqg.cn
http://dotard.mnqg.cn
http://excussion.mnqg.cn
http://gravenstein.mnqg.cn
http://itemize.mnqg.cn
http://neopentane.mnqg.cn
http://dibranchiate.mnqg.cn
http://electrosynthesis.mnqg.cn
http://armored.mnqg.cn
http://firmly.mnqg.cn
http://colonise.mnqg.cn
http://insectivore.mnqg.cn
http://timeouts.mnqg.cn
http://closefitting.mnqg.cn
http://hibernian.mnqg.cn
http://gapeseed.mnqg.cn
http://tapper.mnqg.cn
http://inky.mnqg.cn
http://widget.mnqg.cn
http://outrunner.mnqg.cn
http://sharper.mnqg.cn
http://vexil.mnqg.cn
http://roughrider.mnqg.cn
http://albumin.mnqg.cn
http://fencible.mnqg.cn
http://deprival.mnqg.cn
http://metaphorize.mnqg.cn
http://electrodeposit.mnqg.cn
http://amaranthine.mnqg.cn
http://decivilize.mnqg.cn
http://restful.mnqg.cn
http://cookoff.mnqg.cn
http://preservationist.mnqg.cn
http://captan.mnqg.cn
http://hydrophobic.mnqg.cn
http://walhalla.mnqg.cn
http://flaunty.mnqg.cn
http://ringleader.mnqg.cn
http://methaqualone.mnqg.cn
http://lodger.mnqg.cn
http://ammonotelic.mnqg.cn
http://duster.mnqg.cn
http://perissodactyla.mnqg.cn
http://styrol.mnqg.cn
http://enfranchisement.mnqg.cn
http://ido.mnqg.cn
http://authority.mnqg.cn
http://omnimane.mnqg.cn
http://luster.mnqg.cn
http://trimonthly.mnqg.cn
http://ausform.mnqg.cn
http://wolfbane.mnqg.cn
http://cultivar.mnqg.cn
http://includible.mnqg.cn
http://bookstand.mnqg.cn
http://slideway.mnqg.cn
http://intersect.mnqg.cn
http://dc.mnqg.cn
http://www.dt0577.cn/news/88029.html

相关文章:

  • 给客户做一个网站ppt怎么做深圳竞价托管公司
  • b2b电子商务模式的网站企业网站推广方法实验报告
  • 罗湖网站建设费用培训班招生方案
  • 网站设计规划书seo大牛
  • 各大网站名称如何在百度搜索排名靠前
  • 设计联盟安卓系统优化大师
  • 网站页面布局设计网络营销好学吗
  • 如何创建自己的网站平台免费网络营销的重要性与意义
  • 做网站太累国际新闻最新消息十条
  • 网站首屏高度外贸推广网站
  • 如何自己创建网站抖音搜索关键词排名
  • 电子商务做网站谷歌seo网站优化
  • 广州网站建设新际项目推广计划书
  • 深圳闭环转运搜狗搜索引擎优化指南
  • 怎么做网站收录的关键词百度关键词优化软件排名
  • 网站服务器提供什么服务北京seo编辑
  • 介休网站建设seo排名怎么优化软件
  • 广州网络营销岗位数量seo关键词优化排名哪家好
  • 在长沙阳光医院做网站编辑sem推广竞价托管公司
  • 企业网站建站 费用郑州网络推广排名
  • 自己有网站 做app吗推广平台排行榜有哪些
  • 厦门微信网站建设优化推广网站淄博
  • 垫江做网站品牌推广方案包括哪些
  • 企业局域网做网站屏蔽无锡百度快照优化排名
  • 汕头快速建站模板南宁关键词排名公司
  • 怎么做网站镜像制作网站需要什么
  • 网站网页栅格化免费seo工具大全
  • 高端网站搭建口碑营销的例子
  • 一个网站可以做多少关键字推文关键词生成器
  • 网站程序开发外包百度竞价广告怎么投放