디시에서 안씹히고 잘 보일지는 장담 못함.
----
행렬 크기
[m n] = size(X)
행렬의 제곱
X .^ 2
X .* X
벡터의 제곱
v * v'
열(column) 평균
mu = mean(X)
행(row) 평균
mu_row = mean(X, 2)
열 표준편차(standard deviation)
sigma = std(X)
열 복사
ones(3, 1) * [1 2]
행 벡터, 열 벡터 갯수
numel(y)
역행렬
pinv(X)
sigmoid 계산시 사용하는 지수함수
exp(-z)
열 삭제 및 붙이기
theta = [1; 2; 3; 4]
theta_without_bias = [0; theta(2:end, :)]
행 붙이기
X = [ones(m, 1), X]
람다 함수 정의 - t를 인자로 받아 내부에서 t를 사용
@(t)(... t)
람다 함수 이용 - t를 인자로 받아 lrCostFunction에서 변수처럼 사용. 나머지는 상수처럼 사용
fmincg(@(t)(lrCostFunction(t, X, (y == i), lambda)), initial_theta , options)
콜렉션(?) - 아무거나 집어넣을 수 있는 리스트
Thetas = {Theta1 Theta2}
Thetas{1} == Theta1
다수의 리턴 값
X = [1 2; 3 4; 5 6]
[row col] = find(X == 5)
최대값이 있는 행
[values positions] = max(X)
최대값이 있는 열
[values positions] = max(X, [], 2)
단위행렬 만들기
eye(4)
단위행렬 행별로 y 벡터 값 위치로 셋팅
(permutation over identity matrix)
eye(4)([2; 1; 4; 3], :)
eye(num_labels)(y, :)
벡터를 행렬로 변환
reshape([1; 2; 3; 4; 5; 6], 2, 3)
첫번째 행에서 i 번째 행까지 모든 열 축출
X(1:i, :)
i번째 행에서 나머지 행까지 모든 열 축출
X(i:end, :)
편집시 다음 행에 계속
...
커멘트
%
%{
여러줄 커멘트
%}
수동 브로드캐스팅
%% 열 평균
mu = mean(X);
%% mu를 X의 행 만큼 복사해서 행렬 minus를 적용
X_norm = bsxfun(@minus, X, mu)
벡터 대입
x = zeros(10, 1)
indices = [2, 3]
x(indices) = 1
행벡터 -> 열벡터
x = [1 2 3 4]
x = x(:)
행렬 스칼라 합
sum(sum(X))
인덱스 위치찾기
pos = find(strcmp(str, vocabList));
X_is = find(idx == i) % idx는 벡터
파이썬으로 안함?
굿굿
응센세는 매트랩을 선호해
ㄴ 난 메트랩 할줄 모르는뎅 ㅠ
나도 처음 해봣는데, 30분 + 위에 요약해논거 알면 되는 부분
갯수->개수 (개수 (個數)[명사] : 한 개씩 낱으로 셀 수 있는 물건의 수효.) [리듬 맞춤법 봇♬]
셋팅->세팅 (외래어는 뒤 초성이 거센소리나 된소리일 때 앞 받침을 안 적는 게 원칙. 쉽게 말하자면 받침 유무에 따라 발음 차이가 없으면 받침 안 씀) [리듬 맞춤법 봇♬]
개꿀
응 행렬 X .^ 2 이 Hadamard power 고 X .* X 는 Hadamard product 라는 설명을 붙이면 완벽할 것 같아.