数据科学

数据科学专业人员,机器学习专家以及有兴趣了解该领域的人员的问答

2
如何在Keras中实现“一对多”和“多对多”序列预测?
我很难解释一对一(例如,单个图像的分类)和多对多(例如,图像序列的分类)序列标签的Keras编码差异。我经常看到两种不同的代码: 类型1是没有应用TimeDistributed的地方,如下所示: model=Sequential() model.add(Convolution2D(nb_filters, kernel_size[0], kernel_size[1], border_mode="valid", input_shape=[1, 56,14])) model.add(Activation("relu")) model.add(Convolution2D(nb_filters, kernel_size[0], kernel_size[1])) model.add(Activation("relu")) model.add(MaxPooling2D(pool_size=pool_size)) model.add(Reshape((56*14,))) model.add(Dropout(0.25)) model.add(LSTM(5)) model.add(Dense(50)) model.add(Dense(nb_classes)) model.add(Activation("softmax")) 类型2是应用TimeDistributed的地方,如下所示: model = Sequential() model.add(InputLayer(input_shape=(5, 224, 224, 3))) model.add(TimeDistributed(Convolution2D(64, (3, 3)))) model.add(TimeDistributed(MaxPooling2D((2,2), strides=(2,2)))) model.add(LSTM(10)) model.add(Dense(3)) 我的问题是: 我的假设是正确的,类型1是一对多类型,类型2是多对多类型吗?还是TimeDistributed在这方面没有关联? 在一对多或多对多的情况下,最后一个密集层应为1个节点“长”(依次仅发出一个值), 而先前的循环层负责确定有多少个 1长发射的价值?或者最后一个密集层应该由N个节点组成,其中N=max sequence length?如果是这样, 当我们可以 使用N个并行“原始”估计量产生具有多个输出的相似输入时,在这里使用RNN 有什么意义? 如何定义RNN中的时间步数?它是某种程度上 与输出序列长度相关,还是只是 需要调整的超参数? 上面我的Type …
13 keras  rnn  lstm  sequence 

3
我应该使用GPU还是CPU进行推理?
我正在运行由GPU训练的深度学习神经网络。现在,我想将此部署到多个主机以进行推断。问题是什么条件决定我应该使用GPU还是CPU进行推理? 在下面的评论中添加更多详细信息。 我对此并不陌生,因此非常感谢您的指导。 内存:GPU是K80 框架:Cuda和cuDNN 每个工作负载的数据大小:20G 计算要消耗的节点:每个作业一个,尽管要考虑扩展选项 费用:如果理由合理,我可以负担得起GPU选项 部署:在自己托管的裸机服务器上运行,而不是在云中。 现在,我在CPU上运行只是因为应用程序运行正常。但是出于这个原因,我不确定为什么还要考虑使用GPU。

3
现在(2016年)的深度学习神经网络与我四年前(2012年)学习的神经网络有何不同?
在Wikipedia和deeplearning4j中,有人说深度学习NN(DLNN)是具有> 1隐层的NN。 对于我来说,这类NN在大学中是标准的,而DLNN如今非常受炒作。到那儿去了,做完了-有什么大不了的? 我还听说堆叠式NN被认为是深度学习。如何真正定义深度学习? 我的NN背景主要来自大学,而不是工作: 研究了NN在工业中的应用 关于artif的课程大约有5门。英特尔。和马赫。学习。-尽管其中有2个在NN上 使用NN进行小型,简单的图像识别项目-使用3层前馈NN 没有对他们做真正的研究(如在博士论文中)

3
当我们说超立方体中的大多数点都在边界处时,这意味着什么?
如果我有一个50维的超立方体。我用或0.95 &lt; x j &lt; 1定义边界,其中x j是超立方体的尺寸。然后计算超立方体边界上的点比例为0.995。这是什么意思?这是否意味着其余空间是空的?如果99 %的点位于边界处,那么立方体内的点一定不能均匀分布吗?0&lt;xj&lt;0.050&lt;xj&lt;0.050<x_j<0.050.95&lt;xj&lt;10.95&lt;xj&lt;10.95<x_j<1xjxjx_j0.9950.9950.99599%99%99\%

2
是否有必要更改Keras中Early Stopping回调所使用的指标?
当在Keras中使用Early Stopping回调时,某些指标(通常是验证损失)没有增加时,训练将停止。有没有一种方法可以使用其他指标(例如精度,召回率,f度量)代替验证损失?到目前为止,我所看到的所有示例都与此示例类似:callbacks.EarlyStopping(monitor ='val_loss',耐心= 5,冗长= 0,mode ='auto')


4
将CSV文件内容导入pyspark数据框
如何将.csv文件导入pyspark数据帧?我什至尝试在Pandas中读取csv文件,然后使用createDataFrame将其转换为spark数据框,但是它仍然显示一些错误。有人可以指导我吗?另外,请告诉我如何导入xlsx文件?我正在尝试将csv内容导入pandas数据帧,然后将其转换为spark数据帧,但是它显示错误: "Py4JJavaError" An error occurred while calling o28.applySchemaToPythonRDD. : java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient 我的代码是: from pyspark import SparkContext from pyspark.sql import SQLContext import pandas as pd sqlc=SQLContext(sc) df=pd.read_csv(r'D:\BestBuy\train.csv') sdf=sqlc.createDataFrame(df)
13 pyspark 


3
SQL的自然语言查询
我一直在开发系统“将自然语言转换为SQL查询”。 我已经阅读了类似问题的答案,但无法获得我正在寻找的信息。 以下是我从Garima Singh,Arun Solanki的《将自然语言转换为关系数据库的SQL查询的算法》中获得的此类系统的流程图。 直到语音标记步骤的一部分,我才明白。但是我该如何处理其余步骤。 我是否需要训练所有可能的SQL查询? 或者,一旦完成语音标记的一部分,我就必须使用这些单词并形成一个SQL查询? 编辑:我已经成功实现了从步骤“用户查询”到“语音标记”。 谢谢。

2
您如何将SMOTE应用于文本分类?
综合少数族裔过采样技术(SMOTE)是用于不平衡数据集问题的过采样技术。到目前为止,我已经知道如何将其应用于通用的结构化数据。但是可以将其应用于文本分类问题吗?您需要对数据的哪一部分进行超采样?已经有另一个问题,但是没有答案。我在哪里可以学习入门呢?

4
大分类值的一种热门编码替代方案?
您好,数据框具有超过1600个类别的大分类值,有什么办法可以找到替代方法,使我没有超过1600列。 我在下面的有趣链接中找到了此链接http://amunategui.github.io/feature-hashing/#sourcecode 但是他们正在转换为我不想要的类/对象。我希望最终输出为数据框,以便可以使用不同的机器学习模型进行测试吗?还是有什么方法可以使用生成的矩阵来训练除Logistic回归或XGBoost之外的其他机器学习模型? 无论如何,我可以实施吗?

5
熊猫数据框相对于常规关系数据库的优势
在数据科学中,许多人似乎正在使用pandas数据框作为数据存储。与普通的关系数据库(如MySQL)相比,大熊猫有什么特征使其成为高级数据存储,而MySQL通常用于存储其他编程领域的数据? 虽然熊猫确实提供了一些有用的数据探索功能,但是您不能使用SQL,并且会丢失查询优化或访问限制等功能。
13 pandas  databases 

1
Keras中的多任务学习
我正在尝试在Keras中实现共享层。我确实看到Keras拥有keras.layers.concatenate,但是我从文档中不确定其用法。我可以使用它来创建多个共享层吗?如下所示,使用Keras来实现简单的共享神经网络的最佳方法是什么? 请注意,所有3个NN的输入,输出和共享层的所有形状都相同。三个NN中有多个共享层(和非共享层)。着色层对于每个NN都是唯一的,并且具有相同的形状。 基本上,该图表示具有多个共享隐藏层的3个相同的NN,然后是多个非共享隐藏层。 我不确定如何像Twitter示例中那样共享多个层,只有一个共享层(API文档中的示例)。

1
多维和多元时间序列预测(RNN / LSTM)Keras
我一直在尝试了解如何使用Keras(或TensorFlow)来表示和塑造数据以进行多维和多变量时间序列预测,但是在阅读了许多有关如何在Web站点中呈现数据的博客文章/教程/文档后,我仍然不清楚。正确的形状(大多数示例略少一些) 我的数据集: 几个城市 我有关于温度,汽车通行性,湿度的信息 可以说最近2年(每天1条记录) 我想做的事情: 我想使用温度,汽车通行和湿度的滞后版本来预测每个城市明年的平均气温(当然会有更多功能,但这只是一个思想示例)。 我感到困惑的是: 如果我有2个城市,并且在365天内记录了3个要素。我应该如何调整我的输入,以便模型可以输出这两个城市365天的预报(即365天的2个时间序列的温度)? 直观上,张量形状将(?, 365, 3)持续365天和3个特征。但是我不确定该坚持第一维度是什么,最重要的是,如果一定要针对城市数量,我会感到惊讶。但与此同时,我也不知道如何在模型中指定必须正确理解尺寸的模型。 任何指针都会有所帮助。我对问题的其余部分非常熟悉(即,您如何在Keras中构建网络等,因为我已经为其他神经网络完成了此操作,但更具体地说是如何最好地编码所需输入的序列)。 哦,而且,我想我可以对每个城市进行独立的培训和预测,但是我敢肯定,每个人都会同意有可能要学习的东西并不是每个城市所独有的,只有在考虑其中的几个时才能看到,因此,为什么我认为在模型中对其进行编码很重要。
12 python  keras  rnn  lstm 

1
那么LSTM有什么收获呢?
我正在扩展我对Keras软件包的了解,并且一直在使用一些可用的模型作为工具。我有一个NLP二进制分类问题,我正在尝试解决,并且一直在应用不同的模型。 在获得了一些结果并越来越多地了解LSTM之后,看来这种方法远远优于我尝试过的任何方法(跨多个数据集)。我一直在想自己,“为什么/何时不使用LSTM?”。在某些模型的梯度逐渐消失之后,使用LSTM固有的附加门对我来说非常有意义。 那么LSTM有什么收获呢?他们在哪里做得不好?我知道没有“一刀切”的算法,因此LSTM必须有一个缺点。

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.