Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update fork #1

Merged
merged 122 commits into from
Sep 18, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
122 commits
Select commit Hold shift + click to select a range
35a44de
Added some docstrings to begin the process of documenting the code
Sep 7, 2020
5d59fc1
doctrings added for the uncertainty forest class
Sep 9, 2020
263ddab
finalized comments for the uncertainty forest class in forest.py
Sep 9, 2020
b5ba74e
Create test_voters.py
williamrxu Sep 9, 2020
11df054
overview draft
jshinm Sep 9, 2020
8c3d2ac
revised comments based on @jdey4's suggestions
bstraus1 Sep 9, 2020
64fb5a6
fix travis
jdey4 Sep 9, 2020
ddcdd4c
Merge branch 'master' of https://github.com/neurodata/progressive-lea…
jdey4 Sep 9, 2020
b72750d
fix travis
jdey4 Sep 9, 2020
f2f51cc
updated system requirements
jshinm Sep 9, 2020
0b15e91
Merge pull request #97 from jshin13/patch-2
jdey4 Sep 9, 2020
1800252
Purged regression code from transformers.py
levinwil Sep 9, 2020
e6d73d7
Purged regression from deciders.py
levinwil Sep 9, 2020
127b4b7
Purged regression and multi-label from voters.py
levinwil Sep 9, 2020
593a07d
Merge pull request #104 from neurodata/regression_purge
jdey4 Sep 9, 2020
9476a3d
Added docstring header to decider.py
levinwil Sep 10, 2020
5ac7f62
Added docstring header to transformer.py
levinwil Sep 10, 2020
5370780
Added docstring header to voters.py
levinwil Sep 10, 2020
7bac44c
Merge pull request #107 from neurodata/docstring_header_additions
jdey4 Sep 10, 2020
cdb0cab
get rid of pickle files
jdey4 Sep 10, 2020
dfd2d7f
get rid of pickle files
jdey4 Sep 10, 2020
9535bbf
Purged LifelongClassificationNetwork, added docstring header to netwo…
levinwil Sep 10, 2020
0d50531
Modified LifelongClassificationNetwork to accept optimizer instead of…
levinwil Sep 10, 2020
535ecf7
Purged TransferForest
levinwil Sep 10, 2020
5c91c1b
Added docstring header
levinwil Sep 10, 2020
b42424b
Modify KNNClassificationVoter to default k=None and internally calcul…
levinwil Sep 10, 2020
c17bd67
Matched LifelongClassificationNetwork and LifelongClassificationFores…
levinwil Sep 10, 2020
b5a9ad1
Added decider_kwargs to forest.py
levinwil Sep 10, 2020
9759c67
Added decider_kwargs to network.py
levinwil Sep 10, 2020
6ca813d
Added add_transformer to network.py
levinwil Sep 10, 2020
9793584
Added 'add_transformer' to forest.py
levinwil Sep 10, 2020
27e97af
Updated progressive_learner add_task docstring
levinwil Sep 10, 2020
02eba32
Hotfix to forest.py to add forest transformers (rather than just trees)
levinwil Sep 10, 2020
89e1b3d
Got rid of transformer_ids argument to predict/predict_proba in forest
levinwil Sep 10, 2020
1ee4e0e
Got rid of transformer_ids argument to predict/predict_proba in forest
levinwil Sep 10, 2020
e229d70
Renamed LifelongClassificationForest to L2F
levinwil Sep 10, 2020
3f4e631
Renamed LifelongClassificationNetwork to L2N
levinwil Sep 10, 2020
35a2a81
Delete test_neuralregression.py
levinwil Sep 10, 2020
9df6cec
Delete test_treeregression.py
levinwil Sep 10, 2020
97e2cdb
Delete test_deciders.py
levinwil Sep 10, 2020
7ceb314
Added ValueError check to SimpleAverage Decider
levinwil Sep 10, 2020
ade50c6
Merge pull request #117 from neurodata/docstring_header_additions
jdey4 Sep 10, 2020
0dc3501
Naming convention revert and hot fix to deciders (#120)
levinwil Sep 10, 2020
883f509
will fix
jdey4 Sep 10, 2020
0229f73
Update test_KNNClassificationVoter.py
williamrxu Sep 11, 2020
6519be6
Merge pull request #94 from bstraus1/master
jdey4 Sep 11, 2020
ebb3349
modified experiments to import from proglearn package instead of file…
Sep 11, 2020
9128641
reverted change to overview in PKG-INFO
Sep 11, 2020
c64c6bc
Merge pull request #129 from neurodata/will_dev
jdey4 Sep 11, 2020
29221a4
added root contribution guidelines link MD file
Sep 11, 2020
467327a
deleted proglearn.egg-info
Sep 11, 2020
0782ee3
added sphinx and contribtuin.rst
jdey4 Sep 11, 2020
7a0cf69
system test change
jdey4 Sep 11, 2020
ef06f1a
attempting to add code coverage to travis
Sep 11, 2020
2144c71
Merge branch 'repo_maintenance_and_docs' of https://github.com/neurod…
Sep 11, 2020
e4013aa
added test_treeclassification
ypeng22 Sep 11, 2020
d6bddf3
Merge pull request #135 from neurodata/repo_maintenance_and_docs
levinwil Sep 11, 2020
a1549ad
add is_fitted to BaseDecider
tliu68 Sep 13, 2020
d18e962
add is_fitted to decider
tliu68 Sep 13, 2020
b2c3c79
Update test_KNNClassificationVoter.py
williamrxu Sep 13, 2020
f2f957a
Update test_KNNClassificationVoter.py
williamrxu Sep 13, 2020
83758a1
Update test_KNNClassificationVoter.py
williamrxu Sep 13, 2020
397b47e
Create make_XOR.py
williamrxu Sep 14, 2020
667d0e8
Delete test_KNNClassificationVoter.py
williamrxu Sep 14, 2020
cbff538
Added Jupyter tutorial for random_class_exp
PSSF23 Sep 14, 2020
ed4f8ba
Merge pull request #149 from PSSF23/master
jdey4 Sep 14, 2020
d89e097
Rename SimpleAverage in decider.py to SimpleArgmaxAverage and propaga…
chenyugoal Sep 11, 2020
c481cc8
Merge pull request #148 from williamrxu/makeXOR
jdey4 Sep 14, 2020
6734f03
Rename SimpleAverage in decider.py to SimpleArgmaxAverage and propaga…
chenyugoal Sep 11, 2020
8d0849d
Merge branch 'master' of https://github.com/chenyugoal/progressive-le…
chenyugoal Sep 14, 2020
c013d75
2020/09/14 1:16 PM
chenyugoal Sep 14, 2020
7904d47
Class attributes documented
Sep 14, 2020
beee030
fix set_decider kwargs issue
Sep 14, 2020
ea92f99
Merge pull request #154 from ykobaya9/master
levinwil Sep 14, 2020
0c34f7a
Merge branch 'master' into master
chenyugoal Sep 14, 2020
4d0b0e7
replace incorrect comma
chenyugoal Sep 14, 2020
d41e557
Class attributes documented with slight fix
parthgvora Sep 14, 2020
18a6d52
Merge pull request #155 from parthgvora/master
levinwil Sep 14, 2020
a2afc0f
Added attributes section to the docstring for the UncertaintyForest c…
bstraus1 Sep 15, 2020
9876f4c
Merge pull request #159 from bstraus1/master
levinwil Sep 15, 2020
3471601
Minor UF docstring updates
levinwil Sep 15, 2020
dc21c37
make blobs
jdey4 Sep 15, 2020
3f3480b
make blobs
jdey4 Sep 15, 2020
51e5202
Merge pull request #162 from neurodata/levinwil_dev
jdey4 Sep 15, 2020
779c463
make blobs
jdey4 Sep 15, 2020
a86d581
Create test_KNNClassificationVoter.py
williamrxu Sep 15, 2020
c0749a8
make blobs
jdey4 Sep 15, 2020
92024e9
Merge pull request #163 from neurodata/jd_dev
levinwil Sep 15, 2020
e2aa84d
added codecov
jdey4 Sep 15, 2020
aad58d6
added codecov
jdey4 Sep 15, 2020
cc6f236
Merge pull request #167 from neurodata/code_cov
levinwil Sep 15, 2020
96c12ff
Document LifelongClassificationNetwork
RebeccaYin7 Sep 15, 2020
8b211f4
Added badge to README
levinwil Sep 15, 2020
6baf15d
Merge pull request #170 from neurodata/license_badge
jdey4 Sep 15, 2020
8717cbe
add MIT license
jdey4 Sep 15, 2020
6584d48
Merge pull request #172 from neurodata/licebse_badge
levinwil Sep 15, 2020
501d7ed
calculate true distribution
jdey4 Sep 16, 2020
4a48cd7
calculate true distribution
jdey4 Sep 16, 2020
f24ea85
Merge pull request #173 from neurodata/sim_pdf
levinwil Sep 16, 2020
a9e7223
Merge pull request #168 from RebeccaYin7/RebeccaYin7-document_network
jdey4 Sep 16, 2020
5dc2cfc
Merge pull request #165 from williamrxu/sprint0
jdey4 Sep 16, 2020
c95903c
added codecov.yml
jdey4 Sep 16, 2020
5a20e0c
Issue-139: Added documentation to voters.py
jmandavilli Sep 16, 2020
423aecd
add a check for "is_fitted"
tliu68 Sep 16, 2020
2b99e9d
Issue-139: Fixed indentation issues
jmandavilli Sep 16, 2020
6332cdf
Merge pull request #175 from jmandavilli/Issue-139
levinwil Sep 16, 2020
779f869
Minor change to voter documentation
levinwil Sep 16, 2020
4d6ce46
Merge pull request #174 from neurodata/code_cov
levinwil Sep 16, 2020
480ef1a
Merge pull request #140 from tliu68/tliu
levinwil Sep 16, 2020
2ef79dc
Merge pull request #176 from neurodata/minor_voter_documentation_fix
jdey4 Sep 16, 2020
be18fc8
Update transformers.py
Michael-Ainsworth Sep 16, 2020
3c14f96
Merge pull request #130 from chenyugoal/master
jdey4 Sep 16, 2020
6d7a2b7
Setup.py removed unnecessary imports, changed license to MIT
levinwil Sep 16, 2020
9973648
Merge pull request #180 from neurodata/setup_update
jdey4 Sep 16, 2020
2784235
Renamed _get_split_idxs
levinwil Sep 16, 2020
d007ef6
Appended 'Base' to {ClassificationProgressiveLearner, BaseClassificat…
levinwil Sep 16, 2020
e0d27ea
Appended Base to ClassificationDecider name in deciders.py
levinwil Sep 16, 2020
25f1497
Appended Base to Classification{Decider, ProgressiveLearner} name in …
levinwil Sep 16, 2020
88aa8ad
Merge pull request #181 from neurodata/_get_split_idxs_rename
jdey4 Sep 16, 2020
1b831a6
Merge pull request #137 from ypeng22/ypeng22
sampan501 Sep 18, 2020
e7853ac
Merge pull request #177 from Michael-Ainsworth/master
jdey4 Sep 18, 2020
eea0685
Merge pull request #191 from neurodata/interface_base_appendage
jdey4 Sep 18, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
6 changes: 6 additions & 0 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[report]
exclude_lines =
# Have to re-enable the standard pragma
pragma: no cover
@abstract
NotImplementedError
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -133,3 +133,6 @@ dmypy.json

#experiments
.DS_Store

#pickle
*.pickle
5 changes: 4 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,10 @@ cache: pip

install:
- pip install -r requirements.txt
- pip install -U pytest
- pip install -U pytest pytest-cov codecov

script:
- pytest proglearn/

after_success:
- codecov
30 changes: 30 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
Contributing to ProgLearn
======================

(adopted from scikit-learn)

The latest contributing guide is available in the repository at
`docs/contributing.rst`

There are many ways to contribute to ProgLearn, with the most common ones
being contribution of code or documentation to the project. Improving the
documentation is no less important than improving the library itself. If you
find a typo in the documentation, or have made improvements, do not hesitate to
submit a GitHub pull request. Documentation can be found under the
[doc/](https://github.com/neurodata/progressive-learning/tree/master/docs) directory.

But there are many other ways to help. In particular answering queries on the
[issue tracker](https://github.com/neurodata/progressive-learning/issues), and
investigating bugs are very valuable contributions that decrease the burden on
the project maintainers.

Another way to contribute is to report issues you're facing, and give a "thumbs
up" on issues that others reported and that are relevant to you. It also helps
us if you spread the word: reference the project from your blog and articles,
link to it from your website, or simply star it in GitHub to say "I use it".

Code of Conduct
---------------

We abide by the principles of openness, respect, and consideration of others
of the Python Software Foundation: https://www.python.org/psf/codeofconduct/.
222 changes: 21 additions & 201 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,201 +1,21 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions.

"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.

"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:

(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and

(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.

You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
MIT License

Copyright (c) 2020 Dr. Joshua T. Vogelstein

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
11 changes: 6 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
[![Build Status](https://travis-ci.org/neurodata/progressive-learning.svg?branch=master)](https://travis-ci.org/neurodata/progressive-learning)
[![codecov](https://codecov.io/gh/neurodata/progressive-learning/branch/master/graph/badge.svg)](https://codecov.io/gh/neurodata/progressive-learning)
[![arXiv shield](https://img.shields.io/badge/arXiv-2004.12908-red.svg?style=flat)](https://arxiv.org/abs/2004.12908)
[![License](https://img.shields.io/badge/License-MIT-blue)](https://opensource.org/licenses/MIT)

progressive-learning is a package for exploring and using progressive learning algorithms developed by the [neurodata group](https://neurodata.io).

Expand All @@ -15,14 +16,15 @@ progressive-learning is a package for exploring and using progressive learning a
- [Issues](#issues)

# Overview

The natural process of biological learning involves progressive acquisition of new information developing on past knowledge and experiences, which often leads to a performance improvement on a given task. Learning a second language, for instance, is associated with higher performance in an individual’s native language compared to that of monolinguals. In classical machine learning, the process usually begins from the state of <i>tabula rasa</i>, zero knowledge, and is optimized for a single task. The issues arise when the system is sequentially optimized for multiple tasks exhibiting “catastrophic forgetting,” diminishing performance of previously learned tasks. One of the current limitations of artificial intelligence revolves around this inability to transfer knowledge. <br><br>
The progressive learning package utilizes representation ensembling algorithms to sequentially learn a representation for each task and ensemble both old and new representations for all future decisions. Here, two complementary representation ensembling algorithms based on decision forests (Lifelong Forest) and deep networks (Lifelong Network) demonstrate forward and backward knowledge transfer of tasks on multiple real datasets, including both vision and language applications.

# Documentation


# System Requirements
## Hardware requirements

`progressive-learning` package requires only a standard computer with enough RAM to support the in-memory operations.

## Software requirements
### OS Requirements
Expand All @@ -42,7 +44,6 @@ tensorflow
numpy
scikit-learn
joblib

```

# Installation Guide
Expand All @@ -66,12 +67,12 @@ If you have an idea for an improvement not listed there, please
developers.

# License
This project is covered under the [Apache 2.0 License](hhttps://github.com/neurodata/progressive-learning/blob/master/LICENSE).
This project is covered under the [MIT License](hhttps://github.com/neurodata/progressive-learning/blob/master/LICENSE).

# Issues
We appreciate detailed bug reports and feature requests (though we appreciate pull requests even more!). Please visit our [issues](https://github.com/neurodata/progressive-learning/issues) page if you have questions or ideas.

# Citing progressive-learning
If you find progressive-learning useful in your work, please cite the package via the [progressive-learning paper](https://arxiv.org/pdf/2004.12908.pdf)

> Vogelstein JT, Helm HS, Mehta RD, Dey J, Yang W, Tower B, LeVine W, Larson J, White C, Priebe CE. A general approach to progressive learning. arXiv preprint arXiv:2004.12908. 2020 Apr 27.
> Vogelstein JT, Helm HS, Mehta RD, Dey J, Yang W, Tower B, LeVine W, Larson J, White C, Priebe CE. A general approach to progressive learning. arXiv preprint arXiv:2004.12908. 2020 Apr 27.
2 changes: 2 additions & 0 deletions codecov.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
codecov:
token: d73047ad-2322-4be0-962c-7de537deff4a
19 changes: 19 additions & 0 deletions docs/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Minimal makefile for Sphinx documentation
#

# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
SOURCEDIR = .
BUILDDIR = _build

# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

.PHONY: help Makefile

# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
33 changes: 33 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Building Docs

We currently use Sphinx

If you only want to get the documentation, this can be found at [https://docs.neurodata.io/progressive-learning/](http://docs.neurodata.io/progressive-learning/).

## Python Dependencies

You will need to install all the dependencies as defined in `requirements.txt` file. The above can be installed by entering:

pip3 install -r requirements.txt

in the `docs/` directory.

## Pandoc dependency

In addition, you need to install `pandoc` for `nbsphinx`. If you are on linux, you can enter:

sudo apt-get install pandoc

If you are on macOS and have `homebrew` installed, you can enter:

brew install pandoc

Otherwise, you can visit [pandoc installing page](https://pandoc.org/installing.html) for more information.

## Generating the documentation

To build the HTML documentation, enter:

make html

in the `docs/` directory. If all goes well, this will generate a `build/html/` subdirectory containing the built documentation.
Loading