『深度应用』一文搞懂深度学习人脸识别模型开发流程
『深度应用』深度学习人脸识别模型开发与应用流程综述
0. 概念简介
度量学习(Metric Learning),也称距离度量学习(Distance Metric Learning,DML) 属于机器学习的一种。其本质就是相似度的学习,也可以认为距离学习。因为在一定条件下,相似度和距离可以相互转换。比如在空间坐标的两条向量,既可以用余弦相似度的大小,也可以使用欧式距离的远近来衡量相似程度。
常见的人脸识别与声纹识别都属于度量学习。
一般的度量学习包含以下步骤:
- Encoder编码模型:用于把原始数据编码为特征向量(重点如何训练模型)
- 相似度判别算法:将一对特征向量进行相似度比对(重点如何计算相似度,阈值如何设定)
1.编码模型训练
通过使用大量数据集进行网络模型训练。使编码模型可以实现对原始数据提取特征向量的功能。
基于深度学习的度量学习算法中,可以分为两个流派:
- 网络设计派:代表孪生神经网络(Siamese network)
- 损失改进派:代表 xx-softmax
本文主要讲整体开发流程,具体细节请自行查阅。
通过对编码模型训练,得到了具备提取特征的encoder模型,让原始数据通过encoder模型就可以对应特征向量:
X = Encoder(row)
下面就是利用这个encoder模型,作为特征提取器,进行相似度判别。
2.相似度判别算法
在第一步(1.编码模型训练)完成后,获得了具备特征提取的编码模型,就可以利用此encoder网络进行验证系统开发。
首先要对在第一步得到的编码模型进行性能测试。步骤如下:
- 使用测试数据生成测试对,需要保证尽量随机取对和正负数据平衡,同一种标签为1,不同种为0
- 使用编码模型得到所有特征向量
- 根据测试对的特征向量计算相似度,可选余弦距离度/欧式距离
- 根据测试对的相似度与标签,设置合理阈值范围,分辨率取0.0001,遍历阈值计算 FAR(错误接受率)FRR(错误拒绝率),两者相等得到EER(等错误概率),此时的阈值也是较优阈值。(也可以使用类似方法验证准确率)
通过上述步骤就可以获得模型的识别性能和应用阈值。
如若想提高阈值的泛化能力,可以采用测试与验证的方法计算阈值:
- 将测试对分为10组,用来确定阈值并验证精读。
- 使用其中1组,同种判断错误和不同种判定错误的个数。
- 选择错误个数最少的那个阈值,用剩余9组,判断识别精度。
- 步骤2和3执行10次,将每次3获取的精度进行累加并求平均,得到最终判定精度。记录下精度最高的那次的阈值,记为最优阈值
References:
1.https://blog.csdn.net/fuwenyan/article/details/74943248
转载于:https://www.cnblogs.com/xiaosongshine/p/11062641.html
『深度应用』一文搞懂深度学习人脸识别模型开发流程相关推荐
- ❤『知识集锦』一文搞懂mysql索引!!(建议收藏)
作者:不吃西红柿 简介:CSDN博客专家.蓝桥签约作者.大数据领域优质创作者. 以我的资历和文凭,将来这个城市的大街,都归我扫. [系列课程介绍] 『面试知识集锦』系列课程包括以下20个系列,超过 ...
- 『深度概念』一文读懂Octave Convolution(OctConv)八度卷积
RyanXing Multimedia Processing & Computer Vision. Paper | Octave Convolution(OctConv) 论文:Drop an ...
- 一文搞懂深度学习正则化的L2范数
想要彻底弄明白L2范数,必须要有一定的矩阵论知识,L2范数涉及了很多的矩阵变换.在我们进行数学公式的推到之前,我们先对L2范数有一个感性的认识. L2范数是什么? L2范数的定义其实是一个数学概念,其 ...
- 一文搞懂EMAS Serverless小程序开发|电子书免费下载
>> 快来免费下载|电子书<五天玩转EMAS Serverless> << 点击免费下载 <五天玩转EMAS Serverless> EMAS Serv ...
- 一文读懂电子工程师的产品开发流程
微信链接 https://mp.weixin.qq.com/s/VVc3DiIozVKRQprlzMtVxg 申明 首先这篇文章是一篇硬核!! 基本无插图,但是融合了笔者工作至今的所有关于电子产品开发 ...
- 一文搞懂如何使用ArcGIS API for Python训练深度学习模型
一文搞懂如何使用ArcGIS API for Python训练深度学习模型 文章目录 一文搞懂如何使用ArcGIS API for Python训练深度学习模型 写在前面 一.ArcGIS API f ...
- 干货 | 台大“一天搞懂深度学习”课程PPT(下载方式见文末!!)
微信公众号 关键字全网搜索最新排名 [机器学习算法]:排名第一 [机器学习]:排名第一 [Python]:排名第三 [算法]:排名第四 Deep Learing Tutorial 本篇文章我们给出了一 ...
- 一文弄懂元学习 (Meta Learing)(附代码实战)《繁凡的深度学习笔记》第 15 章 元学习详解 (上)万字中文综述
<繁凡的深度学习笔记>第 15 章 元学习详解 (上)万字中文综述(DL笔记整理系列) 3043331995@qq.com https://fanfansann.blog.csdn.net ...
- 一文搞懂RNN(循环神经网络)
基础篇|一文搞懂RNN(循环神经网络) https://mp.weixin.qq.com/s/va1gmavl2ZESgnM7biORQg 神经网络基础 神经网络可以当做是能够拟合任意函数的黑盒子,只 ...
- 【深度学习理论】一文搞透pytorch中的tensor、autograd、反向传播和计算图
转载:https://zhuanlan.zhihu.com/p/145353262 前言 本文的主要目标: 一遍搞懂反向传播的底层原理,以及其在深度学习框架pytorch中的实现机制.当然一遍搞不定两 ...
最新文章
- 【数学基础】校招算法工程师笔试题
- 2021机器智能研究方向
- 技术分析:搞懂链路追踪
- boost::date_time模块wrapping_int的测试程序
- mysql left join两个表,mysql left join 多个表
- 树莓派局域网文件共享samba
- 请求 返回 net::ERR_CONTENT_LENGTH_MISMATCH 调试服务 (启动jboos)
- AppleScript快速入门教程
- MapReduce运行机制
- 游戏理论研究四:RPG游戏
- 最后电话挂的才是爱你的
- web渗透测试中WAF绕过讲解(二)基于HTTP协议绕过
- 14AMESIM安装教程
- 将pandas中object类型转换为int类型
- Codeforces Edu:双指针 » Step 3 » Practice:A. Looped Playlist
- 【HANA系列】SAP HANA XS Administration Tool登录参数设置
- LightningChart JS Crack,2D 和 3D JavaScript 图表
- 学习小记 -- 线程池的工作原理
- 微信支付快速生成签名sign
- android上调试H5小工具
热门文章
- Ubuntu Server Nginx 下配置 mono 下运行 asp.net mvc
- 「代码随想录」343. 整数拆分【动态规划】详解!
- 如何在 Mac 上自定 Safari 浏览器窗口?
- ON1 Resize 2022 for Mac(图片大小修改工具)
- CentOS Linux 系统镜像文件(M1 Mac虚拟机专用)
- PDF Checkpoint for mac(pdf文件批量处理工具)
- python实现oss文件下载
- cordova 打包vue 集成的app , router-view 默认首页白屏
- Stack Overflow首席大神,他回答了超过3万个问题
- Android存储(1)-- 你还在乱用Android存储嘛!!!