我们相信:世界是美好的,你是我也是。 来玩一下解压小游戏吧!

本文描述一下深度学习领域最拉风的TensorFlow,如何安装及基础的测试使用。当然很多功能上来说,使用sklearn或者pytorch也是可以的。那么,TensorFlowsklearnpytorch有什么联系?

苏南大叔:如何安装TensorFlow?与sklearn/pytorch有什么关系? - tensorflow安装
如何安装TensorFlow?与sklearn/pytorch有什么关系?(图6-1)

苏南大叔的“程序如此灵动”博客,记录苏南大叔的代码编程经验总结。测试环境:win10python@3.12.9tensorflow@2.19.0

tensorflow

TensorFlow是一个开源的机器学习框架,广泛应用于深度学习和人工智能领域。tensorflow是谷歌公司开发的源码,所以,这决定了其官方网站在国内是有极大概率打不开的。

苏南大叔:如何安装TensorFlow?与sklearn/pytorch有什么关系? - github-tensorflow
如何安装TensorFlow?与sklearn/pytorch有什么关系?(图6-2)

安装tensorflow

就简单安装合适版本的python,不建议安装venv或者Anaconda

安装python

python安装的两个原则:

  • 涉及到python的相关源码,只要是安装最新版的python,一定不是明智的选择。所以,可能需要降级安装python
  • 网上的教程里面,一定会要求你安装虚拟环境venv,或者conda。但这也不是个明智的选择,凭空制造麻烦。

对于windows环境来说,只是需要配置一下path,就可以兼容多个python的。参考:

苏南大叔:如何安装TensorFlow?与sklearn/pytorch有什么关系? - 环境变量
如何安装TensorFlow?与sklearn/pytorch有什么关系?(图6-3)

安装tensorflow

多次尝试后,使用python@3.12.9安装的tensorflow@2.19.0

pip install tensorflow
Plain text

苏南大叔:如何安装TensorFlow?与sklearn/pytorch有什么关系? - pip-tensorflow
如何安装TensorFlow?与sklearn/pytorch有什么关系?(图6-4)

可以通过下面的命令,查看tensorflow的具体情况:

pip show tensorflow
Plain text

苏南大叔:如何安装TensorFlow?与sklearn/pytorch有什么关系? - pip-show-tensorflow
如何安装TensorFlow?与sklearn/pytorch有什么关系?(图6-5)

可能遇到的问题

苏南大叔的测试机是个集成显卡,算力提供方是CPU,使用tensorflow时,可能会遇到一些奇怪的问题。

问题一,禁用oneDNN自定义

在运行tensorflow的过错中,可能会遇到下面的报错:

I tensorflow/core/util/port.cc:153] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`.
Plain text

解决方案是:添加代码以禁用oneDNN自定义操作。

import os
os.environ['TF_ENABLE_ONEDNN_OPTS'] = '0'
Python

问题二,禁用CPU指令优化

I tensorflow/core/platform/cpu_feature_guard.cc:210] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
Plain text

解决方案是:添加代码以禁用CPU指令优化的警告。

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'  # 禁用CPU指令优化的警告
Python

测试代码

下面的代码是用于测试tensorflow是否安装成功的。

import os
os.environ['TF_ENABLE_ONEDNN_OPTS'] = '0'
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

import tensorflow as tf
print(f'TensorFlow Version: {tf.__version__}')
hello = tf.constant('Hello, TensorFlow!')
tf.print(hello)
Python

苏南大叔:如何安装TensorFlow?与sklearn/pytorch有什么关系? - 测试代码
如何安装TensorFlow?与sklearn/pytorch有什么关系?(图6-6)

三者关系

sklearnscikit-learn)、PyTorchTensorFlow 是三个广泛使用的机器学习和深度学习框架,它们在功能和应用场景上有一些重叠,但也有各自的特点和适用范围。

  • sklearn:适用于传统机器学习任务,简单易用,适合初学者和快速原型开发。
  • PyTorch:适用于需要灵活性和动态计算图的深度学习任务,广泛用于研究和开发新模型。
  • TensorFlow:适用于需要高性能和大规模分布式训练的深度学习任务,提供丰富的工具和生态系统。

scikit-learn (sklearn)

  • 简介scikit-learn是一个用于数据挖掘和数据分析的机器学习库,基于Python构建。
  • 特点

    • 提供了简单易用的API,适合初学者和快速原型开发。
    • 包含了大量的经典机器学习算法,如回归、分类、聚类、降维等。
    • 主要用于传统的机器学习任务,而不是深度学习。
  • 适用范围:适用于需要快速实现和测试传统机器学习算法的场景,如数据预处理、特征工程、模型选择和评估等。

PyTorch

  • 简介PyTorch是一个开源的深度学习框架,由Facebook的人工智能研究团队开发。
  • 特点

    • 动态计算图:允许在运行时改变网络结构,方便调试和开发。
    • 强大的GPU加速能力,适合大规模深度学习任务。
    • 广泛用于研究和生产环境,特别是在自然语言处理和计算机视觉领域。
  • 适用范围:适用于需要灵活性和动态计算图的深度学习任务,如研究和开发新模型、快速迭代和调试等。

TensorFlow

  • 简介TensorFlow是一个开源的深度学习框架,由Google Brain团队开发。
  • 特点

    • 静态计算图:在构建图时定义所有操作,然后在会话中执行,适合大规模分布式训练。
    • 提供了丰富的工具和生态系统,如TensorBoard、TensorFlow Serving等。
    • 支持多种平台和设备,包括移动设备和嵌入式系统。
  • 适用范围:适用于需要高性能和大规模分布式训练的深度学习任务,如生产环境中的模型部署和优化。

结语

所以,对于tensorflow来说,也不是想象中的那么厚重。苏南大叔的集成显卡的测试机也能跑。
更多苏南大叔的tensorflow相关经验文字,请点击:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   tensorflow