딥러닝을 배운다면 또는 연구한다면 4가지 단어는 꼭 알아두시면 좋습니다. 4가지의 관점에서 본다면 특정 논문이 어떠한 장점과 단점을 가지는지를 더 파악하기가 수월합니다.
데이터는 모델이 학습하고 예측하는 데 사용되는 정보입니다. 예를 들어, 이미지 분류 모델을 만들려면 이미지와 해당 이미지에 레이블(예: 고양이, 개)이 필요합니다. 데이터는 모델이 세상을 이해하고 일반화하는 데 사용되는 훌륭한 표본 집합이며, 좋은 데이터는 모델의 성능을 크게 향상시킬 수 있습니다.
그러면 어떤 관점에서 "데이터"를 이해해야 하나요?🧐
손실은 모델의 예측과 실제 값 간의 차이를 측정하는 지표입니다. 모델의 목표는 손실을 최소화하는 것입니다. 이를 통해 모델이 더 나은 예측을 할 수 있도록 가중치를 조정하게 됩니다. 손실 함수의 선택은 문제 유형에 따라 다양합니다.
회귀 문제(실수값 예측)에서 주로 사용되는 "평균 제곱 오차", 분류 문제에서 주로 사용되는 "크로스 엔트로피", SVM과 같이 정확한 분류를 필요하는 문제에 사용되는 "힌지"등이 있습니다!
(하나도 들어보지 못했다해도 괜찮습니다! 나중에 하나씩 자세하게 다루어볼께요 😀)
모델은 데이터에서 패턴을 학습하고 예측을 수행하는 데 사용되는 수학적인 구조입니다. 딥러닝 모델은 신경망(neural network)이라고도 불립니다. 이 모델은 여러 계층으로 구성되며 각 계층은 데이터로부터 특징을 추출하고 정보를 처리합니다. 모델은 가중치와 활성화 함수를 사용하여 입력을 출력으로 변환합니다.
대표적으로 모델은 아래와 같이 분류될 수 있어요!
인공 신경망 (Artificial Neural Networks, ANN): 가장 일반적으로 사용되는 딥러닝 모델 중 하나로, 뉴런과 연결된 가중치로 구성된 여러 계층으로 이루어집니다. 다양한 종류의 ANN이 있으며, feedforward, recurrent, convolutional 등 다양한 구조가 있습니다.
순환 신경망 (Recurrent Neural Networks, RNN): 순차적 데이터 (예: 텍스트 또는 시계열 데이터)를 처리하기에 적합한 모델입니다. RNN은 순환적인 구조로 이전 시간 단계의 정보를 현재 시간 단계에 전달합니다.
합성곱 신경망 (Convolutional Neural Networks, CNN): 주로 이미지 처리에 사용되며, 합성곱 계층과 풀링 계층으로 구성됩니다. 이미지에서 특징을 추출하는 데 효과적이기에 컴퓨터비전에서 많이 사용되는 모델입니다.
트랜스포머 (Transformer): 주로 자연어 처리에 사용되는 모델로, 어텐션 메커니즘을 기반으로합니다. 시퀀스 데이터 처리에 뛰어난 성능을 보입니다. (저희가 많이 사용하는 Chat GPT도 트랜스포머 모델을 사용합니다 😲)
모델은 다양한 종류와 구조를 가지고 있습니다. 모델을 이해하기 위해서는 데이터 처리, 계층 구성, 가중치 업데이트, 활성화 함수의 역할 등을 고려하여 살펴보는 것이 중요합니다!! 또한 모델의 선택과 구성은 주어진 작업에 따라 다르므로 문제에 맞게 적절한 모델을 선택하고 이해하는 것이 중요합니다.
알고리즘은 모델이 데이터로부터 패턴을 학습하고 손실을 최소화하기 위한 과정을 정의합니다. 주요 딥러닝 알고리즘은 경사 하강법(gradient descent)입니다. 이 알고리즘은 손실을 최소화하기 위해 모델의 가중치를 조정합니다. 경사 하강법은 모델이 데이터를 효과적으로 학습하고 최적화하는 핵심 도구 중 하나입니다.
경사하강법 이외에도 경사하강법, Adam, RMSptop, Adagrad등이 있습니다. 알고리즘은 풀고자 하는 문제에 따라 다를 수 있으며 어떤 알고리즘을 택하냐에 따라 모델의 수렴 속도, 안정성, 최종 성능에 영향을 미칩니다. 적절한 알고리즘 선택은 모델 학습의 효율성과 성능 향상에 기여합니다.