20200822

개발Velog·2020년 8월 22일
0

Convolution
겹치는 거 합산 반복

입력이 3개면 필터도 3개
-> 출력 한채널로
채널
필터
커널
스트라이드 - 출력사이즈
1칸 1/1
2칸 1/2
3칸 1/3
패딩
피처 앱
액티베이션 앱
풀링

6 6 3
필터 2개
3 3 3
3 3 3

33 필터를 넣으면 - 2
패딩 1 추가하면 8 * 8 되면서 입력 출력 동일

442

케라스 텐서
vaild padding x
same padding o

(2,2,1,3)

2 * 2 1개의 필터로 3개의 출력

TF1, Keras, TF2 (N, H, W, C) - 픽셀 단위
image = np.array([[[[1],[2],[3]],
[[4],[5],[6]],
[[7],[8],[9]]]], dtype=np.float32)

Pytorch (N, C, H, W) - 채널 단위
image = np.array([[[[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]]], dtype=np.float32)

Conv2d => Class
초기화 layer 특성 정리
사용 입력 -> 출력

작은 세세한 특징
......큰 특징
사이즈를 줄이거나 필터를 키우거나.

Conv2D(32, (5, 5), padding='valid', input_shape=(28, 28, 1), activation='relu')

첫번째 인자 : 컨볼루션 필터의 수 입니다.
두번째 인자 : 컨볼루션 커널의 (행, 열) 입니다.
padding : 경계 처리 방법을 정의합니다.
‘valid’ : 유효한 영역만 출력이 됩니다. 따라서 출력 이미지 사이즈는 입력 사이즈보다 작습니다.
‘same’ : 출력 이미지 사이즈가 입력 이미지 사이즈와 동일합니다.
input_shape : 샘플 수를 제외한 입력 형태를 정의 합니다. 모델에서 첫 레이어일 때만 정의하면 됩니다.
(행, 열, 채널 수)로 정의합니다. 흑백영상인 경우에는 채널이 1이고, 컬러(RGB)영상인 경우에는 채널을 3으로 설정합니다.
activation : 활성화 함수 설정합니다.
‘linear’ : 디폴트 값, 입력뉴런과 가중치로 계산된 결과값이 그대로 출력으로 나옵니다.
‘relu’ : rectifier 함수, 은익층에 주로 쓰입니다.
‘sigmoid’ : 시그모이드 함수, 이진 분류 문제에서 출력층에 주로 쓰입니다.
‘softmax’ : 소프트맥스 함수, 다중 클래스 분류 문제에서 출력층에 주로 쓰입니다

https://github.com//demul/lecture_bit202007

IOUT

selective search
Non-Maximum suppression 같은객체면 SCORD젤높은것만 나두고 제거
Bounding Box Regression

SPPNet

Fast R-CNN

최종 아웃풋 H W 18

Faster R-CNN

YOLO v1 7 7 30 > (7 7 (2 * (1 + 4) + 20))

https://github.com/thtrieu/darkflow

profile
안녕하세요. 데이터와 동고동락 중인 개발자 입니다.

0개의 댓글