TensorFlow高阶API使用与PyTorch的安装

news2024/10/7 16:18:18

2a20c54b85e042bfa2440367ae4807e9.gif

欢迎来到 Papicatch的博客

文章目录

🍉TensorFlow高阶API使用

🍈示例1:使用tf.keras构建模型

🍍通过“序贯式”方法构建模型

🍍通过“函数式”方法构建模型

🍈示例2:编译模型关键代码

🍈示例3:训练模型关键代码

🍉高阶API标准化搭建实例:鸢尾花特征分类实验

🍈实验目标

🍈数据准备

🍈构建模型

🍈训练模型

🍈评估模型

🍉PyTorch的安装

🍈引言

🍈安装PyTorch

🍍使用conda安装

🍇安装Anaconda或Miniconda

🍇创建虚拟环境

🍇选择安装命令:

🍍使用pip安装

🍇确保已安装Python和pip

🍇选择安装命令

🍇执行安装命令

🍍通过源码安装

🍇安装依赖

🍇克隆PyTorch源码

🍇配置编译环境

🍈验证


2a20c54b85e042bfa2440367ae4807e9.gif

上篇文章为TensorFlow的安装及中低API操作哦,感兴趣的同学可以看一下哦!!!

TensorFlow的安装与使用

2a20c54b85e042bfa2440367ae4807e9.gif

🍉TensorFlow高阶API使用

🍈示例1:使用tf.keras构建模型

🍍通过“序贯式”方法构建模型

import tensorflow as tf
from tensorflow.keras import layers

# 构建序贯式模型
model = tf.keras.Sequential([
    layers.Dense(64, activation='relu', input_shape=(4,)),  # 输入层:4个输入节点
    layers.Dense(64, activation='relu'),  # 隐藏层:64个节点
    layers.Dense(3, activation='softmax')  # 输出层:3个输出节点(类别)
])

model.summary()

🍍通过“函数式”方法构建模型

import tensorflow as tf
from tensorflow.keras import layers, Model

# 输入层
inputs = layers.Input(shape=(4,))
# 隐藏层
x = layers.Dense(64, activation='relu')(inputs)
x = layers.Dense(64, activation='relu')(x)
# 输出层
outputs = layers.Dense(3, activation='softmax')(x)

# 构建模型
model = Model(inputs=inputs, outputs=outputs)

model.summary()

🍈示例2:编译模型关键代码

        在编译模型时,我们需要指定优化器、损失函数和评估指标。

model.compile(
    optimizer='adam',  # 优化器
    loss='sparse_categorical_crossentropy',  # 损失函数
    metrics=['accuracy']  # 评估指标
)

🍈示例3:训练模型关键代码

        在训练模型时,我们使用fit方法。

# 加载鸢尾花数据集
from sklearn.datasets import load_iris
iris = load_iris()
data = iris.data
labels = iris.target

# 分割训练集和测试集
from sklearn.model_selection import train_test_split
train_data, test_data, train_labels, test_labels = train_test_split(data, labels, test_size=0.2, random_state=42)

# 训练模型
model.fit(train_data, train_labels, epochs=50, batch_size=16, validation_split=0.2)

🍉高阶API标准化搭建实例:鸢尾花特征分类实验

🍈实验目标

        使用三层的人工神经网络对鸢尾花数据集进行分类。

🍈数据准备

from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
import tensorflow as tf

# 加载数据集
iris = load_iris()
data = iris.data
labels = iris.target

# 分割训练集和测试集
train_data, test_data, train_labels, test_labels = train_test_split(data, labels, test_size=0.2, random_state=42)

🍈构建模型

        使用“序贯式”方法构建三层人工神经网络。

from tensorflow.keras import layers

# 构建模型
model = tf.keras.Sequential([
    layers.Dense(64, activation='relu', input_shape=(4,)),
    layers.Dense(64, activation='relu'),
    layers.Dense(3, activation='softmax')
])

# 编译模型
model.compile(
    optimizer='adam',
    loss='sparse_categorical_crossentropy',
    metrics=['accuracy']
)

model.summary()

🍈训练模型

# 训练模型
model.fit(train_data, train_labels, epochs=50, batch_size=16, validation_split=0.2)

🍈评估模型

# 评估模型
test_loss, test_acc = model.evaluate(test_data, test_labels)
print(f"Test Accuracy: {test_acc}")

        以上是一个完整的使用TensorFlow高阶API构建、编译和训练神经网络模型的实例,通过对鸢尾花数据集的特征进行分类展示了这些步骤的具体实现。

🍉PyTorch的安装

🍈引言

        TensorFlow之后用于深度学习的主要框架是PyTorch。PyTorch框架是Facebook开发的,Twitter和Salesforce等公司都使用PyTorch框架。与TensorFlow不同,PyTorch使用动态更新的图形进行操作,意味着它可以在流程中更改体系结构。在PyTorch中,可以使用标准调试器,如pdb或PyCharm。

        PyTorch训练神经网络的过程简单明了,同时,PyTorch支持数据并行和分布式学习模型,还包含很多预先训练的模型。

🍈安装PyTorch

        PyTorch可以作为PyTorch包使用,用户可以使用pip或者conda来构建,或者从源码构建等。

🍍使用conda安装

🍇安装Anaconda或Miniconda

        如果没有安装,可以从 Anaconda官网 或 Miniconda官网 下载并安装。

🍇创建虚拟环境

        为了避免依赖冲突,建议在虚拟环境中安装PyTorch

conda create -n pytorch_env python=3.9
conda activate pytorch_env
🍇选择安装命令

        根据 PyTorch官网 提供的配置选择适合的命令。例如:

  • 安装CPU版本
conda install pytorch torchvision torchaudio cpuonly -c pytorch
  • 安装带CUDA支持的版本(例如CUDA 11.7)
conda install pytorch torchvision torchaudio cudatoolkit=11.7 -c pytorch -c nvidia

🍇执行安装命令

         在终端或命令提示符中输入上述命令进行安装。

PyTorch官网地址为:Start Locally | PyTorch  。

🍍使用pip安装

  pip是Python的包管理工具。以下步骤适用于Windows、macOS和Linux。

🍇确保已安装Python和pip

        确认已安装Python和pip。可以通过以下命令检查

python --version
pip --version

        上图为我电脑安装的Python版本及pip版本。

🍇选择安装命令

        根据官方PyTorch网站的推荐,选择适合自己系统和需求的命令。可以访问 PyTorch官网 选择具体配置。

以下是一些常见的命令:

  • 安装CPU版本
pip install torch torchvision torchaudio
  • 安装带CUDA支持的版本(例如CUDA 11.7)
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu117
🍇执行安装命令

        打开终端或命令提示符,输入上述命令进行安装。

🍍通过源码安装

        有时需要从源码编译安装PyTorch,适用于自定义需求或开发者。

🍇安装依赖

        在安装PyTorch源码之前,需要安装一些必要的依赖项。以Ubuntu为例:

sudo apt-get update
sudo apt-get install cmake git libopenblas-dev liblapack-dev libjpeg-dev libpng-dev
🍇克隆PyTorch源码
git clone --recursive https://github.com/pytorch/pytorch
cd pytorch
🍇配置编译环境

        设置Python环境,并确保安装了所需的Python包(如numpypillow)。

conda create -n pytorch_from_source python=3.9
conda activate pytorch_from_source
pip install numpy pyyaml mkl mkl-include setuptools cmake cffi typing_extensions future six requests dataclasses

🍇编译和安装PyTorch

python setup.py install

🍈验证

       以上是几种安装PyTorch的方法,根据您的具体需求和系统环境选择合适的方法进行安装。安装完成后,可以通过以下代码测试安装是否成功:

import torch
print(torch.__version__)
print(torch.cuda.is_available())  # 如果安装了CUDA支持的版本,检查CUDA是否可用

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

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

相关文章

多商户零售外卖超市外卖商品系统源码

构建你的数字化零售王国 一、引言:数字化零售的崛起 在数字化浪潮的推动下,零售业务正经历着前所未有的变革。多商户零售外卖超市商品系统源码应运而生,为商户们提供了一个全新的数字化零售解决方案。通过该系统源码,商户们可以…

.locked勒索病毒详解 | 防御措施 | 恢复数据

引言 在数字化飞速发展的今天,我们享受着信息技术带来的便捷与高效,然而,网络安全问题也随之而来,且日益严重。其中,勒索病毒以其狡猾的传播方式和巨大的破坏性,成为了网络安全领域中的一大难题。.locked勒…

解决Element-ui的el-table固定列后出现的表格错位问题

问题情况大致是这样的: 查看官网 解决办法:

std::future 如何保存多个对象进行同步等待

std::future 是一个 C11 引入的标准库类,可用于异步获取计算结果。通常情况下,std::future 可以通过 get() 函数来等待异步操作完成,并获取其结果。 如果需要等待多个异步操作完成并获取它们各自的结果,可以使用 std::future 的姊…

2024年文化传播与公共艺术国际会议(CCPA 2024)

2024年文化传播与公共艺术国际会议(CCPA 2024) 2024 International Conference on Cultural Communication and Public Arts 【重要信息】 大会地点:桂林 大会官网:http://www.icccpa.com 投稿邮箱:icccpasub-conf.co…

群辉NAS使用Kodi影视墙

目录 一、KODI安装 二、修改UI语言 1、修改显示字体 2、修改语言为中文 四、添加媒体库 五、观看电影 五、高级设置 1、视图类型 2、修改点击播动作 五、补充 1、文件组织结构及命名 2、电影信息的刮削 (1)添加影片 (2)演员管理 (3)影片管理 (4)说明 K…

【WEB前端2024】3D智体编程:乔布斯3D纪念馆-第47课-动态切换内嵌blender展厅的壁画

【WEB前端2024】3D智体编程:乔布斯3D纪念馆-第47课-动态切换内嵌blender展厅的壁画 使用dtns.network德塔世界(开源的智体世界引擎),策划和设计《乔布斯超大型的开源3D纪念馆》的系列教程。dtns.network是一款主要由JavaScript编…

基于Java协同过滤算法的电影推荐系统设计和实现(源码+LW+调试文档+讲解等)

💗博主介绍:✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者,博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 🌟文末获取源码数据库🌟 感兴趣的可以先收藏起来,…

高晓松音频 百度网盘,高晓松音频 百度网盘资源,百度云大全

讲座主要围绕分享了自己的心得和体会,以及对产业现状的深刻洞察。认为,不仅是一种艺术形式,更是一种生活方式。他鼓励年轻人要勇于追求自己的音乐梦想,同时也要关注音乐产业的发展趋势,为音乐产业的繁荣贡献自己的力量…

通俗范畴论4 范畴的定义

注:由于CSDN无法显示本文章源文件的公式,因此部分下标、字母花体、箭头表示可能会不正常,请读者谅解 范畴的正式定义 上一节我们在没有引入范畴这个数学概念的情况下,直接体验了一个“苹果1”范畴,建立了一个对范畴的…

神经网络参数-----学习率(Learning Rate)

学习率 学习率是训练神经网络的重要超参数之一,它代表在每一次迭代中梯度向损失函数最优解移动的步长。它的大小决定网络学习速度的快慢。在网络训练过程中,模型通过样本数据给出预测值,计算代价函数并通过反向传播来调整参数。重复上述过程…

浅析优化文本提示技术 —— TextGrad

引言 大模型领域,现在除了不断推出各种底层大模型外,还涌现了许多包含复杂组件的复合系统,包括框架、工具等。 TextGrad VS DSPy 先来从大的概念范围看看 TextGrad 与 DSPy 的对比: TextGrad: (1&…

【PL理论深化】(3) 数学归纳法:归纳假设 (IH) | 结构归纳法 | 归纳假设的证明

💬 写在前面:所有编程语言都是通过归纳法定义的。因此,虽然编程语言本身是有限的,但用该语言编写的程序数量是没有限制的,本章将学习编程语言研究中最基本的归纳法。本章我们继续讲解归纳法,介绍归纳假设和…

Jitter Injection详解

一、定义与作用 Jitter Injection,即抖动注入,是一种在通信系统中人为地添加抖动的技术。该技术通过在发送端对数据包进行延迟和抖动调整,以实现对整个通信系统的时延和抖动的控制。其主要作用包括: 改善传输质量:通…

振弦采集仪在地铁隧道工程安全监测中的应用实践

振弦采集仪在地铁隧道工程安全监测中的应用实践 河北稳控科技振弦采集仪是一种常用于结构监测领域的仪器,主要用于测量结构物振动的频率、幅值、相位以及动力特性等参数。在地铁隧道工程的安全监测中,振弦采集仪起着关键的作用。 随着城市的不断发展&am…

同城跑腿APP开发,随叫随到超方便!

随着移动互联网的发展和人们生活节奏的加快,越来越多的人们没有闲暇的时间来做一些繁琐的事情,比如说买药、挂号、排队、送花、取文件等等。如果没有时间去处理这些事情怎么办?开发同城跑腿APP,提供跑腿服务,随时办事随…

Vue核心指令解析:探索MVVM与数据操作之美

文章目录 前言一、Vue.js1. MVVM模式介绍2. 单页面组件介绍及案例讲解3. 插值表达式介绍及案例讲解 二、Vue常用指令详解1. 数据绑定指令v-textv-html 2. 条件渲染指令v-ifv-show 3. 列表渲染指令v-for循环数组介绍及案例讲解循环对象介绍及案例讲解 4. 事件监听指令v-on事件修…

【TB作品】MSP430G2553单片机,红外双机通信,红外通信程序

文章目录 NEC 红外通信协议实验步骤1. 硬件连接2. 程序说明红外发射部分红外接收部分 说明帮助 NEC 红外通信协议 NEC 红外通信协议是一种广泛应用于遥控器设备的红外通信协议。它采用脉冲宽度调制(PWM)来编码数据,并使用38kHz的载波频率进行传输。协议的特点如下&…

Java医院绩效考核系统源码:关于医院绩效考核系统的技术架构、系统功能、如何选择医院绩效考核管理系统

Java医院绩效考核系统源码:关于医院绩效考核系统的技术架构、系统功能、如何选择医院绩效考核管理系统 随着医疗技术的不断发展,医院绩效管理系统已经成为提升医疗服务质量和效率的关键技术之一。本文将介绍医院绩效管理系统的概念、开发环境、功能应用…

磁芯电感 晶谷电容可镀银浆用玻璃 晶谷电阻银浆料低温玻璃粉(耐强酸)

晶谷电阻银浆料低温玻璃粉(耐强酸)软化点在490至580度之间,线膨胀系数为(75至95)10-7,粒径为1.5至3微米(可按要求订做),外观颜色为白色超细粉末,烧后颜色无色…