Main Content

encode

클래스: Autoencoder

입력 데이터 인코딩

설명

예제

Z = encode(autoenc,Xnew)는 오토인코더 autoenc를 사용하여 입력 데이터 Xnew에 대해 인코딩된 데이터 Z를 반환합니다.

입력 인수

모두 확장

훈련된 오토인코더로, Autoencoder 클래스의 객체로 반환됩니다.

입력 데이터로, 샘플로 구성된 행렬, 영상 데이터로 구성된 셀형 배열 또는 단일 영상 데이터로 구성된 배열로 지정됩니다.

오토인코더 autoenc가 각 열이 하나의 샘플을 나타내는 행렬에 대해 훈련된 경우, Xnew는 각 열이 하나의 샘플을 나타내는 행렬이 되어야 합니다.

오토인코더 autoenc가 영상으로 구성된 셀형 배열에 대해 훈련된 경우, Xnew는 영상 데이터로 구성된 셀형 배열 또는 단일 영상 데이터로 구성된 배열이 되어야 합니다.

데이터형: single | double | cell

출력 인수

모두 확장

autoenc로 인코딩된 데이터로, 행렬로 지정됩니다. Z의 각 열은 인코딩된 샘플(관측값)을 나타냅니다.

데이터형: single | double

예제

모두 확장

샘플 데이터를 불러옵니다.

X = digitTrainCellArrayData;

X는 각 셀에 손으로 쓴 숫자를 표현한 합성 영상을 나타내는 28×28 행렬이 있는 1×5,000 셀형 배열입니다.

훈련 데이터를 사용하여 은닉 크기 50으로 오토인코더를 훈련시킵니다.

autoenc = trainAutoencoder(X,50);

디코딩된 데이터를 새로운 영상을 위해 인코딩합니다.

Xnew = digitTestCellArrayData;
Z = encode(autoenc,Xnew);

Xnew는 1×5,000 셀형 배열입니다. Z는 각 열이 새로운 데이터 Xnew에 있는 손으로 쓴 숫자 하나로 구성된 영상 데이터를 나타내는 50×5,000 행렬입니다.

알고리즘

오토인코더에 대한 입력값이 벡터 xDx이면, 인코더는 다음과 같이 벡터 x를 또 다른 벡터 zD(1)로 매핑합니다.

z=h(1)(W(1)x+b(1)),

여기서 위 첨자 (1)은 첫 번째 계층을 나타냅니다. h(1):D(1)D(1)은 인코더에 대한 전달 함수이고, W(1)D(1)×Dx는 가중치 행렬이고, b(1)D(1)은 편향 벡터입니다.

버전 내역

R2015b에 개발됨

참고 항목

| |