분류 전체보기(635)
-
CNN의 주요 계층 - 전개 층(Flatten Layer)
1. 개요전개 층(Flatten Layer)은 CNN(Convolutional Neural Networks)에서 다차원 특징 맵을 1차원 벡터로 변환하는 핵심 계층입니다. 이는 합성곱 층에서 추출된 특징을 완전 연결 층(Dense Layer)에 전달하기 위한 필수적인 과정입니다.1.1 주요 기능다차원 데이터 구조 변환 (예: 3D → 1D)특징 정보 보존파라미터 없는 효율적 연산 2. 구현 방법2.1 기본 구현 (TensorFlow/Keras)from tensorflow.keras.layers import Flattenclass SimpleConvNet(tf.keras.Model): def __init__(self): super().__init__() self.conv =..
2025.02.03 -
CNN의 주요 계층 - CNN 풀링 층(Pooling Layer)
CNN 풀링 층(Pooling Layer)1. 풀링 층 개요풀링 층은 CNN에서 특징 맵의 크기를 줄이고 중요한 정보를 보존하는 핵심 구성 요소입니다.✅ 주요 기능차원 축소: 특징 맵의 공간적 크기를 줄여 연산 효율성 향상과적합 방지: 모델의 복잡도를 낮춰 일반화 성능 개선특징 추출: 주요 특징을 보존하며 데이터 표현을 압축2. 풀링 기법 구현✅ 기본 설정"""CNN 풀링 층 구현License: MIT"""import tensorflow as tffrom tensorflow.keras.layers import Layer, MaxPooling2D, AveragePooling2Dimport logging# 로깅 설정logging.basicConfig(level=logging.INFO)logger = logg..
2025.02.03 -
CNN의 주요 계층 - Convolutional Layer (합성곱 층) 정리
1. 합성곱 층(Convolutional Layer) 개요합성곱 층(Convolutional Layer)은 CNN의 핵심 요소로, 이미지에서 중요한 특징을 추출하는 역할을 합니다. 필터(Filter, Kernel)를 사용하여 윤곽선, 모서리, 질감 등의 패턴을 감지하며, 일반적인 완전 연결 신경망(Dense Layer)보다 적은 가중치를 사용하여 연산량을 줄이고 성능을 향상시킵니다.2. 패딩(Padding)과 스트라이드(Stride)✅ 패딩(Padding)패딩은 입력 이미지의 가장자리에 0을 추가하여 출력 크기를 조정하는 기법입니다.'valid' 패딩: 패딩 없이 필터가 적용되므로 출력 크기가 줄어듦.'same' 패딩: 출력 크기가 입력과 동일하도록 적절한 0을 추가하여 필터 적용.conv_layer_v..
2025.02.01 -
CNN 이란?
1. CNN이란?Convolutional Neural Network(CNN, 합성곱 신경망)는 이미지나 영상 데이터를 처리하는 데 특화된 인공 신경망입니다. 일반적인 신경망과 달리 이미지의 공간적 구조를 유지하면서 특징을 추출하기 때문에, 이미지 분류, 객체 탐지, 얼굴 인식 등에서 뛰어난 성능을 발휘합니다.✅ CNN의 주요 계층CNN은 5가지 주요 계층(layer)으로 구성됩니다:Convolutional Layer (합성곱 층) - (https://gangdonggil.tistory.com/173)이미지의 특징을 추출하는 역할필터(커널)를 사용해 특징 맵 생성입력 이미지에서 윤곽, 모서리 등의 패턴 감지비선형 활성화 함수(ReLU) 사용하여 특징을 강조Pooling Layer (풀링 층) - (http..
2025.02.01 -
벡터 데이터베이스(Vector Database)란?
벡터 데이터베이스는 벡터(Vector) 형태로 저장된 데이터를 효율적으로 검색하고 분석하는 데이터베이스이다.일반적인 관계형 데이터베이스(RDB)는 정확한 값(텍스트, 숫자, 표 형태의 데이터)을 검색하는 반면,벡터 데이터베이스는 이미지, 오디오, 영상, 자연어 등의 데이터를 벡터로 변환하여 저장하고 유사한 데이터를 검색하는 역할을 한다.📌 벡터 간 유사도 측정 방법벡터 데이터베이스에서 가장 중요한 기능은 비슷한 벡터를 빠르게 찾는 것이다.이를 위해 벡터 간의 유사도를 계산하는 여러 가지 방법이 있다.✅ 주요 벡터 간 유사도 측정 방법1️⃣ 코사인 유사도(Cosine Similarity)두 벡터의 방향이 얼마나 유사한지 측정값의 범위: -1(완전히 반대) ~ 1(완전히 동일)주로 문서 검색, 자연어 처리..
2025.02.01 -
차원의 저주(Curse of Dimensionality)를 쉽게 이해하기
차원의 저주란? (Curse of Dimensionality)차원의 저주는 데이터 분석과 기계 학습에서 차원이 증가할수록 문제가 발생하는 현상을 의미한다.쉽게 말해, 데이터를 표현하는 특성(Feature) 이 많아질수록(즉, 차원이 커질수록) 분석이 어려워지는 문제라고 볼 수 있다.📌 비유로 이해하기: 도서관에서 책 찾기🔹 1차원 (1D) - 선형 도서관책이 한 줄로 길게 놓여 있다고 가정하자.→ 원하는 책을 찾으려면 처음부터 끝까지 쭉 훑어보면 된다.→ 비교적 빠르게 찾을 수 있다.🔹 2차원 (2D) - 책장 도서관이제 책을 가로뿐만 아니라 세로로도 배열했다고 가정하자.→ 선반이 생겼고, 책이 두 방향으로 정리된다.→ 원하는 책을 찾으려면 가로와 세로 두 방향을 모두 탐색해야 한다.→ 찾기가 어려..
2025.02.01