{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/deep-probability-aggregation-clustering","title":"Deep Online Probability Aggregation Clustering","arxiv_id":"2407.05246","date":"2024-07-07","proceeding":null,"authors":["Yuxuan Yan","Na Lu","Ruofan Yan"],"abstract":"Combining machine clustering with deep models has shown remarkable superiority in deep clustering. It modifies the data processing pipeline into two alternating phases: feature clustering and model training. However, such alternating schedule may lead to instability and computational burden issues. We propose a centerless clustering algorithm called Probability Aggregation Clustering (PAC) to proactively adapt deep learning technologies, enabling easy deployment in online deep clustering. PAC circumvents the cluster center and aligns the probability space and distribution space by formulating clustering as an optimization problem with a novel objective function. Based on the computation mechanism of the PAC, we propose a general online probability aggregation module to perform stable and flexible feature clustering over mini-batch data and further construct a deep visual clustering framework deep PAC (DPAC). Extensive experiments demonstrate that PAC has superior clustering robustness and performance and DPAC remarkably outperforms the state-of-the-art deep clustering methods.","url_abs":"https://arxiv.org/abs/2407.05246v2","url_pdf":"https://arxiv.org/pdf/2407.05246v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"deep-probability-aggregation-clustering","repo_url":"https://github.com/aomandechenai/deep-probability-aggregation-clustering","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"clustering","task_name":"Clustering"},{"task_slug":"deep-clustering","task_name":"Deep Clustering"},{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"image-clustering","task_name":"Image Clustering"}],"methods":[{"method_slug":"contrastive-learning","method_name":"Contrastive Learning"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/image-clustering-on-cifar-10","task":"Image Clustering","dataset":"CIFAR-10","model":"DPAC","rank_in_archive_order":5,"of":40,"metrics":{"ARI":"0.866","Accuracy":"0.934","Backbone":"ResNet-34","NMI":"0.87"},"uses_additional_data":false},{"leaderboard":"/sota/image-clustering-on-cifar-100","task":"Image Clustering","dataset":"CIFAR-100","model":"DPAC","rank_in_archive_order":8,"of":30,"metrics":{"ARI":"0.393","Accuracy":"0.555","Backbone":"ResNet-34","NMI":"0.542"},"uses_additional_data":false},{"leaderboard":"/sota/image-clustering-on-imagenet-10","task":"Image Clustering","dataset":"ImageNet-10","model":"DPAC","rank_in_archive_order":3,"of":18,"metrics":{"ARI":"0.935","Accuracy":"0.97","Backbone":"ResNet-34","NMI":"0.925"},"uses_additional_data":false},{"leaderboard":"/sota/image-clustering-on-imagenet-dog-15","task":"Image Clustering","dataset":"Imagenet-dog-15","model":"DPAC","rank_in_archive_order":6,"of":20,"metrics":{"ARI":"0.598","Accuracy":"0.726","Backbone":"ResNet-34","NMI":"0.667"},"uses_additional_data":false},{"leaderboard":"/sota/image-clustering-on-stl-10","task":"Image Clustering","dataset":"STL-10","model":"DPAC","rank_in_archive_order":5,"of":29,"metrics":{"ARI":"0.861","Accuracy":"0.934","Backbone":"ResNet-34","NMI":"0.863"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2407.05246","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2407.05246"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/aomandechenai/deep-probability-aggregation-clustering","reach":{"status":"ok"}}],"summary":{"ran":5,"unverified":5},"by_repo_kind":{"official":{"samples":10,"ran":5,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":10,"samples":[{"code_sha256_prefix":"a3799b1622a4261a","entry":"get_resnet","repo":"aomandechenai/deep-probability-aggregation-clustering","repo_kind":"official","path":"PAC_DPAC_program/models/resnet.py","file_url":"https://github.com/aomandechenai/deep-probability-aggregation-clustering/blob/HEAD/PAC_DPAC_program/models/resnet.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a3799b1622a4261a"}},{"code_sha256_prefix":"a394b6a4fad5a4e5","entry":"get_resnet_cifar","repo":"aomandechenai/deep-probability-aggregation-clustering","repo_kind":"official","path":"PAC_DPAC_program/models/resnet_cifar.py","file_url":"https://github.com/aomandechenai/deep-probability-aggregation-clustering/blob/HEAD/PAC_DPAC_program/models/resnet_cifar.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a394b6a4fad5a4e5"}},{"code_sha256_prefix":"97f23de7840fbb7d","entry":"get_resnet_stl","repo":"aomandechenai/deep-probability-aggregation-clustering","repo_kind":"official","path":"PAC_DPAC_program/models/resnet_stl.py","file_url":"https://github.com/aomandechenai/deep-probability-aggregation-clustering/blob/HEAD/PAC_DPAC_program/models/resnet_stl.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"97f23de7840fbb7d"}},{"code_sha256_prefix":"8ed3862e4beebd1e","entry":"pac_loss","repo":"aomandechenai/deep-probability-aggregation-clustering","repo_kind":"official","path":"PAC_DPAC_program/clustering_step.py","file_url":"https://github.com/aomandechenai/deep-probability-aggregation-clustering/blob/HEAD/PAC_DPAC_program/clustering_step.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"8ed3862e4beebd1e"}},{"code_sha256_prefix":"9055a311efaae473","entry":"pairwise_cosine","repo":"aomandechenai/deep-probability-aggregation-clustering","repo_kind":"official","path":"PAC_DPAC_program/probability_aggregation_clustering.py","file_url":"https://github.com/aomandechenai/deep-probability-aggregation-clustering/blob/HEAD/PAC_DPAC_program/probability_aggregation_clustering.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"9055a311efaae473"}},{"code_sha256_prefix":"f6d031f1affc8b74","entry":"calculate_cost_matrix","repo":"aomandechenai/deep-probability-aggregation-clustering","repo_kind":"official","path":"PAC_DPAC_program/evaluation.py","file_url":"https://github.com/aomandechenai/deep-probability-aggregation-clustering/blob/HEAD/PAC_DPAC_program/evaluation.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"f6d031f1affc8b74"}},{"code_sha256_prefix":"c5807f4f8acc5c0b","entry":"get_cluster_labels_from_indices","repo":"aomandechenai/deep-probability-aggregation-clustering","repo_kind":"official","path":"PAC_DPAC_program/evaluation.py","file_url":"https://github.com/aomandechenai/deep-probability-aggregation-clustering/blob/HEAD/PAC_DPAC_program/evaluation.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c5807f4f8acc5c0b"}},{"code_sha256_prefix":"3a093ae871761352","entry":"get_shuffle_idx","repo":"aomandechenai/deep-probability-aggregation-clustering","repo_kind":"official","path":"PAC_DPAC_program/probability_aggregation_clustering.py","file_url":"https://github.com/aomandechenai/deep-probability-aggregation-clustering/blob/HEAD/PAC_DPAC_program/probability_aggregation_clustering.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3a093ae871761352"}},{"code_sha256_prefix":"5f712aed23048925","entry":"pairwise_euclidean","repo":"aomandechenai/deep-probability-aggregation-clustering","repo_kind":"official","path":"PAC_DPAC_program/probability_aggregation_clustering.py","file_url":"https://github.com/aomandechenai/deep-probability-aggregation-clustering/blob/HEAD/PAC_DPAC_program/probability_aggregation_clustering.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5f712aed23048925"}},{"code_sha256_prefix":"562db12f15d6f0f9","entry":"train_model","repo":"aomandechenai/deep-probability-aggregation-clustering","repo_kind":"official","path":"PAC_DPAC_program/clustering_step.py","file_url":"https://github.com/aomandechenai/deep-probability-aggregation-clustering/blob/HEAD/PAC_DPAC_program/clustering_step.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"562db12f15d6f0f9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}