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

merge develop into main #122

Merged
merged 172 commits into from
Nov 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
172 commits
Select commit Hold shift + click to select a range
1ce9ff6
citation workflow
NiklasMelton Oct 3, 2024
3b408fa
Merge pull request #95 from NiklasMelton/citations
NiklasMelton Oct 3, 2024
46e5432
add first unit test
NiklasMelton Oct 4, 2024
d979698
Merge branch 'develop' of github.com:NiklasMelton/AdaptiveResonanceLi…
NiklasMelton Oct 4, 2024
608b8af
Merge branch 'develop' into create-unit-tests
NiklasMelton Oct 4, 2024
4d49e1c
create unit-test workflow
NiklasMelton Oct 4, 2024
34c08bb
create unit-test workflow
NiklasMelton Oct 4, 2024
38d421e
Merge branch 'create-unit-tests' of github.com:NiklasMelton/AdaptiveR…
NiklasMelton Oct 4, 2024
1f47ad4
create unit-test workflow
NiklasMelton Oct 4, 2024
1db73dc
create unit-test workflow
NiklasMelton Oct 4, 2024
c1ecb8c
create unit-test workflow
NiklasMelton Oct 4, 2024
506f2fe
test a failure
NiklasMelton Oct 4, 2024
57c77e8
remove test a failure
NiklasMelton Oct 4, 2024
7b886e8
Merge pull request #96 from NiklasMelton/create-unit-tests
NiklasMelton Oct 4, 2024
a197b95
test GaussianART
NiklasMelton Oct 5, 2024
50a30f7
add hypersphere tests
NiklasMelton Oct 6, 2024
bb3b518
add quadratic neuron ART tests
NiklasMelton Oct 6, 2024
06b1de1
add Ellipsoid ART tests
NiklasMelton Oct 6, 2024
d419c3b
add BayesianART tests
NiklasMelton Oct 6, 2024
b1149dd
add dual vigilance tests
NiklasMelton Oct 6, 2024
3813720
add ART2 tests
NiklasMelton Oct 6, 2024
cac4e1d
add ART1 tests
NiklasMelton Oct 6, 2024
dd80ed7
add cluster consistency tests
NiklasMelton Oct 6, 2024
292e11d
Merge pull request #97 from NiklasMelton/more-unit-tests
NiklasMelton Oct 6, 2024
f066e28
add BARTMAP tests
NiklasMelton Oct 10, 2024
03f5b73
add BARTMAP tests
NiklasMelton Oct 10, 2024
83622ab
Merge pull request #98 from NiklasMelton/bartmap-tests
NiklasMelton Oct 10, 2024
c4a2d26
add ARTMAP tests
NiklasMelton Oct 10, 2024
68dc581
simple artmap tests
NiklasMelton Oct 10, 2024
dc77f41
add SMART tests
NiklasMelton Oct 10, 2024
3dd9904
add deep artmap tests
NiklasMelton Oct 10, 2024
0e8ddcc
add topo art tests
NiklasMelton Oct 11, 2024
4e87e44
add fusion art tests
NiklasMelton Oct 11, 2024
4ffb2f6
add fusion art tests
NiklasMelton Oct 11, 2024
92623dc
add falcon tests
NiklasMelton Oct 11, 2024
8bf61c0
add falcon tests
NiklasMelton Oct 11, 2024
dda10b2
add td-falcon tests
NiklasMelton Oct 11, 2024
65004e1
add CVI ART tests
NiklasMelton Oct 11, 2024
881b340
add icvi fuzzy art tests
NiklasMelton Oct 11, 2024
b093522
correct test inconsistencies
NiklasMelton Oct 11, 2024
68e98cd
Merge pull request #99 from NiklasMelton/compound-art-tests
NiklasMelton Oct 11, 2024
7e94f36
read the docs init
NiklasMelton Oct 11, 2024
dfeab7f
read the docs init
NiklasMelton Oct 11, 2024
9518285
Merge pull request #100 from NiklasMelton/improve-docs
NiklasMelton Oct 11, 2024
57fd7a5
update readthedocs.yaml
NiklasMelton Oct 11, 2024
a58f07a
update readthedocs.yaml
NiklasMelton Oct 11, 2024
7db7627
update readthedocs.yaml
NiklasMelton Oct 11, 2024
10bea8b
update readthedocs.yaml
NiklasMelton Oct 11, 2024
3c1c80a
auto generate docs from doc-strings
NiklasMelton Oct 15, 2024
edcab0c
auto generate docs from doc-strings
NiklasMelton Oct 15, 2024
1cebc3c
docstrings to numpy format
NiklasMelton Oct 15, 2024
629db58
put readme on index
NiklasMelton Oct 15, 2024
4676139
readthedocs working
NiklasMelton Oct 16, 2024
1d7a358
readthedocs working
NiklasMelton Oct 16, 2024
41a19cc
add section intro and readme to readthedocs
NiklasMelton Oct 16, 2024
41074d2
add section intro and readme to readthedocs
NiklasMelton Oct 16, 2024
6b39aa1
Merge pull request #101 from NiklasMelton/readthedocs
NiklasMelton Oct 16, 2024
77d2c1f
update readthedocs.yaml
NiklasMelton Oct 16, 2024
3258f09
Merge branch 'develop' into readthedocs
NiklasMelton Oct 16, 2024
6e5aec5
update readthedocs.yaml
NiklasMelton Oct 16, 2024
0727ee3
update readthedocs.yaml
NiklasMelton Oct 16, 2024
30bfb1d
update readthedocs.yaml
NiklasMelton Oct 16, 2024
c8cbde1
update readthedocs.yaml
NiklasMelton Oct 16, 2024
db15e88
update readthedocs.yaml
NiklasMelton Oct 16, 2024
7c2e1be
update readthedocs.yaml
NiklasMelton Oct 16, 2024
5488bda
Merge branch 'readthedocs' of github.com:NiklasMelton/AdaptiveResonan…
NiklasMelton Oct 16, 2024
e25e88f
update readthedocs.yaml
NiklasMelton Oct 16, 2024
60518a2
update readthedocs.yaml
NiklasMelton Oct 16, 2024
1fef737
update readthedocs.yaml
NiklasMelton Oct 16, 2024
88df0a3
update readthedocs.yaml
NiklasMelton Oct 16, 2024
9e0a832
update readthedocs.yaml
NiklasMelton Oct 16, 2024
1ea21d1
Merge pull request #102 from NiklasMelton/readthedocs
NiklasMelton Oct 16, 2024
98f38f6
move module contents to top of page
NiklasMelton Oct 16, 2024
9220d79
Merge pull request #103 from NiklasMelton/module-contents-docs
NiklasMelton Oct 16, 2024
0a0b8e5
remove typos from init descriptions
NiklasMelton Oct 16, 2024
7c2b744
add readme links
NiklasMelton Oct 16, 2024
184532e
add citations page
NiklasMelton Oct 16, 2024
8561f7e
add citations page
NiklasMelton Oct 16, 2024
8aa7cc3
add citations page
NiklasMelton Oct 16, 2024
b0906c8
citation
NiklasMelton Oct 16, 2024
8c984d8
update cffconvert
NiklasMelton Oct 16, 2024
40832d4
update cffconvert
NiklasMelton Oct 16, 2024
56ebd25
update cffconvert
NiklasMelton Oct 16, 2024
e4f6332
run cffconvert earlier
NiklasMelton Oct 16, 2024
91bca56
update cffconvert
NiklasMelton Oct 16, 2024
d678286
move cffconvert to yaml
NiklasMelton Oct 16, 2024
08b67c3
add raw bibtex
NiklasMelton Oct 16, 2024
2fe6989
change ref alias
NiklasMelton Oct 16, 2024
119847b
change ref alias
NiklasMelton Oct 16, 2024
a66096e
change ref alias
NiklasMelton Oct 16, 2024
b0184ed
use python script to generate bib
NiklasMelton Oct 16, 2024
085d481
change ref alias
NiklasMelton Oct 16, 2024
c324c09
use python script to generate bib
NiklasMelton Oct 16, 2024
8e7079e
use python script to generate bib
NiklasMelton Oct 16, 2024
2975889
Merge pull request #104 from NiklasMelton/add-readme-links
NiklasMelton Oct 16, 2024
0a95e08
migrate files to scripts dir
NiklasMelton Oct 16, 2024
e22727c
migrate files to scripts dir
NiklasMelton Oct 16, 2024
d6a8571
Merge pull request #105 from NiklasMelton/migrate-to-scripts
NiklasMelton Oct 16, 2024
c275412
test to demo in examples dir
NiklasMelton Oct 16, 2024
4873ea3
Merge pull request #106 from NiklasMelton/test-to-demo
NiklasMelton Oct 16, 2024
4f7dd14
init pre-commit
NiklasMelton Oct 17, 2024
c1ea20b
init pre-commit
NiklasMelton Oct 17, 2024
fbe7cbd
init pre-commit
NiklasMelton Oct 17, 2024
a9dd32f
Merge pull request #107 from NiklasMelton/pre-commit
NiklasMelton Oct 17, 2024
f9fedb4
test pre-commit
NiklasMelton Oct 17, 2024
ea4752b
test pre-commit
NiklasMelton Oct 17, 2024
baa6ad0
docformatter
NiklasMelton Oct 17, 2024
a48b114
pass flake8 and black
NiklasMelton Oct 17, 2024
c9077b9
resolve typing issues
NiklasMelton Oct 17, 2024
934468a
restore docs
NiklasMelton Oct 17, 2024
6297606
Merge pull request #108 from NiklasMelton/pre-commit-cleanup
NiklasMelton Oct 17, 2024
e8d9300
autoclass_content = 'both'
NiklasMelton Oct 17, 2024
deb48a2
autoclass_content = 'both'
NiklasMelton Oct 17, 2024
19139fb
autoclass_content = 'both'
NiklasMelton Oct 17, 2024
a64d5fa
Merge pull request #109 from NiklasMelton/autodoc-init
NiklasMelton Oct 17, 2024
cde241a
match_reset_method -> match_tracking
NiklasMelton Oct 17, 2024
6973a3d
Merge pull request #110 from NiklasMelton/reset-to-mt
NiklasMelton Oct 17, 2024
4762eb8
add references.bib
NiklasMelton Oct 17, 2024
dfd0612
add variable references to code
NiklasMelton Oct 17, 2024
7f2bbf3
add variable references to code
NiklasMelton Oct 17, 2024
050d186
add references page
NiklasMelton Oct 17, 2024
4eeee1a
update citations
NiklasMelton Oct 17, 2024
c1c4492
add citations to class descriptions
NiklasMelton Oct 17, 2024
254c3cc
run pre-commit
NiklasMelton Oct 17, 2024
30cd08c
add spacing
NiklasMelton Oct 17, 2024
8d5be13
use citation instead
NiklasMelton Oct 17, 2024
0fb7002
use comment block for citations
NiklasMelton Oct 17, 2024
791d52b
disclaimer
NiklasMelton Oct 17, 2024
26acdc5
class cross references
NiklasMelton Oct 17, 2024
3523314
class cross references
NiklasMelton Oct 17, 2024
7899270
class cross references
NiklasMelton Oct 17, 2024
d33e056
Merge pull request #111 from NiklasMelton/create-bibtex
NiklasMelton Oct 17, 2024
4c3bfae
revert match_criterion typing
NiklasMelton Oct 18, 2024
fc233b8
revert match_criterion typing
NiklasMelton Oct 18, 2024
8b8a242
Merge pull request #112 from NiklasMelton/consistency-fixes
NiklasMelton Oct 18, 2024
9dc3c32
correct docstrings type for colors
NiklasMelton Oct 18, 2024
6269992
Merge pull request #113 from NiklasMelton/update-template
NiklasMelton Oct 18, 2024
e47b04d
add examples and improve FusionART prepare_data
NiklasMelton Oct 18, 2024
3ea1c78
add examples and improve FusionART prepare_data
NiklasMelton Oct 18, 2024
4478451
Merge pull request #114 from NiklasMelton/update-quick-start
NiklasMelton Oct 18, 2024
feaf56a
create paper.md
NiklasMelton Oct 18, 2024
ec57d06
paper and updated bib
NiklasMelton Oct 18, 2024
8428491
paper and updated bib
NiklasMelton Oct 18, 2024
67d1aa9
paper and updated bib
NiklasMelton Oct 18, 2024
3dd1db9
paper and updated bib
NiklasMelton Oct 18, 2024
e261f07
add corresponding author
NiklasMelton Oct 18, 2024
bf63e00
add ror
NiklasMelton Oct 18, 2024
497a302
update affiliation
NiklasMelton Oct 18, 2024
a937f8e
new sections
NiklasMelton Oct 19, 2024
65b3b19
comparison refs
NiklasMelton Oct 19, 2024
37252ce
paper draft and bartmap citations
NiklasMelton Oct 21, 2024
6b68b17
rephrase paper a bit
NiklasMelton Oct 21, 2024
c2a4ea5
Merge pull request #115 from NiklasMelton/create-joss-paper
NiklasMelton Oct 22, 2024
5c831a4
pre-commit workflow
NiklasMelton Oct 22, 2024
fda24c8
Merge pull request #116 from NiklasMelton/pre-commit-action
NiklasMelton Oct 22, 2024
4f221e5
improve convex hull ART
NiklasMelton Oct 22, 2024
7b86c33
improve convex hull ART
NiklasMelton Oct 22, 2024
b0270c8
Merge pull request #117 from NiklasMelton/hull-art-improvements
NiklasMelton Oct 22, 2024
33bad62
generalize ConvexHullART to allow alpha-shapes
NiklasMelton Oct 22, 2024
0a19d3e
Merge pull request #118 from NiklasMelton/concave-hull-art
NiklasMelton Oct 22, 2024
b73d69d
add fit_gif method
NiklasMelton Oct 29, 2024
08404f9
add fit_gif method
NiklasMelton Oct 29, 2024
0a0806d
Merge pull request #119 from NiklasMelton/add-gif-mode
NiklasMelton Oct 29, 2024
97a7e95
update joss paper
NiklasMelton Nov 5, 2024
c26e44a
Merge pull request #120 from NiklasMelton/update-joss-draft
NiklasMelton Nov 6, 2024
f35ed6c
update joss paper
NiklasMelton Nov 14, 2024
4bf2f8b
updated joss paper
NiklasMelton Nov 14, 2024
c3add46
updated joss paper
NiklasMelton Nov 14, 2024
b733372
updated ART1 tests
NiklasMelton Nov 14, 2024
01215ac
update joss paper
NiklasMelton Nov 15, 2024
f6b5f9e
Merge pull request #121 from NiklasMelton/update-joss-paper
NiklasMelton Nov 15, 2024
b9f4ec7
Merge branch 'main' into develop
NiklasMelton Nov 15, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 36 additions & 0 deletions .github/workflows/citation-update.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: Update CITATION.cff on Release
on:
release:
types: [published]

jobs:
update_citation:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Get Release Data
id: release_info
run: |
echo "RELEASE_TAG=$(echo ${GITHUB_REF#refs/tags/})" >> $GITHUB_ENV

- name: Fetch DOI from Zenodo
run: |
# Replace with actual API request or data fetch logic
# Example command to fetch the DOI for the latest release via Zenodo API
curl -s "https://zenodo.org/api/records?query=AdaptiveResonanceLib" | jq '.hits.hits[0].doi' > doi.txt

- name: Update CITATION.cff
run: |
DOI=$(cat doi.txt)
sed -i "s/doi: .*/doi: \"$DOI\"/" CITATION.cff
sed -i "s/version: .*/version: \"$RELEASE_TAG\"/" CITATION.cff

- name: Commit updated CITATION.cff
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git add CITATION.cff
git commit -m "Update CITATION.cff with DOI and version for release $RELEASE_TAG"
git push origin main
24 changes: 24 additions & 0 deletions .github/workflows/draft-pdf.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Draft PDF
on: [push]

jobs:
paper:
runs-on: ubuntu-latest
name: Paper Draft
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build draft PDF
uses: openjournals/openjournals-draft-action@master
with:
journal: joss
# This should be the path to the paper within your repo.
paper-path: paper.md
- name: Upload
uses: actions/upload-artifact@v4
with:
name: paper
# This is the output path where Pandoc will write the compiled
# PDF. Note, this should be the same directory as the input
# paper.md
path: paper.pdf
45 changes: 45 additions & 0 deletions .github/workflows/pre_commit_checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: Pre-commit checks

on:
pull_request:
push:
branches:
- develop
- main

jobs:
pre-commit:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.9' # Adjust this to your desired Python version

- name: Install Poetry
run: |
curl -sSL https://install.python-poetry.org | python3 -

- name: Install dependencies
run: |
poetry install --with dev

- name: Install pre-commit
run: |
poetry run pip install pre-commit

- name: Fetch the base branch
run: |
git fetch origin ${GITHUB_BASE_REF}:${GITHUB_BASE_REF}
env:
GITHUB_BASE_REF: ${{ github.event.pull_request.base.ref }}

- name: Run pre-commit on changed files
run: |
poetry run pre-commit run --from-ref origin/${GITHUB_BASE_REF} --to-ref HEAD
env:
GITHUB_BASE_REF: ${{ github.event.pull_request.base.ref }}
37 changes: 37 additions & 0 deletions .github/workflows/pytest.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Run Python Unit Tests

on:
pull_request:
branches:
- main
- develop

jobs:
test:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.9'

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry
poetry install --with dev # Install dependencies from pyproject.toml, including dev dependencies

- name: Run tests
run: |
poetry run pytest unit_tests/ --maxfail=5 --disable-warnings -v --tb=short # Add verbose and short traceback options

- name: Publish test results
if: failure()
uses: actions/upload-artifact@v3
with:
name: pytest-results
path: ./test-results/pytest-report.xml
47 changes: 47 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# .pre-commit-config.yaml

repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.5.0
hooks:
- id: check-yaml
- id: debug-statements
- id: end-of-file-fixer
- id: trailing-whitespace

- repo: local
hooks:
- id: docformatter
name: docformatter
entry: docformatter
language: python
types: [python]
additional_dependencies: [docformatter==1.7.5]
args:
- --black
- --style=numpy
- --blank
- --in-place

- repo: https://github.com/psf/black
rev: 23.9.1 # Use the latest stable version
hooks:
- id: black

- repo: https://github.com/PyCQA/flake8
rev: 6.1.0 # Use the latest stable version
hooks:
- id: flake8
args: [--max-line-length=88, '--ignore=D205,D400,D105,E731,W503,D401,E203,D209']
additional_dependencies: [flake8-docstrings]

- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.5.1
hooks:
- id: mypy
args:
- --ignore-missing-imports
- --exclude=artlib/cvi/
- --follow-imports=silent

exclude: ^(unit_tests/|scripts/|artlib/experimental/|examples/|docs/|artlib/cvi/)
19 changes: 19 additions & 0 deletions CITATION.cff
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
title: "AdaptiveResonanceLib"
version: "0.1.2"
doi: "10.5281/zenodo.9999999"
authors:
- family-names: "Melton"
given-names: "Niklas"
orcid: "https://orcid.org/0000-0001-9625-7086"
date-released: 2024-10-03
url: "https://github.com/NiklasMelton/AdaptiveResonanceLib"
repository-code: "https://github.com/NiklasMelton/AdaptiveResonanceLib"
license: "MIT"
keywords:
- "adaptive resonance theory"
- "ART"
- "machine learning"
- "clustering"
- "neural networks"
2 changes: 1 addition & 1 deletion CITATIONS.txt
Original file line number Diff line number Diff line change
Expand Up @@ -366,4 +366,4 @@ Yava ̧s, M., & Alpaslan, F. N. (2012). Hierarchical behavior categorization usi

Zadeh, L. A. (1965). Fuzzy sets. Information and Control, 8, 338 – 353. doi:10.1016/S0019-9958(65) 90241-X.

Brito da Silva LE, Rayapati N, Wunsch DC. iCVI-ARTMAP: Using Incremental Cluster Validity Indices and Adaptive Resonance Theory Reset Mechanism to Accelerate Validation and Achieve Multiprototype Unsupervised Representations. IEEE Trans Neural Netw Learn Syst. 2023 Dec;34(12):9757-9770. doi: 10.1109/TNNLS.2022.3160381. Epub 2023 Nov 30. PMID: 35353707.
Brito da Silva LE, Rayapati N, Wunsch DC. iCVI-ARTMAP: Using Incremental Cluster Validity Indices and Adaptive Resonance Theory Reset Mechanism to Accelerate Validation and Achieve Multiprototype Unsupervised Representations. IEEE Trans Neural Netw Learn Syst. 2023 Dec;34(12):9757-9770. doi: 10.1109/TNNLS.2022.3160381. Epub 2023 Nov 30. PMID: 35353707.
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,9 @@ If you're ready to contribute, here's how you can do it:

5. **Run the tests** to ensure your changes don't break existing functionality.

6. **Update the documentation** if you're adding new features or changing existing behavior.
6. **Update the documentation** if you're adding new features or changing existing behavior.

7. **Submit a pull request**. Include a clear description of the changes and reference any related issues.
7. **Submit a pull request**. Include a clear description of the changes and reference any related issues.

## Pull Request Process

Expand Down
Loading
Loading