|
|
Re: Training multiple data for a single feedforwardnet
Posted:
Nov 3, 2012 5:33 PM
|
|
"Greg Heath" <heath@alumni.brown.edu> wrote in message <k6vg6s$36r$1@newscl01ah.mathworks.com>... > "Carlos Aragon" wrote in message <k6ut1o$1mo$1@newscl01ah.mathworks.com>... > > "Greg Heath" <heath@alumni.brown.edu> wrote in message <k6rgsg$sp3$1@newscl01ah.mathworks.com>... > > > PLEASE, PLEASE DO NOT TOP POST!!! > > > > > > "Carlos Aragon" wrote in message <k6mhuh$etk$1@newscl01ah.mathworks.com>... > > > > Greg, thanks in advance. You're helping a lot! > > > > > > > > You said: > > > > > > > > (..) > > > > > > > > The best is to use a modication of NEWRB that allows the input of an initial > > > > > hidden layer. Then > > > > > > > > > > 1. After training with set1, use those weights as initial weights for training with set2 + set1. > > > > > > or, if you are lucky > > > > > > > > 2. After training with set1, use those weights as initial weights for training with set2 and a > "characteristic subset" of set1. The drawback is how to define that characteristic. > > > > > > > > > > The reason this works is that each hidden node basis function has local region of influence > and a 1-to-1 correspondence with a previous worst classified training vector. > > > > > > > > (...) > > > > > > > > I'm facing problems to perform this action on matlab. > > > > > > That statement is absolutely useless. I thought you wanted my help. > > > > > > > Is there any automated way there i can record set1 and then use it to train a set2? > > > > > > I have no idea what the second part of that statement means. > > > > > > >How could i do it? Actualy, i want my feedforwardnet to recognize 14 sets of diferent motor loads. > > > > > > Then simultaneously train on samples or characteristic exemplars from all 14. > > > > > If all of the data is not available at once, do it in stages. > > > > I have all the training and test data, but i dont know how could i do to train 14 > training vectors and then validate it with just 1 set to check if the neural net is generalizing well. > > Not even close. See below. > > > Tying to be clear about wat i'm doing. here is the code: > > > > ia=linear_train_1(1:5001,4); > > w=linear_train_1(1:5001,5); > > tq=linear_train_1(1:5001,2); > > T1=[198:0.000799840032:202]; % Voltage is between 198V and 202V > > iateste1=ia_lin_1(1:5001,4); > > wteste1=ia_lin_1(1:5001,5); > > Seems finely spaced. Do you reallyy need this much data? See below. > > > P=[T1;ia';w']; % This is the training vector that in this case, trains just 1 set of data. > > T=[tq']; I want my neural net to recognize 14 samples of [T1;ia;w']. T1 is fix but > 'ia'' and 'w'' varies according to the load equation i'm changing on my motor model. The > question is How could i train it to recognize those 14 samples? If i make 'Ia'' and 'w'' a > matrix of 14 different currents and speed, this neural net do not allow me to test a simple > >vector like is below > > You need to test matrices not single vectors.. > > > net=feedforwardnet([5 25],'trainbr'); > > Why 2 hidden layers??? Why H =25 ?? Why 'trainbr? >trainbr: i have to use bayesien-regulation > > net.trainParam.goal = 0.005; %error > > Why? defined goal. > > net.trainParam.epochs = 2000; > > Why? maximum training epochs that i want, if not reached the trainparam.goal. > > net=train(net,P,T); > > Performance evaluation?? > > [ net tr ] = ... > MSEtrn = ? > MSEval =? > MSEtst = ?
I dont understand what it means.
> Otherwise, how do you obtain separate tr/val/tst results. > > > P1=[T1;iateste1';wteste1']; > > Y = sim(net,P1); > > > > As you can see, i'm not an expert on this ... i imagine if you could help me build this > process of train and validate. Thanks a lot for your help! > > This is post No. 8 of this thread and you don't seem to be any further along than you were > at the first post. So, let's start again
It's a dificult task to explain. The goal of this thread is (code by code) determine how to train different sets of [V;Ia;w] defined above, so that my neural net will recognize those 14 datas. > 1. What is a motor model? Simulink-SimPowerSystems
There's an induction motor machine model. Resuming, i'm extracting data from this model associated with other procediment that does not matter here..
> 2. What is a motor load?
A motor is a device that converts electrical energy into mechanical energy to act upon a mechanical load. The burden placed on the motor due to this mechanical activity is referred to as the motor load.
> 3. What are V, ia, w and tq ? V -> Voltage ia -> Current on phase 'a' w-> motor speed tq-> it's the load generated according to the type of burden used to train.
> 4.What are the corresponding correlation coefficients? I think that does'nt matter too
> 5. What , exactly, are the differences between the 14 data sets? Defined what load is, the difference between the 14 data sets is the type with burden i'm using on the motor.
> 6. Have you plotted the output to determine how much sample spacing is > needed to adequately characterize it? 5000 datas is enough to have values from the transitory state to steady state.
> 7. Given that spacing, how much data is needed for that characterization? 6. > 8. Your first post mentions 10,006 measurements but later you use 5,0001. Yes. I've cut unnecessary data.
> Is that for each of the 14 data sets? one data set is a value of V ; Ia; W. Only 'V' is fix. Ia nd W varies in each of the 14 data sets. There are 5001 values of Ia and 5001 Values of W as there are 5001 values of fixed V (voltage)
> 9. As I stated before > 1. Only 1 hidden layer is necessary > 2. If you have 14 scenarios that you want to characterize with one net: > a. Take 6 and 7 into consideration and combine samples of all 14 into > multiple mixed subsets. > b. Since you have a large data set, Train/Validate and Test with a > 0.34/0.33/0.33 data split. > c. Use one or more data sets, as many defaults as possible, and vary > H to find the minimum acceptable value. > > This should give you a solid start. > > Hope this helps. > > Greg
|
|