반응형

Exploration 155

[CNN] Convolution과 Pooling은 실질적으로 무엇을 의미하는가?

CNN의 구조는 기본적으로 Convolution 연산 후 Pooling 연산의 반복과정으로 이루어진다. 그렇다면 Convolution의 의미와 Pooling의 의미는 무엇일까? 계산 방법을 안다고 전제하여 과연 각 Layer에서 어떤 일이 일어나고 있는지 알아보자 1. Convolution 단계필터(또는 커널)를 사용하여 Convolution 연산을 진행하는 것은 입력 이미지의 윤곽선, 모서리, 질감과 같은 특징을 추출하는 과정입니다. Convolution 연산은 필터를 이미지의 각 부분에 적용하여 특정 패턴을 감지하는 역할을 합니다. 이 과정에서 필터는 이미지의 작은 부분과 연산을 통해 특징 맵(feature map)을 생성합니다. 다양한 필터를 사용하면 각각의 필터가 다른 특징을 감지하게 되어, 예를..

AI 2024.07.16

[NN] Layer 늘리기 vs Neuron 늘리기

여러 층의 NN을 구현하다보니 문득 궁금해졌다. Layer수를 늘리는 것과 각 Layer에서 Neuron의 수를 늘리는 것, 그 차이는 어떻게 나는 것일까? 당연한 결론부터 말하자면, 두 Hyperparameter는 모두 고차원의 학습을 한다는 것이다. 자세한 비교는 다음과 같다. 레이어 수 증가특성 학습 수준: 깊은 네트워크는 데이터의 고수준 특성을 학습할 수 있음.학습 복잡도: 더 많은 레이어는 학습이 어려워질 수 있고, 기울기 소실/폭발 문제를 일으킬 수 있음.계산 비용: 레이어 수가 많아지면 계산량이 증가하여 훈련 시간이 길어지고 메모리 사용량이 늘어남.뉴런 수 증가모델 용량: 각 레이어에서 더 많은 뉴런은 더 많은 특성과 패턴을 학습할 수 있게 함.과적합 위험: 뉴런 수가 많아지면 과적합 위험이..

AI 2024.07.12

[AI] Kaggle 타이타닉 문제에서 NN이 Random Forest보다 안 좋을까?

Kaggle에서 Getting Started로 주어지는 모델이 Random Forest이다. 그리고 보다시피,  그 정확도는 약 77%이다. 요즘 나는 나만의 NN을 구현하여 저 랜덤포레스트의 정확도를 이기고자 고군분투 중이다.그리고 결국 오늘로 하여금, 4-Inputs 4-Layer NN with Adam으로 아주 간발의 차로 패배의 맛을 다시 한 번 보았다. 정확도가 상승한 것도 뿌듯하지만, 어제까지는 Parameter부터 뉴런들까지 수작업으로 구현한 것에 비해 오늘은 Functional API로 훨씬 쉽고 빠르게 구현해봤고 Tensorflow에 익숙해지는 것에 뿌듯한 것이 크다. 그렇지만, 소수점자릿수로 랜덤포레스트한테 패배한게 너무 씁슬하다. 그러다가 갑자기 이런 생각이 떠올랐다. 앙상블 기법인 ..

AI 2024.07.11

[AI] Model이 Linear하다는 건 무슨 의미인가?

선형 모델"모델이 linear하다"는 표현은 모델의 구조가 순차적이고 레이어가 직선 형태로 연결되어 있다는 의미입니다. 이는 각 레이어가 이전 레이어의 출력만을 입력으로 받아 다음 레이어에 전달하는 방식입니다. 선형 모델은 주로 회귀(Regression)와 분류(Classification) 문제에서 사용됩니다. 즉, 1-input, 1-output 관계가 성립 (x, y) 비선형 모델선형 모델과 반대로 입력 변수가 여러 개이거나 출력 변수가 여러 개이거나, 또는 입력과 출력 사이의 관계가 직선 형태가 아닌 경우에는 비선형 모델로 분류될 수 있습니다. 일반적으로 1개의 입력 변수와 1개의 출력 변수가 직선 형태로 연결된 경우를 선형 모델로 간주하고, 그 외의 경우는 비선형 모델로 간주할 수 있습니다. 이는..

AI 2024.07.11
반응형