zoukankan      html  css  js  c++  java
  • 跟我学算法-人脸识别(Siamese network) 推导

    Siamese network 训练神经网络存在两种形式:

    第一种:通过Siamese network 和 三元组损失函数 来训练图片之间的间隔

    第二种: 通过Siamese network 和 sigmoid函数来实现二分类的训练

    第一种情况:

          

    在最后一层使用得是128, 1,

    d(x(1), x(2)) = abs(f(x(1) - f(x(2)) 通过对每个维度相减求平方

    三元组损失函数

    选取目标人物图片和相同人物图片,以及一张不同人物图片。构成两组距离

    训练得过程中,使得abs(f(A)- f(P))^ 2+ α < abs(f(A) - f(N)) ^ 2 

    loss(A, P, N) = max(abs(f(A)- f(P))^ 2 - abs(f(A) - f(N)) ^ 2  +  α , 0)

    在训练时候,一个人至少需要10张图

    为了使得训练得时候更加得有难度,我们在挑选图片得时候尽量使得d(A, P)约等于 d(A, N)

    第二种方式:
           通过Siamese network + sigmoid函数来实现最终得判别

    通过两个图片128维得向量,相减,即求X^2, 进行一次全连接操作,输出结果,根据loss进行训练.

  • 相关阅读:
    常见排序算法总结(一)
    27.移除元素
    556. 下一个更大元素 III
    503. 下一个更大元素 II
    496.下一个更大元素Ⅰ
    汇编基础
    SQL回顾
    Pandas整理
    爬取中公网新闻时政
    Python合并Excel表格
  • 原文地址:https://www.cnblogs.com/my-love-is-python/p/9790136.html
Copyright © 2011-2022 走看看