BAYESIAN OPTIMIZATION OF A NEURAL NETWORK

I wrote the following code to optimize the architecture of a neural network via Bayesian optimization. What's wrong with it?
clc
clear
data = xlsread('Geor.xls')
t = data(:,5)'
x = data(:,1:4)'
trainFcn = 'trainbr';
hiddenLayerSize = optimizableVariable('hiddenLayerSize',[1,4]);
net.divideParam.trainRatio = optimizableVariable('net.divideParam.trainRatio',[0.4,0.75]);
vars =[hiddenLayerSize, net.divideParam.trainRatio]
net = fitnet(hiddenLayerSize,trainFcn);
net.divideParam.valRatio = 0.5*(100-net.divideParam.trainRatio*100)/100;
net.divideParam.testRatio = 0.5*(100-net.divideParam.trainRatio*100)/100;
[net,tr] = train(net,x,t);
y = net(x);
e = gsubtract(t,y);
mae = sum(abs(e))/40
performance = perform(net,t,y);
fun = @(x)mae(x, vars)
results = bayesopt(fun,vars)

댓글 수: 3

Peter Meglis
Peter Meglis 2018년 8월 7일
Georgios,
"What's wrong with it?" Is an incredibly vague question. People here most likely aren't going to go through your code line by line and debug it for you. It will be beneficial to yourself and everyone else here if you add some details behind your question. It is better if you can have some specific questions that we can help answer.
Is there a certain error you are getting? Are the values you are getting unexpected? Is there a certain line of code that you have narrowed the problem down to?
Thanks
If you want to use data to explain your problem, use a MATLAB set:
help nndatasets
and
doc nndatasets
Greg
close all, clear all, clc
x = [-1:.05:1]; % FROM HELP TRAINBR
t = sin(2*pi*x)+0.1*randn(size(x));
trainFcn = 'trainbr';
hiddenLayerSize = optimizableVariable ('hiddenLayerSize',[1,4]);
net.divideParam.trainRatio = optimizableVariable('net.divideParam.trainRatio',[0.4,0.75]);
vars =[hiddenLayerSize,net.divideParam.trainRatio]
net = fitnet(hiddenLayerSize,trainFcn);
Error using fitnet (line 69)
Parameters.hiddenSizes is not numeric.

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

도움말 센터File Exchange에서 Deep Learning Toolbox에 대해 자세히 알아보기

질문:

2018년 8월 7일

댓글:

2018년 8월 7일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by