This is a project submitted as a requirement for this course. The course was administered in Fall 2019-2020 (before the Coronavirus outbreak...) in Tel-Aviv University - School of Mathematical Sciences, and taught by Prof. Haim Avron. This project is a reconstruction of experiments of [1] about an algorithm for a faster computation least-square solutions accurately. A complete documentation of the code is available here(open it in a web browser).
The code can be fetched from this repo. The Jupyter Notebook does the same work, and can be deployed to Google Colab. While the the notebook version can be used immediately, this code has some prerequisites. Any questions about this project may be sent by mail to 'eladeatah' at mail.tau.ac.il (replace 'at' by @).
This code was developed and tested using the following Python 3.7 dependencies. These dependencies are listed in requirements.txt. All these packages can be installed using the 'pip' package manager (when the command window is in the main directory where requirements.txt is located):
pip install -r requirements.txt
All the packages, except for Sacred, are available as well using 'conda' package manager.
The Unit-Test files are:
- test_caratheodory_set.py - Tests the Caratheodory booster method.
- test_coreset_methods.py - Tests the method which produces the coreset for a given matrix.
Running any of these tests can be performed by:
<python_path> -m unittest <test_file_path>
Credits for the original algorithms, paper and results of [1] belong to its respectful authors: Alaa Maalouf, Ibrahim Jubran and Dr. Dan Feldman. The following repo contains the original code of these researchers which produced the original results.
This project is licensed under the MIT License - see the LICENSE file for details
[1] Fast and Accurate Least-Mean-Squares Solvers. Maalouf, Jubran and Feldman (NIPS 2019).