Friday 1 February 2013

PROJECT LOG


For function fitting matlab features a Neural Networking Tool which uses neural networking to appoximate the data's function. We're going to need to familiarise ourselves with neural network theory and this Matlab toolbox. I've uploaded the user guide and it has some examples we can practice in it(and on the Mathworks website).

There's a few lectures and tutorials on youtube about neural networks, this one is good as a brief and basic introduction;

http://www.youtube.com/watch?v=DG5-UyRBQD4

Matlab code for linear regression (taken from Mathworks website);

[x,t] = simplefit_dataset;
net = feedforwardnet(20);
net = train(net,x,t);
y = net(x);
[r,m,b] = regression(t,y);
plotregression(t,y)

Running this you will see the NNT training tool go through several iterations to learn the best weights and biases to give the line of best fit. The program then plots the data with the equation of the line along the left side of the graph.

The 'simplefit_dataset' is just some example data that matlab has.
You can put in your own data, for example using x=1:10 and t=[1.2,2.5,2.9,3.1,4.8,5.6,7.2,8.8,9.2,10.0] will give a line y=0.8t + 2.1. the R=0.8082 describes how close the data fits the line.


I also find the past experimental result from:

http://year2projects.blogspot.co.uk/.

There are three types of function approximation which are curve fitting toolbox, neural network and interpolation function.

I read some Chinese thesis about interpolation approximation. It is used when the data not enough and need to replenish.It could find the regularity of distribution and make a function to connect each point which has been known. So people could forecast some point between each two points.

http://wenku.baidu.com/view/5fa11641be1e650e52ea99a1

I still need some time to know how to write the code to realize the interpolation approximation.

No comments:

Post a Comment