人工智能应用工程师技能提升系列1、——TensorFlow2

简介: 人工智能应用工程师技能提升系列1、——TensorFlow2



tensorflow2介绍

这里先说一下选择使用tensorflow2讲解的原因,在对比一下同类型的一个优势。由于我们这个系列的目标是学习,大家使用的都是win系统的电脑,故而这里选择tensorflow2方便得多。当前最新的版本是2.15

官网(偶尔打不开): https://www.tensorflow.org/

中文网站: https://tensorflow.google.cn

可以在学习这个下拉菜单中找到官方给的可成内容,对应的还有API啥的,很方便。

TensorFlow与TensorFlow 2的主要区别体现在以下几个方面:

1. 计算图执行模式:TensorFlow 1.x主要使用静态计算图,需要先构建计算图,然后通过Session执行。而TensorFlow 2.x默认使用Eager Execution(即动态图执行模式),这使得操作更加直观和易于调试,开发效率更高。同时,TensorFlow 2.x也支持通过`tf.function`将动态图代码转化为静态图模式,兼顾运行效率。

2. API简化:相比于TensorFlow 1.x,TensorFlow 2.x删除了许多旧的API,并对一些API进行了合并和简化。例如,TensorFlow 2.x中,Keras被确立为官方的高级API,使得模型的构建和训练更加简洁明了。

3. 兼容性:虽然TensorFlow 2.x进行了许多改进,但它仍然需要考虑与TensorFlow 1.x的兼容性。为此,TensorFlow 2.x提供了一个兼容模块`tf.compat.v1`,使得大部分TensorFlow 1.x的代码可以在TensorFlow 2.x中运行。

总的来说,TensorFlow 2.x在易用性、开发效率和运行效率方面都进行了显著的改进,同时保持了与TensorFlow 1.x的兼容性。这使得开发者可以更方便地进行深度学习相关的工作。所以本课程内容选择的是TensorFlow2进行具体的操作讲解。

tensorflow2优势对比PyTorch

TensorFlow 2与PyTorch是两个流行的深度学习框架,它们都有各自的优势。以下是对TensorFlow 2与PyTorch的优势的详细描述:

TensorFlow 2的优势:

1. 工业级部署:移动端和嵌入式部署: TensorFlow在移动端和嵌入式设备上的部署能力优于PyTorch,对于Android或iOS平台,只需要很小的工作量。

高性能服务器端部署: TensorFlow Serving可以轻松地进行热插拔模型,而不会使服务失效,这在高性能服务器端部署时是一个显著优点。

2. 静态计算图优化:尽管TensorFlow 2默认使用动态图执行模式,但它仍然支持静态计算图的优化。对于一些需要高性能的场景,静态计算图可以提供更快的执行速度。

3. 广泛的社区支持和生态系统:TensorFlow作为一个较早的深度学习框架,拥有庞大的社区和丰富的生态系统,包括许多预训练模型、工具和库。

PyTorch的优势:

1. 动态计算图:PyTorch使用动态计算图,这意味着在构建神经网络时可以使用常见的Python语句(如if、while、for-loop),从而使网络构建过程更加直观和易于调试。

2. 易于使用的API:PyTorch的API设计非常直观,易于上手。它更加符合人类的思考过程,方便查看、修改中间变量的值。

3. 强大的GPU加速支持:PyTorch对GPU的支持非常出色,能够充分利用GPU进行加速计算。

TensorFlow 2和PyTorch各有优势,选择哪个框架取决于您的具体需求。如果您更关注工业级部署、静态计算图优化和广泛的生态系统支持,TensorFlow 2可能是更好的选择。而如果您更看重直观的动态计算图、易于使用的API和强大的GPU支持,那么PyTorch可能更适合您。

工具使用

这里使用的是【PyCharm Community Edition 2023.1.4】,社区版本免费用啊,用于学习绝对OK,python版本是3.9。

安装tensrflow

pip install tensorflow

或者直接在代码中

import tensorflow

ALT+回车,直接会出现安装提示,回车即可。

安装需要一些时间。

版本校验——tensorflow2

必须是这个版本,一定不能是1的,所以我们需要单独输出看看。

import tensorflow as tf
tf.__version__

直接运行可以看到对应的版本显示:

tensorflow常量constant

import tensorflow as tf
a = tf.constant([2, 3])
b = tf.constant([2, 4])
# 对象内容
print(a + b)
# 直接输出numpy结果。
print((a + b).numpy())

tensorflow基础数学计算

这里使用的时候例如下面是整数类型就都得是整数类型,不能出现浮点数什么的。

import tensorflow as tf
a = tf.constant([7, 22])
b = tf.constant([21.2, 55.7])
# 均值对象
print(tf.reduce_mean(a))
# 均值结果·整数值
print(tf.reduce_mean(a).numpy)
print(tf.reduce_mean(b).numpy)

平方计算

这里需要注意匹配数据类型。

import tensorflow as tf
a = tf.constant([7, 22])  # 不匹配
b = tf.constant([21.2, 55.7])  # 不匹配
# 外部计算均值·内部计算平方项·需要类型匹配
print(tf.reduce_mean(tf.square(b - a)))

最终效果:

tensorflow变量Variable

import tensorflow as tf
result = tf.Variable(666.666)
# 对象
print(result)
# 结果
print(result.numpy)

可以直接查看到结果,这里的numpy是函数,需要添加一对小括号。

API文档

点击打开文档可以直接查阅:All symbols in TensorFlow 2  |  TensorFlow v2.14.0

tensorflow2测试——构建一个线性模型

根据100个随机样本找出合适的w与b值,使得y=wx+b;

大致操作过程:

  1. 读取数据
  2. 构造一个线性模型 y=wx+b
  3. 构造损失函数
  4. 最小化方差(训练)
  5. 性能评估

csv文件快速生成:

=RANDBETWEEN(100000,999999)/1000000

=RANDBETWEEN(400000,599999)/100000

基本分析

import tensorflow as tf
import pandas as pd
import matplotlib.pyplot as plt
# 读取数据
# 直接获取二维数组·方便索引缩着切分
data = pd.read_csv("tensorflow_test_info.csv").values
# 样本特征·第一列的值
x = data[:, 0]
# 目标值·第二列的值
y = data[:, 1]
# 构造线性模型y=wx+b
# 我们计算分析的是浮点数,所以加上.0
w = tf.Variable(-6.0)
b = tf.Variable(6.0)
def model(x, w, b):
    """模型函数"""
    return w * x + b
# 视图呈现
plt.figure(figsize=(10, 5))
plt.axis([-0.01, 1.2, 1, 10])
plt.scatter(x, y)
plt.plot(x, model(x, w, b).numpy(), color='red')
plt.legend(['predicted_y', 'target_y'])
plt.show()

效果图:

构造损失函数

def loss(predicted_y, target_y):
    """损失函数"""
    return tf.reduce_mean(tf.square(predicted_y - target_y))

最小化方差优化

with tf.GradientTape() as t:
    """最小化方差优化"""
    dw, dd = t.gradient(loss((model(x, w, b), y), [w, b]))

训练效果

训练100遍效果:

训练1000遍最终结果:

视频效果:

tensorflow2测试——构建一个线性模型——训练效果

总结

最后从效果上看还是OK的,数据我准备的一般,没有成线性,毕竟是随机搞的,如果有兴趣的话可以做一个更贴近的随机数线性数据效果会更好的呢。

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
25天前
|
人工智能 架构师 算法
人工智能+:职业价值的重构与技能升级
当“人工智能+”成为产业升级标配,职业价值正被重新定义。这并非简单岗位替代,而是人机协作新模式的诞生。AI接管重复性任务后,从业者可专注创造性活动,职业“含人量”不降反升。未来高价值岗位集中在技术赋能、场景创新与价值监督三层面,需跨界人才、流程架构师及伦理师等新角色。把握机遇需重构学习逻辑,强化人机协作实训与伦理素养,发展放大人类独特性的能力,构建不可替代的“人类+”优势。
|
25天前
|
人工智能 搜索推荐 算法
人工智能+:职业技能培训的元命题与能力重构
本文探讨“人工智能+”时代职业技能培训的核心命题,强调在技术赋能前需明确人与AI的能力边界。培训应聚焦三大方向:一是定位人机协同的底层逻辑,认清人类独特价值;二是培养价值判断力,避免盲目应用技术;三是重构能力模型,强化架构思维、批判性使用能力和持续进化能力。最终目标是培养“人类首席官”,成为技术生态中清醒的价值主导者,实现从认知到行动的闭环转化。
|
3月前
|
机器学习/深度学习 存储 人工智能
AI职场突围战:夸克应用+生成式人工智能认证,驱动“打工人”核心竞争力!
在AI浪潮推动下,生成式人工智能(GAI)成为职场必备工具。文中对比了夸克、豆包、DeepSeek和元宝四大AI应用,夸克以“超级入口”定位脱颖而出。同时,GAI认证为职场人士提供系统学习平台,与夸克结合助力职业发展。文章还探讨了职场人士如何通过加强学习、关注技术趋势及培养合规意识,在AI时代把握机遇。
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能应用领域有哪些
本文全面探讨了人工智能(AI)的应用领域和技术核心,涵盖医疗、交通、金融、教育、制造、零售等多个行业,并分析了AI技术的局限性及规避策略。同时,介绍了生成式人工智能认证项目的意义与展望。尽管AI发展面临数据依赖和算法可解释性等问题,但通过优化策略和经验验证,可推动其健康发展。未来,AI将在更多领域发挥重要作用,助力社会进步。
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
超越文本局限:生成式人工智能(GAI)认证引领未来技能新范式
生成式人工智能(GAI)正成为重塑社会生产力的关键力量,但其在复杂逻辑与深度推理方面存在局限。本文探讨GAI技术现状、局限及突破路径,如多模态融合、强化学习等,并引入GAI认证体系,助力个人技能提升与企业创新。未来,GAI认证有望引领技能新范式,推动社会生产力变革。
|
30天前
|
机器学习/深度学习 数据采集 人工智能
人工智能浪潮下,解锁“人工智能认证技能”的新路径
在人工智能迅猛发展的今天,AI已深刻融入工作与生活,重塑社会运行规则。从智能助手到自动驾驶,AI技术广泛应用,催生了对专业人才的庞大需求。然而,面对复杂的信息,如何系统学习并脱颖而出成为关键。“人工智能认证技能”提供了解决方案,帮助个人构建完整知识体系、提升实践能力,并拓展职业发展空间。其中,生成式AI(GAI)认证尤为突出,涵盖核心技能与行业应用,助力职场人士掌握前沿技术,规避风险,实现升职加薪目标。拥抱AI时代,通过权威认证开启职业新篇章,共创科技未来!
人工智能浪潮下,解锁“人工智能认证技能”的新路径
|
5月前
|
机器学习/深度学习 人工智能 运维
人工智能在事件管理中的应用
人工智能在事件管理中的应用
177 21
|
24天前
|
机器学习/深度学习 人工智能 算法
人工智能技能:未来职场竞争力的核心密码
当机器能理解语言并生成内容,人工智能技能已成为职场必备“新基础能力”。它从技术硬实力扩展为包含技术理解力、人机协作力与伦理判断力的复合能力。未来职场竞争力将取决于人与AI协同创新的深度。通过模块化学习和场景化实践获取这些技能,不同职业阶段需聚焦相应能力发展。掌握AI技能不仅是适应变革,更是拓展职业生命的宽度与深度,开启创造与创新的新篇章。
|
25天前
|
人工智能 算法
我国“AI+X”跨界人才培养:如何通过职业技能培训,把握人工智能就业机遇?
在“AI+X”时代,人工智能与各行业的深度融合正在重塑职业图景和人才标准。跨界能力成为核心竞争力,要求从业者既能将专业问题转化为AI可理解的框架,又能将技术输出转化为实际业务价值。这推动了职业技能培训从单一技术传授向复合能力培养转型,强调知识架构重组、场景化学习和伦理判断力培养。个人发展需构建“认知-实践-认证”的闭环路径,持续更新技能以适应快速迭代的技术环境。未来属于既懂行业本质又能驾驭技术的跨界者,他们将成为推动社会进步的关键力量。职业技能培训的使命在于赋能学习者,在技术与人文之间找到平衡,实现从专业从业者到领域创新者的蜕变。
|
25天前
|
机器学习/深度学习 人工智能 搜索推荐
什么叫生成式人工智能?职业技能的范式转移与能力重构
生成式人工智能(Generative AI)是AI领域的重要分支,其核心在于通过学习数据分布生成新内容,如文本、图像、音乐等。与传统判别式模型不同,生成式AI基于深度学习技术(如Transformer架构),展现出“创造力”,但其本质仍是概率计算的结果。它正在重塑内容创作、编程、设计等多个职业领域,推动职业技能的范式转移。 掌握生成式AI需要理解其技术原理、能力边界及伦理挑战。职业技能培训应聚焦提示设计、结果评估和混合创作三大能力,帮助从业者在人机协作中发挥主导作用。未来,生成式AI将向多模态、个性化发展,而人类的独特价值在于为技术注入人文关怀与道德框架。