복잡한 응용 프로그램 구축 (1) - matlab

3205 단어
코드는 기계가 이해하는 동시에 보여주는 것이고 주석은 코드를 보는 사람에게 보여주는 것이다. 물론 코드를 보는 사람은 코드 리뷰의 같은 프로젝트 그룹 구성원을 포함하고 다음날(이 코드를 다 쓴 후) 자신도 포함한다.너의 상식에 맞지 않는 변수 명칭, 괴상한 문장은 결국 남을 해치고 자신을 해친다.

메모

%%====================================================================== %% STEP 1: Initialization
%  Here we initialize some parameters used for the exercise.

...

%%====================================================================== %% STEP 2: Sample patches

... 

%%====================================================================== %% STEP 3: Iterative optimization

주 프로그램

clc; close all; clear all;

내부 보조 함수


이 개념을 어떻게 표현해야 할지 모르겠지만, 바로 함수를 정의한 것이다.m 파일의 내부에는 다른 함수(내부보조함수라고도 부른다)도 정의되어 있다.
  • (1) 우선 이 내부 함수는 외부에서 볼 수 없고 이것만 볼 수 있다.m 파일 사용
  • (2) 외부에서 보이지 않는 이상 이 내부 보조 함수의 모든 의미는 코드 구조를 간소화하고 일정한 코드 부분을 추출하여 하나의 단독 기능 모듈로 삼는 데 있다.

  • 오류 메시지 선언 및 출력

    if exist('groupMatrix', 'var'),
        assert(size(groupMatrix, 2) == numFeats, 'groupMatrix has bad dimension');
    end

    options


    함수의 매개 변수(특히 초참lambda,beta,gamma,epsilon)가 너무 많을 때 함수 인터페이스 형식의 간소화를 위해 options라는 구조체를 봉인하는 것을 고려할 수 있다.

    자루m 파일을 다른 하위 폴더 (sub-directory) 아래 두기


    서로 다른 하위 폴더는 사실 서로 다른 기능 모듈을 의미한다.
  • data
  • figs
  • utilities
  • misc

  • 매개변수의 조직

    autoenc1 = trainAutoencoder(xTrainImages,hiddenSize1, ...
        'MaxEpochs',400, ...
        'L2WeightRegularization',0.004, ...
        'SparsityRegularization',4, ...
        'SparsityProportion',0.15, ...
        'ScaleData', false);
    

    좋은 웹페이지 즐겨찾기