power-spectrum-classification

Classification of source power spectra.

https://github.com/emmatassone/power-spectrum-classification

Science Score: 44.0%

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

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.6%) to scientific vocabulary
Last synced: 9 months ago · JSON representation ·

Repository

Classification of source power spectra.

Basic Info
  • Host: GitHub
  • Owner: Emmatassone
  • License: mit
  • Language: Jupyter Notebook
  • Default Branch: main
  • Size: 3.42 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 1
  • Open Issues: 1
  • Releases: 0
Created almost 3 years ago · Last pushed over 1 year ago
Metadata Files
Readme License Citation

README.md

Contributors Forks Stargazers Issues GNU GPLv3 License


Logo

Power-spectrum-classificator

Machine Learning techniques that classificate Black hole or Neutron star power spectra.
Report Bug

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact

About The Project

power-spectrum-classification is a project focused on automating the classification of power spectra sources.

(back to top)

Built With

The project is built with python, with the help of the following libraries.

  • scikit-learn

(back to top)

Train your own model

To classificate a new source or observation, the observation file (.asc) should be placed in data directory. The file should indicate the binning after the file extension (e.g., .asc_100 for rebin=100).

Train the Random Forest Model

To train the Random Forest Model write in the terminal py python PSC.py --RF --n_estimators=N_ESTIMATORS min_samples_leaf=MIN_SAMPLES_LEAF min_samples_split=MIN_SAMPLES_SPLIT where the optional arguments nestimators, minsamplesleaf and minsamples_split are by default 200,20 and 50 respectively.

Train the Long Short Term Memory Model

To train the Long Short Term Memory model write in the terminal py python PSC.py --RNN --batch_size=BATCH_SIZE --epochs=EPOCHS

Train the Convolutional Neural Network Model

Similary, to traub the CNN model py python PSC.py --CNN --batch_size=BATCH_SIZE --epochs=EPOCHS There are also intrinsic parameter of the models that have to be modified specifically in the function that builds the specific model. These function can be found at models/models.py.

(back to top)

Load a trained model

Roadmap

  • [ ] Add Sources
    • [ ] Black Holes
    • [ ] Neutron Stars
    • [ ] Galaxies
  • [ ] Add Neural Network

(back to top)

Contributing

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the GNU GPLv3 License. See LICENSE for more information.

(back to top)

Contact

Emmanuel A. Tassone - @EmmanuelTassone - emmanueltassone@gmail.com

Project Link: https://github.com/Emmatassone/power-spectrum-classification

(back to top)

Acknowledgments

A special thanks should be done to the following open-source projects.

(back to top)

Owner

  • Name: Emma
  • Login: Emmatassone
  • Kind: user
  • Location: Córdoba, Argentina
  • Company: Universidad Nacional de Cordoba

PhD physics. I'm currently researching on general relativity.

Citation (citation.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."

preferred-citation:
  type: article
  authors:
    - family-names: "Mancuso"
      given-names: "G.C."
    - family-names: "Tassone"
      given-names: "E.A."
  title: "Machine Learning as a Complementary Tool for Low-Mass X-Ray Binaries Classification"
  version: "1.0.0"
  date-released: "2024-08-10"
  url: "https://github.com/Emmatassone/power-spectrum-classification"
  license: "MIT"

GitHub Events

Total
  • Push event: 3
Last Year
  • Push event: 3