Questions tagged «neural-networks»

人工神经网络(ANN)是一类广泛的基于生物神经网络的计算模型。它们包括前馈NN(包括“深度” NN),卷积NN,递归NN等。

4
R中的离散时间事件历史(生存)模型
我正在尝试在R中拟合离散时间模型,但不确定如何执行。 我读过您可以将因变量组织在不同的行中,每个时间观察行一个,并将该glm函数与logit或cloglog链接一起使用。从这个意义上讲,我有三列:ID,Event(在每个时间范围内为1或0)和Time Elapsed(自观察开始以来)以及其他协变量。 如何编写适合模型的代码?哪个因变量?我想我可以将其Event用作因变量,并将其包括Time Elapsed在协变量中。但是,会发生什么ID呢?我需要吗? 谢谢。
10 r  survival  pca  sas  matlab  neural-networks  r  logistic  spatial  spatial-interaction-model  r  time-series  econometrics  var  statistical-significance  t-test  cross-validation  sample-size  r  regression  optimization  least-squares  constrained-regression  nonparametric  ordinal-data  wilcoxon-signed-rank  references  neural-networks  jags  bugs  hierarchical-bayesian  gaussian-mixture  r  regression  svm  predictive-models  libsvm  scikit-learn  probability  self-study  stata  sample-size  spss  wilcoxon-mann-whitney  survey  ordinal-data  likert  group-differences  r  regression  anova  mathematical-statistics  normal-distribution  random-generation  truncation  repeated-measures  variance  variability  distributions  random-generation  uniform  regression  r  generalized-linear-model  goodness-of-fit  data-visualization  r  time-series  arima  autoregressive  confidence-interval  r  time-series  arima  autocorrelation  seasonality  hypothesis-testing  bayesian  frequentist  uninformative-prior  correlation  matlab  cross-correlation 

1
R线性回归分类变量“隐藏”值
这只是我多次遇到的示例,因此我没有任何示例数据。在R中运行线性回归模型: a.lm = lm(Y ~ x1 + x2) x1是一个连续变量。x2是分类的,具有三个值,例如“低”,“中”和“高”。但是,R给出的输出将类似于: summary(a.lm) Estimate Std. Error t value Pr(>|t|) (Intercept) 0.521 0.20 1.446 0.19 x1 -0.61 0.11 1.451 0.17 x2Low -0.78 0.22 -2.34 0.005 x2Medium -0.56 0.45 -2.34 0.005 我知道R在这种因素(x2是一个因素)上引入了某种虚拟编码。我只是想知道,如何解释x2“高”值?例如,x2在此处给出的示例中,“ High” 对响应变量有什么影响? 我在其他地方(例如这里)已经看到了这样的示例,但是还没有找到我能理解的解释。
10 r  regression  categorical-data  regression-coefficients  categorical-encoding  machine-learning  random-forest  anova  spss  r  self-study  bootstrap  monte-carlo  r  multiple-regression  partitioning  neural-networks  normalization  machine-learning  svm  kernel-trick  self-study  survival  cox-model  repeated-measures  survey  likert  correlation  variance  sampling  meta-analysis  anova  independence  sample  assumptions  bayesian  covariance  r  regression  time-series  mathematical-statistics  graphical-model  machine-learning  linear-model  kernel-trick  linear-algebra  self-study  moments  function  correlation  spss  probability  confidence-interval  sampling  mean  population  r  generalized-linear-model  prediction  offset  data-visualization  clustering  sas  cart  binning  sas  logistic  causality  regression  self-study  standard-error  r  distributions  r  regression  time-series  multiple-regression  python  chi-squared  independence  sample  clustering  data-mining  rapidminer  probability  stochastic-processes  clustering  binary-data  dimensionality-reduction  svd  correspondence-analysis  data-visualization  excel  c#  hypothesis-testing  econometrics  survey  rating  composite  regression  least-squares  mcmc  markov-process  kullback-leibler  convergence  predictive-models  r  regression  anova  confidence-interval  survival  cox-model  hazard  normal-distribution  autoregressive  mixed-model  r  mixed-model  sas  hypothesis-testing  mediation  interaction 

1
如果在调整超参数时评估验证数据的模型性能,为什么有关验证数据的信息会泄漏?
在FrançoisChollet的Python深度学习中,它说: 结果,即使从未对模型进行过直接训练,根据其在验证集上的性能来调整模型的配置也可能很快导致对验证集的过度拟合。 这种现象的核心是信息泄漏的概念。每次根据模型在验证集上的性能来调整模型的超参数时,一些有关验证数据的信息都会泄漏到模型中。如果仅对一个参数执行一次此操作,那么将泄漏很少的信息,并且您的验证集将保持可靠以评估模型。但是,如果您重复多次(运行一个实验,对验证集进行评估并最终修改模型),那么您将把与验证集有关的越来越多的信息泄漏到模型中。 如果在调整超参数时评估验证数据的模型性能,为什么有关验证数据的信息会泄漏?


1
我的神经网络甚至无法学习欧几里得距离
因此,我试图自学神经网络(用于回归应用,而不是对猫的图片进行分类)。 我的第一个实验是训练网络以实现FIR滤波器和离散傅立叶变换(在“之前”和“之后”信号上进行训练),因为这两个都是线性操作,可以由没有激活功能的单层实现。 两者都很好。 因此,我想看看是否可以添加abs()并使其学习幅度谱。首先,我考虑了在隐藏层中需要多少个节点,并意识到3个ReLU足以满足的粗略近似abs(x+jy) = sqrt(x² + y²),因此我自己对孤复数(2个输入→3个ReLU节点隐藏层→1个)进行了该操作的测试。输出)。有时它起作用: 但是在我尝试的大多数时候,它陷入了局部最小值,无法找到正确的形状: 我已经在Keras中尝试了所有优化器和ReLU变体,但是它们并没有太大的区别。我还能做些其他事情来使像这样的简单网络可靠地融合吗?还是我只是以错误的态度来解决这个问题,而您应该在问题上抛出不必要的更多节点,如果其中一半死亡,这没什么大不了的?

2
在哪里可以找到用于转移学习的预训练模型[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 2年前关闭。 我是机器学习领域的新手,但是我想尝试使用Keras实现简单的分类算法。不幸的是,我的数据很少,因此我想尝试将转移学习应用于该问题。但是,我在网上找不到任何东西,因此我想了解哪些是寻找预训练神经网络的最佳场所。您对此有何建议?哪个网站最适合于了解如何启动机器学习项目?

1
哪种深度学习模型可以对不互斥的类别进行分类
示例:我的职位描述中有一句话:“英国Java高级工程师”。 我想使用深度学习模型将其预测为2类:English 和IT jobs。如果我使用传统的分类模型,则只能预测softmax最后一层具有功能的标签。因此,我可以使用2个模型神经网络来预测两个类别的“是” /“否”,但是如果我们有更多类别,那就太贵了。那么,我们是否有任何深度学习或机器学习模型可以同时预测2个或更多类别? “编辑”:使用传统方法使用3个标签,它将由[1,0,0]编码,但在我的情况下,它将由[1,1,0]或[1,1,1]编码 示例:如果我们有3个标签,并且所有这些标签都适合一个句子。因此,如果softmax函数的输出为[0.45,0.35,0.2],我们应该将其分类为3个标签或2个标签,或者可以是一个?我们这样做的主要问题是:分类为1个,2个或3个标签的最佳阈值是多少?
9 machine-learning  deep-learning  natural-language  tensorflow  sampling  distance  non-independent  application  regression  machine-learning  logistic  mixed-model  control-group  crossover  r  multivariate-analysis  ecology  procrustes-analysis  vegan  regression  hypothesis-testing  interpretation  chi-squared  bootstrap  r  bioinformatics  bayesian  exponential  beta-distribution  bernoulli-distribution  conjugate-prior  distributions  bayesian  prior  beta-distribution  covariance  naive-bayes  smoothing  laplace-smoothing  distributions  data-visualization  regression  probit  penalized  estimation  unbiased-estimator  fisher-information  unbalanced-classes  bayesian  model-selection  aic  multiple-regression  cross-validation  regression-coefficients  nonlinear-regression  standardization  naive-bayes  trend  machine-learning  clustering  unsupervised-learning  wilcoxon-mann-whitney  z-score  econometrics  generalized-moments  method-of-moments  machine-learning  conv-neural-network  image-processing  ocr  machine-learning  neural-networks  conv-neural-network  tensorflow  r  logistic  scoring-rules  probability  self-study  pdf  cdf  classification  svm  resampling  forecasting  rms  volatility-forecasting  diebold-mariano  neural-networks  prediction-interval  uncertainty 

4
如何解释考克斯风险模型的生存曲线?
您如何从考克斯比例风险模型解释生存曲线? 在这个玩具示例中,假设我们对数据age变量有一个cox比例风险模型kidney,并生成了生存曲线。 library(survival) fit <- coxph(Surv(time, status)~age, data=kidney) plot(conf.int="none", survfit(fit)) grid() 例如,在时间,哪个说法是正确的?还是两者都不对?200200200 陈述1:我们将剩下20%的主题(例如,如果我们有人,那么到200天时,我们应该剩下200个左右), 100010001000200200200200200200 陈述2:对于一个给定的人,他/她有200 20%20%20\%机会在200天生存200200200。 我的尝试:我不认为这两个陈述是相同的(如果我错了,请纠正我),因为我们没有iid假设(所有人的生存时间不是独立地来自一个分布)。在这里我的问题类似于逻辑回归,每个人的危险率取决于该人的。βTxβTx\beta^Tx

4
训练神经网络进行回归总是可以预测均值
我正在训练一个简单的卷积神经网络进行回归,其中的任务是预测图像中盒子的(x,y)位置,例如: 网络的输出有两个节点,一个用于x,一个用于y。网络的其余部分是标准的卷积神经网络。损失是盒子的预测位置和地面真实位置之间的标准均方误差。我正在训练10000张这些图像,并在2000年进行验证。 我的问题是,即使经过大量培训,损失也不会真正减少。观察网络的输出后,我注意到对于两个输出节点,网络都倾向于输出接近零的值。这样,盒子位置的预测始终是图像的中心。预测中存在一些偏差,但始终在零附近。下面显示了损失: 我已经运行了比此图所示更多的时期,并且损失仍然从未减少。有趣的是,损失实际上增加了一点。 因此,似乎网络只是在预测训练数据的平均值,而不是学习合适的数据。关于这可能是什么的任何想法?我使用Adam作为优化器,初始学习率为0.01,并将relus作为激活 如果您对我的某些代码(Keras)感兴趣,请参见以下代码: # Create the model model = Sequential() model.add(Convolution2D(32, 5, 5, border_mode='same', subsample=(2, 2), activation='relu', input_shape=(3, image_width, image_height))) model.add(Convolution2D(64, 5, 5, border_mode='same', subsample=(2, 2), activation='relu')) model.add(Convolution2D(128, 5, 5, border_mode='same', subsample=(2, 2), activation='relu')) model.add(Flatten()) model.add(Dense(100, activation='relu')) model.add(Dense(2, activation='linear')) # Compile the model adam = Adam(lr=0.01, beta_1=0.9, …

1
了解LSTM拓扑
和其他许多人一样,我发现这里和这里的资源对于理解LSTM单元非常有用。我确信我了解值是如何流动和更新的,并且我也有足够的信心添加上述“窥孔连接”等。 在我的示例中,每个时间步长都有一个输入向量length i和一个输出向量length in o,其中o < i。 这两页都没有真正涵盖的是如何安排和培训这些内容。 我有两个问题: 在我的训练数据中,我有很多输入/输出向量对,它们对应许多很多时间单位。假设我用所有数据训练LSTM。然后可以通过它运行任意长度的输入集吗?我的意思是,如果我有整个2015年和2016年的培训数据,那么我可以通过网络运行2017年的数据吗?还是从2017年到2020年? 根据我所读的内容,感觉每个时间单位都有一个LSTM单元,因此,如果我有很多时间单位,那么我会有许多链接的LSTM单元。由于链的长度取决于我要通过网络运行的数据的长度,并且大概是任意的,所以我看不到如何训练它,除非我只训练一个LSTM单元,然后将其复制为一个数字次。因此,似乎我将训练一个LSTM单元,然后n将它们链接在一起以获得给定长度的输入矢量列表n?即使单个LSTM单元包含许多元素和功能,也感觉不足以在这么小的事物中捕获这么多的信息吗? 谢谢。我还有其他(相对较快)可以消耗的资源可以帮助我理解实施细节吗?上面的2个链接给出了正在发生的事情的高级概述,但未能捕获这些更详细的信息。

1
skipgram word2vec的渐变
我正在研究斯坦福大学NLP深度学习班的书面作业问题,网址为http://cs224d.stanford.edu/assignment1/assignment1_soln 我试图了解3a的答案,他们正在寻找中心词向量的导数。 假设你被给予预测的字向量对应于中心字Ç为skipgram,和字预测与在word2vec模型中发现的功能SOFTMAX制成。vcvcv_{c} y^o=p(o|c)=exp(uTovc)∑Ww=1exp(uTwvc)y^o=p(o|c)=exp(uoTvc)∑w=1Wexp(uwTvc)\hat{y}^{o} = p(o | c) = \frac {exp(u_{o}^{T} v_{c})}{\sum_{w=1}^{W}exp(u_{w}^{T} v_{c})} 其中w表示第w个单词,而(w = 1,...,W)是词汇表中所有单词的“输出”单词向量。假定将交叉熵成本应用于此预测,并且单词o是预期单词。uwuwu_w 其中是所有的输出向量的矩阵,并让ÿ是词的SOFTMAX预测的列向量,并且ÿ是独热标签,该标签也是列向量。U=[u1,u2,⋅⋅⋅,uW]U=[u1,u2,···,uW]U = [u_1,u_2, · · · ,u_W ]y^y^\hat{y} 其中交叉熵是CE(y,y^)=−∑iyilog(y^i)CE(y,y^)=−∑iyilog⁡(y^i)CE(y, \hat{y}) = − \sum_iy_i\log(\hat{y}_i) 所以对于梯度为中心矢量答案是∂J∂vc=UT(y^−y).∂J∂vc=UT(y^−y).\frac{∂J}{∂v_c}= U^T(\hat{y} − y). 有人可以告诉我实现此目标的步骤吗?我一直用这个问题作为参考在word2vec交叉熵损失的衍生,但我特别想知道表示。UT(y^−y).UT(y^−y).U^T(\hat{y} − y).

3
如何在scikit-learn的多层感知器中将Softmax用作激活功能?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为交叉验证的主题。 11个月前关闭。 我需要在scikit中将Softmax激活功能应用于多层Perceptron。关于神经网络模型(受监督)的scikit 文档指出:“ MLPClassifier通过将Softmax用作输出函数来支持多类分类。” 问题是如何应用功能? 在下面的代码片段中,当我在激活参数下添加Softmax时,它不接受。 MLPClassifier(activation='Softmax', alpha=1e-05, batch_size='auto', beta_1=0.9, beta_2=0.999, early_stopping=False, epsilon=1e-08, hidden_layer_sizes=(15,), learning_rate='constant', learning_rate_init=0.001, max_iter=200, momentum=0.9, nesterovs_momentum=True, power_t=0.5, random_state=1, shuffle=True, solver='lbfgs', tol=0.0001, validation_fraction=0.1, verbose=False, warm_start=False) 错误代码为: ValueError:不支持激活“ Softmax”。支持的激活是(“身份”,“物流”,“ tanh”,“ relu”)。 有没有办法在scikit-learn中将Softmax激活函数应用于多类分类?

1
每个动作只有一个输出单元时,使用神经网络进行Q学习的效率如何?
背景: 我在强化学习任务中使用了神经网络Q值近似。该方法与该问题中描述的方法完全相同,但是问题本身不同。 在这种方法中,输出数量就是我们可以采取的行动数量。简单来说,算法如下:执行动作A,探索奖励,要求NN预测所有可能动作的Q值,选择最大Q值,将特定动作A的Q计算为R + max(new_state_Q)。在预测的Q值上拟合模型,只有其中一个被代替R + max(new_state_Q)。 问题:如果产出数量很大,这种方法的效率如何? 尝试:假设我们可以采取10个动作。在每个步骤中,我们都要求模型预测10个值,而在模型的早期,这种预测就是一团糟。然后,我们修改输出的1个值,并使模型适合这些值。 对于这种方法的优缺点,我有两种相反的想法,无法确定哪种方法是正确的: 从一个角度来看,我们在随机数据上训练每个神经元9次,而在接近实际值的数据上仅训练一次。如果NN在状态S下为动作A预测5,但实际值为-100,则将使NN与值5匹配9次,然后与值-100匹配一次。听起来很疯狂。 从其他角度来看,神经网络的学习是作为错误的反向传播实现的,因此,当模型预测5且我们在5上对其进行训练时,由于错误为0,因此不会学习任何新知识。权重不受影响。并且只有当我们将计算-100并将其拟合到模型中时,它才会进行权重计算。 哪个选项正确?也许还有其他我没有考虑的东西? 更新: “有效率”是指与一种输出(预期回报)的方法进行比较。当然,在这种情况下,动作将是输入的一部分。因此,方法1根据某种状态对所有动作进行预测,方法2对某种状态下采取的特定动作进行预测。

1
神经网络是否使用有效的编码?
我的问题与有效编码假设之间的关系有关,该假设在Wikipedia页面上概述了有效编码与神经网络学习算法之间的关系。 有效编码假设和神经网络之间有什么关系? 是否有任何有效编码假设明确启发的神经网络模型? 或者说所有神经网络学习算法至少隐式地基于有效编码会更公平吗?

1
深度学习需要多少数据?
我正在学习深度学习(特别是CNN),以及它通常如何需要大量数据来防止过拟合。但是,我还被告知,模型具有更高的容量/更多的参数,需要更多的数据来防止过拟合。因此,我的问题是:为什么您不能只减少深度神经网络中每层的层数/节点数,而使其仅处理少量数据呢?在“插入”之前,神经网络是否需要基本的“最小参数数量”?在一定数量的层以下,神经网络的性能似乎不如手工编码的功能好。

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.