主要内容

解码

클래스:自动编码器

인코딩된데이터디코딩

설명

예제

y=解码(自动,,,,z는오토인코더自动를사용하여디코딩된데이터y를반환합니다。

입력인수

모두확장

훈련된코더로,Trainautoencoder함수에의해自动编码器클래스의로됩니다됩니다。

自动로인코딩데이터로,행렬로지정。z의각된(관측)을나타냅니다나타냅니다。

데이터형:单身的|双倍的

출력인수

모두확장

디코딩된,영상데이터로된또는배열됩니다됩니다됩니다。

오토인코더自动가영상구성셀형배열대해훈련된경우,y도영상구성셀형이됩니다됩니다。

오토인코더自动가행렬대해훈련경우,y도행렬이됩니다。여기서y의각의또는값값됩니다됩니다됩니다。

예제

모두확장

훈련데이터불러옵니다。

X = DigittrainCellArrayData;

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

훈련데이터사용은닉크기크기크기로오토인훈련시킵니다훈련시킵니다훈련시킵니다훈련시킵니다

Hiddensize = 15;autoenc = trainautoencoder(x,hiddensize);

새로운영상하기위해,인코딩된를코더사용하여합니다합니다합니다。

Xnew = DigittestCellArrayData;功能= encode(autoenc,XNew);

오토인코더인코딩데이터디코딩합니다합니다。

y =解码(autoenc,功能);

y는각에으로쓴숫자를표현한합성영상을을나타나타나타나타28×28행렬이1×1×5,000셀형입니다입니다。

알고리즘

오토인코더대한입력값벡터벡터 X d X 이면,인코더벡터벡터x x를또벡터벡터벡터 z d (( 1 로매핑합니다。

z = H (( 1 (( w (( 1 X + b (( 1 ,,,,

여기서(1)은첫계층나타냅니다나타냅니다。 H (( 1 d (( 1 d (( 1 은인코더대한전달이고, w (( 1 d (( 1 × d X 는가중치, b (( 1 d (( 1 은편향입니다。그런표현표현표현표현표현표현벡터벡터벡터벡터에추정값으로으로다시합니다합니다합니다합니다합니다합니다

X ^ = H (( 2 (( w (( 2 z + b (( 2 ,,,,

여기서(2)는두계층나타냅니다나타냅니다나타냅니다。 H (( 2 d X d X 는디코더대한전달이고, w (( 1 d X × d (( 1 은가중치, b (( 2 d X 는편향입니다。

버전내역

R2015B에개발됨

참고항목

|