| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> (四)孪生神经网络介绍及pytorch实现 -> 正文阅读 |
|
[人工智能](四)孪生神经网络介绍及pytorch实现 |
欢迎访问个人网络日志🌹🌹知行空间🌹🌹 孪生神经网络介绍及pytorch实现1.孪生神经网络在深度学习领域,神经网络取得了成功。但普通的神经网络模型的训练需要大量的数据,对于一些数据有限的场景,如人脸验证,签字验证,必须考虑其他方法。
孪生神经网络 如上图,两个网络是同一个并共享权重,当两个子网络不共享权重时,通常定义为
从上面的图中可以看出来,孪生神经网络有两个输入, 孪生神经网络的优点,对于类别不平衡问题更鲁棒,更易于做集成学习(Ensemble Learning),可以从语义相似性上学习来估测两个输入的距离。孪生神经网络的缺点,由于有两个输入,两个子网,其训练相对于常规网络运算量更大,需要的时间更长。输出的结果不是概率,孪生神经网络时成对的输入,其输出是两个类间的距离而不是概率。 2.孪生神经网络的损失函数由与孪生神经网络是计算的两个输入的相似度,距离,而不是对输入做分类,因此 2.1 Triplet Loss
通过这种相似度比较式的学习,模型不仅与同类别更像,还学会了与不同类别增大区分度的信息。通常定义一个
α
\alpha
α,使得 ∣ ∣ f ( X a n c h o r ) ? f ( X n e g a t i v e ) ∣ ∣ ? ∣ ∣ f ( X a n c h o r ) ? f ( X p o s i t i v e ) ∣ ∣ > α ||f(X_{anchor}) - f(X_{negative})|| - ||f(X_{anchor}) - f(X_{positive})|| \gt \alpha ∣∣f(Xanchor?)?f(Xnegative?)∣∣?∣∣f(Xanchor?)?f(Xpositive?)∣∣>α 定义为: L ( X a n c h o r , X p o s i t i v e , X n e g a t i v e ) = m a x ( ∣ ∣ f ( X a n c h o r ) ? f ( X p o s i t i v e ) ∣ ∣ ? ∣ ∣ f ( X a n c h o r ) ? f ( X n e g a t i v e ) ∣ ∣ + α , 0 ) L(X_{anchor}, X_{positive}, X_{negative}) = max(||f(X_{anchor}) - f(X_{positive})|| - ||f(X_{anchor}) - f(X_{negative})|| + \alpha, 0) L(Xanchor?,Xpositive?,Xnegative?)=max(∣∣f(Xanchor?)?f(Xpositive?)∣∣?∣∣f(Xanchor?)?f(Xnegative?)∣∣+α,0) 2.2 Contrastive Loss衡量相似度的另一常用函数是
3.动手实现一个孪生网络3.1 网络结构这里使用 这里上下两个网络使用同一个网络来实现,对于两个输入,每一步推理使用相同的权重
3.2 损失函数损失函数使用的是前述的
3.3 数据这里使用的是基于 3.4 训练结果训练了 由于使用的
完整代码见gitee仓库 4.SiameseNetWork的一些应用1.签名验证Signature Verification using a “Siamese” 2.三胞胎网络Deep metric learning using Triplet network 3.One-ShotLearning, Siamese Neural Networks for One-shot Image Recognition 4.人脸验证Learning a Similarity Metric Discriminatively, with Application to Face 参考资料欢迎访问个人网络日志🌹🌹知行空间🌹🌹 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 8:56:39- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |