草庐IT

tensorflow_serving

全部标签

python - Tensorflow:多个损失函数与多个训练操作

我正在创建一个预测多个输出(具有不同激活)的Tensorflow模型。我认为有两种方法可以做到这一点:方法1:创建多个损失函数(每个输出一个),合并它们(使用tf.reduce_mean或tf.reduce_sum)并像这样将其传递给训练操作:final_loss=tf.reduce_mean(loss1+loss2)train_op=tf.train.AdamOptimizer().minimize(final_loss)方法二:创建多个训练操作,然后像这样对它们进行分组:train_op1=tf.train.AdamOptimizer().minimize(loss1)train_

python - Tensorflow 张量 reshape 并用零填充

有没有办法reshape张量并用零填充任何溢出?我知道ndarray.reshape会这样做,但据我了解,将Tensor转换为ndarray需要在GPU和CPU之间来回切换。Tensorflow的reshape()文档说TensorShapes需要有相同数量的元素,所以也许最好的方法是pad()然后reshape()?我正在努力实现:a=tf.Tensor([[1,2],[3,4]])tf.reshape(a,[2,3])a=>[[1,2,3],[4,0,0]] 最佳答案 据我所知,没有内置运算符可以执行此操作(如果形状不匹配,tf

模型加速技术在TensorFlow中的应用与案例

作者:禅与计算机程序设计艺术1.简介随着深度学习的兴起,图像识别、语音识别、视频分析等应用得到了越来越广泛的应用。近年来,一些模型的规模和复杂度也越来越大。因此,如何快速准确地运行这些模型成为一个重要的研究方向。目前主流的模型加速技术主要集中在框架层面上,比如TensorRT、NCNN、OpenVINO等。但是这些技术只能用于特定硬件平台或特定推理引擎。例如,TensorRT只能用在NVIDIAGPU上,而不能直接用于CPU上;OpenVINO只能在IntelCPU或GPU上运行,不能直接用于Arm架构上的手机或树莓派等设备。因此,如果希望让模型可以在不同硬件上都运行起来,需要更加通用的模型加

python - TensorFlow 中的异步计算

最近我一直在研究TensorFlow,我提到该框架无法使用我所有可用的计算资源。在ConvolutionalNeuralNetworks他们提到的教程Naivelyemployingasynchronousupdatesofmodelparametersleadstosub-optimaltrainingperformancebecauseanindividualmodelreplicamightbetrainedonastalecopyofthemodelparameters.Conversely,employingfullysynchronousupdateswillbeasslo

python - 如何在 LSTM 中实现 Tensorflow 批量归一化

我当前的LSTM网络看起来像这样。rnn_cell=tf.contrib.rnn.BasicRNNCell(num_units=CELL_SIZE)init_s=rnn_cell.zero_state(batch_size=1,dtype=tf.float32)#veryfirsthiddenstateoutputs,final_s=tf.nn.dynamic_rnn(rnn_cell,#cellyouhavechosentf_x,#inputinitial_state=init_s,#theinitialhiddenstatetime_major=False,#False:(batc

python - TensorFlow Estimator ServingInputReceiver 功能与 receiver_tensors : when and why?

在previousquestion中serving_input_receiver_fn的目的和结构在answer中进行了探索。:defserving_input_receiver_fn():"""Forthesakeoftheexample,let'sassumeyourinputtothenetworkwillbea28x28grayscaleimagethatyou'llthenpreprocessasneeded"""input_images=tf.placeholder(dtype=tf.uint8,shape=[None,28,28,1],name='input_images

python - word2vec的tensorflow实现

Tensorflow教程here指的是它们的基本实现,您可以在githubhere上找到,其中Tensorflow作者使用Skipgram模型实现word2vec向量嵌入训练/评估。我的问题是关于generate_batch()函数中(目标、上下文)对的实际生成。关于thislineTensorflow作者在单词滑动窗口中从“中心”单词索引中随机抽取附近的目标索引。然而,他们alsokeepadatastructuretargets_to_avoid他们首先向其中添加“中心”上下文词(当然我们不想对其进行采样),但在我们添加它们之后还会添加其他词。我的问题如下:为什么要围绕这个词从这个

python - 凯拉斯 + tensorflow : Prediction on multiple gpus

我使用Keras和tensorflow作为后端。我有一个编译/训练模型。我的预测循环很慢,所以我想找到一种方法来并行化predict_proba调用以加快速度。我想获取(数据)批处理列表,然后根据可用的gpu,对这些批处理的子集运行model.predict_proba()。本质上:data=[batch_0,batch_1,...,batch_N]ongpu_0=>returnpredict_proba(batch_0)ongpu_1=>returnpredict_proba(batch_1)...ongpu_N=>returnpredict_proba(batch_N)我知道在纯T

python - Tensorflow 和多处理 : Passing Sessions

我最近一直在从事一个使用神经网络进行虚拟机器人控制的项目。我使用tensorflow对其进行编码,并且运行顺利。到目前为止,我使用顺序模拟来评估神经网络的好坏,但是,我想并行运行多个模拟以减少获取数据所需的时间。为此,我导入了python的multiprocessing包。最初我将sess变量(sess=tf.Session())传递给将运行模拟的函数。但是,一旦我到达任何使用此sess变量的语句,该过程就会在没有警告的情况下退出。搜索了一下后,我发现了这两个帖子:Tensorflow:Passingasessiontoapythonmultiprocess和Runningmultip

python - 在 Tensorflow 中创建许多特征列

我正在开始一个Tensorflow项目,并且正在定义和创建我的特征列。然而,我有成百上千的特征——这是一个相当广泛的数据集。即使经过预处理和清理,我也有很多列。创建feature_column的传统方法在Tensorflowtutorial中定义甚至这个StackOverflowpost.您基本上为每个特征列声明并初始化一个Tensorflow对象:gender=tf.feature_column.categorical_column_with_vocabulary_list("gender",["Female","Male"])如果您的数据集只有几列,这一切都很好,但就我而言,我肯定