Git Product home page Git Product logo

multilayer-perceptron's Introduction

Multiple-Layer Perceptron

Using C# to implement multiple layer perceptron simulator. Learning algorithm for more details can refer to this Wikipedia page.

The dataset consists of multi-dimensional input sample set and ground truth set, The sample set will be given to training function to predict the ground truth set.

The purpose of program is training to tune a number of groups of shifting biases and synaptic(scaling) weights, and display the results in the graphical interface.

FeedForward Pass

擷取

BackPropagation Pass

擷取

Setup & Run Code

Getting Started

  • Clone this repo to your local
git clone https://github.com/simonhandsome/MultiLayer-Perceptron
cd MultiLayer-Perceptron

擷取

  1. Input random sample set
  2. Adjustable parameters
  3. Start training button
  4. Epochs
  5. Training loss(curve) visualization
  6. Learned hyperline visualization
  7. Weights and biases distribution

Demo

20230210_214135

Conclusion

Large size sample set will tend to converge faster than the small size, with the same settings of hidden layer and learning rate.

  • Small size sample set

20230211_114623

  • Large size sample set

20230211_115916

Different size (below 100) of hidden layer with suitable learning rate will tend to get good result of convergence (no matter the size of sample set).

  • Small size (below 20) hidden layer with the learning rate ranging from 0.08~0.007 will tend to get good result.

20230210_220908

  • Large size (from 20 to 100) hidden layer with the learning rate ranging from 0.03~0.006 will tend to get good result.

20230210_224842

Larger size hidden layer (over 100) is not recommended since the simple linear regression and prediction task no need to use such complicated network, it may lead to over-fitting, results in low converge speed.

Contributing

Please feel free to use it if you are interested in fixing issues and contributing directly to the code base.

License

Multilayer-Perceptron is released under the MIT license. See the LICENSE file for details.

multilayer-perceptron's People

Contributors

simonyang0608 avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

hc-chang

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.