Questions tagged «tensorflow»

TensorFlow是一个用于机器学习和机器智能的开源库。TensorFlow使用具有沿边缘流动的张量的数据流图。有关详细信息,请参见https://www.tensorflow.org。TensorFlow是根据Apache 2.0许可发布的。

5
神经网络中的交叉熵误差函数
在MNIST对于ML初学者中,他们将交叉熵定义为 Hy′(y):=−∑iy′ilog(yi)Hy′(y):=−∑iyi′log⁡(yi)H_{y'} (y) := - \sum_{i} y_{i}' \log (y_i) yiyiy_i是类别i的预测概率值iii,y′iyi′y_i'是该类别的真实概率。 问题1 yiyiy_i(在log(yi)log⁡(yi)\log(y_i))可以为0 是否不是问题?当然,这意味着我们的分类器非常差。但是请考虑我们数据集中的错误,例如1标记为的“显而易见”错误3。它会崩溃吗?我们选择的模型(最后激活softmax)是否基本上不会为正确的类别给出概率0? 问题2 我了解到交叉熵定义为 Hy′(y):=−∑i(y′ilog(yi)+(1−y′i)log(1−yi))Hy′(y):=−∑i(yi′log⁡(yi)+(1−yi′)log⁡(1−yi))H_{y'}(y) := - \sum_{i} ({y_i' \log(y_i) + (1-y_i') \log (1-y_i)}) 什么是正确的?您对这两个版本都有教科书参考吗?这些函数的特性如何不同(作为神经网络的误差函数)?

4
神经网络:使用哪个成本函数?
我正在使用TensorFlow主要用于神经网络的实验。尽管现在我已经做了大量的实验(XOR问题,MNIST,一些回归的东西……),但是我为特定的问题选择“正确的”成本函数很困难,因为总的来说我可以被认为是一个初学者。 在上TensorFlow之前,我自己使用Python和NumPy编写了一些完全连接的MLP和一些递归网络,但大多数情况下,我遇到了一个简单的平方误差和简单的梯度设计就足够了的问题。 但是,由于TensorFlow本身提供了很多成本函数以及构建自定义成本函数的功能,所以我想知道是否存在某种专门针对神经网络上的成本函数的教程?(我已经完成了一半的TensorFlow官方教程,但它们并没有真正解释为什么特定成本函数或学习者用于特定问题-至少对于初学者而言) 举一些例子: cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(y_output, y_train)) 我猜想它在两个输入上都应用了softmax函数,以便一个向量的总和等于1。但是对数与logits的交叉熵到底是什么呢?我以为它会汇总值并计算交叉熵...那么一些度量标准度量值呢?如果我对输出进行归一化,求和并求平方误差,这是否会完全相同?此外,为什么将其用于MNIST(甚至更困难的问题)?当我想分类为10个甚至1000个类时,汇总这些值是否会完全破坏有关输出实际上是哪个类的任何信息? cost = tf.nn.l2_loss(vector) 这个是来做什么的?我以为l2损失几乎是平方误差,但TensorFlow的API告诉它输入只是一个张量。根本不知道这个主意吗? 此外,我经常看到这种用于交叉熵的方法: cross_entropy = -tf.reduce_sum(y_train * tf.log(y_output)) ...但是为什么要使用它?数学上的交叉熵损失不是: -1/n * sum(y_train * log(y_output) + (1 - y_train) * log(1 - y_output)) 哪里是(1 - y_train) * log(1 - y_output)在最TensorFlow例子的一部分?它不丢失吗? 答:我知道这个问题是很开放的,但是我不希望得到详细列出每个问题/成本函数的10页。我只需要简短总结一下何时使用哪个成本函数(一般而言还是在TensorFlow中,对我来说并不重要),以及有关此主题的一些解释。和/或一些初学者的资源;)

3
keras中的多GPU
如何在keras库(或tensorflow)中进行编程,以在多个GPU上划分训练?假设您位于具有8个GPU的Amazon ec2实例中,并且希望使用它们全部进行训练,但是您的代码仅适用于单个CPU或GPU。

4
噪声对比估计(NCE)损失的直观解释?
我从以下两个来源了解到NCE(一种候选抽样形式): Tensorflow写 原始纸 有人可以为我提供以下帮助: NCE的工作原理的简单说明(我发现上面的内容很难解析和理解,因此直观的方法可以很好地介绍此处的数学知识) 在上面的第1点之后,自然而然地描述了它与负采样有何不同。我可以看到公式略有变化,但无法理解数学。在以下情况下,我确实对否定采样有一个直观的了解word2vec-我们从词汇表中随机选择一些样本,V并仅对那些样本进行更新,因为它们|V|很大,因此可以加快速度。如果有误,请更正。 何时使用哪一个,如何决定?如果您可以包括示例(可能易于理解的应用程序),那就太好了。 NCE比负采样好吗?哪种方式更好? 谢谢。

1
PyTorch vs.Tensorflow折叠
既PyTorch和Tensorflow折是指处理,其中输入数据具有非均匀的长度或尺寸的情况下(即,在动态图都是有用的或需要的情况下)深学习框架。 我想知道它们之间的比较,从它们所依赖的范式(例如动态批处理)及其含义的角度来看,它们之间不能/不能实现的事情,弱点/优点等。 我打算使用此信息选择其中一个以开始探索动态计算图,但是我没有特定的任务在想。 注1:像其他的动态计算图形框架DyNet或Chainer也欢迎比较,但我想专注于PyTorch和Tensorflow折,因为我认为他们是/将是最常用的。 注意2:我在PyTorch上发现了这个hackernews线程,其中包含一些稀疏信息,但数量不多。 注意3:另一个与Tensorflow Fold 有关的hackernews线程,包含一些有关它们如何比较的信息。 注意4:相关的Reddit线程。 注5:Tensorflow Fold的github中的相关bug指出了一个重要限制:评估期间无法进行条件分支。 注释6:在pytorch论坛上讨论有关所使用算法(例如动态批处理)的可变长度输入。

2
在Keras中合并两种不同的模型
我正在尝试将两个Keras模型合并为一个模型,但是我无法实现这一点。 例如在附图中,我想获取尺寸为8 的中间层,并将其用作模型(再次为尺寸8的)层输入,然后将模型和模型合并为一个模型。B 1 B A BA2A2A2B1B1B1BBBAAABBB 我正在使用功能模块独立创建模型和模型如何完成这项任务?乙AAABBB 注意:是模型的输入层,而是模型的输入层。A B 1 BA1A1A1AAAB1B1B1B乙B

3
多重输出回归的神经网络
我有一个包含34个输入列和8个输出列的数据集。 解决问题的一种方法是采用34个输入并为每个输出列建立单独的回归模型。 我想知道是否可以仅使用一种模型(特别是使用神经网络)解决该问题。 我使用了多层感知器,但是它需要多个模型,就像线性回归一样。序列到序列可以可行吗? 我正在使用TensorFlow。我有代码,但我认为了解多层感知器理论所缺少的内容更为重要。 我了解在MLP中,如果您有一个输出节点,它将提供一个输出。如果您有10个输出节点,那么这是一个多类问题。您从10个输出中选择概率最高的类。但是在我的情况下,可以肯定的是,相同的输入将有8个输出。 可以说,对于一组输入,您将获得某物(X,Y,Z)的3D坐标。就像,输入= {1,10,5,7}输出= {1,2,1}。因此,对于相同的输入{1,10,5,7},我需要为X值Y值和Z建立模型。一种解决方案是使用MLP具有3个不同的模型。但是我想看看我是否可以有一个模型。所以我考虑使用seq2seq。因为编码器接受一系列输入,而解码器提供一系列输出。但是似乎张量流中的seq2seq无法处理浮点值。我对此可能是错的。


3
使用深度学习库从文本中提取关键字/短语
也许这太广泛了,但是我正在寻找有关如何在文本摘要任务中使用深度学习的参考。 我已经使用标准的词频方法和句子排序来实现文本摘要,但是我想探索使用深度学习技术来完成此任务的可能性。我还通过使用卷积神经网络(CNN)进行情感分析,在wildml.com上进行了一些实现;我想知道如何使用TensorFlow或Theano等库进行文本汇总和关键字提取。自从我开始尝试神经网络以来已经过去了大约一周的时间,我非常高兴地看到这些库的性能与我以前解决此问题的方法相比如何。 我特别在寻找一些有趣的论文和与使用这些框架进行文本汇总有关的github项目。谁能提供一些参考资料给我?

2
Keras vs.tf.keras
我在为新研究项目选择Keras(keras-team / keras)和tf.keras(tensorflow / tensorflow / python / keras /)之间有点困惑。 有争论称,Keras不归任何人所有,因此人们更乐于参与其中,将来管理该项目将更加容易。‬ 在另一边,tf.keras是由谷歌所拥有,因此更严格的测试和维护。而且,这似乎是利用Tensorflow v.2中提供的新功能的更好选择。 因此,要启动一个数据科学(机器学习)项目(在研究阶段),在开始时都没问题,您选择哪个?

4
将TensorFlow与Intel GPU结合使用
我是深度学习的新手。 现在有什么办法可以将TensorFlow与Intel GPU一起使用吗?如果是,请指出正确的方向。 如果没有,请让我知道我的英特尔公司Xeon E3-1200 v3 / 4th Gen Core Processor Integrated Graphics Controller可以使用哪个框架(Keras,Theano等)。
20 tensorflow  keras  theano  gpu 

4
“ LSTM单元中的单位数”是什么意思?
来自Tensorflow代码:Tensorflow。RnnCell。 num_units: int, The number of units in the LSTM cell. 无法理解这是什么意思。LSTM电池的单位是什么。输入,输出和忘记门?这是否表示“深度LSTM的循环投影层中的单位数”。那么为什么将其称为“ LSTM单元中的单位数”?什么是LSTM单元,与VS LSTM块的区别是什么?如果不是单元,最小LSTM单位是什么?

1
如何使用keras处理多类分类中的字符串标签?
我是机器学习和keras的新手,现在正在使用keras处理多类图像分类问题。输入的是带标签的图像。经过一些预处理后,训练数据在Python列表中表示为: [["dog", "path/to/dog/imageX.jpg"],["cat", "path/to/cat/imageX.jpg"], ["bird", "path/to/cat/imageX.jpg"]] “狗”,“猫”和“鸟”是类标签。我认为应该使用一站式编码解决此问题,但是我对如何处理这些字符串标签不是很清楚。我已经尝试过sklearn的LabelEncoder(): encoder = LabelEncoder() trafomed_label = encoder.fit_transform(["dog", "cat", "bird"]) print(trafomed_label) 输出是[2 1 0],这与我对[[1,0,0],[0,1,0],[0,0,1]]之类的东西的期望输出不同。可以通过一些编码来完成,但是我想知道是否有某种“标准”或“传统”方式来处理它?

3
训练深度学习模型时如何计算小批量记忆影响?
我正在尝试根据Andrej Karphaty的以下注释计算GPU训练模型所需的内存量:http ://cs231n.github.io/convolutional-networks/#computational-considerations 我的网络有532,752个激活和19,072,984个参数(权重和偏差)。这些都是32位浮点值,因此每个值占用4个字节的内存。 我的输入图像是180x50x1(宽度x高度x深度)= 9,000个 float 32值。我不使用图像增强,因此我认为杂项内存仅与最小批处理大小有关。我使用的是128张图像的小批量。 根据Andrej的建议,我得到以下内存大小: 激活: 532,752 * 4 /(1024 ^ 2)= 2.03 MB 参数: 19,072,984 * 4 /(1024 ^ 2)* 3 = 218.27 MB 杂项: 128 * 9,000 * 4 /(1024 ^ 2)= 4.39 MB 因此,训练该网络的总内存为224,69 MB。 我正在使用TensorFlow,但我想缺少一些东西。我还没有参加培训,但是我很确定(根据过去的经验)正在使用的内存将比我计算的要高得多。 如果对于小批量中的每个图像,TensorFlow保持其梯度,以便稍后可以对它们进行归一化以进行单个权重/偏差更新步骤,那么我认为内存应考虑另一个532,752 * 128值(每个图像中的梯度)小批量)。如果真是这样,那么我需要更多260.13 MB来训练具有128张图像/微型批处理的模型。 您可以帮助我理解训练深度学习模型的内存注意事项吗?以上考虑对吗?

5
扩大seaborn热图
我corr()用原始df 创建了df。该corr()DF出来70×70,这是不可能的可视化热图... sns.heatmap(df)。如果我尝试显示corr = df.corr(),则表格不适合屏幕,并且我可以看到所有相关性。它是打印整个df大小而不管其大小还是控制热图大小的方法吗?
17 visualization  pandas  plotting  machine-learning  neural-network  svm  decision-trees  svm  efficiency  python  linear-regression  machine-learning  nlp  topic-model  lda  named-entity-recognition  naive-bayes-classifier  association-rules  fuzzy-logic  kaggle  deep-learning  tensorflow  inception  classification  feature-selection  feature-engineering  machine-learning  scikit-learn  tensorflow  keras  encoding  nlp  text-mining  nlp  rnn  python  neural-network  feature-extraction  machine-learning  predictive-modeling  python  r  linear-regression  clustering  r  ggplot2  neural-network  neural-network  training  python  neural-network  deep-learning  rnn  predictive-modeling  databases  sql  programming  distribution  dataset  cross-validation  neural-network  deep-learning  rnn  machine-learning  machine-learning  python  deep-learning  data-mining  tensorflow  visualization  tools  sql  embeddings  orange  feature-extraction  unsupervised-learning  gan  machine-learning  python  data-mining  pandas  machine-learning  data-mining  bigdata  apache-spark  apache-hadoop  deep-learning  python  convnet  keras  aggregation  clustering  k-means  r  random-forest  decision-trees  reference-request  visualization  data  pandas  plotting  neural-network  keras  rnn  theano  deep-learning  tensorflow  inception  predictive-modeling  deep-learning  regression  sentiment-analysis  nlp  encoding  deep-learning  python  scikit-learn  lda  convnet  keras  predictive-modeling  regression  overfitting  regression  svm  prediction  machine-learning  similarity  word2vec  information-retrieval  word-embeddings  neural-network  deep-learning  rnn 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.