`
haoningabc
  • 浏览: 1482781 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

mac下tensorflow的helloworld(conda)

阅读更多
基本的
virtualenv tensorenv
source bin/activate

pip install --upgrade tensorflow

python
>>> import tensorflow as tf
>>> hello  = tf.constant('hello TensorFlow!')
>>> sess =  tf.Session()
>>> print sess.run(hello)
hello TensorFlow!




tensorenv/lib/python2.7/site-packages/tensorflow/examples/tutorials/mnist


#########################

安装anaconda

https://www.anaconda.com/download/#macos


安装之后参考
https://blog.csdn.net/lq_547762983/article/details/81003528

conda list

conda create -n tensorenv tensorflow
conda env list


创建名字为tensorenv 的环境并安装tensorflow
安装在/anaconda2/envs 下
/anaconda2/envs/tensorenv



source activate tensorenv





如果需要装其他包继续
conda install -n tensorenv numpy



下载数据:
参考http://wiki.jikexueyuan.com/project/tensorflow-zh/tutorials/mnist_beginners.html

https://raw.githubusercontent.com/tensorflow/tensorflow/master/tensorflow/examples/tutorials/mnist/input_data.py
添加
import tensorflow.examples.tutorials.mnist.input_data as input_data
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)

用自己的网,网络限制就想其他办法




反向传播
梯度下降



dropout 解决泛化性不好

无监督学习 https://www.zhihu.com/question/23194489


##################
使用的tf1.0的版本,很多api变了

第一个helloworld

import tensorflow as tf
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

a = tf.constant(5,name="input_a")
b = tf.constant(3,name="input_b")
c = tf.multiply(a,b,name="mul_c")
d = tf.add(a,b,name="add_d")
e = tf.add(c,d,name="add_e")
sess = tf.Session()
sess.run(e)

#writer = tf.train.SummaryWriter('./my_grap',sess.graph)
writer = tf.summary.FileWriter('./my_graph',sess.graph)
writer.close()
sess.close()


tensorboard --logdir="./my_graph"


得到

张量的helloworld
test2.py
import tensorflow as tf
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

a = tf.constant([5,3],name="input_a")
b = tf.reduce_prod(a,name="prod_b")
c = tf.reduce_sum(a,name="sum_c")
d = tf.add(c,b,name="add_d")
sess =  tf.Session()
sess.run(d)

writer = tf.summary.FileWriter('./my_test2',sess.graph)
writer.close()
sess.close()


numpy的helloworld

注意:numpy使用字符串时,不要显示的指定dtype属性



基本概念
tensor -->numpy建立     a = tf.constant(3,name="input_b")
opration ---> b = tf.add(a,3) ;
graph ---> g=tf.Graph()  g.as_default()
session  --->sess = ts.Session(graph = tf.get_default_graph())
fetches ---->sesion.run(a) ;sesion.run([a,b])
feed_dict ----> sesion.run(b,feed_dict = {a:15})   ---改变参数的值,测试和中间环节改变值调试用,或者是给占位符赋值
placeholder(dtype,shape,name) ---> tf.placeholder(tf.int32,shape=[2])     ---> dtype参数是必须指定的

import tensorflow as tf
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

a = tf.add(2,5)
b = tf.multiply(a,3)

sess = tf.Session()
replace_dict = {a:15}

c = sess.run(b,feed_dict=replace_dict)
print(c)



基本机器学习
basic.py
import tensorflow as tf
import numpy as np
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

def inference(X):
	print("inference")

def loss(X,Y):
	print("loss")
	loss_v = tf.constant("myloss",name="loss_value")
	return loss_v

def inputs():
	print("input")
	return 1,2

def train(total_loss):
	print("train")
	hello = tf.constant("ha",name="train_value")
	return hello

def evaluate(sess,X,Y):
	print("evaluate")


with tf.Session() as sess:
#	tf.initialize_all_variables().run()
	tf.global_variables_initializer().run()
	X,Y = inputs()

	total_loss = loss(X,Y)
	train_op = train(total_loss)
	coord = tf.train.Coordinator()
	threads = tf.train.start_queue_runners(sess=sess,coord=coord)
	training_steps = 100
	for step in range(training_steps):
		sess.run([train_op])
		if step % 10 ==0:
			print("loss:",sess.run([total_loss]))
	evaluate(sess,X,Y)

	coord.request_stop()
	coord.join(threads)
	sess.close()



检查点,针对变量的
注意:变量不能放在定义的方法里
saver要放在初始化变量之后
check.py
import tensorflow as tf
import numpy as np
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

def inference(X):
	print("inference")

def loss(X,Y):
	print("loss")
	return X

def inputs(X):
	print("input")
	Y = tf.constant("myY",name="Y_value")
	return X,Y

def train(total_loss):
	print("train")
	hello = tf.constant("ha",name="train_value")
	return hello

def evaluate(sess,X,Y):
	print("evaluate")
with tf.Session() as sess:
	#tf.global_variables_initializer().run()
	thisX = tf.Variable("thisX",name="thisX_value")
	sess.run(tf.global_variables_initializer())
	saver = tf.train.Saver()
	X,Y = inputs(thisX)

	total_loss = loss(X,Y)
	train_op = train(total_loss)
	coord = tf.train.Coordinator()
	threads = tf.train.start_queue_runners(sess=sess,coord=coord)
	training_steps = 100
	for step in range(training_steps):
		sess.run([train_op])
		if step % 10 ==0:
			print("loss:",sess.run([total_loss]))
			saver.save(sess,'./work/my-model',global_step=step)
	evaluate(sess,X,Y)

	coord.request_stop()
	coord.join(threads)
	saver.save(sess,'./work/my-model',global_step=training_steps)
	sess.close()


恢复检查点
restore.py

import tensorflow as tf
import numpy as np
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

def inference(X):
	print("inference")

def loss(X,Y):
	print("loss")
	return X

def inputs(X):
	print("input")
	Y = tf.constant("myY",name="Y_value")
	return X,Y

def train(total_loss):
	print("train")
	hello = tf.constant("ha",name="train_value")
	return hello

def evaluate(sess,X,Y):
	print("evaluate")
with tf.Session() as sess:
	#tf.global_variables_initializer().run()
	thisX = tf.Variable("thisX",name="thisX_value")
	sess.run(tf.global_variables_initializer())
	saver = tf.train.Saver()
	X,Y = inputs(thisX)

	total_loss = loss(X,Y)
	train_op = train(total_loss)
	coord = tf.train.Coordinator()
	threads = tf.train.start_queue_runners(sess=sess,coord=coord)
	training_steps = 1000

	initial_step = 0
	ckpt = tf.train.get_checkpoint_state(os.path.dirname("./work/my-model"))
	print("debug---->0 "+str(ckpt))
	if ckpt and ckpt.model_checkpoint_path:
		print("debug---->1")
		saver.restore(sess,ckpt.model_checkpoint_path)
		initial_step =  int(ckpt.model_checkpoint_path.rsplit('-',1)[1])
		print("debug---->2.1 " + str(initial_step))
		print("debug---->2.2 " + str(initial_step))
		for step in range( initial_step,training_steps):
			print("debug---->3")
			sess.run([train_op])
			if step % 10 ==0:
				print("loss:",sess.run([total_loss]))
				saver.save(sess,'./work/my-model',global_step=step)
	evaluate(sess,X,Y)

	coord.request_stop()
	coord.join(threads)
	saver.save(sess,'./work/my-model',global_step=training_steps)
	sess.close()

关于saver

https://www.tensorflow.org/programmers_guide/saved_model?hl=zh-cn




  • 大小: 50.6 KB
分享到:
评论

相关推荐

    Tensorflow及CUDA安装

    在Ubuntu 16.04系统中安装Tensorflow和CUDA是一项必要的步骤,特别是对于那些希望在GPU加速下进行深度学习的开发者来说。以下是一个详细的安装教程: 首先,切换到root用户,这允许你对系统进行更高级别的操作。在...

    TensorFlow 安装最简单的办法 —— 针对 python 用户

    搞人工智能不能不知道 TensorFlow ,知道 ...安装 GPU 版的 TensorFlow 指令是 conda install tensorflow-gpu 安装 CPU 版的 TensorFlow 指令是 conda install tensorflow  下面开始简单讲解一下 Anaconda 的使用 ...

    Mac下TensorFlow安装

    ### Mac OS 下 TensorFlow 的安装与配置 #### 一、安装环境 在 macOS 10 上安装 TensorFlow 需要确保已经安装了 Python 3.6.3 版本,并且最好使用 Anaconda 来管理环境。Anaconda 是一个非常方便的工具,能够帮助...

    tensorflow-feedstock, tensorflow的conda smithy存储库.zip

    tensorflow-feedstock, tensorflow的conda smithy存储库 关于 tensorflow主页:http://tensorflow.org/软件包许可证:Apache 2.0物料许可证:BSD 3 -Clause摘要:TensorFlow有助于张量流当前生成状态Linux: OSX:

    【Conda】【TensorFlow】创建环境,安装TensorFlow 2.0

    1 conda create -n TF_2C python=3.6 2 activate TF_2C 3 pip install tensorflow==2.0.0 -i https://pypi.tuna.tsinghua.edu.cn/simple   4 测试 输出TensorFlow版本:print(tf.__version__)   5 安装其他 ...

    cyzlmh#cyzlmh.github.io#2019-02-27-树莓派安装Tensorflow1

    title: "树莓派安装Tensorflow"使用Conda安装(已失败,Miniconda会将python3.5降级为3.4,而最新版tensorflow已

    Ubuntu20.04+3090ti+python3.7+tensorflow+pytorch下conda环境配置文件.yml

    Ubuntu20.04+3090ti+python3.7+tensorflow+pytorch下conda环境配置文件.yml 详情可查看博客:https://blog.csdn.net/weixin_42213421/article/details/124225950 python=3.7.13 tensorflow-gpu=2.8.0 tensorboard=...

    Ubuntu20.04+3090ti+python3.6+tensorflow+pytorch下conda环境配置文件.yml

    Ubuntu20.04+3090ti+python3.6+tensorflow+pytorch下conda环境配置文件.yml 详情可查看博客:https://blog.csdn.net/weixin_42213421/article/details/124225950 python=3.6.13 tensorflow-gpu=2.6.2 tensorboard=...

    tensorflow_world_anaconda_anacondapython_

    本主题将详细探讨如何利用Anaconda这一流行的Python发行版来创建和管理TensorFlow环境,以及如何通过Jupyter Notebook运行“Hello World”程序。 首先,让我们了解Anaconda。Anaconda是一个开源的数据科学平台,它...

    anaconda中的tensorflow虚拟环境-Linux(conda-pack打包)

    本环境用conda-pack打包,只需要直接解压到anaconda路径下的envs中就可以直接使用。 python版本3.6.8 pip版本21.2.3 介绍:TensorFlow是一个基于数据流编程(dataflow programming)的符号数学系统,被广泛应用于...

    windows环境下tensorflow安装过程详解.pdf

    在Windows环境下安装TensorFlow可能是一项挑战,特别是对于初学者来说。由于版本兼容性问题和依赖库的冲突,可能会出现各种安装错误。以下是一份详细的安装指南,帮助你避免常见的问题,顺利安装TensorFlow。 首先...

    tensorflow python2.7 py27 windows版

    3. **pip**:使用pip(Python的包管理器)来安装TensorFlow,命令可能是`pip install tensorflow==2.7.0`,但这不适用于conda环境。 4. **GPU支持**:如果希望利用GPU加速计算,需要安装NVIDIA CUDA和cuDNN,以及...

    win10下安装tensorflow

    2. **安装TensorFlow**:打开Anaconda Prompt,通过`conda install tensorflow`命令安装TensorFlow。为了方便使用和管理,建议创建一个虚拟环境,然后在该环境中安装TensorFlow。 3. **验证安装**:在Anaconda ...

    【Tensorflow安装汇总】Conda直装超级简单!!!

    在本文中,我们将深入探讨...总之,安装TensorFlow需要考虑到硬件兼容性、驱动更新、CUDA和CuDNN的正确安装,以及在Conda虚拟环境中管理依赖。遵循上述步骤,你可以避免许多常见的安装问题,确保顺利进行深度学习项目。

    Ubuntu安装anaconda与tensorflow.docx

    >>> hello = tf.constant("Hello, Tensorflow! ") >>> sess = tf.Session() >>> print(sess.run(hello)) ``` 这将输出结果 `b'Hello, Tensorflow!'`。 使用 TensorFlow 在使用 TensorFlow 之前,我们需要先激活 ...

    tensorflow.contrib安装

    首先,需要激活自己的conda 环境,然后使用 conda search 命令来查找可用的 TensorFlow 版本: ``` conda search tensorflow-gpu ``` 选择合适的版本,然后使用 conda install 命令安装 TensorFlow.contrib: ```...

    MindSpore和TensorFlow环境搭建实验手册

    MindSpore和TensorFlow环境搭建实验手册是华为昇腾框架下的实验指导手册,旨在指导用户搭建MindSpore和TensorFlow实验环境。下面是从该手册中总结出的关键知识点: 一、实验介绍 * 关于本实验:本实验手册旨在指导...

    tensorflow1.2.1安装文件

    标题 "tensorflow1.2.1...总结来说,这个压缩包提供了在64位Linux系统下,使用conda环境和Python 3.5安装TensorFlow 1.2.1的步骤。安装完成后,用户可以利用这个版本的TensorFlow进行LSTM和CNN等深度学习模型的开发。

Global site tag (gtag.js) - Google Analytics