728x90
반응형

Deep Learning 6

[논문 리뷰] VGG (VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION)

Abstract이 연구는 합성곱 신경망의 깊이가 대규모 이미지 인식 정확도에 미치는 영향을 조사합니다. 저자들은 3x3 크기의 매우 작은 합성곱 필터를 사용하여 네트워크 깊이를 증가시키는 여러 아키텍처를 평가했습니다. 16~19개의 가중치 층을 가진 네트워크가 이전 모델들보다 성능이 우수하다는 것을 발견했습니다. 1. Introduction컴퓨터 비전 분야에서 AlexNet 등의 원래 아키텍처를 개선하려는 여러 시도가 이루어졌습니다. 예를 들어, ILSVRC-2013의 최우수 제출물들은 첫 번째 합성곱 층의 receptive field와 stride를 줄였습니다. 또 다른 개선 방향은 이미지 전체와 여러 스케일에 걸쳐 밀도 있게 네트워크를 학습하고 테스트하는 것이었습니다. 이 논문에서는 VGG 아키텍처 ..

논문 리뷰 2024.06.21

[pytorch] 이미지 분류를 위한 AlexNet 구현

AlexNet은 컴퓨터 비전 분야의 발전에 중요한 역할을 한 합성곱 신경망(CNN) 아키텍처입니다. 이는 Alex Krizhevsky, Ilya Sutskever, Geoffrey Hinton에 의해 개발되었으며, 2012년 ImageNet 대규모 시각 인식 챌린지(ILSVRC)에서 우승하였습니다. 이 대회는 딥러닝의 전환점을 표시하며, CNN이 이미지 분류 작업에서 강력한 성능을 보여준 것을 보여주었습니다. AlexNet 아키텍처는 총 여덟 개의 레이어로 구성되어 있으며, 다섯 개의 합성곱 레이어와 세 개의 완전 연결 레이어로 이루어져 있습니다. 입력 레이어: 입력 이미지를 받습니다. 일반적으로 픽셀 값의 행렬 형태로 제공됩니다. 합성곱 레이어 1: 첫 번째 합성곱 레이어는 입력 이미지에 학습된 필터를..

pytorch 2023.05.31

[pytorch] 이미지 분류를 위한 LeNet-5 구현

이미지 분류는 주어진 이미지를 다양한 클래스 또는 범주로 분류하는 것을 의미합니다. 이때, 분류의 목적은 이미지에 특정 대상이 존재하는지 여부를 판단하는 것입니다. 예를 들어, 고양이와 개를 분류하는 문제를 생각해 보면, 이미지 분류 모델은 입력된 이미지가 고양이인지 개인지를 판단합니다. 모델은 이미지에 대한 특징을 추출하고, 추출된 특징을 기반으로 해당 이미지가 고양이인지 개인지를 예측합니다. LeNet은 1990년대 후반 Yann LeCun 등이 개발한 초기 합성곱 신경망(CNN) 아키텍처로, 주로 필기체 숫자 인식에 사용되었으며 컴퓨터 비전 작업에서 심층 학습의 발전에 중요한 역할을 했습니다. 현대적인 아키텍처에 비해 레이어 수가 적지만, CNN의 발전을 이해하는 데 기초로 작용합니다. LeNet ..

pytorch 2023.05.15

[pytorch] 전이 학습 - 특성 추출 기법 (Feature Extraction)

전이 학습(transfer learning)이란? 하나의 문제를 해결하기 위해 학습된 모델의 지식을 다른 문제를 해결하는데 활용하는 기법입니다. 즉, 기존에 학습한 모델의 가중치와 편향값 등의 정보를 새로운 모델의 초기값으로 활용하여 학습을 진행하는 것을 의미합니다. 전이 학습은 대규모 데이터셋을 가지고 모델을 학습시키는데 필요한 시간과 비용을 줄일 수 있습니다. 또한, 새로운 데이터셋에 대한 모델의 정확도를 높일 수 있습니다. 이는 기존 모델에서 학습한 특성이 비슷한 문제에서도 유용하기 때문입니다. 전이 학습은 크게 두 가지 방법으로 나뉩니다. 특성 추출(Feature Extraction): 사전 학습된 모델을 사용하여 새로운 모델을 초기화하는 방법 → 전체 모델을 처음부터 학습시키는 것보다 효율적 미..

pytorch 2023.05.09

[pytorch] tensor(텐서) 생성/이해/조작

텐서는 파이토치에서 가장 기본이 되는 데이터 구조이다. 넘파이의 ndarray와 비슷하며 GPU에서의 연산도 가능하다. 1. 텐서(tensor) 생성 import torch print(torch.tensor([[1,2],[3,4]])) # 2차원 형태의 텐서 생성 print(torch.tensor([[1,2],[3,4]], device = "cuda:0")) # GPU에 텐서 생성 print(torch.tensor([[1,2],[3,4]], dtype = torch.float64))# dtype을 이용하여 텐서 생성 2. 텐서를 ndarray로 변환 temp = torch.tensor([[1,2],[3,4]]) temp.numpy() # 텐서를 ndarray로 변환 temp.to("cpu").numpy(..

pytorch 2023.03.19

[Deep learning] 정제와 정규화 (cleaning and normalization)

코퍼스에서 용도에 맞게 토큰을 분류하는 작업을 토큰화라고 하며, 토큰화 작업 하기 전 후에 용도에 맞게 데이터를 정제 및 정규화해야 한다. 정제(cleaning) : 노이즈 데이터 제거 정규화(normalization) : 표현 방법이 다른 단어들을 통합시켜서 같은 단어로 만듦 정제(cleaning) 작업은 토큰화 작업에 방해가 되는 부분들을 배제시키고 토큰화 작업을 수행하기 위해서 토큰화 작업 전에 이루어지기도 하지만, 토큰화 작업 이후에도 여전히 남아있는 노이즈들을 제거하기 위해 지속적으로 이루어지기도 한다. 사실 완벽한 정제 작업은 어려운 편이라서, 대부분의 경우 이 정도면 됐다.라는 일종의 합의점을 찾기도 한다. 1. 표기가 다른 단어들의 통합 같은 의미를 갖고있음에도, 표기가 다른 단어들을 하나..

Deep learning 2023.03.03
728x90
반응형