想学 AI,先搞懂这件小事!( 六 )
用简图来表示 , 假设我们有二维平面上若干个向量(点):
通过聚类算法把它们分成若干个簇 , 簇的数量是可以指定的 , 这里分成4簇 , 黑圈的表示簇的中心向量:
加入要检索的目标向量 , 根据对比计算 , 我们发现它离黄色簇的中心最近 , 那么只需要将目标向量和黄色簇里每一个向量计算距离 , 就可以得到离目标向量最近的那个向量:
当然 , 具体到实现环节会有很多种不同做法 , 有基于矢量量化的 , 基于图的 , 以及基于树的各种算法 , 有兴趣的可以去搜索ANN相关论文 。
大规模向量检索面临的问题
大规模向量检索的系统作为一个向量数据库 , 不但要能够支持海量数据的持久化 , 还要能快速地检索出用户需要的信息 。 生产环境中的向量维度一般起步就是128维 , 高一些的可达512维 。 我们可以算一下 , 对于512维度的向量 , 每条向量有512个数值 , 通常在计算机里这些数值是以float类型表示 , 这意味着每条向量将会占用2048字节 , 那么一亿条这样的向量就会用掉200GB 。 而生产环境中的向量数量有可能达到十亿甚至百亿的规模 。
推荐阅读
- 打野|英雄联盟:木木带征服者,团战能力还是差!可能这件装备你没出!
- 问道|能让程咬金成神的,不是“冰心”,而是这件2180
- 热血传奇|热血传奇:刀刀都是真实伤害,这件武器就是神器!
- 魔兽世界怀旧服|魔兽怀旧服:祖阿曼设计初衷,新人玩家福利?这件项链让人泪目
- 化身博士|“圣杯流”庄周才最强,配合这件神器,一打五都不是问题
- csgo|梦幻西游:当这只泪妖从藏宝阁取下来的时候,我就知道这件事不简单……
- 国服|光遇:好友互心也要收回?国服处罚越来越严格,这件事不能做!
- 护腕|魔兽世界TBC:法师首选心灵风暴护腕?这件平民护腕丝毫不逊色
- LGD|DOTA2:永远可以相信ame会在关键时刻拉跨,第三次证明了这件事
- lng|英雄联盟手游这件可以克制蒙多风女的装备,你会用吗?