TensorFlow高阶API使用与PyTorch的安装

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.mzph.cn/web/33025.shtml

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

相关文章

ArkTS开发系列之导航 (2.6 图形)

上篇回顾:ArkTS开发系列之导航 (2.5.2 页面组件导航) 本篇内容: 显示图片、自定义图形和画布自定义图形的学习使用 一、知识储备 1. 图片组件(Image) 可以展示jpg 、png 、svg 、gif等各格式的网络和本地资源文件图…

AI 开发平台(Coze)搭建小游戏《挑战花光10亿》

前言 本文讲解如何从零开始,使用扣子平台去搭建一个小游戏 这是成品链接:挑战花光10亿 - 扣子 AI Bot (coze.cn) 欢迎大家去体验一下 效果 正文 什么是coze平台? 扣子(Coze)是字节跳动推出的一站式 AI 开发平台&am…

周末设计高端企业_集团官网主题Discuz模板

风格名称: 周末设计_高端企业_集团官网 适用版本: Discuz! X3.0、X3.1、X3.2、X3.3、F1.0 风格编码: 使用语言包结构,适合全部编码 周末设计高端企业_集团官网主题Discuz模板

会话会话会话

目录 1.会话 1.1 为什么需要会话控制 1.2 域对象的范围 1.2.1 应用域的范围 1.2.2 请求域的范围 1.2.3 会话域的范围 1.3 Cookie技术 1.3.1 Cookie的概念 1.3.2 Cookie的作用 1.3.3 Cookie的应用场景 1.3.4 Cookie的入门案例 ① 目标 ② Cookie相关的API ③ Serv…

C++ | Leetcode C++题解之第187题重复的DNA序列

题目&#xff1a; 题解&#xff1a; class Solution {const int L 10;unordered_map<char, int> bin {{A, 0}, {C, 1}, {G, 2}, {T, 3}}; public:vector<string> findRepeatedDnaSequences(string s) {vector<string> ans;int n s.length();if (n < L…

文件传输 断点续传

什么是断点续传 简单来说断点续传指的是文件在上传或下载的过程中&#xff0c;由于网络差断开了&#xff0c;那么下次上传或下载时应该从断点处开始。 怎么实现 前端对文件进行分块前端使用多线程一块一块上传&#xff0c;上传前给服务端发一个消息检验该分块是否上传&#…

ubuntu编译和链接特定版本的opencv和boost

编译opencv&#xff0c;网上资料已经很多&#xff0c; cmake -D CMAKE_BUILD_TYPERelease \-D CMAKE_INSTALL_PREFIX../install \-D BUILD_DOCSON \-D BUILD_EXAMPLESON \-D OPENCV_GENERATE_PKGCONFIGON \ ..如上&#xff0c;make install后 安装到了父目录的install目录下 …

计算机网络协议常考点!!!

应用层协议 HTTP协议 基于TCP协议&#xff0c;是一种用于传输超文本和多媒体内容的协议&#xff0c;主要是为浏览器之前的通信而设计的&#xff1b; get请求和post请求区别 请求参数位置不同&#xff1a;get会将请求参数放在URL后面并通过&运算符连接&#xff0c;而pos…

C++ 重建二叉树(递归方法)

/*** struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* };*/ #include <vector> class Solution {public:/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接…

等保测评中,关键数据的保护措施

简介 等保测评&#xff0c;即网络安全等级保护测评&#xff0c;是依据国家网络安全等级保护制度&#xff0c;对企业信息系统的安全保护水平进行的评估和认证过程。它通过一系列的标准流程和技术手段&#xff0c;确保信息系统在建设、运维过程中达到国家规定的安全保护等级要求…

GPOPS-II教程(1): 语法和一个最优控制问题案例

文章目录 一、写在前面二、GPOPS-II结构2.1 setup的语法2.2 function的语法2.2.1 setup.functions.continuousfun2.2.2 setup.functions.endpoint 2.3 bounds的语法setup.guessoutput 三、例题3.1 问题描述3.2 代码部分3.2.1 main function3.2.1.1 初始参数设置3.2.1.2 边界条件…

安装VEX外部编辑器

Houdini20配置VEX外部编辑器方法_哔哩哔哩_bilibili 下载并安装Visual Studio Code软件&#xff1a;Download Visual Studio Code - Mac, Linux, Windows 在Visual Studio Code软件内&#xff0c;安装相关插件&#xff0c;如&#xff1a; 中文汉化插件vex插件 安装Houdini Expr…

图像处理Python库--图片裁剪、缩放、灰度图、圆角等

图像处理Python库 py-img-processor1. 安装2. 使用(Usage)2.1 运行配置2.2 图像处理处理函数图像处理参数为字符串图像处理参数为JSON 命令行提取图像主色调 py-img-processor Image editor using Python and Pillow. 依赖Pillow开发的Python库&#xff0c;用于图像编辑处理。…

linux常用API接口

linux常用API接口 文章目录 linux常用API接口1.应用层内存映射mmap取消内存映射munmap终端打印可用方式1.puts 函数2.文件操作函数 fprintf3.字符输出函数 putchar4.fwrite 函数 2.内核层 1.应用层 内存映射mmap mmap 是一个用于内存映射的系统调用&#xff0c;它可以将一个文…

Java零基础-集合:List

哈喽&#xff0c;各位小伙伴们&#xff0c;你们好呀&#xff0c;我是喵手。运营社区&#xff1a;C站/掘金/腾讯云&#xff1b;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点&#xff0c;并以文字的形式跟大家一起交流&#xff0c;互相学习&#xff0c;一…

nest.js关键笔记

Nest.js 介绍核心功能设计模式&#xff1a;IOC 控制反转 DI 依赖注入前置知识&#xff1a;装饰器前置知识装饰器-实现一个GET请求 Nestjs脚手架Nestjs cli 常用命令 RESTful 风格设计Nestjs 控制器控制器中常见的参数装饰器 Session 实例Nestjs 提供者**工厂模式**异步模式 Nes…

【Unity服务器01】之【AssetBundle上传加载u3d模型】

首先打开一个项目导入一个简单的场景 导入怪物资源&#xff0c; AssetBundle知识点&#xff1a; 1.指定资源的AssetBundle属性标签 &#xff08;1&#xff09;找到AssetBundle属性标签 &#xff08;2&#xff09;A标签 代表&#xff1a;资源目录&#xff08;决定打包之后在哪…

如何给文档设置密码?电脑文件安全加密的详细操作步骤(10种方法)

在数字化时代&#xff0c;电脑文件的安全和隐私至关重要。通过给电脑的文件或者文件夹设置密码和加密&#xff0c;可以有效保护你的重要文件不被未经授权的人员访问&#xff0c;特别是公司的重要岗位&#xff0c;一些特殊的机密文件&#xff0c;投标文件&#xff0c;资金文件等…

使用Metropolis蒙特卡洛方法的原子模拟

文章目录 1.蒙特卡罗方法的目标2.热力学系综3.连续体系4.Metropolis算法1.Metropolis算法介绍2.Metropolis算法思路 5.原子体系的蒙特卡洛算法1.算法的基本思想2.算法的实现过程 1.蒙特卡罗方法的目标 蒙特卡罗方法可以做什么&#xff1f; 提供材料的热力学信息&#xff1b; 评…

动手学深度学习(Pytorch版)代码实践 -深度学习基础-10权重衰减

10权重衰减 """ 正则化是处理过拟合的常用方法&#xff1a;在训练集的损失函数中加入惩罚项&#xff0c;以降低学习到的模型的复杂度。 保持模型简单的一个特别的选择是使用L2惩罚的权重衰减。这会导致学习算法更新步骤中的权重衰减。 """impor…