{"id":21315299,"url":"https://github.com/futurecomputing4ai/proxcsl","last_synced_at":"2025-03-15T21:25:47.749Z","repository":{"id":248021819,"uuid":"814882358","full_name":"FutureComputing4AI/ProxCSL","owner":"FutureComputing4AI","description":null,"archived":false,"fork":false,"pushed_at":"2024-06-13T23:19:41.000Z","size":3111,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-22T10:29:14.719Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FutureComputing4AI.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-13T23:05:12.000Z","updated_at":"2024-07-11T20:01:45.000Z","dependencies_parsed_at":"2024-07-11T23:55:00.018Z","dependency_job_id":null,"html_url":"https://github.com/FutureComputing4AI/ProxCSL","commit_stats":null,"previous_names":["futurecomputing4ai/proxcsl"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FutureComputing4AI%2FProxCSL","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FutureComputing4AI%2FProxCSL/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FutureComputing4AI%2FProxCSL/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FutureComputing4AI%2FProxCSL/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FutureComputing4AI","download_url":"https://codeload.github.com/FutureComputing4AI/ProxCSL/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243791380,"owners_count":20348453,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-21T18:18:54.877Z","updated_at":"2025-03-15T21:25:47.701Z","avatar_url":"https://github.com/FutureComputing4AI.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"## proxCSL\n\nThis repository contains the implementation of our method for distributed sparse logistic regression with proximal CSL updates. This method is published in our paper \"High-Dimensional Distributed Sparse Classification with Scalable Communication-Efficient Global Updates\" in KDD 2024.\n\nIn addition, we include our implementations of all baselines used in the paper: LIBLINEAR, Naive Averaging, OWA, sCSL, and sDANE. All methods are implemented in C++ and use the Armadillo and liblbfgs libraries.\n\nFor Armadillo installation, refer to: https://arma.sourceforge.net/\n\nFor liblbfgs refer to: \nhttps://www.chokkan.org/software/liblbfgs/\n\nAdditional dependencies will be needed. For example, if using Ubuntu or Debian, install dependencies with:\n\n```\nsudo apt-get install liblbfgs-dev libopenblas-dev g++ make\n```\n\nor, if on OS X, make sure that a C++ compiler is installed and run\n\n```\nbrew install liblbfgs openblas\n```\n\nOnce dependencies are installed, the following two targets are available:\n\n * `make single`: build programs to test proxCSL and competitors in the multicore single-node setting\n * `make mpi`: build MPI-enabled programs for distributed usage\n\nEach program will print the required options.\nInstead of running once on a given dataset, each program (e.g. `sweep_acowa`) will sweep a variety of lambda values on the same dataset.\nIn this way, performance for different numbers of nonzeros can be given.\n\nFor example, try running OWA, sCSL, and proxCSL on the included newsgroups dataset:\n\n```\n./sweep_owa data/newsgroups.svm owa.csv 1 -6 1 21 256\n./sweep_csl data/newsgroups.svm csl.csv 1 -6 1 21 256 2 0\n./sweep_prox_csl data/newsgroups.svm pcsl.csv 1 -6 1 21 256 2 0 1\n```\n\nAll datasets should be in libsvm format.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffuturecomputing4ai%2Fproxcsl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffuturecomputing4ai%2Fproxcsl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffuturecomputing4ai%2Fproxcsl/lists"}