Rank: 388 based on 247 downloads (last 30 days) and 5 files submitted
photo

Richard Stapenhurst

E-mail

Personal Profile:
Professional Interests:
Machine learning

 

Watch this Author's files

 

Files Posted by Richard View all
Updated   File Tags Downloads
(last 30 days)
Comments Rating
20 Apr 2012 Screenshot Online Learning of Moving Gaussians Manipulate moving gaussians in real-time and see how an online learning algorithm reacts. Author: Richard Stapenhurst online learning, nonstationary learnin..., gaussian distribution..., change detection, naive bayes, machine learning 15 0
17 Apr 2012 Screenshot Generalised Truth Tables Generate 'truth tables' where columns correspond to digits in arbitrary mixtures of bases. Author: Richard Stapenhurst truth table, combinatorics, counting, base, exhaustive, binary 5 0
31 Mar 2011 Screenshot SVM Demo An interactive demo of how an SVM works, with comparison to a perceptron Author: Richard Stapenhurst demo, optimization, optimisation, svm, support vector machin..., support vector 171 2
  • 5.0
5.0 | 6 ratings
02 Nov 2010 Screenshot Boosting Demo A demo to illustrate the behaviour of Adaboost with various base learners on a few toy datasets. Author: Richard Stapenhurst machine learning, artificial intelligen..., demo, gui, adaboost, optimization 35 2
  • 4.0
4.0 | 2 ratings
17 Aug 2010 Screenshot Progress Bars Attractive and full-featured progress bars. Author: Richard Stapenhurst gui, statistics, measurement, experiment, progress bar, waitbar 21 8
  • 5.0
5.0 | 2 ratings
Comments and Ratings by Richard View all
Updated File Comments Rating
19 Nov 2011 SVM Demo An interactive demo of how an SVM works, with comparison to a perceptron Author: Richard Stapenhurst

Hi Honza,
if you are referring to the case where data is not linearly separable, then it is true that the computation of the boundary and support vectors may seem strange.

Typically, we would construct an SVM with some tolerance for misclassified data; for example, we could compute a 'soft margin' (See Vapnik and Cortes, 1995), which optimises a trade-off between the maximum margin decision boundary and a small penalty for misclassification. In my program, I have set the misclassification penalty to be very large - since this can affect the position of the decision boundary even when data is linearly separable. I do this so that you can see the optimal separating hyperplane.

Obviously this is not representative of how you would solve a real non linearly separable problem - if you suspect that data is noisy, it would be appropriate to change the 'C' parameter in a soft-margin SVM. Alternatively, if you suspect that data is complex and non-linear, it may be better to use a non-linear kernel (e.g. rbf).

Regardless of where data is linear and/or separable, you should find that some data points that are correctly classified will be support vectors. The support vectors correspond to the data points that actually define where the decision boundary is. They comprise any misclassified datapoints (which will correspond to penalty terms in the soft-margin problem), and all the correctly classified datapoints which lie exactly the minimum distance away from the margin.

I hope this answers your question.

17 Aug 2010 Progress Bars Attractive and full-featured progress bars. Author: Richard Stapenhurst

Thank you very much for your suggestions Jason, I have submitted an updated version.

27 Jul 2010 Progress Bars Attractive and full-featured progress bars. Author: Richard Stapenhurst

Hi Bryant,
As the description says, the pre-processing only works for scripts. I could modify it to accommodate functions/classes, but I'd be surprised if this was regularly useful.
However, it is possible to manually add a progress bar in non-script scenarios as described in the first paragraph of the description.
I will add support for pre-processing of functions to my to-do list :)

23 Jul 2010 Progress Bars Attractive and full-featured progress bars. Author: Richard Stapenhurst

Thanks for your feedback Donald, if you could send me your test file then I can take a closer look at it.

It's possible that there is an error in your original test.m file.
When boilerplate code is added, a new file ("test_pr.m" in this case) is created and executed. Therefore, any errors in the original file (test.m) will be reported from the modified file (test_pr.m).

Ideally, I would like to catch and modify any exception thrown in test_pr.m so that it the stack trace and line numbers refer to code in test.m; if any MATLAB wizard knows if this is possible, I would be thrilled to know how! (I would want to be able to generate an exception that looks like it came from a specific line in a specific file)

Comments and Ratings on Richard's Files View all
Updated File Comment by Comments Rating
16 Jul 2014 SVM Demo An interactive demo of how an SVM works, with comparison to a perceptron Author: Richard Stapenhurst University, SASTRA

23 May 2013 SVM Demo An interactive demo of how an SVM works, with comparison to a perceptron Author: Richard Stapenhurst tgn, godwin

12 Mar 2013 Progress Bars Attractive and full-featured progress bars. Author: Richard Stapenhurst O'Connor, Andrew

Great feature using comments. Very clever.
+1 to including within functions. If possible it would be nice to control the progress bar within nested functions using only comments too. Not sure if this is possible.

06 Jan 2013 Boosting Demo A demo to illustrate the behaviour of Adaboost with various base learners on a few toy datasets. Author: Richard Stapenhurst kunming, li

How can I run it.Who can tell me.Thank you.

19 Feb 2012 SVM Demo An interactive demo of how an SVM works, with comparison to a perceptron Author: Richard Stapenhurst Tulips

Contact us