TelescopeML -- I. An End-to-End Python Package for Interpreting Telescope Datasets through Training Machine Learning Models, Generating Statistical Reports, and Visualizing Results
TelescopeML -- I. An End-to-End Python Package for Interpreting Telescope Datasets through Training Machine Learning Models, Generating Statistical Reports, and Visualizing Results - Published in JOSS (2024)
Science Score: 93.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
Found 4 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: zenodo.org -
○Committers with academic emails
-
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Scientific Fields
Repository
Deep Convolutional Neural Networks and Machine Learning Models for Analyzing Stellar and Exoplanetary Telescope Spectra
Basic Info
- Host: GitHub
- Owner: EhsanGharibNezhad
- License: gpl-3.0
- Language: Python
- Default Branch: main
- Homepage: https://ehsangharibnezhad.github.io/TelescopeML/
- Size: 262 MB
Statistics
- Stars: 12
- Watchers: 4
- Forks: 18
- Open Issues: 11
- Releases: 0
Topics
Metadata Files
README.md
TelescopeML
TelescopeML is a Python package comprising a series of modules, each equipped with specialized machine learning and
statistical capabilities for conducting Convolutional Neural Networks (CNN) or Machine Learning (ML) training on
datasets captured from the atmospheres of extrasolar planets and brown dwarfs. The tasks executed by the TelescopeML
modules are outlined below:

DataMaster module: Performs various tasks to process the datasets, including:
- Preparing inputs and outputs
- Splitting the dataset into training, validation, and test sets
- Scaling/normalizing the data
- Visualizing the data
- Conducting feature engineering
DeepTrainer module: Utilizes different methods/packages such as TensorFlow to:
- Build Convolutional Neural Networks (CNNs) model using the training examples
- Utilize tuned hyperparameters
- Fit/train the ML models
- Visualize the loss and training history, as well as the trained model's performance
Predictor module: Implements the following tasks to predict atmospheric parameters:
- Processes and predicts the observational datasets
- Deploys the trained ML/CNNs model to predict atmospheric parameters
- Visualizes the processed observational dataset and the uncertainty in the predicted results
StatVisAnalyzer module: Provides a set of functions to perform the following tasks:
- Explores and processes the synthetic datasets
- Performs the chi-square test to evaluate the similarity between two datasets
- Calculates confidence intervals and standard errors
- Functions to visualize the datasets, including scatter plots, histograms, boxplots
or simply...
- Load the trained CNN models
- Follow the tutorials
- Predict the stellar/exoplanetary parameters
- Report the statistical analysis
Documentation
- Documentation: https://ehsangharibnezhad.github.io/TelescopeML/
- Installation: https://ehsangharibnezhad.github.io/TelescopeML/installation.html
- Tutorials: https://ehsangharibnezhad.github.io/TelescopeML/tutorials.html
- The code: https://ehsangharibnezhad.github.io/TelescopeML/code.html
Contributors
<!-- ALL-CONTRIBUTORS-BADGE:END -->
Thanks goes to these wonderful people (emoji key): <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --> <!-- prettier-ignore-start --> <!-- markdownlint-disable -->
|
Ehsan Gharib-Nezhad 💻 🤔 🚧 📚 |
Natasha Batalha 🧑🏫 🐛 🤔 |
Hamed Valizadegan 🧑🏫 🤔 |
Miguel Martinho 🧑🏫 🤔 |
|
Mahdi Habibi 💻 🤔 |
Gopal Nookula 📚 |
Owner
- Name: Ehsan (Sam) Gharib-Nezhad
- Login: EhsanGharibNezhad
- Kind: user
- Location: San Fransisco Bay Area, CA.
- Company: NASA Ames Research Center
- Website: https://www.linkedin.com/in/ehsan-gharib-nezhad/
- Twitter: ExoEhsan
- Repositories: 1
- Profile: https://github.com/EhsanGharibNezhad
Welcome to my data chamber! Data scientist at NASA Ames with 3+ years of experience in developing and vetting machine learning models
JOSS Publication
TelescopeML -- I. An End-to-End Python Package for Interpreting Telescope Datasets through Training Machine Learning Models, Generating Statistical Reports, and Visualizing Results
Authors
Space Science and Astrobiology Division, NASA Ames Research Center, Moffett Field, CA, 94035 USA, Bay Area Environmental Research Institute, NASA Research Park, Moffett Field, CA 94035, USA
Space Science and Astrobiology Division, NASA Ames Research Center, Moffett Field, CA, 94035 USA
Universities Space Research Association (USRA), Mountain View, CA 94043, USA, Intelligent Systems Division, NASA Ames Research Center, Moffett Field, CA 94035, USA
Universities Space Research Association (USRA), Mountain View, CA 94043, USA, Intelligent Systems Division, NASA Ames Research Center, Moffett Field, CA 94035, USA
Institute for Radiation Physics, Helmholtz-Zentrum Dresden-Rossendorf, Dresden 01328, Germany
Department of Computer Science, University of California, Riverside, Riverside, CA 92507 USA
Tags
Astronomy Exoplanets Brown dwarfs Spectroscopy Atmospheric retrieval Atmospheric models Machine learning Convolutional Neural Network Telescope datasetsGitHub Events
Total
- Watch event: 4
- Push event: 2
- Fork event: 1
- Create event: 1
Last Year
- Watch event: 4
- Push event: 2
- Fork event: 1
- Create event: 1
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| EhsanGharibNezhad | e****d@g****m | 401 |
| Ehsan Gharib Nezhad | e****n@E****l | 19 |
| Natasha Batalha | n****a@g****m | 1 |
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 0
- Total pull requests: 155
- Average time to close issues: N/A
- Average time to close pull requests: about 7 hours
- Total issue authors: 0
- Total pull request authors: 15
- Average comments per issue: 0
- Average comments per pull request: 0.01
- Merged pull requests: 141
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 10
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 10
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
- EhsanGharibNezhad (158)
- mdhabibi (6)
- plaplant (4)
- abhinavuppala (2)
- ericslu (2)
- abhinavish (2)
- MittelmanDaniel (2)
- tma66 (2)
- snoopy202 (2)
- sscott108 (2)
- hussen2003 (1)
- GdKent (1)
- sierrajanson (1)
- dfm (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 18 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 5
- Total maintainers: 1
pypi.org: telescopeml
An End-to-End Python Package for Interpreting Telescope Datasets through Training Machine Learning Models, Generating Statistical Reports, and Visualizing Results
- Homepage: https://ehsangharibnezhad.github.io/TelescopeML
- Documentation: https://telescopeml.readthedocs.io/
- License: GPL-3.0
-
Latest release: 0.0.5
published over 1 year ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v4 composite
- actions/upload-artifact v1 composite
- openjournals/openjournals-draft-action master composite
- astropy *
- bokeh *
- jupyterlab *
- keras ==2.14.0
- matplotlib *
- numpy ==1.26.1
- pandas *
- scikit-learn ==1.3.0
- scipy ==1.11.1
- seaborn ==0.12.2
- spectres ==2.2.0
- sphinx ==7.2.6
- sphinx *
- tensorflow ==2.14.0
- astropy *
- bokeh *
- jupyterlab *
- keras ==2.14.0
- matplotlib *
- numpy ==1.26.1
- pandas *
- scikit-learn ==1.3.0
- scipy ==1.11.1
- seaborn ==0.12.2
- spectres ==2.2.0
- sphinx ==7.2.6
- sphinx *
- tensorflow ==2.14.0
- anyio 3.7.1.*
- appnope 0.1.3.*
- argon2-cffi 21.3.0.*
- argon2-cffi-bindings 21.2.0.*
- arrow 1.2.3.*
- astropy 5.3.1.*
- asttokens 2.2.1.*
- async-lru 2.0.3.*
- attrs 23.1.0.*
- babel 2.12.1.*
- backcall 0.2.0.*
- backports 1.0.*
- backports.functools_lru_cache 1.6.5.*
- beautifulsoup4 4.12.2.*
- bleach 6.0.0.*
- bokeh 3.2.1.*
- brotli 1.0.9.*
- brotli-bin 1.0.9.*
- brotli-python 1.0.9.*
- bzip2 1.0.8.*
- c-ares 1.19.1.*
- ca-certificates 2023.7.22.*
- cached-property 1.5.2.*
- cached_property 1.5.2.*
- cffi 1.15.1.*
- charset-normalizer 3.2.0.*
- comm 0.1.3.*
- contourpy 1.1.0.*
- cycler 0.11.0.*
- debugpy 1.6.7.*
- decorator 5.1.1.*
- defusedxml 0.7.1.*
- entrypoints 0.4.*
- exceptiongroup 1.1.2.*
- executing 1.2.0.*
- flit-core 3.9.0.*
- fonttools 4.41.1.*
- fqdn 1.5.1.*
- freetype 2.12.1.*
- h5py 3.6.0.*
- hdf5 1.12.1.*
- idna 3.4.*
- importlib-metadata 6.8.0.*
- importlib-resources 6.0.0.*
- importlib_metadata 6.8.0.*
- importlib_resources 6.0.0.*
- ipykernel 6.25.0.*
- ipython 8.14.0.*
- ipython_genutils 0.2.0.*
- ipywidgets 8.0.7.*
- isoduration 20.11.0.*
- jedi 0.18.2.*
- jinja2 3.1.2.*
- joblib 1.3.0.*
- json5 0.9.14.*
- jsonschema 4.18.4.*
- jsonschema-specifications 2023.7.1.*
- jsonschema-with-format-nongpl 4.18.4.*
- jupyter 1.0.0.*
- jupyter-lsp 2.2.0.*
- jupyter_client 8.3.0.*
- jupyter_console 6.6.3.*
- jupyter_core 5.3.1.*
- jupyter_events 0.6.3.*
- jupyter_server 2.7.0.*
- jupyter_server_terminals 0.4.4.*
- jupyterlab 4.0.3.*
- jupyterlab_pygments 0.2.2.*
- jupyterlab_server 2.24.0.*
- jupyterlab_widgets 3.0.8.*
- kiwisolver 1.4.4.*
- krb5 1.21.1.*
- lcms2 2.15.*
- lerc 4.0.0.*
- libblas 3.9.0.*
- libbrotlicommon 1.0.9.*
- libbrotlidec 1.0.9.*
- libbrotlienc 1.0.9.*
- libcblas 3.9.0.*
- libcurl 8.2.1.*
- libcxx 16.0.6.*
- libdeflate 1.18.*
- libedit 3.1.20191231.*
- libev 4.33.*
- libffi 3.4.2.*
- libgfortran 5.0.0.*
- libgfortran5 12.3.0.*
- libjpeg-turbo 2.1.5.1.*
- liblapack 3.9.0.*
- libnghttp2 1.52.0.*
- libopenblas 0.3.23.*
- libpng 1.6.39.*
- libprotobuf 3.19.6.*
- libsodium 1.0.18.*
- libsqlite 3.42.0.*
- libssh2 1.11.0.*
- libtiff 4.5.1.*
- libwebp-base 1.3.1.*
- libxcb 1.15.*
- libzlib 1.2.13.*
- llvm-openmp 16.0.6.*
- markupsafe 2.1.3.*
- matplotlib 3.7.2.*
- matplotlib-base 3.7.2.*
- matplotlib-inline 0.1.6.*
- mistune 3.0.0.*
- munkres 1.1.4.*
- nb_conda_kernels 2.3.1.*
- nbclient 0.8.0.*
- nbconvert 7.7.3.*
- nbconvert-core 7.7.3.*
- nbconvert-pandoc 7.7.3.*
- nbformat 5.9.1.*
- ncurses 6.4.*
- nest-asyncio 1.5.6.*
- notebook 7.0.0.*
- notebook-shim 0.2.3.*
- openjpeg 2.5.0.*
- openssl 3.1.4.*
- overrides 7.3.1.*
- packaging 23.1.*
- pandas 2.0.3.*
- pandoc 3.1.3.*
- pandocfilters 1.5.0.*
- parso 0.8.3.*
- patsy 0.5.3.*
- pexpect 4.8.0.*
- pickleshare 0.7.5.*
- pillow 10.0.0.*
- pip 23.2.1.*
- pkgutil-resolve-name 1.3.10.*
- platformdirs 3.9.1.*
- pooch 1.7.0.*
- prometheus_client 0.17.1.*
- prompt-toolkit 3.0.39.*
- prompt_toolkit 3.0.39.*
- psutil 5.9.5.*
- pthread-stubs 0.4.*
- ptyprocess 0.7.0.*
- pure_eval 0.2.2.*
- pycparser 2.21.*
- pyerfa 2.0.0.3.*
- pygments 2.15.1.*
- pyobjc-core 9.2.*
- pyobjc-framework-cocoa 9.2.*
- pyparsing 3.0.9.*
- pysocks 1.7.1.*
- python 3.9.16.*
- python-dateutil 2.8.2.*
- python-fastjsonschema 2.18.0.*
- python-json-logger 2.0.7.*
- python-tzdata 2023.3.*
- python_abi 3.9.*
- pytz 2023.3.post1.*
- pyyaml 6.0.1.*
- pyzmq 25.1.0.*
- qtconsole-base 5.4.4.*
- qtpy 2.4.1.*
- readline 8.2.*
- referencing 0.30.0.*
- requests 2.31.0.*
- rfc3339-validator 0.1.4.*
- rfc3986-validator 0.1.1.*
- rpds-py 0.9.2.*
- scikit-learn 1.3.0.*
- scipy 1.11.1.*
- seaborn 0.12.2.*
- seaborn-base 0.12.2.*
- send2trash 1.8.2.*
- six 1.16.0.*
- sniffio 1.3.0.*
- soupsieve 2.3.2.post1.*
- stack_data 0.6.2.*
- statsmodels 0.14.0.*
- terminado 0.17.1.*
- threadpoolctl 3.2.0.*
- tinycss2 1.2.1.*
- tk 8.6.12.*
- tomli 2.0.1.*
- tornado 6.3.2.*
- traitlets 5.9.0.*
- typing-extensions 4.8.0.*
- typing_extensions 4.8.0.*
- typing_utils 0.1.0.*
- tzdata 2023c.*
- unicodedata2 15.0.0.*
- uri-template 1.3.0.*
- urllib3 2.0.7.*
- wcwidth 0.2.6.*
- webcolors 1.13.*
- webencodings 0.5.1.*
- websocket-client 1.6.1.*
- wheel 0.41.0.*
- widgetsnbextension 4.0.8.*
- xorg-libxau 1.0.11.*
- xorg-libxdmcp 1.1.3.*
- xyzservices 2023.7.0.*
- xz 5.2.6.*
- yaml 0.2.5.*
- zeromq 4.3.4.*
- zipp 3.16.2.*
- zlib 1.2.13.*
- zstd 1.5.2.*
- anyio 3.7.1
- appnope 0.1.3
- argon2-cffi 21.3.0
- argon2-cffi-bindings 21.2.0
- arrow 1.2.3
- astropy 5.3.1
- asttokens 2.2.1
- async-lru 2.0.3
- attrs 23.1.0
- babel 2.12.1
- backcall 0.2.0
- backports 1.0
- backports.functools_lru_cache 1.6.5
- beautifulsoup4 4.12.2
- bleach 6.0.0
- bokeh 3.2.1
- brotli 1.0.9
- brotli-bin 1.0.9
- brotli-python 1.0.9
- bzip2 1.0.8
- c-ares 1.19.1
- ca-certificates 2023.7.22
- cached-property 1.5.2
- cached_property 1.5.2
- certifi 2023.7.22
- cffi 1.15.1
- charset-normalizer 3.2.0
- comm 0.1.3
- contourpy 1.1.0
- cycler 0.11.0
- debugpy 1.6.7
- decorator 5.1.1
- defusedxml 0.7.1
- entrypoints 0.4
- exceptiongroup 1.1.2
- executing 1.2.0
- flit-core 3.9.0
- fonttools 4.41.1
- fqdn 1.5.1
- freetype 2.12.1
- h5py 3.6.0
- hdf5 1.12.1
- idna 3.4
- importlib-metadata 6.8.0
- importlib-resources 6.0.0
- importlib_metadata 6.8.0
- importlib_resources 6.0.0
- ipykernel 6.25.0
- ipython 8.14.0
- ipython_genutils 0.2.0
- ipywidgets 8.0.7
- isoduration 20.11.0
- jedi 0.18.2
- jinja2 3.1.2
- joblib 1.3.0
- json5 0.9.14
- jsonpointer 2.0
- jsonschema 4.18.4
- jsonschema-specifications 2023.7.1
- jsonschema-with-format-nongpl 4.18.4
- jupyter 1.0.0
- jupyter-lsp 2.2.0
- jupyter_client 8.3.0
- jupyter_console 6.6.3
- jupyter_core 5.3.1
- jupyter_events 0.6.3
- jupyter_server 2.7.0
- jupyter_server_terminals 0.4.4
- jupyterlab 4.0.3
- jupyterlab_pygments 0.2.2
- jupyterlab_server 2.24.0
- jupyterlab_widgets 3.0.8
- kiwisolver 1.4.4
- krb5 1.21.1
- lcms2 2.15
- lerc 4.0.0
- libblas 3.9.0
- libbrotlicommon 1.0.9
- libbrotlidec 1.0.9
- libbrotlienc 1.0.9
- libcblas 3.9.0
- libcurl 8.2.1
- libcxx 16.0.6
- libdeflate 1.18
- libedit 3.1.20191231
- libev 4.33
- libffi 3.4.2
- libgfortran 5.0.0
- libgfortran5 12.3.0
- libjpeg-turbo 2.1.5.1
- liblapack 3.9.0
- libnghttp2 1.52.0
- libopenblas 0.3.23
- libpng 1.6.39
- libprotobuf 3.19.6
- libsodium 1.0.18
- libsqlite 3.42.0
- libssh2 1.11.0
- libtiff 4.5.1
- libwebp-base 1.3.1
- libxcb 1.15
- libzlib 1.2.13
- llvm-openmp 16.0.6
- markupsafe 2.1.3
- matplotlib 3.7.2
- matplotlib-base 3.7.2
- matplotlib-inline 0.1.6
- mistune 3.0.0
- munkres 1.1.4
- nb_conda_kernels 2.3.1
- nbclient 0.8.0
- nbconvert 7.7.3
- nbconvert-core 7.7.3
- nbconvert-pandoc 7.7.3
- nbformat 5.9.1
- ncurses 6.4
- nest-asyncio 1.5.6
- notebook 7.0.0
- notebook-shim 0.2.3
- openjpeg 2.5.0
- openssl 3.1.4
- overrides 7.3.1
- packaging 23.1
- pandas 2.0.3
- pandoc 3.1.3
- pandocfilters 1.5.0
- parso 0.8.3
- patsy 0.5.3
- pexpect 4.8.0
- pickleshare 0.7.5
- pillow 10.0.0
- pip 23.2.1
- pkgutil-resolve-name 1.3.10
- platformdirs 3.9.1
- pooch 1.7.0
- prometheus_client 0.17.1
- prompt-toolkit 3.0.39
- prompt_toolkit 3.0.39
- psutil 5.9.5
- pthread-stubs 0.4
- ptyprocess 0.7.0
- pure_eval 0.2.2
- pycparser 2.21
- pyerfa 2.0.0.3
- pygments 2.15.1
- pyobjc-core 9.2
- pyobjc-framework-cocoa 9.2
- pyparsing 3.0.9
- pysocks 1.7.1
- python 3.9.16
- python-dateutil 2.8.2
- python-fastjsonschema 2.18.0
- python-json-logger 2.0.7
- python-tzdata 2023.3
- python_abi 3.9
- pytz 2023.3.post1
- pyyaml 6.0.1
- pyzmq 25.1.0
- qtconsole-base 5.4.4
- qtpy 2.4.1
- readline 8.2
- referencing 0.30.0
- requests 2.31.0
- rfc3339-validator 0.1.4
- rfc3986-validator 0.1.1
- rpds-py 0.9.2
- scikit-learn 1.3.0
- scipy 1.11.1
- seaborn 0.12.2
- seaborn-base 0.12.2
- send2trash 1.8.2
- setuptools 68.0.0
- six 1.16.0
- sniffio 1.3.0
- soupsieve 2.3.2.post1
- stack_data 0.6.2
- statsmodels 0.14.0
- terminado 0.17.1
- threadpoolctl 3.2.0
- tinycss2 1.2.1
- tk 8.6.12
- tomli 2.0.1
- tornado 6.3.2
- traitlets 5.9.0
- typing-extensions 4.8.0
- typing_extensions 4.8.0
- typing_utils 0.1.0
- tzdata 2023c
- unicodedata2 15.0.0
- uri-template 1.3.0
- urllib3 2.0.7
- wcwidth 0.2.6
- webcolors 1.13
- webencodings 0.5.1
- websocket-client 1.6.1
- wheel 0.41.0
- widgetsnbextension 4.0.8
- xorg-libxau 1.0.11
- xorg-libxdmcp 1.1.3
- xyzservices 2023.7.0
- xz 5.2.6
- yaml 0.2.5
- zeromq 4.3.4
- zipp 3.16.2
- zlib 1.2.13
- zstd 1.5.2