图片暴力小说暴力小说
在机器学习领域,处理高维向量不仅常见,何况至关迫切。以流行的模子如Transformers架构为例,比如BERT模子就使用768维向量来编码它处理的输入序列的令牌,以更好地捕捉数据中的复杂模式。商量到咱们的大脑难以将视觉最初三维,使用768维向量照实令东说念主咋舌!尽管一些机器学习和深度学习模子在这些高维场景中阐扬出色,但它们也带来了好多挑战。在本文中,咱们将探索“维数吊问(curse of dimensionality)”的观念,解释与之关连的一些意思意思风物,真切了解这些风物背后的数学旨趣,并究诘它们对机器学习模子的一般影响。什么是维数吊问?东说念主们持续假定在三维空间中隆重的几何观念在更高维度空间中的行为近似。现实并非如斯。跟着维度的加多,好多意思意思和违抗直观的风物会出现。维数吊问是由盛名数学家理查德·贝尔曼创造的一个术语,指的是整个这些令东说念主讶异的效应。高维的特殊之处在于空间的“体积”(咱们很快会更详确地探索这少许)呈指数级增长。以一维空间中的1到10的数轴为例,这条线上有10个整数。若是将其推广到二维,就变成了一个点数为10×10=100的正方形。目下商量“仅”80维,将得回10^80个点,这个数字是天地华夏子的数目。换句话说,跟着维度的加多,空间的体积呈指数增长,导致数据变得越来越疏淡。高维空间是“空的”商量另一个例子。咱们思计较单元超立方体(每个边长为1)中两点之间的最远距离:在一维中(超立方体是从0到1的线段),最大距离浅易地是1。 在二维中(超立方体酿成一个正方形),最大距离是对角线上[0,0]和[1,1]两点之间的距离,通过勾股定理计较得出√2。 将此观念推广到n维,点[0,0,...,0]和[1,1,...,1]之间的距离是√n。这个公式的出现是因为每加多一个维度,王人会在浅薄根的乞降中加多一个1的浅薄(一样通过勾股定理得出)。意思意思的是,跟着维度n的加多,超立方体内的最大距离以O(√n)的速率增长。这种风物证明了递减效应,即维度空间的加多导致空间距离的加多比例较小。这种效应止境影响将在本文接下来的部分中进一步探讨。高维中的距离观念咱们也曾初步了解了高维空间何如使距离观念真是变得无真理。但这究竟是什么意思,咱们能否用数学来形象地神志这一风物?让咱们商量一个实验,使用之前界说的吞并个n维单元超立方体。最先,咱们通过在这个立方体中立地抽取好多点来生成一个数据集:现实上是在模拟一个多变量均匀散布。然后,咱们从该散布中抽取另一个点(一个“查询”点),并不雅察其与数据聚拢最近和最远邻居的距离。以下是相应的Python代码。def generate_data(dimension, num_points): ''' Generate random data points within [0, 1] for each coordinate in the given dimension ''' data = np.random.rand(num_points, dimension) return datadef neighbors(data, query_point): ''' Returns the nearest and farthest point in data from query_point ''' nearest_distance = float('inf') farthest_distance = 0 for point in data: distance = np.linalg.norm(point - query_point) if distance < nearest_distance: nearest_distance = distance if distance > farthest_distance: farthest_distance = distance return nearest_distance, farthest_distance咱们还不错画图这些距离:
图片
跟着维度n加多,到最近点和最远点的距离使用对数圭臬,咱们不雅察到到最隔邻居和最远邻居的距离的相对差跟着维度的加多而减小。这是一种至极不直不雅的行为:如前一节所述,由于空间体积的指数增长,各点之间至极疏淡,但与此同期,点与点之间的相对距离却变得更小。最隔邻观念的隐没这意味着跟着空间维度的加多,距离的观念变得越来越不关连和不具永别性。如你所思,这关于透顶依赖距离的机器学习算法,如kNN,组成了问题。数学:n维球体目下咱们将究诘一些其他意思意思的风物。为此,咱们需要了解n维球体。n维球体是在n维空间中球体的奉行。半径为R的n维球体不错视为原点为中心,整个点到原点的直线距离不大于R的一个几何体。商量半径为1的情况。1维球体是线段[-1, 1]。2维球体是由单元圆界定的圆盘,其方程为x² + y² ≤ 1。3维球体(咱们频繁称之为“球体”)的方程是x² + y² + z² ≤ 1。如你所见,咱们不错将这个界说推广到任何维度:图片
目下的问题是:这个球体的体积是若干?这并非一个浅易的问题,需要多数的数学计较,这里不予胪陈。经由一番意思意思的(积分)计较,你不错诠释n维球体的体积不错如下示意,其中Γ示意伽马函数。图片
伽马函数(Gamma function)是阶乘观念在实数和复数上的奉行。伽马函数在数学的好多领域王人至极迫切,特殊是在概率论、统计学、组合数学以及物理中的量子物理和热力学等领域。在高维几何和积分中,伽马函数还用来计较多维球体的体积。举例,当R = 1且n = 2时,体积是πR²,淫妻互换因为Γ(2) = 1。这照实是2维球体的“体积”(在这种情况下也称为圆的“面积”)。但是,除了是一个意思意思的数学挑战除外,n维球体的体积还具有一些至极令东说念主讶异的属性。跟着维度n的加多,n维球体的体积趋于0。这对整个半径王人建造,但让咱们用几个R的值来直不雅地不雅察这一风物。图片
痴迷系列跟着维度加多,不同半径的n维球体的体积如你所见,它不仅趋于0,何况开动加多后又减少到0。关于R = 1,体积最大的是5维球体,而达到最大值的n值跟着R的加多而向右挪动。底下是单元n维球体体积的前10个值。图片
不同n值的单元n维球体的体积高维空间中单元球体的体积主要聚拢在其名义邻近。在小维度时,球体的体积看起来至极“均匀”:在高维度中情况并非如斯。图片
球壳商量一个半径为R的n维球体和另一个半径为R-dR的n维球体,其中dR至极小。位于这两个球体之间的n维球体的部分称为“球壳”,对应于球体名义邻近的部分。咱们不错计较球体“里面”体积与薄球壳体积的比率。图片
跟着n的加多,(里面体积/总体积)比率正如咱们所看到的,它至极快地趋近于0:在高维空间中,真是整个的体积王人聚拢在薄球壳中。举例,关于R = 1,dR = 0.05,且n = 50,能够92.3%的体积累拢在薄球壳中。这标明在更高的维度中,体积存在于“边缘”。这再次与咱们之前看到的距离观念的歪曲关连。凝视,单元超立方体的体积(这里,指以零为中心,边长为2的立方体)是2^n。而在至极高的维度中,单元球体基本上是“空的”,与之相对的,单元超立方体的点数呈指数加多。再次,这标明点的“最隔邻居”的观念因为在大的n时,真是莫得点在查询点q的距离R内,而失去了遵守。维数吊问、过拟合和奥卡姆剃刀旨趣维数吊问与过拟合旨趣密切关连。由于空间体积随维度呈指数增长,咱们需要至极大的数据集来充分捕捉和建模高维模式。更倒霉的是:为了克服这一放荡,咱们需要的样本数目也需要跟着维度指数增长。这种特征浩荡但数据点相对较少的情况,特殊容易发生过拟合。奥卡姆剃刀旨趣提出,相较于复杂模子,浅易模子频繁更优,因为它们不太可能发生过拟合。这一旨趣在高维环境(维数吊问阐扬作用的处所)尤为关连,因为它荧惑镌汰模子复杂度。在高维场景中应用奥卡姆剃刀旨趣可能意味着通过降维(如通过PCA、特征选拔等措施),从而减弱维数吊问的某些影响。简化模子结构或特征空间有助于经管疏淡数据散布,并使距离度量再次变得有真理。举例,降维频繁是应用kNN算法之前的一个常见初步面容。更当代的措施,如近似最隔邻(ANNs)也手脚处理高维场景的一种样式出现。高维的上风图片
尽管咱们也曾详细了机器学习中高维配置的挑战,但也存在一些上风!高维不错增强线性可分性,使得像kernel methods这么的时间更灵验。 此外,深度学习架构特殊擅长在高维空间中导航和索要复杂模式。如同机器学习领域常见的,这是一种量度:应用这些上风需要均衡加多的计较需求与潜在的模子性能擢升。但愿这能让你了解高维中“歪邪”几何的骨子以及它为机器学习模子开采带来的好多挑战。咱们看到,在高维空间中,数据至极疏淡,但也倾向于聚拢在边缘,且距离失去了其用途。诚然“维数吊问”隆起了高维空间中的紧要放荡,但令东说念主沸腾的是,看到当代深度学习模子越来越善于粗疏这些复杂性。举例,商量使用至极高维向量的镶嵌模子或最新的大型话语模子(LLMs),它们更灵验地识别和建模文本模式。 本站仅提供存储就业,整个内容均由用户发布,如发现存害或侵权内容,请点击举报。