편집 기록

편집 기록
  • 프로필 정영훈님의 편집
    날짜2018.11.08

    매트랩 학습시킨뒤 에러를 특정범위미만으로 출력 시키고 싶은데 도움좀 주세요


    150 샘플 중 50%인 75 샘플로 neural network을 학습 시킨 후 나머지 50%를 예측해보고 잘 예측하는지 평가해 보시오. 에러가 0.1 미만이 되도록 하시오가 문제인데요. clear all; clc;

    inputs = [1:3]'; % 입력

    outputs = [0,1]'; % 원하는 출력 (실제 값)

    % create network

    net = network(1, 2, [1; 1], [1; 0], [0 0; 1 0], [0 1] );

    % View network structure

    view(net);

    % number of hidden layer neurons

    net.layers{1}.size = 4;

    % hidden layer transfer function

    net.layers{1}.transferFcn = 'logsig';

    view(net);

    % number of hidden layer neurons

    net = configure(net,inputs,outputs);

    view(net);

    initial_output = net(inputs);

    % network training

    net.trainFcn = 'trainlm';

    net.performFcn = 'mse';

    net = train(net,inputs,outputs);

    % network response after training

    final_output = net(inputs)

    load fisheriris for x = 1:1:150

    switch species{x};
    
        case 'setosa'            
            group(x)=1
    
    
        case 'versicolor'          
            group(x)=2
    
        case 'virginica'
            group(x)=3
    
    
    end
    

    end

    train_x=meas(1:2:end,:); train_y=group(2:2:end);

    test_x=meas(1:2:end,:); test_y=group(2:2:end);

    여기까지 했는데 train함수를 이용해서 train_x,train_y데이터로 net를 학습시켜서 학습된 net에 새로운 데이터를 넣어 예측해보고 에러를 0.1미만으로 하고 싶은데 도움좀 주세요ㅠ

  • 프로필 알 수 없는 사용자님의 편집
    날짜2018.10.31

    매트랩 학습시킨뒤 에러를 특정범위미만으로 출력 시키고 싶은데 도움좀 주세요


    150 샘플 중 50%인 75 샘플로 neural network을 학습 시킨 후 나머지 50%를 예측해보고 잘 예측하는지 평가해 보시오. 에러가 0.1 미만이 되도록 하시오가 문제인데요. clear all; clc;

    inputs = [1:3]'; % 입력

    outputs = [0,1]'; % 원하는 출력 (실제 값)

    % create network

    net = network(1, 2, [1; 1], [1; 0], [0 0; 1 0], [0 1] );

    % View network structure

    view(net);

    % number of hidden layer neurons

    net.layers{1}.size = 4;

    % hidden layer transfer function

    net.layers{1}.transferFcn = 'logsig';

    view(net);

    % number of hidden layer neurons

    net = configure(net,inputs,outputs);

    view(net);

    initial_output = net(inputs);

    % network training

    net.trainFcn = 'trainlm';

    net.performFcn = 'mse';

    net = train(net,inputs,outputs);

    % network response after training

    final_output = net(inputs)

    load fisheriris for x = 1:1:150

    switch species{x};
    
        case 'setosa'            
            group(x)=1
    
    
        case 'versicolor'          
            group(x)=2
    
        case 'virginica'
            group(x)=3
    
    
    end
    

    end

    train_x=meas(1:2:end,:); train_y=group(2:2:end);

    test_x=meas(1:2:end,:); test_y=group(2:2:end);

    여기까지 했는데 train함수를 이용해서 train_x,train_y데이터로 net를 학습시켜서 학습된 net에 새로운 데이터를 넣어 예측해보고 에러를 0.1미만으로 하고 싶은데 도움좀 주세요ㅠ