Code Monkey home page Code Monkey logo

new-random-forest-idea's Introduction

Alex's Crazy Random Forest Idea
===============================

Random Forests typically promote diversity between trees by using a number of predictors to 
consider at each node (M) which is less than the total number of predictors (P). M seems to 
range from about 0.3 P to about 0.6 P, but is constant in the entire forest. This 
implementation chooses M from a distribution. 


In an attempt to increase diversity without losing accuracy 
(for each of the trees) this code draws M from a distribution before choosing the predictor 
variables to use at each node. My thought is that this will allow some nodes in each tree to 
be much more accurate than other nodes. Since the trees are grown out completely (i.e. not
pruned) this might make a difference. Tests indicate nothing conclusive. This implementation 
was a little better for some data sets and a little worse for others. All the data and tests 
are in this repo. The professor of the class and I both agree it is worth exploring further 
with more data and a faster implementation perhaps in something like C that can then be 
hooked into R. If I wind up doing that, I'll add a link here. 

The main code (building and traversing of the trees) is in randomForestM.R and the test scripts 
are in the files that begin with overnight. There are comparisons with the standard random forest 
code in those test scripts. 

new-random-forest-idea's People

Contributors

xgess avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

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.