Questions tagged «machine-learning»

机器学习算法可建立训练数据模型。术语“机器学习”的定义模糊不清;它包括所谓的统计学习,强化学习,无监督学习等。始终添加更多特定标签。

4
直线激活函数如何解决神经网络中消失的梯度问题?
我发现整流线性单位(ReLU)在许多地方被赞誉为神经网络消失梯度问题的一种解决方案。即,使用max(0,x)作为激活函数。当激活为正时,很明显它比S型激活函数好,因为它的推导始终为1,而不是大x的任意小值。另一方面,当x小于0时,导数恰好为0。在最坏的情况下,当一个单位从未被激活时,该单位的权重也将不再变化,并且该单位将永远无用-这似乎甚至比消失得很小的渐变还要差。学习算法在使用ReLU时如何处理该问题?

2
随机森林中可变重要性的度量
我一直在尝试使用随机森林进行回归,并且很难准确地确定出重要性的两个指标的含义以及如何解释它们。 该importance()函数为每个变量提供两个值:%IncMSE和IncNodePurity。这两个值是否有简单的解释? 对于IncNodePurity特别是,这仅仅是一个量的去除变量继RSS增加?

7
神经网络中的数据标准化和标准化
我正在尝试使用神经网络(ANN)预测复杂系统的结果。结果(相关)值的范围在0到10,000之间。不同的输入变量具有不同的范围。所有变量都具有大致正态分布。 我考虑在训练之前缩放数据的其他选项。一种选择是通过使用每个变量的均值和标准偏差值独立地计算累积分布函数,将输入(独立)变量和输出(独立)变量缩放为[0,1] 。这种方法的问题在于,如果我在输出端使用S形激活函数,则极有可能会错过极端数据,尤其是那些在训练集中看不到的数据 另一种选择是使用z得分。在那种情况下,我没有极端的数据问题。但是,我仅限于输出的线性激活函数。 ANN还在使用哪些其他公认的规范化技术?我试图寻找有关此主题的评论,但未找到任何有用的信息。

5
LDA与Word2Vec
我试图了解潜在Dirichlet分配和word2vec之间的相似度,用于计算单词相似度。 据我了解,LDA将单词映射到潜在主题的概率向量,而word2vec 将单词映射到实数的向量(与逐点互信息的奇异值分解有关,请参阅O. Levy,Y。Goldberg,“神经词嵌入作为隐式矩阵分解”;另请参见word2vec如何工作?)。 我对理论关系(可以被认为是一种概括或另一种变化)和实践(当使用一种而不是另一种)都感兴趣。 有关: 计算文档之间距离的一些标准方法是什么?-DataScience.SE

6
为什么我会得到100%准确性的决策树?
我的决策树准确性达到100%。我究竟做错了什么? 这是我的代码: import pandas as pd import json import numpy as np import sklearn import matplotlib.pyplot as plt data = np.loadtxt("/Users/Nadjla/Downloads/allInteractionsnum.csv", delimiter=',') x = data[0:14] y = data[-1] from sklearn.cross_validation import train_test_split x_train = x[0:2635] x_test = x[0:658] y_train = y[0:2635] y_test = y[0:658] from sklearn.tree import DecisionTreeClassifier tree = …

3
随机森林和极端随机树之间的区别
我了解到,随机森林树和极随机树在意义上是不同的,即随机森林中的树的分割是确定性的,而对于极随机树则它们是随机的(更准确地说,下一个分割是最佳分割在当前树的所选变量中的随机均匀拆分中)。但是我不完全理解这种不同拆分在各种情况下的影响。 他们如何比较偏差/方差? 如果存在不相关的变量,它们如何比较? 在存在相关变量的情况下如何比较?



3
折交叉验证估计的方差为
TL,DR:看来,与经常重复的建议相反,采用留一法交叉验证(LOO-CV),即KKK倍CV,其中KKK(折数)等于NNN(数训练观察值)-得出泛化误差的估计值,该估计值对于任何 K都是最小变量,而不是最大变量,假设模型/算法,数据集或两者都有一定的稳定性条件(我不确定哪个是正确的,因为我不太了解这种稳定性条件。KKK 有人可以清楚地说明这个稳定条件到底是什么吗? 线性回归就是这样一种“稳定”算法,这是否真的意味着在这种情况下,就泛化误差估计的偏差和方差而言,LOO-CV严格来说是CV的最佳选择? 传统观点认为,在K倍CV中选择KKK时要遵循偏差方差的折衷,这样较低的K值(逼近2)会导致对泛化误差的估计,这些偏差具有更悲观的偏差,但方差较小,而值较高(接近N)的K导致估计的偏差较小,但方差更大。关于这种随着K增大而增加的方差现象的常规解释可能在《统计学习的要素》(第7.10.1节)中最突出地给出:KKKKKKKKKNNNKKK 在K = N的情况下,交叉验证估计器对于真实的(预期)预测误差几乎是无偏的,但是由于N个“训练集”彼此非常相似,因此交叉验证估计器可能具有较高的方差。 这意味着NNN验证错误之间的相关性更高,因此它们的总和更具可变性。在本网站(例如,这里,这里,这里,这里,这里,这里和这里)以及各种博客等上的许多答案中都重复了这种推理方法。但是实际上,从来没有给出详细的分析,而是只是分析的直觉或简要草图。 但是,人们可以找到矛盾的陈述,通常是出于某种我不太了解的“稳定”条件。例如,这个矛盾的答案引用了2015年一篇论文的几段内容,其中包括:“对于不稳定性低的模型/建模程序,LOO通常具有最小的可变性”(强调后加)。本文(第5.2节)似乎同意,只要模型/算法“稳定” ,LOO就代表的最小变量选择。对此问题甚至采取另一种立场(推论2),该论文说:“ k倍交叉验证的方差不取决于kKKKkkkkkk”,再次引用了某种“稳定性”条件。 关于为什么LOO可能是变化最大的折CV的解释很直观,但是有一个直觉。均方误差(MSE)的最终CV估算值是每一倍MSE估算值的平均值。因此,当K增加到N时,CV估计值是随机变量数量增加的平均值。而且我们知道,均值的方差会随着变量数量的平均化而减小。因此,为了使LOO成为变化最大的K倍CV,必须确实如此,由于MSE估计之间的相关性增加而导致的方差增加要大于因平均获得的折叠次数更多而导致的方差减少。KKKKKKNNNKKK。事实并非如此,这一点也不明显。 考虑到所有这些问题后,我变得非常困惑,我决定对线性回归案例进行一些模拟。我用 = 50和3个不相关的预测变量模拟了10,000个数据集,每次使用K = 2、5、10 或50 = N的K倍CV 估计泛化误差。R代码在这里。以下是所有10,000个数据集(以MSE单位)的CV估计值的均值和方差:NNNKKKKKKNNN k = 2 k = 5 k = 10 k = n = 50 mean 1.187 1.108 1.094 1.087 variance 0.094 0.058 0.053 0.051 这些结果显示了预期的模式,即较高的值导致较小的悲观偏见,但似乎也证实了在LOO情况下CV估计的方差最低,而不是最高。KKK 因此,线性回归似乎是上述论文中提到的“稳定”情况之一,其中增加与CV估计中的减少而不是增加的方差有关。但是我仍然不明白的是:KKK “稳定”条件到底是什么?它在某种程度上适用于模型/算法,数据集,或两者都适用? 有没有一种直观的方式来考虑这种稳定性? …

6
使用许多分类变量改善分类
我正在使用一个包含200,000多个样本和每个样本约50个特征的数据集:10个连续变量,另外约40个是类别变量(国家,语言,科学领域等)。对于这些分类变量,您有150个不同的国家/地区,50种语言,50个科学领域等。 到目前为止,我的方法是: 对于具有许多可能值的每个类别变量,仅采用具有超过10000个样本的值作为该变量。这将减少到5-10个类别,而不是150个类别。 为每个类别建立虚拟变量(如果有10个国家,则为每个样本添加大小为10的二元向量)。 用此数据输入随机森林分类器(交叉验证参数等)。 目前,使用这种方法,我只能获得65%的准确度,并且我认为可以做得更多。尤其是我对1)感到不满意,因为我觉得我不应该根据他们拥有的样本数量随意删除“最不相关的值”,因为这些表示较少的值可能更具区分性。另一方面,我的RAM无法通过保留所有可能的值向数据添加500列* 200000行。 您有什么建议要应对这么多的分类变量吗?

4
扎实的数学知识是掌握ML的必备条件吗?
我开始想提升自己的技能,而我一直对机器学习着迷。但是,六年前,我决定继续攻读计算机科学,而没有追求这一目标,而不是追求这一目标。 我从事软件和应用程序的开发已有大约8至10年的时间,因此我拥有良好的处理能力,但似乎无法理解机器学习/概率/统计的数学方面。 我开始看学习材料,在第一页上可能包含使我困惑并立即在学习中设置障碍的内容。 扎实的数学知识是掌握ML的必备条件吗?在继续学习ML之前,我应该尝试填补数学的空白吗?在没有任何计算机科学背景的情况下,自我学习真的可以只对开发人员有效吗? 相关问题: 在《统计学习要素》之前预定阅读吗?

3
机器学习方法在StackExchange网站中的应用
这个学期我有一个机器学习课程,教授要求我们找到一个现实世界的问题,并通过课堂上介绍的一种机器学习方法来解决它,例如: 决策树 人工神经网络 支持向量机 基于实例的学习(kNN,LWL) 贝叶斯网络 强化学习 我是stackoverflow和stackexchange的忠实拥护者之一,并且知道这些网站的数据库转储是向公众提供的,因为它们很棒!我希望我能找到一个很好的关于这些数据库的机器学习挑战并解决它。 我的想法 我想到的一个主意是根据问题正文中输入的单词预测问题的标签。我认为贝叶斯网络是学习问题标签的正确工具,但需要更多研究。无论如何,在学习阶段之后,当用户完成输入问题时,应该向他建议一些标签。 请告诉我: 我想向经验丰富的stats社区询问ML两个问题: 您是否认为标签建议至少是一个有机会解决的问题?您对此有何建议?我有点担心,因为stackexchange尚未实现此类功能。 您是否对基于stackexchange数据库的ML项目有其他/更好的主意?我发现很难从stackexchange数据库中学习一些东西。 关于数据库错误的考虑: 我想指出的是,尽管数据库很大并且有很多实例,但它们并不是完美的,并且容易出错。显而易见的是,用户年龄不可靠。甚至选择的问题标签也不是100%正确。无论如何,我们在选择问题时应考虑数据正确性的百分比。 关于问题本身的考虑:我的项目不应与之有关data-mining。它仅应是ML方法在现实世界中的应用。

3
“ epoch”,“ batch”和“ minibatch”之间有什么区别?
据我所知,当采用随机梯度下降作为学习算法时,有人将“ epoch”用于完整数据集,将“ batch”用于单个更新步骤中使用的数据,而另一人则分别使用“ batch”和“ minibatch”,并且其他人使用“时代”和“小批量”。这在讨论时带来了很多混乱。 那么正确的说法是什么?还是它们只是可以接受的方言?

5
如何处理“自我挫败”的预测模型?
我正在观看一家大型零售商的ML专家的演讲,他们在那里开发了一种模型来预测缺货事件。 让我们假设一下,随着时间的流逝,他们的模型变得非常精确,这是否会以某种方式“自欺欺人”?也就是说,如果模型确实运行良好,那么他们将能够预见缺货事件并避免它们,最终达到一点点,甚至根本没有缺货事件。但是,如果是这样的话,将没有足够的历史数据来运行他们的模型,或者他们的模型出轨,因为过去用来指示缺货事件的因果关系不再起作用。 处理这种情况有哪些策略? 此外,可以预见相反的情况:例如,推荐系统可能会变成“自我实现的预言”,即使推荐项系统的输出确实驱动了这两个项目,但它们对的销量却有所增长有关。 在我看来,这两者都是某种反馈回路的结果,该回路发生在预测变量的输出与基于该反馈变量采取的操作之间。如何处理这种情况?

4
什么是计算机视觉和卷积神经网络中的翻译不变性?
我没有计算机视觉背景,但是当我阅读一些图像处理和卷积神经网络相关的文章和论文时,经常遇到术语“ translation invariance或” translation invariant。 还是我读了很多卷积运算提供的信息translation invariance?!这是什么意思? 我本人总是将其翻译成自己的意思,好像这意味着如果我们以任何形状更改图像,则图像的实际概念不会改变。 例如,如果我旋转一个可以说的树的图像,那么无论我对那张照片做什么,它又都是一棵树。 而且我本人认为,可能发生在图像上的所有操作并以某种方式(裁剪,调整大小,灰度,着色等)进行转换都是这种方式。我不知道这是否是真的,所以如果有人可以向我解释这一点,我将不胜感激。

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.