【深度学习】Tensorflow、MindSpore框架介绍及张量算子操作实战(超详细 附源码)

简介: 【深度学习】Tensorflow、MindSpore框架介绍及张量算子操作实战(超详细 附源码)

一、Tensorflow、MindSpore

Google公司于2015年开源了深度学习框架TensorFlow,推动了深度学习的发展,得到了广泛应用,用户数量庞大。

华为公司于2020年开源了自己的深度学习框架MindSpore,现处于快速发展中。

TensorFlow2深度学习框架支持CPU、GPU和Google自己的TPU处理器作为计算平台。MindSpore深度学习框架支持CPU、GPU和华为的昇腾Ascend处理器作为计算平台。

这两个深度学习框架的功能都很强大,内容庞大,包括数据预处理、模型建立与训练、实际工业部署等方方面面。对于初学者来说,刚开始不必面面俱到,应集中精力掌握深度学习的基本知识。

在它们的官网提供了有关框架的详细说明文档,但是要理解这些文档,需要具备深度学习的基本知识。

TensorFlow2和MindSpore深度学习框架中,张量(Tensor)是基本的数据结构,算子是施加在张量上的各种操作,它们是理解深度学习框架最基本的概念。

张量是多维排列的数据。不同维度的张量分别表示不同的数据,0维张量表示标量,1维张量表示向量,2维张量表示矩阵,3维张量可以表示彩色图像的RGB三通道等等。

张量数据的类型与NumPy的数据类型一致,包括各类整数类型和浮点数类型。在深度学习中,一般将待处理的数据规范化为特定维度的张量,例如,在图像处理时,彩色像素点的红、绿、蓝三色值用一个3维的张量来表示。

对张量可以进行与Numpy类似的改变维数reshape、转置transpose、切片slice、索引index、拼接concat、分割splite和排序topk等操作,以及常见的加、减、乘、除和比较等运算。

要注意的是,TensorFlow2和MindSpore框架中,张量的表示方式有差异,在使用时应注意区别。

二、张量与算子的操作

下面以数组元素的平方和为例示意张量与算子的操作

1:numpy计算

import numpy as np
np_x = np.array([1.0, 2.0, 6.0])
print("numpy output = ", np.square(np_x)) # 或者 np_x ** 2;np_x * np_x; np.power(np_x, 2)

2:MindSpore计算

 

import mindspore as ms
import mindspore.ops.operations as P
ms_x = ms.Tensor([1.0, 2.0, 6.0], ms.float32) # 生成一个张量
square = P.Square() # 实例化
output = square(ms_x)
print("mindspore output =", output)

3:tensorflow计算

import tensorflow as tf
tf_x = tf.constant([1.0, 2.0, 6.0])
print("tensorflow output = ", tf.pow(tf_x, 2))

4:对python运算符的支持

print(np_x ** 2)
print(ms_x ** 2)
print(tf_x ** 2)

创作不易 觉得有帮助请点赞关注收藏~~~

相关文章
|
9月前
|
机器学习/深度学习 监控 算法
基于mediapipe深度学习的手势数字识别系统python源码
本内容涵盖手势识别算法的相关资料,包括:1. 算法运行效果预览(无水印完整程序);2. 软件版本与配置环境说明,提供Python运行环境安装步骤;3. 部分核心代码,完整版含中文注释及操作视频;4. 算法理论概述,详解Mediapipe框架在手势识别中的应用。Mediapipe采用模块化设计,包含Calculator Graph、Packet和Subgraph等核心组件,支持实时处理任务,广泛应用于虚拟现实、智能监控等领域。
|
5月前
|
机器学习/深度学习 数据采集 人工智能
深度学习实战指南:从神经网络基础到模型优化的完整攻略
🌟 蒋星熠Jaxonic,AI探索者。深耕深度学习,从神经网络到Transformer,用代码践行智能革命。分享实战经验,助你构建CV、NLP模型,共赴二进制星辰大海。
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
1225 55
|
5月前
|
机器学习/深度学习 PyTorch TensorFlow
66_框架选择:PyTorch vs TensorFlow
在2025年的大语言模型(LLM)开发领域,框架选择已成为项目成功的关键决定因素。随着模型规模的不断扩大和应用场景的日益复杂,选择一个既适合研究探索又能支持高效部署的框架变得尤为重要。PyTorch和TensorFlow作为目前市场上最主流的两大深度学习框架,各自拥有独特的优势和生态系统,也因此成为开发者面临的经典选择难题。
|
8月前
|
机器学习/深度学习 存储 监控
基于深度学习YOLO框架的城市道路损伤检测与评估项目系统【附完整源码+数据集】
本项目基于深度学习的YOLO框架,成功实现了城市道路损伤的自动检测与评估。通过YOLOv8模型,我们能够高效地识别和分类路面裂缝、井盖移位、坑洼路面等常见的道路损伤类型。系统的核心优势在于其高效性和实时性,能够实时监控城市道路,自动标注损伤类型,并生成损伤评估报告。
449 0
基于深度学习YOLO框架的城市道路损伤检测与评估项目系统【附完整源码+数据集】
|
8月前
|
机器学习/深度学习 自动驾驶 算法
基于深度学习的YOLO框架的7种交通场景识别项目系统【附完整源码+数据集】
在智慧交通和智能驾驶日益普及的今天,准确识别复杂交通场景中的关键元素已成为自动驾驶系统的核心能力之一。传统的图像处理技术难以适应高动态、复杂天气、多目标密集的交通环境,而基于深度学习的目标检测算法,尤其是YOLO(You Only Look Once)系列,因其检测速度快、精度高、可部署性强等特点,在交通场景识别中占据了重要地位。
936 0
基于深度学习的YOLO框架的7种交通场景识别项目系统【附完整源码+数据集】
|
机器学习/深度学习 PyTorch TensorFlow
深度学习工具和框架详细指南:PyTorch、TensorFlow、Keras
在深度学习的世界中,PyTorch、TensorFlow和Keras是最受欢迎的工具和框架,它们为研究者和开发者提供了强大且易于使用的接口。在本文中,我们将深入探索这三个框架,涵盖如何用它们实现经典深度学习模型,并通过代码实例详细讲解这些工具的使用方法。
1115 0
|
机器学习/深度学习 数据采集 数据可视化
TensorFlow,一款由谷歌开发的开源深度学习框架,详细讲解了使用 TensorFlow 构建深度学习模型的步骤
本文介绍了 TensorFlow,一款由谷歌开发的开源深度学习框架,详细讲解了使用 TensorFlow 构建深度学习模型的步骤,包括数据准备、模型定义、损失函数与优化器选择、模型训练与评估、模型保存与部署,并展示了构建全连接神经网络的具体示例。此外,还探讨了 TensorFlow 的高级特性,如自动微分、模型可视化和分布式训练,以及其在未来的发展前景。
1089 5
|
机器学习/深度学习 人工智能 TensorFlow
基于TensorFlow的深度学习模型训练与优化实战
基于TensorFlow的深度学习模型训练与优化实战
662 3