添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

在没有部署服务之前,一切正常
在Flask框架下,加载tensrflow模型会出现如下错误

ValueError: Tensor Tensor(“...”, shape=(?, 6), dtype=float32) is not an element of this graph.

原因在于tf模型与flask并不在同一个线程中。解决方案参考tf官网给出的:

import tensorflow as tf
from bert4keras.backend import keras
from App.ee.service import load_weight
# 定义全局图,不然在flask中调用报错,因数tf是动态图
global sess, graph
sess = keras.backend.get_session()
graph = tf.get_default_graph()
# 加载模型
load_weight()
@ee.route('/predict', methods=["POST"])
def predict():
    data = json.loads(request.get_data(as_text=True))
    # 重点是这里,将动态图固定
    with sess.as_default():
        with graph.as_default():
            res = predict_sentence(data["text"])
    # 省略其他处理        
    return res
使用苏神的bert4keras,预训练后产生了多个文件,但是在训练加载训练模型的时候出错Key bert/embeddings/word_embeddings not found in checkpoint
(1)pretrain.py文件
# 预训练脚本
import os
os.environ['TF_KERAS'] = '1'  # 必须使用tf.keras
import tensorflow as tf
from bert4keras.backend import keras, K
在使用bert4keras的时候遇到一个问题:
AttributeError: 'PaddedBatchDataset' object has no attribute 'ndim'
花了好长时间定位问题,原本以为是keras版本问题,后来才从bert4keras源码看到,作者其实是设置了在import keras之前会判断环境变量中的TF_KERAS,但是我在写代码之前会将这个设置放在main中,导致其实使用的还是keras而不是tf.keras
import os
import jso
                                    苦恼了将近半个月的问题终于解决了!!!!!!
本人刚接触机器学习没多久,前段时间在训练模型时觉得如果每次用这个模型时都需要重新去训练有些麻烦,就使用了网上大家都在用的网络模型参数保存与加载的方法,但我却在加载模型后进行测试时发现我的网络模型参数根本就没有被正确保存,搞了几天之后仍然没有找到原因,今天终于找到了原因,所以记录一下。
model.load_state_dict(torch.load(path))
torch.save(model.state_dict(), path)
以上两行代码是网上
                                    在Flask框架下,加载tensrflow模型会出现如下错误
"The name 'encoder_inputs' refers to an Operation not in the graph."
原因在于tf模型flask并不在同一个线程中。解决方案参考tf官网给出的:
tf.get_default_graph
Defined in tensorflow/python/fram...
Flask-SQLAlchemy是Flask扩展,它将对SQLAlchemy的支持添加到Flask应用程序中。
使用Flask-SQLAlchemy扩展操作数据库,首先需要建立数据库连接。数据库连接通过URL指定,而且程序使用的数据库必须保存到Flask配置对象的SQLALCHEMY_DATABASE_URI键中。
pip ins
在pycharm中使用flask框架,但是写完一个之后再做第二个查看网页时始终返回的还是第一个页面。
这种问题一般是退出flask服务时选择了disconected而不是选择terminate,dicconected是一种伪断开,只是在pycharm这里中止了,但是python解释器依旧在运行这个服务。
可以尝试进入任务管理器,结束所有python解释器的进程,就彻底断开了链接。再次重启软件运行程序。
在pycharm里可以修改我们
                                    RuntimeError: version_ <= kMaxSupportedFileFormatVersion INTERNAL ASSERT FAILED at /pytorch/caffe2/serialize/inline_container.cc:132, please report a bug to PyTorch. Attempted to read a PyTorch file with version 3, but the maximum supported version for rea
import cv2
from PIL import Image
from torch.utils.data import Dataset,DataLoader,Subset,random_split
                                    keras后端简介:
Keras 是一个模型级库,为开发深度学习模型提供了高层次的构建模块。它不处理诸如张量乘积和卷积等底层操作,目的也就是尽量不重复造轮子。
keras 有三个后端实现可用 、 即: TensorFlow 后端,Theano 后端,CNTK 后端。
如果你需要修改你的后端, 只要将字段 backend 更改为 theano 或 cntk,Keras 将在下次运行 Keras 代码时使用新的配置。
你也可以定义环境变量 KERAS_BACKEND,这会覆盖配置文件中定义的内容:
定义的方式如
                                    参考:https://zhuanlan.zhihu.com/p/422533717
https://blog.csdn.net/sunyueqinghit/article/details/105157609
transformer输出的结果
last_hidden_state:shape是(batch_size, sequence_length, hidden_size),hidden_size=768,它是模型最后一层输出的隐藏状态
pooler_output:shape是(batch_size, hid
 python -m ft_server $MODEL_PATH
其中$MODEL_PATH是FastText模型( .bin或.ftz )的路径。 您可以在FastText主页上找到一系列预训练模型。
丹尼尔·费德施密特( Daniel Federschmidt ) -federschmidt.xyz
此项目已获得MIT许可证的许可-有关详细信息,请参阅L