是否有一种有效的方法来聚类标记的相似数据点?
我有一个如下所示的数据框:
| Image | Similar Images |
| ------| -------------- |
| 1 | [1, 2, 6] |
| 2 | [2, 1, 6] |
| 3 | [3, 4] |
| 4 | [4, 3] |
| 5 | [5] |
| 6 | [6, 1, 2] |
我想制作一组相似的图像并标记它们。我的目标是:
| Image | Similar Images | Label |
| ------| -------------- |-------|
| 1 | [1, 2, 6] | 1 |
| 2 | [2, 1, 6] | 1 |
| 3 | [3, 4] | 2 |
| 4 | [4, 3] | 2 |
| 5 | [5] | 3 |
| 6 | [6, 1, 2] | 1 |
有没有一种有效的方法来做到这一点?我的计算资源有限,大约有 178000 张图像,这就是为什么我想知道是否有任何有效的现有方法或包可以执行(部分)此任务。
回答
frozenset那就试试factorize
df['new'] = df['Similar Images'].map(frozenset).factorize()[0]+1