数据科学

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

3
并行和分布式计算
并行计算和分布式计算之间的区别是什么?当涉及到可伸缩性和效率时,通常会看到在机器集群中处理计算的解决方案,有时将其称为并行处理或分布式处理。 从某种意义上讲,计算似乎总是并行的,因为有些事情是同时运行的。但是,分布式计算是否仅与使用一台以上的机器有关,还是存在区分这两种处理的其他特征?举例来说,计算是并行和分布式的,这是否多余?

1
如何为决策树中的连续变量选择分割点?
我有两个与决策树有关的问题: 如果我们有一个连续的属性,我们如何选择分割值? 例如:年龄=(20,29,50,40 ....) 想象一下,我们有一个连续属性,其值在R中。我该如何写一个算法找到分裂点v,以便当我们将f除以v时,我们得到f > v的最小增益?fffRRRvvvfffvvvf>vf>vf>v

5
句子相似度预测
我正在寻求解决以下问题:我有一组句子作为我的数据集,并且我希望能够键入一个新句子,并找到该新句子与数据集中最相似的句子。一个示例如下所示: 新句子:“ I opened a new mailbox” 基于数据集的预测: Sentence | Similarity A dog ate poop 0% A mailbox is good 50% A mailbox was opened by me 80% 我已经读到余弦相似度可以用来解决与tf-idf配对的这类问题(RNN不应对基本方法带来重大改进),或者word2vec也可以用于相似的问题。那些在这种特定情况下实际可行吗?是否有其他技术/算法可以解决此问题(最好使用Python和SKLearn,但我也愿意学习TensorFlow)?

2
通过useragent,ip,session_id聚集唯一身份访问者
在满足session_id, ip, user_agent以下条件的情况下,给定形式为的网站访问数据,以及可选的时间戳记,请按照以下条件进行操作,如何最好地将会话归类为唯一身份访问者? session_id:是给每个新访客的ID。它不会过期,但是如果用户不接受cookie /清除cookie /更改浏览器/更改设备,则将不再识别他 IP 可以在不同的用户之间共享(想像一个免费的Wi-Fi咖啡馆,或者您的ISP重新分配IP),他们通常会至少拥有2个家庭和工作场所。 User_agent是浏览器+操作系统版本,可区分设备。例如,用户可能同时使用手机和笔记本电脑,但不太可能使用Windows + Apple笔记本电脑。同一会话ID不可能有多个用户代理。 数据可能看起来像这里的小提琴:http ://sqlfiddle.com/#!2/ c4de40/1 当然,我们在谈论假设,但这是在尽可能接近现实。例如,如果我们在有限的时间内遇到具有不同session_id的相同ip和useragent,则可以合理地假设它是同一用户,但有一些例外情况。 编辑:解决问题的语言是反讽的,它主要是关于逻辑而不是实现。伪代码很好。 编辑:由于小提琴的缓慢性质,您可以选择读取/运行mysql: select session_id, floor(rand()*256*256*256*256) as ip_num , floor(rand()*1000) as user_agent_id from (select 1+a.nr+10*b.nr as session_id, ceil(rand()*3) as nr from (select 1 as nr union all select 2 union all select 3 union all select …
15 clustering 

6
Keras —转移学习—更改输入张量形状
这篇文章似乎表明我想完成的事情是不可能的。但是,我不相信这一点-鉴于我已经做过,我不明白为什么我想做的事情无法实现... 我有两个图像数据集,其中一个具有形状(480、720、3)的图像,而另一个具有形状(540、960、3)的图像。 我使用以下代码初始化了一个模型: input = Input(shape=(480, 720, 3), name='image_input') initial_model = VGG16(weights='imagenet', include_top=False) for layer in initial_model.layers: layer.trainable = False x = Flatten()(initial_model(input)) x = Dense(1000, activation='relu')(x) x = BatchNormalization()(x) x = Dropout(0.5)(x) x = Dense(1000, activation='relu')(x) x = BatchNormalization()(x) x = Dropout(0.5)(x) x = Dense(14, activation='linear')(x) model = Model(inputs=input, …
15 keras 

4
决策树与KNN
在哪种情况下最好使用决策树,而在其他情况下使用KNN? 为什么在某些情况下使用其中之一?还有其他情况不同吗?(通过查看其功能而不是算法) 有人对此有一些解释或参考吗?

2
在没有特定主题知识的情况下,数据科学作为职业值得追求吗?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为Data Science Stack Exchange 的主题。 5年前关闭。 最近,我与某人进行了交谈,并提到了我对数据分析的兴趣以及我打算学习必要的技能和工具的人。他们向我建议,虽然学习工具和建立技能很棒,但除非我在特定领域具有专门知识,否则这样做毫无意义。 他们的基本结论是,我就像一个拥有大量工具的建筑商,可以建造一些木箱,并且可以建造更好的东西(客舱,橱柜等),但是如果没有特定领域的知识,我永远不会成为建筑商,人们会去找特定的产品。 有没有人找到这个或对此有什么投入?似乎确实如此,人们将不得不学习事物的数据科学方面,然后学习一个新的领域以变得专业化。

2
为什么使用大写字母定义训练和测试数据的变量(在Python中)?
我希望这个问题最适合本网站... 在Python中,通常使用大写字母作为第一个字符来定义类名,例如 class Vehicle: ... 但是,在机器学习领域,通常将训练和测试数据定义为Xand Y-not x和y。例如,我现在正在阅读有关Keras的教程,但是它使用X和Y作为变量: from sklearn import datasets mnist = datasets.load_digits() X = mnist.data Y = mnist.target 为什么将这些定义为大写字母?机器学习领域之间是否存在任何约定(至少在Python中如此),最好使用大写字母来定义这些变量? 还是人们在机器学习中区分大小写变量? 实际上,同一教程稍后将区分这些变量,如下所示: from sklearn.cross_validation import train_test_split train_X, test_X, train_y, test_y = train_test_split(X, Y, train_size=0.7, random_state=0)
15 python  dataset 

4
不同的测试集和训练集分布
我正在参加一个数据科学比赛,其测试集的分布与训练集的分布不同。我想从与测试集非常相似的训练集中对观察结果进行子采样。 我怎样才能做到这一点?

2
SelectKBest如何工作?
我正在看本教程:https : //www.dataquest.io/mission/75/improving-your-submission 在第8节中,找到最佳功能,它显示了以下代码。 import numpy as np from sklearn.feature_selection import SelectKBest, f_classif predictors = ["Pclass", "Sex", "Age", "SibSp", "Parch", "Fare", "Embarked", "FamilySize", "Title", "FamilyId"] # Perform feature selection selector = SelectKBest(f_classif, k=5) selector.fit(titanic[predictors], titanic["Survived"]) # Get the raw p-values for each feature, and transform from p-values into scores scores …

3
文本也可能使用GAN(生成对抗网络)吗?
GAN-生成对抗网络-是否仅适用于图像,或者也可以用于文本? 例如,训练网络以从摘要生成有意义的文本。 UPD-GAN发明者Ian Goodfellow的报价。 GAN尚未应用于NLP,因为GAN仅针对实值数据定义。(2016)来源 这不是一个根本上有缺陷的想法。应该至少可以执行以下操作之一...(2017)来源
14 gan 

1
PyTorch与Tensorflow渴望
谷歌最近在tensorflow的每晚构建中加入了其Eager模式,这是访问tensorflow计算功能的必要API。 张量流渴望与PyTorch相比如何? 可能影响比较的一些方面可能是: 渴望的优缺点来自其静态图的遗留(例如,节点中的名称)。 它们中任何一个都没有的内在限制。 其中之一需要改进的领域(例如,功能完整性,计算优化)。 生态系统差异(例如张量板?)。 注意1:Yaroslav Bulatov撰写了有关eager不错功能的评论。 注意2:在上一个问题中,我要求比较PyTorch和Tensorflow Fold。当时,在我看来Fold可以面对PyTorch,这要归功于Google的支持。我非常错:最终,Google本身放弃了Fold而转而使用Eager。我知道这是由于普通tensorflow API的固有限制导致Fold不太友好,从而限制了它的采用。

4
我们可以生成与生成性对抗性网络巨大的数据集
我正在处理一个找不到足够的数据集(图像)以馈入我的深度神经网络进行训练的问题。 斯科特·里德(Scott Reed)等人发表的论文《将对抗性文本转化为图像合成》使我深受启发。在生成对抗网络上。 我很好奇,我是否可以将可用的小型数据集用作GAN模型的输入,并生成更大的数据集来处理更深的网络模型? 足够好吗?

1
是否需要分层抽样(随机森林,Python)?
我使用Python在不平衡的数据集上运行随机森林模型(目标变量是一个二进制类)。在拆分训练和测试数据集时,我很难避免是否使用分层抽样(如所示的代码)。到目前为止,我在项目中观察到分层案例将导致更高的模型性能。但是我认为,如果我将使用我的模型来预测新案例,那么新案例的目标类与当前数据集的分布很可能会有所不同。因此,我倾向于放宽此限制,并使用未分层的拆分。任何人都可以建议以澄清这一点吗? train,test=train_test_split(myDataset, test_size=0.25, stratify=y)


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.