rockyml
⛰️ RockyML - A High-Performance Scientific Computing Framework for Non-smooth Machine Learning Problems
Science Score: 67.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
Found 1 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.9%) to scientific vocabulary
Keywords
Repository
⛰️ RockyML - A High-Performance Scientific Computing Framework for Non-smooth Machine Learning Problems
Basic Info
- Host: GitHub
- Owner: amirabbasasadi
- License: apache-2.0
- Language: C++
- Default Branch: main
- Homepage: https://amirabbasasadi.github.io/RockyML
- Size: 18.6 MB
Statistics
- Stars: 19
- Watchers: 1
- Forks: 2
- Open Issues: 0
- Releases: 1
Topics
Metadata Files
README.md

📔 Documentation : amirabbasasadi.github.io/RockyML
Tutorials
Zagros Tutorials
- Using with CMake
- Create your first optimizer with Dena and Zagros
- Define a custom optimization problem in Zagros
- Block optimization for large problems
- Distributed optimization
- Designing search algorithms using Dena
- Test problems for benchmarking optimizers
Components
Zagros
Design Goals: - Providing a language called Dena for designing arbitrary complex optimizers by combining - Modular and parallel search strategies: Genetic, PSO, EDA, ... - Communication strategies for distributed optimization on top of MPI - Analyzer strategies for analyzing objective functions - Blocking strategies for block optimization - Logging strategies for tracking optimization experiments on local system or a remote server - Hybrid parallelism: multi-threading in each node and message passing across nodes (MPI) - Block optimization for using memory-intensive optimizers for large number of variables
```cpp
include
include
include
using namespace rocky::zagros; using namespace rocky::zagros::dena;
int main(int argc, char* argv[]){ MPI_Init(&argc, &argv);
// define the optimization problem
const int dim = 100;
benchmark::rastrigin<float> problem(dim);
// recording the result of optimization
local_log_handler log_handler("result.csv");
// define the optimizer
auto optimizer = container::create("A", 300)
>> init::uniform("A")
>> run::n_times(500,
mutate::gaussian("A")
>> run::with_probability(0.2,
crossover::differential_evolution("A")
)
>> log::local::best("A", log_handler)
);
// create a runtime for executing the optimizer
basic_runtime<float, dim> runtime(&problem);
runtime.run(optimizer);
MPI_Finalize();
return 0;
} ```
Etna (Work in progress)
Building blocks for designing non-differentiable neural networks
- Fast, low overhead, and thread-safe
- Various components:
- Standard deep learning layers
- Discrete and integer layers
- Combinatorial layers
- Stochastic layers
- Dynamic layers
About
Publications
If you use RockyML in your research, please cite it as follows:
bib
@software{RockyML,
author = {Asadi, Amirabbas},
doi = {10.5281/zenodo.7612838},
month = {2},
title = {{RockyML, A Scientific Computing Framework for Non-smooth Machine Learning Problems}},
url = {https://github.com/amirabbasasadi/RockyML},
year = {2023}
}
Owner
- Name: Amirabbas Asadi
- Login: amirabbasasadi
- Kind: user
- Location: Iran
- Website: https://www.linkedin.com/in/amirabbas-asadi/
- Repositories: 5
- Profile: https://github.com/amirabbasasadi
Independent AI Researcher
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software in your research, please cite it as below." authors: - family-names: "Asadi" given-names: "Amirabbas" orcid: "https://orcid.org/0000-0002-7421-1420" title: "RockyML, A Scientific Computing Framework for Non-smooth Machine Learning Problems" version: 0.0.1 doi: 10.5281/zenodo.7612838 date-released: 2023-02-04 url: "https://github.com/amirabbasasadi/RockyML"
GitHub Events
Total
- Watch event: 3
Last Year
- Watch event: 3
Committers
Last synced: 8 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Amirabbas Asadi | a****5@g****m | 214 |
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
- actions/checkout v3 composite
- actions/checkout v3 composite
- mattnotmitt/doxygen-action 1.9.5 composite
- stefanzweifel/git-auto-commit-action v4 composite