딥러닝

딥러닝을 위한 데이터 준비

데이터 수집과 탐색

데이터 준비의 첫 번째 단계는 데이터 수집입니다. 데이터가 정확하고 대표성이 있는지 확인하고, 필요한 데이터를 모은 후, 데이터의 특성을 탐색하는 과정이 필요합니다. 데이터 탐색을 통해 누락된 값, 이상치, 불균형 문제 등을 파악할 수 있습니다. 이를 바탕으로 전처리 전략을 세울 수 있습니다. 예를 들어, 결측값 처리나 이상치 제거가 필요한 경우 이를 우선적으로 다룰 수 있습니다.

결측값 처리

결측값(missing values)은 데이터에 누락된 값이 존재하는 경우를 말합니다. 딥러닝 모델은 결측값을 처리할 수 없기 때문에, 이를 적절하게 처리해야 합니다. 결측값을 처리하는 방법으로는 평균/중앙값/최빈값 대체, 행 또는 열 제거, 예측 모델을 이용한 대체 등이 있습니다. 이 방법들은 데이터의 특성에 따라 다르게 선택될 수 있으며, 불필요한 정보 손실을 최소화하면서 결측값을 처리하는 것이 중요합니다

이상치 처리

**이상치(outliers)**는 데이터에서 정상적인 범위를 벗어난 값을 의미합니다. 이상치는 모델 학습에 왜곡된 정보를 제공할 수 있으며, 특히 딥러닝 모델에서 더 큰 영향을 미칠 수 있습니다. 이상치를 처리하는 방법으로는 범위 지정(예: 1.5배 IQR), 클리핑(값을 특정 범위 내로 제한), 또는 이상치 제거 방법을 사용할 수 있습니다. 이상치를 제거하는 대신, 이상치가 중요한 정보를 담고 있을 수 있다는 점을 고려하여, 처리 방법을 신중하게 선택하는 것이 필요합니다.

데이터 스케일링과 정규화

데이터 스케일링과 정규화는 입력 데이터를 일관된 범위로 맞추는 작업입니다. 딥러닝 모델은 특정 스케일의 값에 민감하기 때문에, 데이터가 너무 큰 범위에 있으면 학습이 느려지거나 불안정해질 수 있습니다. 정규화(Normalization)는 데이터를 [0, 1] 범위로 조정하는 방법이며, 표준화(Standardization)는 데이터를 평균 0, 표준편차 1로 변환하는 방법입니다. 이 과정은 모델 수렴 속도를 높여 주고, 학습 안정성을 확보하는 데 유용합니다.

범주형 데이터 인코딩

범주형 데이터는 딥러닝 모델이 직접 처리할 수 없기 때문에 수치형 데이터로 변환해야 합니다. 이때 사용하는 대표적인 방법은 **원-핫 인코딩(One-Hot Encoding)**과 **레이블 인코딩(Label Encoding)**입니다. 원-핫 인코딩은 각 범주를 이진 벡터로 변환하여 해당 범주만 1로 표시하고 나머지는 0으로 설정하는 방법입니다. 레이블 인코딩은 범주를 정수형 값으로 매핑하는 방법으로, 주로 순서가 있는 범주에서 사용됩니다. 범주형 데이터를 적절히 변환하면, 모델이 데이터를 더 잘 이해하고 학습할 수 있게 됩니다.