주요 콘텐츠

init

R2026b

(제거될 예정임) 신경망 초기화

init 함수는 향후 릴리스에서 제거될 예정입니다. 자세한 내용은 레거시 신경망 코드를 dlnetwork 워크플로로 전환하기 항목을 참조하십시오.

코드 업데이트에 대한 자세한 지침은 버전 내역 항목을 참조하십시오.

설명

init_net = init(net)은 net.initFcn으로 지정된 신경망 초기화 함수와 net.initParam으로 지정된 파라미터 값에 따라 가중치와 편향 값이 업데이트된 신경망 net을 반환합니다.

이 함수에 대한 자세한 내용을 보려면 MATLAB 명령 프롬프트에 help network/init을 입력하십시오.

예제

예제

모두 축소

이 예제에서는 init 함수를 사용하여 퍼셉트론 신경망을 다시 초기화하는 방법을 보여줍니다.

퍼셉트론을 만든 다음 그 입력값, 출력값, 가중치, 편향의 차원이 입력 데이터 및 목표 데이터와 일치하도록 구성합니다.

x = [0 1 0 1; 0 0 1 1];
t = [0 0 0 1];
net = perceptron;
net = configure(net,x,t);
net.iw{1,1}
net.b{1}

퍼셉트론을 훈련시켜 가중치와 편향 값을 바꿉니다.

net = train(net,x,t);
net.iw{1,1}
net.b{1}

init은 이런 가중치와 편향 값을 다시 초기화합니다.

net = init(net);
net.iw{1,1}
net.b{1}

가중치와 편향이 다시 퍼셉트론 신경망이 사용하는 초기값인 0이 됩니다.

입력 인수

모두 축소

입력 신경망으로, network 객체로 지정됩니다. network 객체를 만들려면 feedforwardnet 또는 narxnet 등을 사용하십시오.

출력 인수

모두 축소

init으로 다시 초기화한 후의 신경망으로, network 객체로 반환됩니다.

알고리즘

init은 net.initFcn을 호출하여 파라미터 값 net.initParam에 따라 가중치와 편향 값을 초기화합니다.

일반적으로 net.initFcn은 'initlay'로 설정되어 각 계층의 가중치와 편향을 그 net.layers{i}.initFcn에 따라 초기화합니다.

역전파 신경망의 경우, net.layers{i}.initFcn이 'initnw'로 설정되어 Nguyen-Widrow 초기화 방법을 사용하여 계층 i의 가중치와 편향 값을 계산합니다.

그 밖의 신경망의 경우, net.layers{i}.initFcn이 'initwb'로 설정되어 각각의 가중치와 편향 값마다 각각의 초기화 함수를 지정하여 초기화하게 됩니다. 가장 일반적인 가중치와 편향 초기화 함수는 rands로, 이 함수는 –1과 1 사이의 임의 값을 생성합니다.

버전 내역

R2006a 이전에 개발됨

모두 축소