3.3TensorFlow运行模型--会话

3.1和3.2介绍了TensorFlow是如何组织数据和运算的.

本节介绍如何使用TensorFlow中的会话(session)来执行定义好的运算

会话拥有并管理TensorFlow程序运行时的所有资源

当所有计算完成后需要关闭会话来帮助系统回收资源,否则可能资源泄露

TensorFlow中使用会话的模式有两种:

(1)需要明确调用会话生成函数和会话关闭函数,流程如下:

使用这种模式,计算完成后,需要明确调用session.close函数来关闭会话

但是当程序异常退出时,关闭会话的函数可能不被执行,导致资源泄露,为了解决这一问题, 使用模式(2)

(2)通过pyhon的上下文管理器来使用会话

之前介绍过,TensorFlow会自动生成一个默认的计算图.

会话也有类似的机制,但是TensorFlow不会自动生成默认的会话,而是需要手动指定

TODO...

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用TensorFlow提供的预训练模型来实现VGG-19网络。以下是一些步骤: 1.导入TensorFlow和其他必要的库。 2.下载VGG-19模型的预训练权重文件。这些文件可以在TensorFlow官方提供的链接找到。 3.建立VGG-19模型的图表,并将模型加载到会话。 4.准备输入图像并将其传递给模型以进行预测。 5.获取模型输出,这将是一个具有1000个元素的向量,每个元素表示一个类别。 6.使用softmax函数将输出向量转换为概率分布,以便可以识别最可能的类别。 7.根据预测结果,可以采取不同的行动,比如输出类别标签或对图像进行进一步的处理。 以下是一个用TensorFlow实现VGG-19模型的参考代码: ``` import tensorflow as tf import numpy as np import urllib.request def download(url, filename): urllib.request.urlretrieve(url, filename) def load_image(filename): image = tf.keras.preprocessing.image.load_img(filename, target_size=(224, 224)) image = tf.keras.preprocessing.image.img_to_array(image) image = np.expand_dims(image, axis=0) image = tf.keras.applications.vgg19.preprocess_input(image) return image def VGG19(input_shape=(224,224,3), output_shape=1000, weights_path=None): vgg19 = tf.keras.applications.VGG19(include_top=True, input_shape=input_shape, weights=None, classes=output_shape) if weights_path: vgg19.load_weights(weights_path) return vgg19 download("http://www.vlfeat.org/matconvnet/models/beta16/imagenet-vgg-verydeep-19.mat", "vgg19_weights.h5") input_shape = (224, 224, 3) output_shape = 1000 weights_path = "vgg19_weights.h5" image = load_image("test_image.jpg") model = VGG19(input_shape, output_shape, weights_path) outputs = model.predict(image) preds = tf.keras.applications.vgg19.decode_predictions(outputs, top=1)[0] print("Predicted class: {}".format(preds[0][1])) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值