id后台无法识别 input_[Kaggle 练习][TensorFlow2]年龄、性别、人种的多目标识别

这是一个深度学习项目,利用TensorFlow 2和Keras API实现multi-output任务,涉及年龄、性别和人种的预测。数据集来自UTKFace,经过预处理,训练过程中发现10岁以下和65岁以上样本较少,故剔除。模型结构包含卷积层和多个全连接层,训练结果显示性别正确率为88%,人种正确率为67%。
摘要由CSDN通过智能技术生成

13bc98655d2bbe1dbc5ce3970c5f4574.png

这是一个深度学习的练习项目,目的:

  1. 使用 TensorFlow 2 + Keras API 实现 multi-output 任务。
  2. 实操一个相对完整的深度学习任务,从数据清洗到模型训练出结果。
  3. 训练一个有一定实际意义(人种、性别预测)的人脸识别项目。

基本信息

  • 源码 & 运行结果:Github link
  • Kaggle: https://www.kaggle.com/jangedoo/utkface-new
  • dataset: https://susanqq.github.io/UTKFace/ 2 万张单人脸图片,覆盖 5 个人种,0-116 岁区间。原始数据 1.3GB,cropped 后 107MB。本文使用 cropped 后的数据集。
  • 参考论文:Multi-digit Number Recognition from Street View Imagery using Deep Convolutional Neural Networks https://arxiv.org/abs/1312.6082 来自 Google 2013.12 月
  • 代码基于 https://sanjayasubedi.com.np/deeplearning/multioutput-keras/ 修改而来
  • 开发环境:Ubuntu 18.04 搭建 cuda10.1+tensorflow2.1+python3.7 https://zhuanlan.zhihu.com/p/45041445

模型原理

在 Google 的论文 中,介绍了核心原理:

  1. 前面的卷积层保持不变,与单 output 一样。因为,卷积层是对图片做预处理 & 基本特征自动提取,泛化性好的模型,不应该与识别目标强相关。
  2. 最后的全连接层,根据目标的数量,增加纬度。最终的模型输出纬度和训练目标数一致。

原始论文对方法的介绍,也非常的简明扼要,只有半页纸。完整截图如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值