经典的深度学习模型
- AlexNet(Error: 16%)
- VGGNet(Error: 7%)
- VGG-16: conv3-64->conv3-64->maxpool -> conv3-128->conv3->128->maxpool -> conv3-256->conv3-256->conv3-256->maxpool -> conv3-512->conv3-512->conv3->512->maxpool -> conv3-512->conv3-512->conv3->512->maxpool -> fc4096->fc4096->fc1000->softmax
- GoogLeNet(Error: 6%)
- ResNet(Error: 3.57%)
目标检测
- R-CNN
- SPPNet
- 多个卷积层(框可以是任意大小)->ROI池化层(将任意大小的框转为统一大小的框)-> SVM分类
- Fast-R-CNN
- 多个卷积层(框可以是任意大小)->ROI池化层(将任意大小的框转为统一大小的框)->两个全连接神经网络(一个softmax用于分类, 另外一个用于框回归)
MTCNN(Multi-task CNN)
GAN
人脸识别(Face Recognition)
- 案例
- 现在有一个公司员工进入公司内部的身份验证系统, 与百度的类似, 但是是简化的版本, 现在有两种方案
- 每一个员工进入之前要初始自己的ID卡, 该卡上的磁条上有自己名字的信息, 同时员工还有对准相机进行脸部图像的获取, 在后台服务器的数据库中有一个name到encoding vector的映射, name就是公司中所有员工的姓名, encoding vector就是员工一开始录用拍摄的照片放入到神经网络中得到的编码; 输入name和图像, 将图像转为encoding vector, 根据name到dictionary中找到数据库中对应的encoding vector, 计算两个向量的L2范式距离, 如果小于一个阈值(比如0.7)表示为同一个人, 允许进入
- 与方案1不同的是, 现在不需要ID卡, 而是直接采用相机捕捉脸部图像的方法, 在服务器上的数据库还是那个字典, 当员工靠近时, 对准相机, 算法会将当前的人脸转为encoding vector, 接着去遍历dictionary中的encoding vector计算他们的L2范式距离, 得到对接近的dist, 在将该dist与阈值(如0.7)进行比较, 如果小于0.7则表示是同一个人, 允许进入; 此方法的好处是员工丢失了ID卡也没有关系
- 模型
- 采用DeepFace模型
- 每一个样本为(A(i),P(i),N(i)), 其中A表示anchor(新的图片), positive(与anchor是同一个人的图片), negative(与anchor不是同一个人的图片), 这与我们之前遇到的样本长得不一样, 称之为triplet(三元组)
- L2计算公式||f(A(i))−f(P(i))||2+α≤||f(A(i))−f(N(i))||2, 其中α与SVM中的功能一样, 是一个软间隔; 变换一下为求最小化J=∑mimax(||f(A(i))−f(P(i))||2−||f(A(i))−f(N(i))||2+α), 成为triplet loss(三元组损失)
posted @
2019-04-06 10:47
gogogo11
阅读(
490)
评论()
编辑
收藏
举报
点击右上角即可分享
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
· 软件产品开发中常见的10个问题及处理方法
· Vite CVE-2025-30208 安全漏洞
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp
· MQ 如何保证数据一致性?