Questions tagged «conv-neural-network»

卷积神经网络是一种神经网络,其中只有层之间可能存在的连接的子集存在才能创建重叠区域。它们通常用于视觉任务。

5
如何在机器学习中处理分层/嵌套数据
我将用一个例子来解释我的问题。假设您要根据以下属性预测个人的收入:{年龄,性别,国家/地区,城市}。你有一个像这样的训练数据集 train <- data.frame(CountryID=c(1,1,1,1, 2,2,2,2, 3,3,3,3), RegionID=c(1,1,1,2, 3,3,4,4, 5,5,5,5), CityID=c(1,1,2,3, 4,5,6,6, 7,7,7,8), Age=c(23,48,62,63, 25,41,45,19, 37,41,31,50), Gender=factor(c("M","F","M","F", "M","F","M","F", "F","F","F","M")), Income=c(31,42,71,65, 50,51,101,38, 47,50,55,23)) train CountryID RegionID CityID Age Gender Income 1 1 1 1 23 M 31 2 1 1 1 48 F 42 3 1 1 2 62 M 71 4 …
29 regression  machine-learning  multilevel-analysis  correlation  dataset  spatial  paired-comparisons  cross-correlation  clustering  aic  bic  dependent-variable  k-means  mean  standard-error  measurement-error  errors-in-variables  regression  multiple-regression  pca  linear-model  dimensionality-reduction  machine-learning  neural-networks  deep-learning  conv-neural-network  computer-vision  clustering  spss  r  weighted-data  wilcoxon-signed-rank  bayesian  hierarchical-bayesian  bugs  stan  distributions  categorical-data  variance  ecology  r  survival  regression  r-squared  descriptive-statistics  cross-section  maximum-likelihood  factor-analysis  likert  r  multiple-imputation  propensity-scores  distributions  t-test  logit  probit  z-test  confidence-interval  poisson-distribution  deep-learning  conv-neural-network  residual-networks  r  survey  wilcoxon-mann-whitney  ranking  kruskal-wallis  bias  loss-functions  frequentist  decision-theory  risk  machine-learning  distributions  normal-distribution  multivariate-analysis  inference  dataset  factor-analysis  survey  multilevel-analysis  clinical-trials 

1
自由度可以是非整数吗?
当我使用GAM时,它给了我剩余的DF为(代码的最后一行)。这意味着什么?超越GAM示例,通常,自由度可以是非整数吗?26.626.626.6 > library(gam) > summary(gam(mpg~lo(wt),data=mtcars)) Call: gam(formula = mpg ~ lo(wt), data = mtcars) Deviance Residuals: Min 1Q Median 3Q Max -4.1470 -1.6217 -0.8971 1.2445 6.0516 (Dispersion Parameter for gaussian family taken to be 6.6717) Null Deviance: 1126.047 on 31 degrees of freedom Residual Deviance: 177.4662 on 26.6 degrees of …
27 r  degrees-of-freedom  gam  machine-learning  pca  lasso  probability  self-study  bootstrap  expected-value  regression  machine-learning  linear-model  probability  simulation  random-generation  machine-learning  distributions  svm  libsvm  classification  pca  multivariate-analysis  feature-selection  archaeology  r  regression  dataset  simulation  r  regression  time-series  forecasting  predictive-models  r  mean  sem  lavaan  machine-learning  regularization  regression  conv-neural-network  convolution  classification  deep-learning  conv-neural-network  regression  categorical-data  econometrics  r  confirmatory-factor  scale-invariance  self-study  unbiased-estimator  mse  regression  residuals  sampling  random-variable  sample  probability  random-variable  convergence  r  survival  weibull  references  autocorrelation  hypothesis-testing  distributions  correlation  regression  statistical-significance  regression-coefficients  univariate  categorical-data  chi-squared  regression  machine-learning  multiple-regression  categorical-data  linear-model  pca  factor-analysis  factor-rotation  classification  scikit-learn  logistic  p-value  regression  panel-data  multilevel-analysis  variance  bootstrap  bias  probability  r  distributions  interquartile  time-series  hypothesis-testing  normal-distribution  normality-assumption  kurtosis  arima  panel-data  stata  clustered-standard-errors  machine-learning  optimization  lasso  multivariate-analysis  ancova  machine-learning  cross-validation 


8
为什么拥有机器学习的原理和数学理论如此重要?
我一直在想,为什么进行原理/理论机器学习如此重要?从个人的角度来看,我可以理解为什么有原则的机器学习如此重要: 人类喜欢了解自己在做什么,我们就会找到美丽和满足感。 从理论上讲,数学很有趣 当存在指导事物设计的原则时,花在随机猜测,怪异的试验和错误上的时间会更少。例如,如果我们了解神经网络是如何工作的,也许我们可以花更多的时间设计它们,而不是现在投入大量的试验和错误。 最近,如果原则很明确,理论也很明确,那么(希望)对系统更加透明。这很好,因为如果我们了解系统在运行什么,那么AI就有很多人大肆宣传的风险会立即消失。 原则似乎是总结世界可能具有的重要结构以及何时使用一种工具而非另一种工具的一种简洁方法。 但是,这些理由是否真的足以证明对机器学习进行深入的理论研究是正确的?对理论的最大批评之一是,由于很难做到,他们通常最终会研究一些非常有限的案例,或者必须提出的假设实质上使结果无用。我想我曾经在Tor的创造者在麻省理工学院的一次演讲中听到过这一点。他听到的对托尔的一些批评只是理论上的争论,但从本质上讲,人们却无法证明有关现实生活中真实场景的事物,因为它们是如此复杂。 在这个拥有如此强大的计算能力和数据的新时代,我们可以使用真实的数据集和测试集来测试我们的模型。我们可以通过经验主义来观察事物是否起作用。如果我们能够获得能够与工程学和经验主义相结合的AGI或系统,那么仍然值得为机器学习追求原理和理论上的证明,尤其是当量化界限如此难以实现时,而直觉和定性答案则更容易实现用数据驱动的方法来实现?这种方法在古典统计学中不可用,这就是为什么我认为理论在那个时代如此重要的原因,因为数学是我们可以确保事物正确的唯一方法,或者它们可以按照我们认为的方式实际起作用。 我个人一直很喜欢并且认为理论和原则性方法很重要。但是,凭借能够尝试使用实际数据进行处理的能力和计算能力,使我感到怀疑的是,理论追求的高努力(可能是低回报)仍然值得吗? 机器学习的理论和原则追求真的那么重要吗?


2
克里热夫斯基的'12 CNN如何在第一层获得253,440个神经元?
在Alex Krizhevsky等人中。利用深层卷积神经网络对图像网络进行分类,它们会枚举每层神经元的数量(请参见下图)。 网络的输入为150,528维,网络其余层的神经元数量为253,440–186,624–64,896–64,896–43,264– 4096–4096–1000。 3D视图 第一层之后所有层的神经元数量是清楚的。一种简单的计算神经元的方法是简单地乘以该层的三个维度(planes X width X height): 第2层: 27x27x128 * 2 = 186,624 第3层: 13x13x192 * 2 = 64,896 等等 但是,看一下第一层: 第1层: 55x55x48 * 2 = 290400 请注意,这与论文中所指定的不 253,440一样! 计算输出大小 计算卷积输出张量的另一种方法是: 如果输入图像是3D张量nInputPlane x height x width,输出图像尺寸将是nOutputPlane x owidth x oheight,其中 owidth = (width - kW) / dW …

2
如何初始化过滤矩阵的元素?
我试图通过编写不依赖库的Python代码(例如Convnet或TensorFlow)来更好地理解卷积神经网络,并且我陷入了如何选择内核矩阵值的文献中。在图像上执行卷积。 我试图在下图显示CNN图层的功能图之间的步骤中了解实现细节。 根据此图: 内核矩阵内核在图像上“步进”,创建特征图,其中每个像素是内核(或滤波器矩阵)的每个权重与输入图像的相应像素值之间的所有按元素乘积的总和。 我的问题是:我们如何初始化内核(或过滤器)矩阵的权重? 在上面的演示中,它们只是1和0,但是我认为这是从图中简化的。 是否在某些预处理步骤中对这些权重进行了训练?还是由用户明确选择?

1
如何解释TensorBoard中TensorFlow给出的直方图?
我最近正在跑步并学习张量流,并得到了一些我不知道如何解释的直方图。通常我将条形的高度视为频率(或相对频率/计数)。但是,没有像通常的直方图那样没有条形的事实以及事物被阴影化的事实使我感到困惑。似乎一次也有很多行/高度? 是否有人知道如何解释以下图表(也许提供了很好的建议,它们通常可以帮助阅读张量流中的直方图): 也许还有其他值得讨论的事情,如果原始变量是矢量,矩阵或张量,那么张量流实际上显示了什么,就像每个坐标的直方图一样?另外,也许引用如何获取这些信息以使人们自给自足会很好,因为我现在在文档上很难找到有用的东西。也许一些教程示例等?也许一些关于操纵它们的建议也会很好。 作为参考,这里摘录了给出此代码的代码: (X_train, Y_train, X_cv, Y_cv, X_test, Y_test) = data_lib.get_data_from_file(file_name='./f_1d_cos_no_noise_data.npz') (N_train,D) = X_train.shape D1 = 24 (N_test,D_out) = Y_test.shape W1 = tf.Variable( tf.truncated_normal([D,D1], mean=0.0, stddev=std), name='W1') # (D x D1) S1 = tf.Variable( tf.constant(100.0, shape=[]), name='S1') # (1 x 1) C1 = tf.Variable( tf.truncated_normal([D1,1], mean=0.0, stddev=0.1), name='C1' ) …

1
通过ResNet跳过连接进行梯度反向传播
我很好奇如何使用ResNet模块/跳过连接通过神经网络向后传播梯度。我已经看到了关于ResNet的几个问题(例如,具有跳过层连接的神经网络),但是这个问题专门询问了训练过程中梯度的反向传播。 基本架构在这里: 我读了这篇论文《残差网络的图像识别研究》,在第2部分中,他们讨论了ResNet的目标之一是如何为梯度提供更短/更清晰的路径,使其反向传播至基础层。 谁能解释梯度如何流过这种类型的网络?我不太了解加法运算以及加法后缺少参数化图层如何实现更好的梯度传播。它是否与流经加法运算符时渐变不发生变化以及是否以无乘法方式重新分布有关? 此外,我可以理解,如果梯度不需要流过权重层,那么如何减轻消失的梯度问题,但是如果没有梯度流经权重,那么在向后传递之后如何更新它们?

3
Relu vs Sigmoid vs Softmax作为隐藏层神经元
我正在使用Tensorflow制作的只有一个隐藏层的简单神经网络,然后尝试对隐藏层进行不同的激活: 露露 乙状结肠 Softmax(嗯,通常在最后一层使用softmax。) Relu提供最佳的列车精度和验证精度。我不确定如何解释这一点。 我们知道Relu具有良好的品质,例如稀疏性(例如无梯度消失)等,但是 问:Relu神经元通常比乙状结肠/ softmax神经元好吗?我们是否应该几乎总是在NN(甚至CNN)中使用Relu神经元? 我认为,如果我们担心过度拟合,则更复杂的神经元会带来更好的结果,至少可以提高训练的准确性。 谢谢PS:该代码基本上来自“ Udacity-Machine learning -assignment2”,它是使用简单的1层-NN识别notMNIST的。 batch_size = 128 graph = tf.Graph() with graph.as_default(): # Input data. tf_train_dataset = tf.placeholder(tf.float32, shape=(batch_size, image_size * image_size)) tf_train_labels = tf.placeholder(tf.float32, shape=(batch_size, num_labels)) tf_valid_dataset = tf.constant(valid_dataset) tf_test_dataset = tf.constant(test_dataset) # hidden layer hidden_nodes = 1024 hidden_weights = …


4
为什么对于深度学习模型,softmax输出不是一个好的不确定性度量?
我已经在卷积神经网络(CNN)上工作了一段时间,主要是用于语义分割/实例分割的图像数据。我经常将网络输出的softmax可视化为“热图”,以查看特定类别的每个像素激活的数量。我将低激活率解释为“不确定” /“不确定”,将高激活率解释为“某些” /“自信”的预测。基本上这意味着解释SOFTMAX输出(值的范围内)作为模型的概率或(未)确定性量度。(0 ,1 )(0,1个)(0,1) (例如,我已经解释了在其像素上平均具有低softmax激活的对象/区域,这样CNN很难检测到,因此CNN对于预测这种对象“不确定”。) 在我看来,这通常是有效的,将额外的“不确定”区域样本添加到训练结果中可以改善这些结果。但是,我现在从不同方面经常听到,使用/解释softmax输出作为(不确定性)度量不是一个好主意,并且通常不鼓励这样做。为什么? 编辑:为了澄清我在这里要问的问题,到目前为止,我将在回答这个问题时详细阐述我的见解。但是,以下所有论点都没有向我说明**为什么它通常是个坏主意**,正如同事,主管反复说明的那样,例如“ 1.5” 在分类模型中,在管道末端(softmax输出)获得的概率向量通常被错误地解释为模型置信度 或在“背景”部分中: 尽管将卷积神经网络的最终softmax层给出的值解释为置信度分数可能很诱人,但我们需要注意不要过多地阅读它。 上面的资料源认为将softmax输出用作不确定性度量是不好的,原因是: 对真实图像的不可察觉的扰动可以将深层网络的softmax输出更改为任意值 这意味着softmax输出对于“不可察觉的扰动”并不稳健,因此它的输出不能用作概率。 另一篇论文提到“ softmax输出=置信度”的想法,并认为通过这种直觉网络可以很容易地被愚弄,从而产生“无法识别图像的高置信度输出”。 (...)与特定类别相对应的区域(在输入域中)可能比该类别的训练示例所占用的该区域中的空间大得多。结果是,图像可能位于分配给某个类别的区域内,因此在softmax输出中被分类为具有较大的峰值,而仍然与训练集中该类别中自然出现的图像相距甚远。 这意味着与训练数据相距甚远的数据永远不应获得很高的置信度,因为模型“无法”确定它(因为它从未见过)。 但是:这不是简单地质疑整个NN的泛化特性吗?即,具有softmax损失的NN不能很好地推广到(1)“无法察觉的扰动”或(2)远离训练数据的输入数据样本,例如无法识别的图像。 按照这种推理,我仍然不明白,为什么在实践中,没有经过抽象和人为改变的数据与训练数据(即大多数“真实”应用程序)相比,将softmax输出解释为“伪概率”是一个不好的选择理念。毕竟,它们似乎很好地代表了我的模型所确定的内容,即使它是不正确的(在这种情况下,我需要修复我的模型)。而且模型不确定性是否总是“仅”为近似值?


2
瓶颈架构在神经网络中如何工作?
我们将瓶颈架构定义为ResNet论文中发现的类型,其中[两个3x3转换层]替换为[一个1x1转换层,一个3x3转换层和另一个1x1转换层]。 我了解将1x1转换层用作尺寸缩减(和还原)的一种形式,这在另一篇文章中进行了解释。但是,我不清楚这种结构为什么像原始布局一样有效。 一些很好的解释可能包括:使用什么步幅,在什么层上?每个模块的示例输入和输出尺寸是多少?上图中的56x56功能图如何表示?64-d是否参考滤波器的数量,为什么与256-d滤波器不同?每层使用多少个权重或FLOP? 任何讨论都将不胜感激!

2
批归一化如何以及为什么使用移动平均值来跟踪模型训练的准确性?
我正在阅读批处理规范化(BN)论文(1),但不了解需要使用移动平均值来跟踪模型的准确性,即使我接受这样做是对的,我也不明白他们到底在做什么。 据我所知(我是错的),该论文提到一旦模型完成训练,它将使用人口统计数据而不是小批量统计数据。在讨论了无偏估计(对我来说是切线的,并且不理解为什么如此讨论)之后,他们说: 取而代之的是使用移动平均值,我们在模型训练时跟踪模型的准确性。 那是令我困惑的部分。他们为什么要进行移动平均以估计模型的准确性以及在哪些数据集上? 通常人们会做些什么来估计其模型的泛化,他们只是跟踪模型的验证误差(并可能尽早停止其梯度下降以进行正则化)。但是,批处理规范化似乎在做完全不同的事情。有人可以澄清什么以及为什么做不同的事情吗? 1:Ioffe S.和Szegedy C.(2015年), “批处理规范化:通过减少内部协变量偏移来加速深层网络训练”, 第32届国际机器学习会议论文集,法国里尔,2015年 。机器学习研究杂志: W&CP卷37

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.