海量数据检索的利器

检索:解决的最大问题就是如何做到低延迟、快速匹配

  采用局部敏感哈希:lsh

  FaceBook的开源数据包:pysparnn

  解决问题:稀疏数据的近邻搜索!

  源代码网址:http://www.github.com/facebookresearch/pysparnn

测试源码:

"""
    test
"""
import os
import pysparnn.cluster_index as ci
from sklearn.feature_extraction.text import TfidfVectorizer
DIR_PATH = os.path.dirname(os.path.abspath(__file__))


data = [
    "你好 世界",
    "哦 世界 在这里",
    "和 他 一起 玩",
    "你 喜欢 玩 篮球",
]

tv = TfidfVectorizer()
tv.fit(data)
# 特征向量
features_vec = tv.transform(data)

# 建立搜索索引
cp = ci.MultiClusterIndex(features_vec, data)

# 搜索带有索引的
search_data = [
    "哦 在这里",
    "我 喜欢 玩 足球"
]

search_feature_vec = tv.transform(search_data)

# k是返回的个数,k_clusters代表聚类的个数
print(cp.search(search_feature_vec, k=1, k_clusters=2, return_distance=False))

返回结果:

希望能在实际的应用中帮到你! 

原文地址:https://www.cnblogs.com/demo-deng/p/12787261.html