전체 글 22

리스트 컴프리헨션 (List Comprehension)

리스트 컴프리헨션(List Comprehension)은 파이썬에서 새로운 리스트를 간결하고 선언적인 방식으로 생성할 수 있도록 해주는 강력한 기능입니다. 반복문(for 루프)과 조건문(if)을 사용하여 리스트를 만드는 과정을 한 줄의 코드로 줄여줍니다. 기본 구조는 다음과 같습니다.[표현식 for 항목 in 순회_가능한_객체]예를 들어 [1, 2, 3, 4, 5] 리스트를 입력받아 각 요소를 2배로 하여 [2,4,6,8,10] 을 출력한다고 해 봅시다.이때 리스트 컴프리헨션을 사용한다면 다음과 같습니다.def solution(numbers): answer = [num*2 for num in numbers] return answer 또한, 리스트 컴프리헨션은 조건을 추가하여 특정 조건을 만족하는..

Python 2025.04.16

전이 학습으로 골절 이미지 분류하기(3)_모델 학습 및 평가

https://github.com/ackrilll/TransferLearning GitHub - ackrilll/TransferLearningContribute to ackrilll/TransferLearning development by creating an account on GitHub.github.com 이번 포스팅에서는 모델을 훈련시키고  평가용 데이터 셋으로 정확도를 확인해 보겠다. 1. 모델 학습 및 평가# 모델 학습 함수 정의 def train_model(model, criterion, optimizer, scheduler, num_epochs=10): train_losses = [] val_losses = [] train_accuracies =..

전이 학습으로 골절 이미지 분류하기(2)_파인 튜닝

https://github.com/ackrilll/TransferLearning GitHub - ackrilll/TransferLearningContribute to ackrilll/TransferLearning development by creating an account on GitHub.github.com 이번 포스팅에서는 resnet-18 모델을 파인 튜닝하기 위한 준비를 알아보겠다. 1. 데이터 전처리 resnet 모델을 파인튜닝하기 전에 먼저 resnet 모델을 학습시킬 때 사용한 ImageNet 데이터 셋과 유사하게 만들어줘야한다. 즉, 우리가 사용할 데이터 셋을 전처리해줘야 한다는 것인데 이미지 크기 조정 (Resize) 및 정규화 (Normalize) 전처리를 해 주도록하자# 이미지 크기..

전이 학습으로 골절 이미지 분류하기(1)_ImageFolder

https://www.kaggle.com/datasets/pkdarabi/bone-break-classification-image-dataset Bone Break Classification Image DatasetA Multi Class Image DataSetwww.kaggle.com https://github.com/ackrilll/TransferLearning GitHub - ackrilll/TransferLearningContribute to ackrilll/TransferLearning development by creating an account on GitHub.github.com 몇 일 전 kaggle 에서 재미있는 데이터셋을 발견하였다. 골절 종류를 분류하는 모델을 만들 수 있을 것 같..

파인 튜닝(Fine-tuning)

👁️‍🗨️ 이미지 인식 성능 극대화: 파인 튜닝 심층 분석 및 전략 🔬최근 이미지 인식 분야는 딥러닝 기술의 발전과 함께 눈부신 성장을 거듭하고 있습니다. 특히, 대규모 데이터셋으로 사전 학습된 컨볼루션 신경망(CNN) 모델은 다양한 시각적 인식 task에서 뛰어난 성능을 보여주며 핵심적인 역할을 수행하고 있습니다. 그러나 특정 도메인이나 세분화된 클래스 분류와 같은 전문적인 영역에서는 사전 학습된 모델만으로는 한계에 직면할 수 있습니다.본 글에서는 이미지 인식 분야에서 성능 향상을 위한 핵심 전략인 파인 튜닝(Fine-tuning)에 대해 심층적으로 분석하고, 실제 적용 시 고려해야 할 전문적인 내용들을 다루고자 합니다.🧠 파인 튜닝의 핵심 원리: 지식 전이와 적응파인 튜닝은 전이 학습(Tran..

Cross Entropy 손실함수

크로스 엔트로피 손실(Cross-Entropy Loss)은 머신러닝, 특히 딥러닝에서 분류 모델의 성능을 평가하고 학습시키는 데 널리 사용되는 손실 함수이다. 모델이 예측한 확률 분포 실제 레이블의 확률 분포와 얼마나 다른지를 측정하여, 모델이 더 정확한 예측을 하도록 유도하는 역할을 한다. 클래스 3개 이상의 다중 클래스 분류에서 사용되는 크로스 엔트로피 손실함수는 다음과 같다. L(y, p) = - Σ y* log(p)여기서 y는 라벨값, p는 모델이 예측한 확률을 의미한다. 정답에 해당하는 클래스에 대해 모델이 확률을 0에 가깝게 도출했다면(정답을 맞추지 못했음) 손실함수 값은 발산에 가까운 값이 되고, 다음 에포크에서는 크로스 엔트로피 손실함수의 값을 낮추는 방향으로 가중치가 업데이트 된다. 결..

합성곱신경망(CNN) 옷 분류하기(4)_모델 테스트

https://github.com/ackrilll/FashionMNIST GitHub - ackrilll/FashionMNISTContribute to ackrilll/FashionMNIST development by creating an account on GitHub.github.com이번 포스팅에서는 학습 시킨 모델을 저장 및 로드 하는 방법과 테스트용 데이터를 사용해 정답을 얼마나 맞추는지 확인해 보겠다. 1. 모델 저장 PATH = '.\\fashion_mnist2.pth'torch.save(net.state_dict(),PATH)훈련이 끝나면 학습된 파라미터를 저장하는 것이 좋다. 그래야 다시 훈련하지 않고 로드해서 사용할 수 있게 된다. 2. 모델 로드PATH = '.\\fashion_mni..

합성곱신경망(CNN) 옷 분류하기(3)_모델 훈련

https://github.com/ackrilll/FashionMNIST/tree/dev GitHub - ackrilll/FashionMNISTContribute to ackrilll/FashionMNIST development by creating an account on GitHub.github.com 이번 포스팅에서는 FashionMNIST 데이터 셋을 다운받고 모델을 학습하는 과정까지 알아보겠다. 0. 패키지 임포트import numpy as npimport torchimport torch.nn as nnimport torch.nn.functional as Fimport torchvision.transforms as transformsimport torchvision.datasets as data..

합성곱신경망(CNN) 옷 분류하기(2)_모델 만들기

https://github.com/ackrilll/FashionMNIST/tree/dev GitHub - ackrilll/FashionMNISTContribute to ackrilll/FashionMNIST development by creating an account on GitHub.github.com 이번 포스팅에서는 레이어를 쌓아 CNN 모델을 구성해보려고 한다. 1. 가상 환경 세팅: FashionMNISTEnv 라는 가상환경을 만들어 활성화하고 인터프리터로 설정해준다conda create -n FashionMNISTEnv python=3.12.7conda activate FashionMNISTEnv 2. 패키지 설치: 활성화 한 가상환경 내부에서 사용할 패키지들을 설치해 준다(단, 디바이스에 ..

합성곱신경망(CNN) 옷 분류하기(1)

https://github.com/ackrilll/FashionMNIST/tree/dev GitHub - ackrilll/FashionMNISTContribute to ackrilll/FashionMNIST development by creating an account on GitHub.github.com 이번 프로젝트에서는 컨볼루션 레이어를 활용한 대표적인 구조인 합성곱신경망을 만들어 옷을 분류하는 작업을 수행해 보겠다. 아래와 같은 결과를 출력할 수 있도록 모델을 구성하고 훈련시켜 옷을 분류해 보자.우선 합성곱 신경망이 무엇인지에 대해 알아보자 합성곱 신경망(Convolutional Neural Network, CNN)은 이미지, 비디오와 같은 시각적 데이터를 분석하고 처리하는 데 특화된 딥러닝 알고..