如何导入训练好的tensorflow model 并用其来预测自己的数据?

在使用tensorflow时,经常需要用别人训练好的模型来预测我们自己我们自己的数据。一般分为轻量级的保存参数和保存整个模型。使用保存weights 可以参考本人另外一篇博客。

这儿主要介绍导入别人训练好的以h5格式保存的model并用其预测自己的数据:

1. 导入库
import tensorflow as tf
from tensorflow.keras import datasets, layers, optimizers, Sequential, metrics
import pandas as pd
import numpy as np
2.导入别人保存好的model
final_model = tf.keras.models.load_model("saved_model.h5", compile=True) #  注意这儿得compile需要设置为true,如果你不设置你需要多一步compile的过程。
3. 导入你自己的数据
 plas=np.loadtxt("whole_genomewalk/plas_com.txt",dtype="int32")
4. 开始预测
>>> plas_prob=final_model.predict(plas) # 预测
# 查看前10个样本的预测概率。由于这个model是预测二分类,输出结果是正分类样本的概率。如果是多分类模型,预测结果是每个分类对应的概率。
>>> plas_prob[:10] 
array([[0.9499076 ],
       [0.966307  ],
       [0.8369276 ],
       [0.88482785],
       [0.9329413 ],
       [0.9565406 ],
       [0.95790464],
       [0.89393246],
       [0.9659232 ],
       [0.04010561]], dtype=float32)
5. 概率转化为分类结果
>>>plas_result=np.ones(plas_prob.shape[0]) # 假设所有样本都是正分类1
>>> plas_result
array([1., 1., 1., ..., 1., 1., 1.])
>>> plas_result[plas_prob.ravel()<0.5]=0 # 将概率p<0.5 的样本换算成负分类样本0
  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值