一种无监督人脸聚类方法(SOTA效果)
Learning to Cluster Faces by Infomap
Intorduction
采用了无监督方法infomap进行人脸聚类github,在公开数据集上MS-Celeb-1M、YouTube-Faces、DeepFashion获得较当前主流方法(如GCN人脸聚类等监督方法)同等或更优的效果.
通过faiss加速邻接边的构建,提高聚类速度,单批百万数据聚类仅需几分钟. 效果及性能测试详见下表.
Infomap Intorduction
About Infomap
About GCN Method
- L-GCN: Linkage-based Face Clustering via Graph Convolution Network, CVPR 2019
- GCN-D: Learning to Cluster Faces on an Affinity Graph, CVPR 2019 (Oral)
- 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效果)相关推荐
- 解读:CVPR1903_图卷积网络GCN无监督人脸聚类
Linkage Based Face Clustering via Graph Convolution Network https://arxiv.org/pdf/1903.11306.pdf 1简述 ...
- 超越最新无监督域自适应方法,研究人员提轻量CNN新架构OSNet
作者 | Kaiyang Zhou, Xiatian Zhu, Yongxin Yang, Andrea Cavallaro, and Tao Xiang 译者 | TroyChang 编辑 | Ja ...
- Mol2vec | 一种无监督机器学习方法的分子亚结构向量表示
Mol2vec 受自然语言处理技术的启发,这里介绍Mol2vec是一种无监督的机器学习方法,用于学习分子亚结构的向量表示.就像Word2vec模型一样,密切相关的单词的向量在向量空间中非常接近,Mol ...
- 用于稠密检索的无监督领域适应方法—Generative Pseudo Labeling (GPL)
©作者 | 刘璐 学校 | 北京邮电大学 研究方向 | 问题生成与QA 论文标题: GPL: Generative Pseudo Labeling for Unsupervised Domain Ad ...
- 恒源云(GpuShare)_无监督的QG方法
文章来源 | 恒源云社区 原文地址 | 通过摘要信息问题生成改进无监督问答 原文作者 | Mathor 上海于昨日宣布要开始在全市范围内开展新一轮切块式.网格化核酸筛查![恒源云]云墩墩☁️ 提醒小伙 ...
- 经典论文复现 | InfoGAN:一种无监督生成方法
过去几年发表于各大 AI 顶会论文提出的 400 多种算法中,公开算法代码的仅占 6%,其中三分之一的论文作者分享了测试数据,约 54% 的分享包含"伪代码".这是今年 AAAI ...
- KDD 18 论文解读 | GraphWave:一种全新的无监督网络嵌入方法
在碎片化阅读充斥眼球的时代,越来越少的人会去关注每篇论文背后的探索和思考. 在这个栏目里,你会快速 get 每篇精选论文的亮点和痛点,时刻紧跟 AI 前沿成果. 点击本文底部的「阅读原文」即刻加入社区 ...
- 2023-一种无监督目标检测和实例分割方法【Cut and Learn for Unsupervised Object Detection and Instance Segmentation】
Cut and Learn for Unsupervised Object Detection and Instance Segmentation 无监督目标检测和实例分割的剪切与学习 Faceboo ...
- 【采用】无监督核心聚类算法
第一种 K-means 现在,我们暂时不去考虑原始数据的形式,假设我们已经讲其映射到了一个欧式空间上了,为了方便,我们用二维空间来展示,如下图所示: 图1 散点图 单纯用肉眼看,我们的大脑很快就能判断 ...
最新文章
- The request sent by the client was syntactically incorrect. 错误以及spring事物
- matlab中如何画隐函数方程组,怎样用matlab画隐函数
- BAT脚本加防火墙455端口
- XML编辑器之XMLSpy2005
- 2.2.4 数据的的存储和排列
- mysql的存储覆盖_mysql覆盖存储
- 纯Java中的Functor和Monad示例
- 抢疯了!不到5分钟 三星Galaxy Fold国行版即全网告罄
- 一件程序员必备武器的诞生
- html meta标签作用
- 目标检测(Object Detection)
- 波峰波谷(凸点凹点)的检测算法
- linux命令测网速
- xxl-job整合到微服务
- 使用Prometheus+Grafana监控MySQL
- 图形学基础之透视校正插值
- python数据逆透视_利用Python实现数据逆透视
- 【BUG记录】Idea spring boot项目中target中没有同步更新最新目录文件及资源
- Linux---挂载和卸载移动硬盘、开机自启动机械硬盘
- 想必这篇秋招面试贴会帮助你
热门文章
- 00后女记者的一场直播挑战,触动了多少城市年轻打工人的心
- 苹果手机密码设置在哪里_手机SIM卡怎么设置密码
- ZZULIOJ:1088: 手机短号 (多实例)
- 腾讯云windows server搭建valheim(英灵神殿)服务器
- 【Unity3D自学记录】代码获取隐藏游戏对象
- R语言并行计算spearman相关系数
- 如何对长期出差的员工进行“人文关怀”,前提是差旅标准仍然很抠?
- Delphi Web前端开发教程(2):基于TMS WEB Core框架
- java wap访问网页_在PC使用Chrome访问wap网页
- 电脑我的计算机硬盘刷新慢,事实:如果计算机硬盘的读取速度变得很慢该怎么办?...