{"id":16397418,"url":"https://github.com/foxriver76/eais-si","last_synced_at":"2025-07-16T01:11:56.622Z","repository":{"id":95824471,"uuid":"299890877","full_name":"foxriver76/eais-si","owner":"foxriver76","description":null,"archived":false,"fork":false,"pushed_at":"2021-01-13T09:33:31.000Z","size":43371,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-05T17:38:40.042Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","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/foxriver76.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":"2020-09-30T10:59:39.000Z","updated_at":"2021-01-13T09:33:34.000Z","dependencies_parsed_at":"2023-08-31T13:48:04.305Z","dependency_job_id":null,"html_url":"https://github.com/foxriver76/eais-si","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/foxriver76/eais-si","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxriver76%2Feais-si","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxriver76%2Feais-si/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxriver76%2Feais-si/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxriver76%2Feais-si/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/foxriver76","download_url":"https://codeload.github.com/foxriver76/eais-si/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxriver76%2Feais-si/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265472916,"owners_count":23772002,"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-10-11T05:10:02.514Z","updated_at":"2025-07-16T01:11:56.585Z","avatar_url":"https://github.com/foxriver76.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EAIS 2020 Special Issue\n\n## How To execute the Experiments\nYou need Python \u003e= 3.6, the latest version of [skmultiflow](https://github.com/scikit-multiflow/scikit-multiflow) installed as well as the Incremental PCA, which you can find below.\n\n### Experiments on Synthetic Streams\n- execute `python pca_streams.py` inside the `experiments` folder to reproduce the PCA experiments\n- execute `python rp_streams.py` inside the `experiments` folder to reproduce the Random Projection experiments\n\n### Experiments on the NSDQ Dataset\n- execute `python pca_nasdaq_skipgram.py` inside the `experiments` folder to reproduce the PCA experiments via Skipgram embedding\n- execute `python pca_nasdaq_tf-idf.py` inside the `experiments` folder to reproduce the PCA experiments via tf-idf encoding\n- execute `python rp_nasdaq.py` inside the `experiments` folder to reproduce the Random Projection experiments for Skipgram as well as tf-idf\n\nRequirements for Incremental PCA\n-----\n* C++11 compiler, Python3, Eigen3, Pybind11, Numpy\n\n* Note: Tested on macOS Mojave and Ubuntu 19.0.4 LTS.\n\n******\n\nSetup for Incremental PCA\n-----\n#### Mac OS with Homebrew\n* Install libraries\n\n    `brew install python3`\n\n    `brew install eigen`\n\n    `brew install pybind11`\n\n    `pip3 install numpy`\n\n* Build with cmake\n\n    `cmake .`\n\n    `make`\n\n* This generates a shared library, \"inc_pca_cpp.xxxx.so\" (e.g., inc_pca_cpp.cpython-37m-darwin.so).\n\n* Install the modules with pip3.\n\n    `pip3 install .`\n\n#### Linux (tested on Ubuntu 19.0.4 LTS)\n* Install libraries\n\n    `sudo apt update`\n\n    `sudo apt install libeigen3-dev`\n\n    `sudo apt install python3-pip python3-dev`\n\n    `pip3 install pybind11`\n\n    `pip3 install numpy`\n\n*  Compile with:\n\n    ``c++ -O3 -Wall -mtune=native -march=native -shared -std=c++11 -I/usr/include/eigen3/ -fPIC `python3 -m pybind11 --includes` inc_pca.cpp inc_pca_wrap.cpp -o inc_pca_cpp`python3-config --extension-suffix` ``\n\n* This generates a shared library, \"inc_pca_cpp.xxxx.so\" (e.g., inc_pca_cpp.cpython-37m-x86_64-linux-gnu.so).\n\n* Install the modules with pip3.\n\n    `pip3 install .`\n\n******\n\n\n\n******\n\nSpecial Thanks goes to Fujiwara et al. for providing the Incremenatal Streaming PCA \nFor more information see:\n-----\n* Incremental PCA for visualizing streaming multidimensional data from:    \n***An Incremental Dimensionality Reduction Method for Visualizing Streaming Multidimensional Data***    \nTakanori Fujiwara, Jia-Kai Chou, Shilpika, Panpan Xu, Liu Ren, and Kwan-Liu Ma   \nIEEE Transactions on Visualization and Computer Graphics and IEEE VIS 2019 (InfoVis).\nDOI: [10.1109/TVCG.2019.2934433](https://doi.org/10.1109/TVCG.2019.2934433)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffoxriver76%2Feais-si","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffoxriver76%2Feais-si","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffoxriver76%2Feais-si/lists"}