Python/딥러닝
-
[딥러닝] 비용함수 알아보기Python/딥러닝 2024. 9. 13. 12:59
평균 절대 오차¶MAE라고 표기하는 평균 절대 오차(Mean Absolute Error)는 예측한 값과 실제 값 사이의 차이에 절대값을 취한 뒤, 이를 평균낸 값을 이릅니다. 특별한 값 보정 없이 절대값만 취했기 때문에 직관적으로 오차를 확인할 수 있다는 장점이 있지요. 이 때문에 해석이 쉬워서 종종 이용되지만, 대부분의 기계학습 모델에서는 큰 오차가 더 치명적인 문제를 일으키기 때문에 오차의 크기에 따른 가중치가 없는 MAE는 자주 사용되지 않는 평가 지표입니다. $n$개의 데이터가 있을 때, 예측한 값 $\hat{y}_i$와 실제 값 $y_i$가 있다면, MAE는 아래와 같은 수식으로 표현할 수 있습니다. $\text{MAE} = \frac{1}{n} \sum_{i=1}^{n} |y_i - \hat{..
-
[TensorFlow] 파이썬을 이용한 MNIST 분류 모델 만들기Python/딥러닝 2024. 7. 29. 17:43
텐서플로우를 이용한 MNIST 분류 모델 만들기본 내용은 텐서플로 2.0 시작하기: 초보자용 문서를 재구성해 제작했습니다.파이썬(Python)에서 이용할 수 있는 대표적인 딥러닝 플랫폼인 텐서플로우(TensorFlow)를 활용해, MNIST 데이터를 분류할 수 있는 딥러닝(Deep Learning) 모델을 만들어 보는 실습을 진행해 보겠습니다. 분류에 이용할 데이터는 MNIST 데이터셋인데요, 28*28px 크기의 흑백 이미지에 0에서 9까지의 숫자가 기록되어 있지요. 해당 데이터는 텐서플로우에서 기본 제공을 해 주기 때문에, tensorflow.keras.datasets.mnist.load_data() 함수를 이용해 불러올 수 있습니다. 데이터 전처리불러온 MNIST 데이터는 x_train, x_te..
-
[TensorFlow] 단층 퍼셉트론과 MLP 구현해보기Python/딥러닝 2024. 7. 15. 17:11
퍼셉트론 알아보기퍼셉트론(Perceptron)이란, 고전적인 인공 신경망(Artificial Neural Network, ANN) 알고리즘입니다. 여러 입력을 받은 뒤, 하나의 결과를 반환하는 방식으로 동작하지요. 실제 신경세포의 동작(물론 극히 일부만)을 본따서 만들었다는 특징도 있고, 한번 사장되었던 기술을 현대 인공지능의 주류로 만들어 놓았다는 특징도 있는 재미있는 개념입니다. 이번에는 간단한 파이썬(Python) 코드로 퍼셉트론을 이용해서, 논리 회로를 구현하는 작업을 해 보겠습니다. 단층 퍼셉트론 구현하기단층 퍼셉트론(Single Layer Perceptorn)이란, 입력과 출력의 단순한 구조로 구현한 퍼셉트론을 이릅니다. 이는 $y=wx+b$ 형태의 문제를 풀 수 있는 선형 분류기로 표현되지..
-
[TensorFlow] 파이썬 사진 분류 딥러닝 모델 만들기Python/딥러닝 2023. 11. 16. 14:48
텐서플로우를 이용한 사진 분류 딥러닝 모델 만들기 파이썬(Python)의 기계학습 라이브러리는 주로 텐서플로우(TensorFlow)나 파이토치(PyTorch)가 이용됩니다. 최근에는 파이토치의 점유율이 조금 더 높아 보이지만, 예전에는 텐서플로우의 인기가 더 많았던 때가 있기 때문에 각각의 라이브러리를 이용한 문서는 쉽게 찾아볼 수 있지요. 이번에는 그중에서 텐서플로우를 이용해서 딥러닝 모델 구현을 해 보려고 합니다. 말과 사람을 구분하는 작업이예요. 이번 작업에서 사용하는 데이터셋은 horse or human 데이터인데요, Laurence Moroney 에서 제공하는 데이터입니다. CG로 생성된 300*300px 크기의 말 또는 사람이 들어있는 컬러 이미지 데이터이며, 다양한 포즈와 배경이 있어서 일반..
-
[PyTorch] 파이토치 transforms 모듈로 이미지 전처리하기 (torchvision)Python/딥러닝 2023. 10. 17. 16:50
파이토치의 transforms 모듈을 이용한 이미지 전처리 알아보기 (torchvision)파이썬(Python)으로 기계학습(Machine Learning, ML)을 하다 보면, 이미지 데이터를 변환할 때가 생깁니다. 사람은 이미지를 지나치게 확대-축소하지만 않으면 이미지들의 인식과 구분이 가능하지만, 컴퓨터는 같은 이미지라도 크기와 방향 등이 달라지면 다른 이미지로 인식할 수도 있기 때문이지요. 그런데, 우리가 가지고 있는 이미지는 촬영 상황이나 기기, 그리고 배포하는 사람에 따라서 다양한 형태로 주어집니다. 그래서 파이썬 기계학습 모델의 이미지 학습을 할 경우, 이미지의 전처리가 꼭 필요하지요. 이번에는 파이토치의 transforms 모듈을 이용한 이미지 전처리를 알아보겠습니다. transform..