지금까지 CNN에서 이미지의 특징을 추출하는 Convolutional Layer와 Pooling Layer에 대해서 알아보았다.이제는 이렇게 추출된 feature를 바탕으로 최종 분류 작업을 수행하는 단계, 즉 Flatten Layer & Fully Connected Layer에 대해 살펴보자. Flatten Layer란? 다차원(2D~3D)의 feature map을 1차원 벡터로 평탄화(flatten)하는 역할이다. Convolutional Layer와 Pooling Layer는 이미지 정보를 2차원 형태로 다루므로,이후의 분류 작업을 위해선 이 데이터를 1차원 형태의 벡터로 변환해야 한다. 즉, flatten layer는 분류/예측을 위한 fully connected layer에 적용되는 벡터 형태..
CNN(Convolutional Neural Netwok)이란?CNN은 이미지 처리와 패턴 인식에 탁월한 성능을 보여주는 신경망이다.이미지 데이터의 공간적 특징(예: 형태, 경계, 방향성 등)을 잘 포착할 수 있는 구조로 설계되어 있으며, 이러한 특성을 바탕으로 시각적 패턴을 학습하고 인식하는 데 널리 사용됩니다. 지금까지 CNN의 핵심인 합성곱층(convolutional layer)에 대해 알아보았다.이제는 CNN의 또 다른 구성 계층인 풀링층(Pooling Layer)에 대해 알아보도록 하자. Pooling layer란? Pooling은 convolutional layer에서 추출된 feature map을 더 작고 간결하게 만드는 과정이다.이 과정을 통해 CNN은 불필요한 정보는 줄이고, 중요한 정..
CNN(Convolutional Neural Netwok)이란?CNN은 이미지 처리와 패턴 인식에 탁월한 성능을 보여주는 신경망이다.이미지 데이터의 공간적 특징(예: 형태, 경계, 방향성 등)을 잘 포착할 수 있는 구조로 설계되어 있으며, 이러한 특성을 바탕으로 시각적 패턴을 학습하고 인식하는 데 널리 사용됩니다. 이전 포스팅에서는 CNN의 핵심 구성 요소인 Convolutional Layer에 대해 살펴보았다.이번에는 Convolutional Layer의 출력 값에 비선형성을 부여하는 데 사용되는 활성화 함수(Activation Function)에 대해 알아보려고 한다.머신러닝이나 딥러닝을 공부해본 사람이라면 활성화 함수에 대해 한 번쯤은 접해봤을 것이다.이번 글에서는 활성화 함수의 개념을 간략히 ..
CNN(Convolutional Neural Netwok)이란?CNN은 이미지 처리와 패턴 인식에 탁월한 성능을 보여주는 신경망이다.이미지 데이터의 공간적 특징(예: 형태, 경계, 방향성 등)을 잘 포착할 수 있는 구조로 설계되어 있으며, 이러한 특성을 바탕으로 시각적 패턴을 학습하고 인식하는 데 널리 사용됩니다. 이전 포스팅에서는 CNN이 무엇인지에 대해서 알아보았다.이번에는 그보다 한 걸음 더 나아가, CNN을 구성하는 각 Layer가 어떻게 작동하는 지 자세하게 살펴보겠다.오늘은 그 중에서도 CNN의 핵심인 Convolutional layer(합성곱 층)에 집중해 보겠습니다.아래 그림에서 빨간 박스로 표시된 계층이다. 합성곱 층(Convolutional Layer)의 역할?합성곱 층은 입력 이..
CNN(Convolutional Neural Network)이란?CNN은 이미지나 영상처럼 공간적 구조를 가진 데이터를 효과적으로 처리하기 위해 고안된 딥러닝 모델이다.입력 전체를 한번에 보는 게 아니라 작은 patch(부분 영역)만 보면서 처리하는 모델이다. [왜 CNN이 필요한가?] 기존의 DNN은 고해상도의 이미지를 처리할 때 몇 가지 문제점이 있었다. 위 그림을 보면 16x16(=256 픽셀) 이미지를 기존의 DNN으로 학습할 경우 28,326개의 파라미터가 필요하다.이미지 해상도가 커질수록 파라미터 수는 기하급수적으로 증가하게 된다. 또한, DNN은 이미지(2D 데이터)를 1차원 벡터로 평탄화(flatten)하여 사용한다.이 과정에서 인접한 픽셀들 간의 상관관계를 잃게 된다. 영상이나 이미지..
딥러닝 모델을 공부하기 전에 크게 분류해보면 전체 흐름을 잡는 데 큰 도움이 됩니다. 아래와 같이 딥러닝 모델들을 데이터 유형과 학습 방식에 따라 크게 나눠볼 수 있습니다. [데이터 구조/형태에 따른 분류]1. DNN (Deep Neural Network)여러 개의 은닉층(hidden layer)이 쌓여 있는 기본적인 신경망주로 정형 데이터 분석, 예측 모델 등에 사용비전, 음성보다는 일반적인 피처 기반 분류/회귀 문제에 적합 2. CNN (Convolutional Neural Network)이미지 처리에 특화된 구조로, 합성곱 (Convolution)을 이용한 신경망공간 구조 유지, 파라미터 수 감소, 위치 불변성 등의 장점주로 이미지 분류, 객체 인식, 영상 처리 등에 활용. 3. RNN (Recu..
이번에는 신경망 구현에 대해 배우겠다. 신경망 네트워크 개요우리는 이전에 로지스틱 회귀 모델이 아래 계산 그래프와 일치한다는 것도 봤었다. 특성 \(x\) 와 변수\(w\), \(b\)를 입력하면 \(z\) 를 계산하는 거다.\(z\)는 \( \hat{y}\)라고도 쓰는 \(a\)를 계산하는데 쓴다.마지막으로 손실함수인 \(L\)을 계산한다. 신경망은 시그모이드 유닛을 쌓아서 아래와 같이 만들 수 있다. 특성인 \(x\)와 변수 \(W\)와 \(b\)를 입력하면, \(z^{[1]}\)을 계산한다.\(z^{[1]}\)을 계산한 뒤, \(a^{[1]}\)을 계산한다. 그 후에 다른 선형 식을 사용하여 \(z^{[2]}\)를 계산한다.다음엔 \( \hat{y}\)라고도 쓸 수 있는 신경망의 최종 출력값인 \..
이번에는 로지스틱 회귀를 벡터화하여 전체 훈련 세트에 대한 경사하강법의 반복문에서for문을 사용하지 않고 구현하는 방법에 대해서 알아보자. m개의 훈련 샘플이 있을 때, 훈련샘플들을 예측하려면 아래 값들을 계산해야 한다. 즉, m개의 훈련 샘플이 있으니, for문을 이용해 i의 값을 m까지 변화시키며 계산해야 한다. 하지만 계산의 효율성을 증가시키기 위해 벡터를 이용하면 다음과 같이 계산할 수 있다. 위의 코드에서 (1,m) 크기의 행렬과 상수 b를 더하기에 오류가 날 것 같지만, 파이썬이 자동적으로 상수를 (1,m) 크기의 행렬로 브로드캐스팅 해주기에 오류가 발생하지 않습니다. 이제, 벡터화를 통해 m개의 전체 훈련 샘플에 대한 경사 계산을 해보겠습니다.우리는 이전에 공부하면서, 경사를..
- Total
- Today
- Yesterday
- ML 종류
- 손실함수
- 머신러닝
- 강의노트 정리
- ML
- ML 프로세스
- 딥러닝
- ML Process
- 클래스 총 정리
- 비용함수
- 경사하강법
- 숏코딩
- ndarray
- **kwargs
- python
- baekjoon
- *args
- 앤드류응
- *
- 로지스틱 회귀
- **
- sorted
- 백준
- cnn
- 파이썬
- Andrew Ng
- Action spaces
- 강화학습
- NumPy
- Sort
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
