文章

01 什么是人脸识别?(What is face recognition?)

01 什么是人脸识别?(What is face recognition?)

01 什么是人脸识别?(What is face recognition?)

一、课程背景与目标

  • 本节是卷积神经网络(CNN)课程的最后一周的开篇。
  • 目标:介绍 CNN 的两个重要应用:

    1. 人脸识别(Face Recognition)
    2. 神经风格迁移(Neural Style Transfer)
  • 本节聚焦于人脸识别系统的基本概念、应用场景及技术挑战。

二、人脸识别的实际演示

  • 案例:百度AI团队开发的人脸识别门禁系统。

    • 用户无需工卡,仅凭人脸即可通过门禁。
    • 系统具备活体检测(Liveness Detection) 能力:

      • 能区分真实人脸 vs 照片/视频等伪造输入
      • 活体检测可视为一个二分类监督学习问题

        \[\text{输入图像} \xrightarrow{\text{模型}} \begin{cases} 1 & \text{真人} \\ 0 & \text{非真人(如照片)} \end{cases}\]

关键点:活体检测是保障人脸识别系统安全性的关键技术,防止“照片攻击”。


三、核心概念区分:人脸验证 vs 人脸识别

1. 人脸验证(Face Verification)

  • 定义:给定一张输入图像和一个身份(ID/姓名),判断该图像是否属于该身份。
  • 任务类型1对1匹配(One-to-One)
  • 数学形式

    \[\text{给定 } (x, \text{ID}),\quad \text{输出 } f(x, \text{ID}) = \begin{cases} \text{True} & \text{若 } x \text{ 属于 ID} \\ \text{False} & \text{否则} \end{cases}\]
  • 应用场景:手机解锁、银行身份核验。

2. 人脸识别(Face Recognition)

  • 定义:给定一张输入图像,在数据库中所有已知身份中找出匹配的身份(或判断是否为未知人)。
  • 任务类型1对多匹配(One-to-Many)
  • 数学形式

    \[\text{给定 } x,\quad \text{在数据库 } \{ \text{ID}_1, \text{ID}_2, \dots, \text{ID}_N \} \text{ 中找到 } \text{ID}_i \text{ 使得 } x \in \text{ID}_i\]
  • 应用场景:公司门禁、安防监控、社交平台自动标记。

四、为什么人脸识别比人脸验证更难?

  • 误差累积效应

    • 假设人脸验证系统的错误率为 1%(即准确率 99%)。
    • 在包含 $N = 100$ 人的数据库中进行人脸识别时,至少出错一次的概率为:

      \[P_{\text{error}} = 1 - (0.99)^{100} \approx 1 - 0.366 = 0.634 \quad (\text{即 } 63.4\%)\]
    • 这意味着即使验证系统很准,直接用于识别也会导致高错误率
  • 结论

    • 要构建可靠的人脸识别系统,其底层的人脸验证模块必须具有极高的准确率(如 99.9% 甚至更高)。
    • 因此,课程将先聚焦于如何构建高精度的人脸验证系统,再扩展到识别任务。

五、技术挑战:一次性学习(One-Shot Learning)

  • 问题背景

    • 在实际应用中,系统可能只见过某个人的一张照片(例如注册时上传的证件照)。
    • 但之后需要识别该人在不同光照、角度、表情下的新图像。
  • 传统深度学习的局限

    • 标准 CNN 需要大量样本才能学习一个类别。
    • 但人脸识别常面临每个类只有一个训练样本的情况。
  • 解决方案方向(将在后续视频讲解):

    • 使用相似度学习(Similarity Learning)孪生网络(Siamese Networks)
    • 学习一个嵌入函数(Embedding Function) $f(x) \in \mathbb{R}^d$,将人脸映射到低维空间,使得:

      \[\| f(x^{(1)}) - f(x^{(2)}) \|_2 \text{ 小} \iff x^{(1)} \text{ 和 } x^{(2)} \text{ 是同一人}\]

六、小结(Key Takeaways)

概念描述难度应用
人脸验证1对1:验证“你是你吗?”较低手机解锁、支付验证
人脸识别1对多:识别“你是谁?”较高(需极高验证精度)门禁、安防、社交
活体检测判断输入是否为真实活人中等防止照片/视频欺骗
一次性学习仅用一张图学会识别人脸核心挑战实际系统必备能力

七、后续预告

  • 下一节将深入讲解 “一次性学习问题”(One-Shot Learning) 及其解决方案(如 Siamese 网络、triplet loss 等)。
  • 最终目标:构建一个可用于大规模人脸识别系统的高鲁棒性验证模块。
本文由作者按照 CC BY 4.0 进行授权