几何学基本概念——超平面(hyperplane)

在几何中,超平面是将三维空间中的二维平面推广至任意维数学空间所得到的概念 。正如三维空间中的平面一样,超平面是一种"平坦(flat)"的超曲面 (hypersurface),即它是维数比其所处的环境空间 (ambient space)低一维的子空间。超平面的两个低维实例分别是平面中的一维直线,以及直线上的零维点加上前缀"超" ( hyper -) 以表明,它虽然类似于平面,但其内涵可能远不止是一个普通的二维平面。 在三维几何学中,我们通常将一个平面视为一个三维空间中的一个二维对象。在标准的 Euclid 几何中,经过某已知点且垂直于某直线的平面是唯一确定的;同理,经过平面上某已知点且垂直于该平面的直线也是唯一确定的。我们希望将这种"直线与平面"之间的关联推广至更高维度。这正是"超平面"定义为 n - 1 维的原因------因为它恰好是该空间中某个 1 维子空间的正交补。

最常见的情况是,环境空间为n 维Euclid空间;在此情形下,超平面即为 (n - 1) 维的"平坦子空间"(flats),每一个超平面都将该空间分割为两个半空间。关于超平面的反射是一种"运动"(即保持点间距离不变的几何变换),而所有的运动共同构成了一个群,该群正是由这些反射所生成的。凸多胞形(A convex polytope)则是若干个半空间的交集。

在非Euclid几何中,环境空间可能是 n 维球面、双曲空间,或者更一般地,是伪Riemann空间形式;此时的超平面则是由所有穿过某一点且垂直于特定法测地线的测地线所构成的超曲面。

在其他类型的环境空间中,Euclid空间所具备的某些性质可能不再适用。例如,在仿射空间中,由于不存在距离的概念,因此也就无所谓反射或运动。而在像椭圆空间或射影空间这类不可定向的空间中,则不存在"半空间"这一概念。从最广义的角度来看,只要某个数学空间中定义了子空间的维数概念,那么"超平面"这一概念在该空间中便具有其确切的意义。

子空间与其环境空间之间的维数之差,称为该子空间的"余维数"(codimension)。超平面的余维数恒为 1 。

在计算机科学中,超平面是指利用直线或平面来分隔多维空间中不同区域的一种概念。超平面通常通过方程来表示,并可依据数据点相对于超平面的位置,将其归入不同的类别。最优超平面是指能够最大化超平面自身与来自两个类别的最近数据点之间间隔(即"间隔")的那个超平面。

此类超平面常用于分类算法中(例如支持向量机 [SVM] 和线性回归),旨在将属于不同类别的数据点区分开来。此外,它们也被应用于聚类算法中,用于识别输入空间内的数据点簇。

为了在分类任务中确定理想的超平面,算法通常致力于最大化该超平面与各类别中距离其最近的数据点之间的"间隔"(margin);这是因为,更宽阔的间隔往往能自然地构建出更为稳健且泛化能力更强的模型。

超平面同样适用于回归任务,此类任务的目标是预测连续的输出数值,而非类别标签。在此情境下,超平面代表着那条"最佳拟合线",其作用在于最小化预测值与实际值之间误差平方之和。

相关推荐
CN-Dust3 分钟前
【C++专题】格式化输出与输入
开发语言·c++·算法
自我意识的多元宇宙14 分钟前
数据结构----插入排序
数据结构·算法·排序算法
im_AMBER14 分钟前
Leetcode 162 除了自身以外数组的乘积 | 接雨水
开发语言·javascript·数据结构·算法·leetcode
Westward-sun.16 分钟前
YOLO目标检测算法与mAP评估指标详解(附示例)
算法·yolo·目标检测
cpp_250125 分钟前
P1873 [COCI 2011/2012 #5] EKO / 砍树
数据结构·c++·算法·题解·二分答案·洛谷·csp
啊哦呃咦唔鱼27 分钟前
leetcodehot100-347. 前 K 个高频元素
数据结构·算法·leetcode
玛丽莲茼蒿28 分钟前
Leetcode hot100 多数元素【简单】
算法·leetcode·职场和发展
AbandonForce28 分钟前
Map类:pair键值对|map的基本操作|operator[]
开发语言·c++·算法·leetcode
澈20730 分钟前
C++核心:封装与static静态成员实战指南
开发语言·c++·算法
田梓燊34 分钟前
力扣:146.LRU 缓存
算法·leetcode·缓存