https://github.com/agrover112/mlrose

Python package for implementing a number of Machine Learning, Randomized Optimization and SEarch algorithms.

https://github.com/agrover112/mlrose

Science Score: 10.0%

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

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    3 of 18 committers (16.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.8%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Python package for implementing a number of Machine Learning, Randomized Optimization and SEarch algorithms.

Basic Info
  • Host: GitHub
  • Owner: Agrover112
  • License: bsd-3-clause
  • Language: Jupyter Notebook
  • Default Branch: master
  • Homepage: https://mlrose.readthedocs.io/
  • Size: 3.18 MB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Fork of hiive/mlrose
Created about 5 years ago · Last pushed almost 5 years ago
Metadata Files
Readme License

README.md

mlrose: Machine Learning, Randomized Optimization and SEarch

mlrose is a Python package for applying some of the most common randomized optimization and search algorithms to a range of different optimization problems, over both discrete- and continuous-valued parameter spaces.

Project Background

mlrose was initially developed to support students of Georgia Tech's OMSCS/OMSA offering of CS 7641: Machine Learning.

It includes implementations of all randomized optimization algorithms taught in this course, as well as functionality to apply these algorithms to integer-string optimization problems, such as N-Queens and the Knapsack problem; continuous-valued optimization problems, such as the neural network weight problem; and tour optimization problems, such as the Travelling Salesperson problem. It also has the flexibility to solve user-defined optimization problems.

At the time of development, there did not exist a single Python package that collected all of this functionality together in the one location.

Main Features

Randomized Optimization Algorithms

  • Implementations of: hill climbing, randomized hill climbing, simulated annealing, genetic algorithm and (discrete) MIMIC;
  • Solve both maximization and minimization problems;
  • Define the algorithm's initial state or start from a random state;
  • Define your own simulated annealing decay schedule or use one of three pre-defined, customizable decay schedules: geometric decay, arithmetic decay or exponential decay.

Problem Types

  • Solve discrete-value (bit-string and integer-string), continuous-value and tour optimization (travelling salesperson) problems;
  • Define your own fitness function for optimization or use a pre-defined function.
  • Pre-defined fitness functions exist for solving the: One Max, Flip Flop, Four Peaks, Six Peaks, Continuous Peaks, Knapsack, Travelling Salesperson, N-Queens and Max-K Color optimization problems.

Machine Learning Weight Optimization

  • Optimize the weights of neural networks, linear regression models and logistic regression models using randomized hill climbing, simulated annealing, the genetic algorithm or gradient descent;
  • Supports classification and regression neural networks.

Installation

mlrose was written in Python 3 and requires NumPy, SciPy and Scikit-Learn (sklearn).

The latest version can be installed using pip: pip install mlrose-hiive

Once it is installed, simply import it like so: python import mlrose_hiive

Documentation

The official mlrose documentation can be found here.

A Jupyter notebook containing the examples used in the documentation is also available here.

Licensing, Authors, Acknowledgements

mlrose was written by Genevieve Hayes and is distributed under the 3-Clause BSD license.

You can cite mlrose in research publications and reports as follows: * Rollings, A. (2020). mlrose: Machine Learning, Randomized Optimization and SEarch package for Python, hiive extended remix. https://github.com/hiive/mlrose. Accessed: day month year.

Please also keep the original author's citation: * Hayes, G. (2019). mlrose: Machine Learning, Randomized Optimization and SEarch package for Python. https://github.com/gkhayes/mlrose. Accessed: day month year.

You can cite this fork in a similar way, but please be sure to reference the original work. Thanks to David S. Park for the MIMIC enhancements (from https://github.com/parkds/mlrose).

BibTeX entry: ``` @misc{Hayes19, author = {Hayes, G}, title = {{mlrose: Machine Learning, Randomized Optimization and SEarch package for Python}}, year = 2019, howpublished = {\url{https://github.com/gkhayes/mlrose}}, note = {Accessed: day month year} }

@misc{Rollings20, author = {Rollings, A.}, title = {{mlrose: Machine Learning, Randomized Optimization and SEarch package for Python, hiive extended remix}}, year = 2020, howpublished = {\url{https://github.com/hiive/mlrose}}, note = {Accessed: day month year} } ```

Owner

  • Login: Agrover112
  • Kind: user

Humans trying to understand machines and people.

GitHub Events

Total
Last Year

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 393
  • Total Committers: 18
  • Avg Commits per committer: 21.833
  • Development Distribution Score (DDS): 0.496
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Andrew Rollings a****s@h****m 198
Genevieve Hayes g****7@g****m 108
Christopher R. Bilger 3****g 46
Ankit Grover a****2@g****m 9
Dominic Frecentese d****t@g****m 7
CAPN n****0@g****m 4
Kevin Boyer k****r@g****m 3
Austin Bowen a****4@g****m 2
David Strube d****e@g****m 2
Jason Seeley j****y@d****m 2
Kunal Sethi k****7@g****u 2
Michael Schock m@m****m 2
nibelungvalesti 9****i 2
Genevieve Hayes 2****s 2
W. Tad Morgan t****n 1
Keith Beattie K****e@l****v 1
Ben Spivey 6****y 1
Jason Seeley j****s@g****u 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: about 1 year 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