https://github.com/ap6yc/audeyart

Learning repo for Audrey and writing FuzzyART from scratch.

https://github.com/ap6yc/audeyart

Science Score: 46.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: scholar.google
  • Committers with academic emails
    1 of 1 committers (100.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.1%) to scientific vocabulary
Last synced: 6 months ago · JSON representation

Repository

Learning repo for Audrey and writing FuzzyART from scratch.

Basic Info
  • Host: GitHub
  • Owner: AP6YC
  • License: mit
  • Language: Jupyter Notebook
  • Default Branch: main
  • Size: 396 KB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created 9 months ago · Last pushed 8 months ago
Metadata Files
Readme License

README.md

AudeyART

This is an educational repository for learning about ART algorithms, mainly through writing up a basic FuzzyART module and testing how it works on the Iris dataset.

Table of Contents

Usage

First, get a good Python setup going. I highly recommend using a virtual environment manager, such as mamba. For example, download the miniforge distribution for your OS.

Next, create a virtual environment like so:

shell mamba create -n audeyart python=3.12

Activate that environment with

shell mamba activate audeyart

and install the python dependencies once you're inside that environment with

shell pip install -r requirements.txt

[!note] Read through the Requirements Description to get an understanding of what each dependency is used for and get links to their respective documentations.

File Structure

This section outlines the location and meaning of the files in this repo:

  • data/
  • notebooks
    • audeyart.ipynb: an IPython notebook (a.k.a. jupyter notebook) containing the main pedagogical material. This includes:
      1. How to write up a FuzzyART module.
      2. How to load the Iris dataset with pandas.
      3. How to cluster the Iris dataset with FuzzyART.
      4. How to visualize the results with TSNE.
    • audeyart-original.ipynb: the original notebook used as an exercise for implementing FuzzyART (without added documentation).
    • supervised.ipynb: an implementation of a simple FuzzyARTMAP (i.e., a simple supervised variant of FuzzyART).
  • .flake8: some custom Python Flake8 linting preferences, such as the config to make flake8 stop yelling if lines are longer than a meager 80 characters.
  • .gitignore: a file with patterns that are ignored by git tracking.
  • LICENSE: a text file containing the MIT license for the repo, indicating that this software is free for anyone to use in anyway with no liability attributable to the authors. This is a common license for open-source software that allows other people to use and even profit from your work without being able to blame you when they break stuff.
  • README.md: this file. Readme's are the most common top-level description of software repositories, and they are the best first place to describe your work to someone who would actually use it.
  • requirements.txt: the pip requirements file containing all of the Python dependencies for the project.

Requirements Description

The pip requirements under the requirements.txt file are listed below. For convenience, the documentation for each is linked.

  • torch: this is the pip name for PyTorch, one of the biggest libraries for working with tensor data and subsequently neural networks.
  • torchvision: PyTorch's separate library for handling vision dataset pipelines, transformations, etc. This wasn't used in the written example, but it is included because almost everything else we will write includes its functionality when working with bigger datasets.
  • jupyterlab: an all-in-one dependency for installing an IPython kernel and the notebook environment.
  • matplotlib: the most comprehensive plotting library in Python.
  • pandas: provides the DataFrame datatype for Python and all of the utilities therein to load, parse, and handle tabular data.
  • scikit-learn: the traditional machine learning toolset for Python. Most of the de facto machine learning techniques that aren't deep learning are already implemented here.

Owner

  • Name: Sasha Petrenko
  • Login: AP6YC
  • Kind: user

Graduate researcher of applied computational intelligence at the Missouri University of Science and Technology.

GitHub Events

Total
  • Push event: 6
  • Create event: 2
Last Year
  • Push event: 6
  • Create event: 2

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 10
  • Total Committers: 1
  • Avg Commits per committer: 10.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 10
  • Committers: 1
  • Avg Commits per committer: 10.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Sasha Petrenko s****5@m****u 10
Committer Domains (Top 20 + Academic)
mst.edu: 1

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

requirements.txt pypi
  • jupyterlab *
  • matplotlib *
  • pandas *
  • scikit-learn *
  • torch *
  • torchvision *