zoukankan      html  css  js  c++  java
  • nearest neighbor graph (NNG) 近邻图 k近邻图

    The nearest neighbor graph (NNG)近邻图 is a directed graph defined for a set of points in a metric space, such as the Euclidean distance in the plane. The NNG has a vertex for each point, and a directed edge from p to q whenever q is a nearest neighbor of p, a point whose distance from p is minimum among all the given points other than p itself.[1]

    In many uses of these graphs, the directions of the edges are ignored and the NNG is defined instead as an undirected graph. However, the nearest neighbor relation is not a symmetric one, i.e., p from the definition is not necessarily a nearest neighbor for q. In theoretical discussions of algorithms a kind of general position is often assumed, namely, the nearest (k-nearest) neighbor is unique for each object. In implementations of the algorithms it is necessary to bear in mind that this is not always the case. For situations in which it is necessary to make the nearest neighbor for each object unique, the set P may be indexed and in the case of a tie the object with, e.g., the largest index may be taken as the nearest neighbor.[2]

    The k-nearest neighbor graph (k-NNG)k近邻图 is a graph in which two vertices p and q are connected by an edge, if the distance between p and q is among the k-th smallest distances from p to other objects from P. The NNG is a special case of the k-NNG, namely it is the 1-NNG. k-NNGs obey a separator theorem: they can be partitioned into two subgraphs of at most n(d + 1)/(d + 2) vertices each by the removal of O(k1/dn1 − 1/d) points.[3]

    Another variation is the farthest neighbor graph (FNG), in which each point is connected by an edge to the farthest point from it, instead of the nearest point.

    NNGs for points in the plane as well as in multidimensional spaces find applications, e.g., in data compressionmotion planning, and facilities location. In statistical analysis, the nearest-neighbor chain algorithm based on following paths in this graph can be used to find hierarchical clusterings quickly. Nearest neighbor graphs are also a subject of computational geometry.

     

     k-近邻图(k-nearest neighbor graph)
    选定参数k,对于顶点vi,i=1,..,n,把离它最近的k个点与之相连,所得到的图就是k-近邻图。
    需要注意的是,因为这样的邻近关系并不是对称的(vj是vi的k近邻 ≠vi是vj的k近邻),故而得到的图将会是“有向”的。为了得到无向的图(图的赋权邻接矩阵W应是对称的),一般采取的办法有两种:
    (1)忽视边的方向。即只要vj是vi的k近邻,或者vi是vj的k近邻,就用一条无向边把vi与vj连接起来。通常称的k-近邻图就是这一种。
    (2)仅当vj是vi的k近邻,且vi是vj的k近邻时,才把vi与vj连接起来。这样得到的图称为混合k-近邻图(mutual k-nearest neighbor graph)

    Having simple dataset:

    you create a graph from k-NN:

     after partitioning the graph will be much simplified (having large kk at the begging might not have any influence at all, because most of the edges will be removed during partitioning).

    REF

    https://blog.csdn.net/qingdanry/article/details/44685411

    https://en.wikipedia.org/wiki/Nearest_neighbor_graph

    https://stats.stackexchange.com/questions/165047/how-are-graphs-of-k-nearest-neighbors-built-for-clustering
  • 相关阅读:
    U盘安装CentOS 7系统
    生产库中遇到mysql的子查询
    mysql 储存类型自增主键区别
    MySQL主从数据库同步延迟问题解决
    MySQL 加锁处理分析
    120篇精华文章打包送,干货慎入!
    mysql批量删除相同前缀的表和修改表名
    用pt-online-schema-change给大表在线加字段的时候导致从库数据丢失的问题
    【MySQL】online ddl 工具之pt-online-schema-change
    互联网公司为啥不使用mysql分区表?
  • 原文地址:https://www.cnblogs.com/emanlee/p/15154810.html
Copyright © 2011-2022 走看看