Snap ML: A Hierarchical Framework for Machine Learning

Authors: Celestine Dünner, Thomas Parnell, Dimitrios Sarigiannis, Nikolas Ioannou, Andreea Anghel, Gummadi Ravi, Madhusudanan Kandasamy, Haralampos Pozidis

NeurIPS 2018 | Conference PDF | Archive PDF | Plain Text | LLM Run Details

Reproducibility Variable Result LLM Response
Research Type Experimental We evaluate the performance of Snap ML in both single-node and multi-node environments, quantifying the benefit of the hierarchical scheme and the data streaming functionality, and comparing with other widely-used machine learning software frameworks. Finally, we present a logistic regression benchmark on the Criteo Terabyte Click Logs dataset and show that Snap ML achieves the same test loss an order of magnitude faster than any of the previously reported results, including those obtained using Tensor Flow and scikit-learn.
Researcher Affiliation Industry Celestine Dünner 1 Thomas Parnell 1 Dimitrios Sarigiannis1 Nikolas Ioannou1 Andreea Anghel1 Gummadi Ravi2 Madhusudanan Kandasamy2 Haralampos Pozidis1 1IBM Research, Zurich, Switzerland 2IBM Systems, Bangalore, India {cdu,tpa,rig,nio,aan}@zurich.ibm.com {ravigumm,madhusudanan}@in.ibm.com hap@zurich.ibm.com
Pseudocode No The paper describes algorithmic concepts but does not include any explicit pseudocode or algorithm blocks.
Open Source Code No The paper mentions internal implementation details like 'libglm' and python modules 'snap-ml-local', 'snap-ml-mpi', and 'snap-ml-spark', but does not explicitly state that the source code for Snap ML itself is openly available or provide a link to it.
Open Datasets Yes For our multi-node experiments we will use the Terabyte Click Logs dataset (criteo-tb) released by Criteo Labs [3]. ... [3] Criteo Labs. Criteo releases industry s largest-ever dataset for machine learning to academic community, 2015. https://www.criteo.com/news/press-releases/2015/07/criteo-releases-industrys-largest-ever-dataset/.
Dataset Splits No We perform a random 75%/25% train/test split.
Hardware Specification Yes The results in this section were obtained using a cluster of 4 IBM Power Systems* AC922 servers. Each server has 4 NVIDIA Tesla V100 GPUs attached via the NVLINK 2.0 interface. ... we also used an Intel x86-based machine (Xeon** Gold 6150 CPU@2.70GHz ) with a single NVIDIA Tesla V100 GPU attached using the PCI Gen3 interface.
Software Dependencies No The paper mentions various software components used or benchmarked (e.g., scikit-learn, Tensor Flow, CUDA, CUB library, MPI, Py4J) but does not provide specific version numbers for the software dependencies directly used in the implementation of Snap ML.
Experiment Setup Yes We use the stochastic dual coordinated ascent optimizer provided by Tensor Flow, using the optimizer and train input function options suggested by Google [11]. We use a batch size of 1M, and a number of IO threads equal to the number of physical processors settings which we have experimentally found to perform the best.