HASHING(2)

1.Locality-Sensitive Hashing(LSH, 局部敏感哈希)

如果我们的数据非常大,有多个对象,如果一对一对的比较,需要比较N*(N-1)/2,检查每一对数据很困难。
大体思路:用一个函数f(x, y)来判断x和y是不是一个候选对,计算候选对的相似度。
For minhash matrics:把矩阵列分为很多桶(buckets),相似度高的行放到相同的桶里。

LSH for Minhash Signatures

1230549-20190325191753293-35456714.png

  • 将矩阵M分为b个band,每个band包含r行。
  • 每个band对应k个桶(bucket),k尽量大。
  • 候选列对选择在同一个桶里,$\geq$ 1band。
  • 调整b和r捕捉最相似的对。
    1230549-20190325192818522-1861408622.png
    1230549-20190325192912257-1858178382.png
    t是阈值,相似的会更加相似,不相似的会更加不相似。

    2. Learn to Hash

    2.1 LSH function(Random Hyperplanes)

    hashing function是用来产生Hash Code,根据不同的超平面可以产生不同位数的hash code。
    1230549-20190325194010809-1145292728.png
  • rT*x是一个超平面。

    2.2 PCA Hashing

    1.Projection Stage:得到一个转换矩阵W,Y = WT
    2.Quantization Stage(定量阶段):h(x) = sgn(WTx)
    Q(B, Y) = ||B - YTR||F2
    B = Sgn(YTR)
    R = orthogonal matrix
    B = binary hash code
    Y = WTX
    最基本的方法就是变换数据是的定量损失最小,此变换指线性代数中的线性变换。
    1230549-20190325194840864-1552221596.png

    2.3 Spectral Hashing(谱哈希)

    1230549-20190325195811760-56735915.png

    2.4

    相较于数据独立方法,数据依赖方法(data-dependent methods/learning to hash)使用短的二进制代码可以获得更高的精度和可比较性。也可分为监督学习和非监督学习。
    1230549-20190325200112939-57571501.png

转载于:https://www.cnblogs.com/sharalynwon/p/10596141.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值