题目:给一百万个三角形,再给一个点,判断在不在某个三角形内。
解法1:如果不一样大的三角形,考虑用RTree
解法2:如果是一样大的三角形,可以用核函数映射。使得二维空间线性不可分的情况变为三维或四维空间线性可分的。
既然提到核函数,首先要知道核函数是什么,怎么去用。
----------------------------------------------------------------------
(1)核函数
核函数指所谓径向基函数(Radial Basis Function 简称 RBF),就是某种沿径向对称的标量函数。
通常定义为空间中任一点x到某一中心xc之间欧氏距离的单调函数 , 可记作 k(||x-xc||), 其作用往往是局部的 , 即当x远离xc时函数取值很小。
根据模式识别理论,低维空间线性不可分的模式通过非线性映射到高维特征空间则可能实现线性可分,但是如果直接采用这种技术在高维空间进行分类或回归,则存在确定非线性映射函数的形式和参数、特征空间维数等问题,而最大的障碍则是在高维特征空间运算时存在的“维数灾难”。采用核函数技术可以有效地解决这样问题。
设x,z∈X,X属于R(n)空间,非线性函数Φ实现输入空间X到特征空间F的映射,其中F属于R(m),n<<m。根据核函数技术有:
K(x,z) =<Φ(x),Φ(z) > (1)
其中:<, >为内积,K(x,z)为核函数。 定义了一个n维到n+K维的映射。
简化计算二次规划中间的一步内积计算。也即中间步骤有一步必须求得。然而定义核函数之后,不需要显式计算每一个、甚至不需要知道长什么样的情况下,直接求出的值来。