查看原文
其他

[Python人工智能] 二.TensorFlow环境搭建、学习路线及入门案例

杨秀璋 娜璋AI安全之家 2022-11-30

从本篇文章开始,作者正式开始讲解Python深度学习、神经网络及人工智能相关知识,希望您喜欢。

前一篇文章主要讲解神经网络基础概念,这篇文章详细讲解TensorFlow基础知识,包括安装流程、学习路线及入门案例。基础性文章,希望对您有所帮助,如果文章中存在错误或不足之处,还请海涵。同时自己也是人工智能的菜鸟,希望大家能与我在这一笔一划的博客中成长起来。


文章目录:

  • 一.TensorFlow简介

  • 二.TF安装流程

  • 三.TF学习路线

  • 四.基础案例

  • 五.总结


代码下载地址(欢迎大家关注点赞):

  • https://github.com/eastmountyxz/
    AI-for-TensorFlow

  • https://github.com/eastmountyxz/
    AI-for-Keras


学Python近八年,认识了很多大佬和朋友,感恩。由于在外求学且需要养娃,故在CSDN设置成了最低价收费专栏,觉得不错的可以购买抬爱;但作者的本意是帮助更多初学者入门,因此在github开源了所有代码,也在公众号同步更新。深知自己很菜,得拼命努力前行,编程也没有什么捷径,干就对了。希望未来能更透彻学习和撰写文章,也能在读博几年里学会真正的独立科研。同时非常感谢参考文献中的大佬们的文章和分享,共勉。

- https://blog.csdn.net/eastmount


一.TensorFlow简介

TensorFlow™是一个基于数据流编程(dataflow programming)的符号数学系统,被广泛应用于各类机器学习(machine learning)算法的编程实现,其前身是谷歌的神经网络算法库DistBelief 。Tensorflow拥有多层级结构,可部署于各类服务器、PC终端和网页并支持GPU和TPU高性能数值计算,被广泛应用于谷歌内部的产品开发和各领域的科学研究 。

TensorFlow由谷歌人工智能团队谷歌大脑(Google Brain)开发和维护,拥有包括TensorFlow Hub、TensorFlow Lite、TensorFlow Research Cloud在内的多个项目以及各类应用程序接口(Application Programming Interface, API)。

TensorFlow官网:

  • https://tensorflow.google.cn/

TensorFlow 是一个端到端开源机器学习平台。它拥有一个包含各种工具、库和社区资源的全面灵活生态系统,可以让研究人员推动机器学习领域的先进技术的发展,并让开发者轻松地构建和部署由机器学习提供支持的应用。

总之,如果有TensorFlow,我们就可以很自如地玩转神经网络。

二.TF安装过程

TensorFlow即可以支持CPU,也可以支持CPU+GPU。前者的环境需求简单,后者需要额外的支持。TensorFlow的安装方式很多,包括:

  • pip 安装

  • virtualenv安装

  • docker安装

  • 从安装源安装


本文将使用pip安装,pip在每个系统的安装方式包括:

  • Linux \ MacOS \ Windows

  • CPU版 \ GPU版(GPU版本比CPU版本快很多倍)

  • 测试版

  • 更新TensorFlow


TensorFlow支持Windows用户,由于我的计算机是Windows操作系统,这里使用该方法进行安装,这里安装的环境为:

  • Windows10

  • CPU

  • TensorFlow2.0

  • Anaconda

  • Python3.6


第一步:官网下载Anaconda并安装

第二步:安装Anaconda之后,打开“Anaconda Prompt”命令行,检查Anaconda是否安装成功及环境

//检查Anaconda是否成功安装
conda --version
//检测目前安装了哪些环境
conda info --envs

第三步:检查当前环境可以安装哪些版本的Python,作者选择Python3.6版本

conda search --full-name python

由于作者电脑不支持GPU,所以这里只安装CPU版本,GPU安装推荐下面文章。

  • tensorflow2.0GPU版本的环境配置与安装教程 normalization

  • [Tensorflow2.0] Tensorflow2.0的安装教程 - 牛andmore牛


第四步:创建环境,用来安装tensorflow2.0以及相关的python packages

conda create -n tf2 python=3.6

第五步:激活TensorFlow

activate tf2

第六步:安装cpu版本TensorFlow

pip install tensorflow==2.0.0-alpha0
  • conda search tensorflow #搜CPU版

  • conda search tensorflow-gpu #搜GPU版

  • conda install tensorflow=2.0.0 #安装CPU版

  • conda install tensorflow-gpu=2.0.0 #安装GPU版


此时,表示安装结束,接下来开始确认我们是否安装成功。

第七:打开Anaconda Navigator,选择环境“tf2”,点击spyder下面的“install”。

安装好就变成“Launch”了,点击就可以进去了。

第八步:输入代码验证是否安装成功。

import tensorflow as tf
print(tf.__version__)

如果需要退出环境,可以输入下面命令。


三.TF学习路线

熟悉作者的人都知道我在2020年底和许老师合作为CSDN做了一份Python学习路线,其中高阶篇有深度学习相关知识点,这里简单给大家介绍下。

深度学习主要知识点总结如下:

1.神经网络基础知识



2.环境配置



3.Theano


4.TensorFlow

核心知识点如下,推荐读者学习,作者也分享。

  • TensorFlow基础知识

  • Tensor

  • Session

  • Variable

  • Placeholder

  • Dropout

  • Tensorboard

  • CNN

  • RNN(GRU\LSTM)

  • Autoencoder

  • GNN

  • 神经网络参数保存

  • 神经网络性能评价



5.Keras

6.PyTorch

7.强化学习

每个人都有自己的分类,这里作者仅从学习路线上划分。同时,还有迁移学习、图神经网络等,这些都值得我们学习。如果需要完整高清学习路线,以及整个Python路线(初级、中级、高阶)的同学,可以私聊我。

推荐书籍——《深度学习》花书,都是大佬,后面GAN我会详细介绍这几个作者的成就。


推荐课程:

  • 入门课程推荐一:CS231n(斯坦福大学 李飞飞教授)

  • 入门课程推荐二:CS224n(斯坦福大学 Christopher Manning教授)

  • 入门课程推荐三:《Deep Learning》(斯坦福大学 吴恩达大佬)

  • 入门课程推荐四:CS224w 图神经网络(斯坦福大学 Jurij Leskovec大佬)

  • 入门课程推荐五:李宏毅《机器学习》(B站视频)



四.基础入门

最后给出一个简单的实例代码,后面我会从各个实例和算法实现详细介绍。

# -*- coding: utf-8 -*-
"""
Spyder Editor

This is a temporary script file.

By:Eastmount CSDN YXZ 2019-11-28
"""


import tensorflow as tf

#查询TensorFlow版本
print(tf.__version__)

#定义a和b为两个常量
a = tf.constant([1, 2], name="a")
b = tf.constant([2, 3], name="b")
print(a)
print(b)

#随机生成一个正态分布
output = tf.random.normal([5,3])
print(output)

#创建2个矩阵并进行相乘
matrix1 = tf.constant([[3,3]])
matrix2 = tf.constant([[1, 2],[3, 4]])
product = tf.matmul(matrix1,matrix2)
print(matrix1)
print(matrix2)
print(product)
print(product.numpy())

输出结果如下所示:

2.0.0-alpha0

tf.Tensor([1 2], shape=(2,), dtype=int32)
tf.Tensor([2 3], shape=(2,), dtype=int32)

tf.Tensor(
[[-2.1826832 -0.32986134 -1.6238695 ]
[-0.18214056 0.25923613 -0.12570491]
[ 1.0550841 -0.6655764 -1.5837296 ]
[-0.10004017 0.0162886 0.9483853 ]
[ 0.4709251 -0.18713968 0.8347026 ]], shape=(5, 3), dtype=float32)

tf.Tensor([[3 3]], shape=(1, 2), dtype=int32)
tf.Tensor(
[[1 2]
[3 4]], shape=(2, 2), dtype=int32)

tf.Tensor([[12 18]], shape=(1, 2), dtype=int32)
[[12 18]]


五.总结

最后希望基础性文章对您有所帮助,作者也是这个领域的菜鸟一枚,希望与您共同进步,后续会继续深入分享Python人工智能系列,如果喜欢点个赞评论,共勉~

虽然非常忙,但每当看到博友的提问或交流都不忍拒绝,其实自己真的快忙疯了。看到这些大山走出去的学生,大一新生,求职研究生或遇到问题的朋友,都想帮他们一把,因为我们也是在很多人的帮助下成长起来的。而看到很多私活、广告、合作、出书之类的私信,我都会拒绝或不回时光飞逝,还有太多知识要去学习,太多陪伴要去争取,太多文字要去记录,且行且珍惜,最爱的人,晚安。

深知自己很菜,得努力前行。这半年来,原创博客越来越少,希望自己能在博士路上不断前行,多读论文,多写论文,多学新知识。加油!也祝所有在读博士都学有所成,勿忘来时的路,砥砺前行。最后还是那句话,人生路上,好好享受陪伴家人的日子,爱你们~

天行健,君子以自强不息。
地势坤,君子以厚德载物。

真诚地感谢您关注“娜璋之家”公众号,也希望我的文章能陪伴你成长,希望在技术路上不断前行。文章如果对你有帮助、有感悟,就是对我最好的回报,且看且珍惜!再次感谢您的关注,也请帮忙宣传下“娜璋之家”,初来乍到,还请多指教。

(By: Eastmount 2021-06-18 夜于武汉)



参考文献如下,感谢这些大佬!

  • 神经网络和机器学习基础入门分享 - Eastmount

  • Stanford机器学习—第五讲. 神经网络的学习 Neural Networks learning

  • 吴祖增前辈:神经网络入门(连载之一)

  • 吴祖增前辈:神经网络入门(连载之二)

  • 斯坦福机器学习视频NG教授: 

  • https://class.coursera.org/ml/class/index

  • 网易云莫烦老师视频(强推)

    https://study.163.com/course/courseLearn.htm?
    courseId=1003209007

  • https://zhuanlan.zhihu.com/p/148312957 - DrugAI好友

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存