TensorFlow由谷歌人工智能团队谷歌大脑(Google Brain)开发和维护,拥有包括TensorFlow Hub、TensorFlow Lite、TensorFlow Research Cloud在内的多个项目以及各类应用程序接口(Application Programming Interface, API),是一个适合所有人学习的开源的机器学习框架。
今天刚参加了谷歌开发者大会,了解到了目前TensorFlow用于很多科学实验,解决了很多社会问题,感触很深。所以决定更多了解下TensorFlow。
环境准备
- 具备 Python 基础
- 具备数学基础(如线性代数、微积分)
- 对机器学习/深度学习的概念(如CNN、RNN、强化学习)稍有了解
- 配置好 Python 和 TensorFlow 环境,配置好适合的 Python IDE(如PyCharm),环境配置方法请参考 https://tf.wiki/zh/installation.html (中文)或 https://tf.wiki/en/installation.html (英文)
查看python和tensorflow的版本号:
- 用命令python -V 或者python3 -V查看版本号:
lichaoqiang@lichaoqiangs-MacBook-Pro ~/project/python python3 -V
Python 3.5.2 - 查看tensoflow的版本号,可以用如下脚本
运行tensorflow-version.py脚本可以查看:
import tensorflow as tf
print(tf.__version__)lichaoqiang@lichaoqiangs-MacBook-Pro ~/project/python python3 tensorflow-version.py
1.11.0
用TensorFlow解决实际问题案例
具体问题描述
某公司有四个工厂,分布在不同地区,同时三种产品,产量(单位;t), 试用矩阵统计这些数据。
工厂/产品 P1 P2 P3
甲 5 2 4
乙 3 8 2
丙 6 0 4
丁 0 1 6
其中四行分别表示甲乙丙丁四个工厂的生产情况,三列分布表示三种产品P1,P2,P3的产量。
再设矩阵
2 4
1 3
3 2
其中第一列表示三种产品的单件利润,第二列表示三种产品的单件体积。用python实现使用tensorflow来计算,新建脚本tensorflow-demo05.py,代码如下:
#!/usr/local/bin/python3
import tensorflow as tf
tf.enable_eager_execution()
a = tf.constant([[5,2,4], [3, 8,2],[6,0,4],[0,1,6]])
b = tf.constant([[2,4],[1,3],[3,2]])
c = tf.matmul(a, b)
print(c)
- 执行python脚本得到结果
(venv) ✘ lichaoqiang@lichaoqiangs-MacBook-Pro ~/project/python python3 tensorflow-demo05.py
很简单的几行代码可以轻松计算出了四个工厂的利润(结果第一列)和这四个工厂产品需要的存储空间(结果第二列)。通过这个简单的例子可以看出,Tensorflow的很多计算模型很实用,而且也很容易上手,后面空了,我再试一试其他功能。
2018-11-25 22:02:52.718706: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
tf.Tensor(
[[24 34]
[20 40]
[24 32]
[19 15]], shape=(4, 2), dtype=int32)