주요 콘텐츠

stack

R2026b

클래스: Autoencoder

(제거될 예정임) 여러 오토인코더의 인코더들을 한꺼번에 누적

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

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

설명

stackednet = stack(autoenc1,autoenc2,...)는 오토인코더 autoenc1, autoenc2 등의 인코더들을 누적하여 만든 network 객체를 반환합니다.

stackednet = stack(autoenc1,autoenc2,...,net1)은 여러 오토인코더의 인코더들과 network 객체 net1을 누적하여 만든 network 객체를 반환합니다.

오토인코더와 network 객체는 차원이 같은 경우에만 누적할 수 있습니다.

예제

입력 인수

모두 확장

훈련된 오토인코더로, Autoencoder 객체로 지정됩니다.

훈련된 오토인코더로, Autoencoder 객체로 지정됩니다.

훈련된 신경망으로, network 객체로 지정됩니다. net1은 trainSoftmaxLayer 함수를 사용하여 훈련된 소프트맥스 계층이 될 수 있습니다.

출력 인수

모두 확장

적층 신경망(심층 신경망)으로, network 객체로 반환됩니다.

예제

모두 확장

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

[X,T] = iris_dataset;

은닉 계층 크기가 5이고 디코더에 대한 선형 전달 함수를 갖는 오토인코더를 훈련시킵니다. L2 가중치 정규화 함수를 0.001로, 희소 정규화 함수를 4로, 희소 비율을 0.05로 설정합니다.

hiddenSize = 5;
autoenc = trainAutoencoder(X, hiddenSize, ...
    'L2WeightRegularization', 0.001, ...
    'SparsityRegularization', 4, ...
    'SparsityProportion', 0.05, ...
    'DecoderTransferFunction','purelin');

Figure Neural Network Training (07-Aug-2026 06:04:47) contains an object of type uigridlayout.

은닉 계층에 있는 특징을 추출합니다.

features = encode(autoenc,X);

features를 사용하여 분류를 위한 소프트맥스 계층을 훈련시킵니다.

softnet = trainSoftmaxLayer(features,T);

Figure Neural Network Training (07-Aug-2026 06:04:54) contains an object of type uigridlayout.

인코더와 소프트맥스 계층을 누적하여 심층 신경망을 형성합니다.

stackednet = stack(autoenc,softnet);

적층 신경망을 표시합니다.

view(stackednet);

팁

  • 오토인코더 하나의 은닉 표현의 크기는 함께 누적된 다음에 오는 오토인코더 또는 신경망의 입력 크기와 일치해야 합니다.

    적층 신경망의 첫 번째 입력 인수는 첫 번째 오토인코더의 입력 인수가 됩니다. 누적된 신경망의 첫 번째 오토인코더의 인코더의 출력 인수는 두 번째 오토인코더의 입력값이 됩니다. 적층 신경망의 두 번째 오토인코더의 인코더의 출력 인수는 세 번째 오토인코더의 입력값이 되는 식입니다.

  • 적층 network 객체 stacknet은 마지막 입력 인수 net1로부터 훈련 파라미터를 상속받습니다.

버전 내역

R2015b에 개발됨