Learning to Cluster Faces by Infomap

Intorduction

采用了无监督方法infomap进行人脸聚类github,在公开数据集上MS-Celeb-1M、YouTube-Faces、DeepFashion获得较当前主流方法(如GCN人脸聚类等监督方法)同等或更优的效果.
通过faiss加速邻接边的构建,提高聚类速度,单批百万数据聚类仅需几分钟. 效果及性能测试详见下表.

Infomap Intorduction

About Infomap

About GCN Method

  1. L-GCN: Linkage-based Face Clustering via Graph Convolution Network, CVPR 2019
  2. GCN-D: Learning to Cluster Faces on an Affinity Graph, CVPR 2019 (Oral)
  3. GCN-V+GCN-E: Learning to Cluster Faces via Confidence and Connectivity Estimation, CVPR 2020

Requirements

  • Python >= 3.6
  • sklearn
  • infomap
  • numpy
  • faiss-gpu(or faiss-cpu)

Datasets

MS-Celeb-1M : part1_test (584K)、YouTube-Faces、DeepFashion
download

Run

python face-cluster-by-infomap

Results on part1_test (584K)

Method Precision Recall F-score
Chinese Whispers (k=80, th=0.6, iters=20) 55.49 52.46 53.93
Approx Rank Order (k=80, th=0) 99.77 7.2 13.42
MiniBatchKmeans (ncluster=5000, bs=100) 45.48 80.98 58.25
KNN DBSCAN (k=80, th=0.7, eps=0.25, min=1) 95.25 52.79 67.93
FastHAC (dist=0.72, single) 92.07 57.28 70.63
DaskSpectral (ncluster=8573, affinity=‘rbf’) 78.75 66.59 72.16
CDP (single model, th=0.7) 80.19 70.47 75.02
L-GCN (k_at_hop=[200, 10], active_conn=10, step=0.6, maxsz=300) 74.38 83.51 78.68
GCN-D (2 prpsls) 95.41 67.77 79.25
GCN-D (5 prpsls) 94.62 72.59 82.15
GCN-D (8 prpsls) 94.23 79.69 86.35
GCN-D (20 prplss) 94.54 81.62 87.61
GCN-D + GCN-S (2 prpsls) 99.07 67.22 80.1
GCN-D + GCN-S (5 prpsls) 98.84 72.01 83.31
GCN-D + GCN-S (8 prpsls) 97.93 78.98 87.44
GCN-D + GCN-S (20 prpsls) 97.91 80.86 88.57
GCN-V 92.45 82.42 87.14
GCN-V + GCN-E 92.56 83.74 87.93
Infomap(ours)(k=50,min_sim=0.58) 95.50 92.51 93.98

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MrAsRZ9K-1606379388603)(./image/evaluate.png)]

Results on YouTube-Faces

Method Pairwise F-score BCubed F-score NMI
Chinese Whispers (k=160, th=0.75, iters=20) 72.9 70.55 93.25
Approx Rank Order (k=200, th=0) 76.45 75.45 94.34
Kmeans (ncluster=1436) 67.86 75.77 93.99
KNN DBSCAN (k=160, th=0., eps=0.3, min=1) 91.35 89.34 97.52
FastHAC (dist=0.72, single) 93.07 87.98 97.19
GCN-D (4 prpsls) 94.44 91.33 97.97
Infomap(ours)(k=400,min_sim=0.56) 92.82 91.78 98.04

Results on DeepFashion

Method Pairwise F-score BCubed F-score NMI
Chinese Whispers (k=5, th=0.7, iters=20) 31.22 53.25 89.8
Approx Rank Order (k=10, th=0) 25.04 52.77 88.71
Kmeans (ncluster=3991) 32.02 53.3 88.91
KNN DBSCAN (k=4, th=0., eps=0.1, min=2) 25.07 53.23 90.75
FastHAC (dist=0.4, single) 22.54 48.77 90.44
Meanshift (bandwidth=0.5) 31.61 56.73 89.29
Spectral (ncluster=3991, affinity=‘rbf’) 29.6 47.12 86.95
DaskSpectral (ncluster=3991, affinity=‘rbf’) 24.25 44.11 86.21
CDP (single model, k=2, th=0.5, maxsz=200) 28.28 57.83 90.93
L-GCN (k_at_hop=[5, 5], active_conn=5, step=0.5, maxsz=50) 30.7 60.13 90.67
GCN-D (2 prpsls) 29.14 59.09 89.48
GCN-D (8 prpsls) 32.52 57.52 89.54
GCN-D (20 prpsls) 33.25 56.83 89.36
GCN-V 33.59 59.41 90.88
GCN-V + GCN-E 38.47 60.06 90.5
Infomap(ours)(k=400,min_sim=0.88) 38.67 60.48 90.97

Time Consumes and Gpu Memory (k=50,min_sim=0.58)

Nodes Edges TimeCount Gpu Memory
500000 16535263 160(s) 2745(MiB)
1000000 30206572 400(s) 3235(MiB)

Comments

  • k值越大,TimeCount会变长,Gpu Memory会增加
  • k值并非infomap的参数,仅为faiss构建knn构建时使用
  • 数据量增加一倍,KNN构建时间为原来的4倍(实质为n*n的向量搜索)

References

  • 最小熵原理(五):“层层递进”之社区发现与聚类
  • 人脸聚档主流方案

一种无监督人脸聚类方法(SOTA效果)相关推荐

  1. 解读:CVPR1903_图卷积网络GCN无监督人脸聚类

    Linkage Based Face Clustering via Graph Convolution Network https://arxiv.org/pdf/1903.11306.pdf 1简述 ...

  2. 超越最新无监督域自适应方法,研究人员提轻量CNN新架构OSNet

    作者 | Kaiyang Zhou, Xiatian Zhu, Yongxin Yang, Andrea Cavallaro, and Tao Xiang 译者 | TroyChang 编辑 | Ja ...

  3. Mol2vec | 一种无监督机器学习方法的分子亚结构向量表示

    Mol2vec 受自然语言处理技术的启发,这里介绍Mol2vec是一种无监督的机器学习方法,用于学习分子亚结构的向量表示.就像Word2vec模型一样,密切相关的单词的向量在向量空间中非常接近,Mol ...

  4. 用于稠密检索的无监督领域适应方法—Generative Pseudo Labeling (GPL)

    ©作者 | 刘璐 学校 | 北京邮电大学 研究方向 | 问题生成与QA 论文标题: GPL: Generative Pseudo Labeling for Unsupervised Domain Ad ...

  5. 恒源云(GpuShare)_无监督的QG方法

    文章来源 | 恒源云社区 原文地址 | 通过摘要信息问题生成改进无监督问答 原文作者 | Mathor 上海于昨日宣布要开始在全市范围内开展新一轮切块式.网格化核酸筛查![恒源云]云墩墩☁️ 提醒小伙 ...

  6. 经典论文复现 | InfoGAN:一种无监督生成方法

    过去几年发表于各大 AI 顶会论文提出的 400 多种算法中,公开算法代码的仅占 6%,其中三分之一的论文作者分享了测试数据,约 54% 的分享包含"伪代码".这是今年 AAAI ...

  7. KDD 18 论文解读 | GraphWave:一种全新的无监督网络嵌入方法

    在碎片化阅读充斥眼球的时代,越来越少的人会去关注每篇论文背后的探索和思考. 在这个栏目里,你会快速 get 每篇精选论文的亮点和痛点,时刻紧跟 AI 前沿成果. 点击本文底部的「阅读原文」即刻加入社区 ...

  8. 2023-一种无监督目标检测和实例分割方法【Cut and Learn for Unsupervised Object Detection and Instance Segmentation】

    Cut and Learn for Unsupervised Object Detection and Instance Segmentation 无监督目标检测和实例分割的剪切与学习 Faceboo ...

  9. 【采用】无监督核心聚类算法

    第一种 K-means 现在,我们暂时不去考虑原始数据的形式,假设我们已经讲其映射到了一个欧式空间上了,为了方便,我们用二维空间来展示,如下图所示: 图1 散点图 单纯用肉眼看,我们的大脑很快就能判断 ...

最新文章

  1. The request sent by the client was syntactically incorrect. 错误以及spring事物
  2. matlab中如何画隐函数方程组,怎样用matlab画隐函数
  3. BAT脚本加防火墙455端口
  4. XML编辑器之XMLSpy2005
  5. 2.2.4 数据的的存储和排列
  6. mysql的存储覆盖_mysql覆盖存储
  7. 纯Java中的Functor和Monad示例
  8. 抢疯了!不到5分钟 三星Galaxy Fold国行版即全网告罄
  9. 一件程序员必备武器的诞生
  10. html meta标签作用
  11. 目标检测(Object Detection)
  12. 波峰波谷(凸点凹点)的检测算法
  13. linux命令测网速
  14. xxl-job整合到微服务
  15. 使用Prometheus+Grafana监控MySQL
  16. 图形学基础之透视校正插值
  17. python数据逆透视_利用Python实现数据逆透视
  18. 【BUG记录】Idea spring boot项目中target中没有同步更新最新目录文件及资源
  19. Linux---挂载和卸载移动硬盘、开机自启动机械硬盘
  20. 想必这篇秋招面试贴会帮助你

热门文章

  1. 00后女记者的一场直播挑战,触动了多少城市年轻打工人的心
  2. 苹果手机密码设置在哪里_手机SIM卡怎么设置密码
  3. ZZULIOJ:1088: 手机短号 (多实例)
  4. 腾讯云windows server搭建valheim(英灵神殿)服务器
  5. 【Unity3D自学记录】代码获取隐藏游戏对象
  6. R语言并行计算spearman相关系数
  7. 如何对长期出差的员工进行“人文关怀”,前提是差旅标准仍然很抠?
  8. Delphi Web前端开发教程(2):基于TMS WEB Core框架
  9. java wap访问网页_在PC使用Chrome访问wap网页
  10. 电脑我的计算机硬盘刷新慢,事实:如果计算机硬盘的读取速度变得很慢该怎么办?...