草庐IT

Scikit-Learn-Keras

全部标签

python - Keras:如何计算多标签分类的准确度?

我正在进行有毒评论文本分类Kaggle挑战。有6个类别:['threat','severe_toxic','obscene','insult','identity_hate','toxic']。一条评论可以是这些类别的多个,因此这是一个多标签分类问题。我用Keras构建了一个基本的神经网络,如下所示:model=Sequential()model.add(Embedding(10000,128,input_length=250))model.add(Flatten())model.add(Dense(100,activation='relu'))model.add(Dense(len(

python - 使用 Keras (PIL) 和 TensorFlow 调整图像大小不一致?

我被以下之间明显的不一致所困扰:来自keras.preprocessing的图像大小调整功能,它们是PIL函数的包装器TensorFlow的tf.image中的图像大小调整函数。我正在使用Keras(实际上是使用tf.keras,但这并不重要)为计算机视觉任务训练深度学习模型。然后,我使用TF服务为模型提供服务,这要求我将图像作为编码字节字符串发送到模型,在通过模型图之前使用tf.image.decode_png对它们进行解码。当我调整图像大小时出现问题。与tf.image相比,使用双线性插值(或任何其他方法)调整大小会在PIL中给出不同的结果,以至于模型的分类会根据函数的不同而变化我

python - Keras 自定义 RMSLE 指标

如何在Keras中实现此指标?我下面的代码给出了错误的结果!请注意,我正在通过exp(x)-1撤消之前的log(x+1)转换,负预测也被裁剪为0:defrmsle_cust(y_true,y_pred):first_log=K.clip(K.exp(y_pred)-1.0,0,None)second_log=K.clip(K.exp(y_true)-1.0,0,None)returnK.sqrt(K.mean(K.square(K.log(first_log+1.)-K.log(second_log+1.)),axis=-1)为了比较,这里是标准的numpy实现:defrmsle_cu

python - 了解 Keras LSTM : Role of Batch-size and Statefulness

来源有多个来源解释了有状态/无状态LSTM以及我已经阅读过的batch_size的作用。我稍后会在我的帖子中提到它们:[1]https://machinelearningmastery.com/understanding-stateful-lstm-recurrent-neural-networks-python-keras/[2]https://machinelearningmastery.com/stateful-stateless-lstm-time-series-forecasting-python/[3]http://philipperemy.github.io/keras-

python - 在 scikit-learn 中获得多标签预测的准确性

在multilabelclassification中设置,sklearn.metrics.accuracy_score仅计算子集准确性(3):即为样本预测的标签集必须与y_true中相应的标签集完全匹配。这种计算准确度的方法有时被命名为精确匹配率(1):在scikit-learn中有没有其他典型的方法来计算准确度,即(如(1)和(2)中所定义,更明确地称为Hamming分数(4)(因为它与Hamming损失密切相关),或基于标签准确度)?(1)Sorower,MohammadS."Aliteraturesurveyonalgorithmsformulti-labellearning."

python - 将 scikit-learn NMF 与一组预先计算的基向量 (Python) 结合使用

我想使用scikit-learnNMF(来自here)(或者任何其他NMF,如果它能胜任的话)。具体来说,我有一个输入矩阵(这是一个音频幅度谱图),我想分解它。我已经预先计算了W矩阵。我如何在sklearn.decompose.NMF中使用一个fixedW?我还没有发现任何其他问题。我看到了this方法还在fit参数中提到了类似的内容:“如果为False,则假定组件已预先计算并存储在transformer中,并且不会更改。”。但是,我不确定如何制作该转换器对象。 最佳答案 Thispartofthecode稍微解释了内部处理。听起来

python - 如何 pickle Keras 模型?

官方文档说“不推荐使用pickle或cPickle来保存Keras模型。”但是,我对pickleKeras模型的需求源于使用sklearn的RandomizedSearchCV(或任何其他超参数优化器)的超参数优化。必须将结果保存到文件中,因为这样脚本就可以在分离的session等中远程执行。本质上,我想:trial_search=RandomizedSearchCV(estimator=keras_model,...)pickle.dump(trial_search,open("trial_search.pickle","wb")) 最佳答案

python - Keras 自定义损失实现 : ValueError: An operation has `None` for gradient

我正在尝试实现这个损失函数:MCFD_loss_function来自本文档(P6):Lossfunctions所以我创建了一个这样的新函数:defmcfd_loss(y_true,y_pred):returnK.sum(#∑K.cast(K.greater(#onlyvaluesgreaterthan0(+float32cast)K.dot(K.sign(y_pred),#πK.sign(y_true)),0),'float32'))但是当我开始训练时出现了这个错误:ValueError:AnoperationhasNoneforgradient.Pleasemakesurethata

python - 使用keras的句子相似度

我正在尝试基于此workusingtheSTSdataset实现句子相似度架构.标签是从0到1的归一化相似性分数,因此假设它是一个回归模型。我的问题是,从第一个纪元开始,损失直接进入NaN。我做错了什么?我已经尝试更新到最新的keras和theano版本。我的模型的代码是:defcreate_lstm_nn(input_dim):seq=Sequential()`#embeddusingpretrained300dembeddingseq.add(Embedding(vocab_size,emb_dim,mask_zero=True,weights=[embedding_weights

Python scikit-learn : Cannot clone object. .. 因为构造函数似乎没有设置参数

我修改了BernoulliRBMscikit类学习使用softmax可见单元组。在此过程中,我添加了一个额外的Numpy数组visible_config作为类属性,它在构造函数中初始化如下:self.visible_config=np.cumsum(np.concatenate((np.asarray([0]),visible_config),axis=0))其中visible_config是作为输入传递给构造函数的Numpy数组。当我直接使用fit()函数训练模型时,代码运行没有错误。但是,当我使用GridSearchCV结构时,出现以下错误CannotcloneobjectSoft