东方耀AI技术分享

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 1966|回复: 0
打印 上一主题 下一主题

[TensorFlow2.0] 分别用纯Python、TensorFlow1.X、2.X、PyTorch1.3实现同一个计算(...

[复制链接]

1365

主题

1856

帖子

1万

积分

管理员

Rank: 10Rank: 10Rank: 10

积分
14437
QQ
跳转到指定楼层
楼主
发表于 2019-10-26 17:59:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
分别用纯Python、TensorFlow1.X、2.X、PyTorch1.3实现同一个计算(方便比较)


  1. # -*- coding: utf-8 -*-
  2. __author__ = u'东方耀 微信:dfy_88888'
  3. __date__ = '2019/10/26 17:18'
  4. __product__ = 'PyCharm'
  5. __filename__ = 'tensorflow_vs_pytorch'

  6. import tensorflow as tf
  7. import torch
  8. import sys
  9. # 1.14.0
  10. print(tf.__version__)
  11. # 1.3.0
  12. print(torch.__version__)
  13. # python 3.6.8
  14. print(sys.version)
  15. # 实现同一个操作  计算 1+ 1/2 + 1/2^2 + 1/2^3 + ....+ 1/2^50
  16. # 纯python实现
  17. x = 0.0
  18. for i in range(51):
  19.     x = x + 1.0 / (2**i)
  20. print(x)

  21. # TensorFlow实现
  22. x = tf.Variable(initial_value=0.0)
  23. y = tf.Variable(initial_value=1.0)
  24. # x = x+y
  25. add_op = x.assign_add(y)
  26. # y = y/2
  27. div_op = y.assign(y/2)

  28. with tf.Session() as sess:
  29.     sess.run(tf.global_variables_initializer())
  30.     for i in range(51):
  31.         sess.run(add_op)
  32.         sess.run(div_op)
  33.     print('result:', sess.run(x))

  34. # PyTorch实现
  35. x = torch.tensor([0.0])
  36. y = torch.tensor([1.0])
  37. for i in range(51):
  38.     x = x+y
  39.     y = y/2
  40. print('result_torch:', x)


  41. # TensorFlow 2.0实现 打开eager mode动态图功能(不可逆的 打开后无法关闭)
  42. tf.enable_eager_execution()
  43. # ValueError: tf.enable_eager_execution must be called at program startup.
  44. x = tf.constant(value=0.0)
  45. y = tf.constant(value=1.0)
  46. for i in range(51):
  47.     x = x+y
  48.     y = y/2
  49. print('result tf2.0 eager mode:', x.numpy())




复制代码


让天下人人学会人工智能!人工智能的前景一片大好!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|人工智能工程师的摇篮 ( 湘ICP备2020019608号-1 )

GMT+8, 2024-5-5 16:08 , Processed in 0.177539 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表