Main Content

fitnet

함수 피팅 신경망

설명

예제

net = fitnet(hiddenSizes)는 은닉 계층 크기가 hiddenSizes인 함수 피팅 신경망을 반환합니다.

예제

net = fitnet(hiddenSizes,trainFcn)trainFcn으로 지정되는 훈련 함수를 가지며 은닉 계층 크기가 hiddenSizes인 함수 피팅 신경망을 반환합니다.

예제

모두 축소

훈련 데이터를 불러옵니다.

[x,t] = simplefit_dataset;

1×94 행렬 x는 입력값을 포함하고, 1×94 행렬 t는 그에 대한 목표 출력값을 포함합니다.

은닉 계층 크기가 10인 함수 피팅 신경망을 생성합니다.

net = fitnet(10);

신경망을 표시합니다.

view(net)

입력과 출력의 크기는 0입니다. 입력 크기와 출력 크기는 훈련 데이터에 따라 소프트웨어에 의해 훈련 중에 조정됩니다.

훈련 데이터를 사용하여 신경망 net을 훈련시킵니다.

net = train(net,x,t);

훈련된 신경망을 표시합니다.

view(net)

입력과 출력의 크기가 1인 것을 확인할 수 있습니다.

훈련된 신경망을 사용하여 목표값을 추정합니다.

y = net(x);

훈련된 신경망의 성능을 평가합니다. 디폴트 성능 함수는 평균 제곱 오차입니다.

perf = perform(net,y,t)
perf = 1.4639e-04

함수 피팅 신경망의 디폴트 훈련 알고리즘은 Levenberg-Marquardt('trainlm')입니다. 베이즈 정규화 훈련 알고리즘을 사용한 다음, 성능 결과를 비교합니다.

net = fitnet(10,'trainbr');
net = train(net,x,t);

y = net(x);
perf = perform(net,y,t)
perf = 3.3416e-10

베이즈 정규화 훈련 알고리즘은 목표값 추정의 측면에서 신경망의 성능을 개선합니다.

입력 인수

모두 축소

신경망의 은닉 계층의 크기로, 행 벡터로 지정됩니다. 벡터의 길이는 신경망의 은닉 계층의 개수를 결정합니다.

예: 예를 들어, 첫 번째 은닉 계층의 크기가 10이고 두 번째 은닉 계층의 크기가 8이고 세 번째 은닉 계층의 크기가 5인, 은닉 계층을 3개 갖는 신경망을 [10,8,5]와 같이 지정할 수 있습니다.

입력 크기와 출력 크기는 0으로 설정됩니다. 입력 크기와 출력 크기는 훈련 데이터에 따라 소프트웨어에 의해 훈련 중에 조정됩니다.

데이터형: single | double

훈련 함수 이름으로, 다음 중 하나로 지정됩니다.

훈련 함수알고리즘
'trainlm'

Levenberg-Marquardt

'trainbr'

베이즈 정규화

'trainbfg'

BFGS 준뉴턴

'trainrp'

탄력적 역전파

'trainscg'

스케일링된 켤레 기울기

'traincgb'

Powell/Beale 재시작 알고리즘을 사용한 켤레 기울기

'traincgf'

Fletcher-Powell 켤레 기울기

'traincgp'

Polak-Ribiére 켤레 기울기

'trainoss'

1스텝 할선법

'traingdx'

가변 학습률 경사하강법

'traingdm'

모멘텀을 사용한 경사하강법

'traingd'

경사하강법

예: 예를 들어, 'traingdx'와 같이 훈련 알고리즘으로 가변 학습률 경사하강법 알고리즘을 지정할 수 있습니다.

훈련 함수에 대한 자세한 내용은 얕은 다층 신경망 훈련시키고 적용하기다층 신경망 훈련 함수 선택하기 항목을 참조하십시오.

데이터형: char

출력 인수

모두 축소

함수 피팅 신경망으로, network 객체로 반환됩니다.

  • 함수 피팅은 입력값 세트에 대해 신경망을 훈련시켜 그에 대한 목표 출력값 세트를 생성하는 과정입니다. 원하는 은닉 계층과 훈련 알고리즘으로 신경망을 생성한 후에는 훈련 데이터 세트를 사용하여 훈련시켜야 합니다. 신경망이 데이터를 피팅한 후에는 입력-출력 관계에 대한 일반화를 형성합니다. 그러면 훈련된 신경망을 사용하여 신경망이 훈련되지 않은 입력값에 대해 출력값을 생성할 수 있습니다.

버전 내역

R2010b에 개발됨