AI

    Hyper-Parameter Optimization #0

    Hyper-Parameter Optimization #0

    1. Introduction 1) Background 데이터 사이언스 업무는 이전의 업무 영역에서 벗어나 점차 엔지니어링 영역까지 포함하고 있다. 점차 데이터 사이언스는 데이터를 다루고 분석하는 것을 넘어 모델을 학습시키고 평가 배포, 모니터링의 영역까지 확장되고 있다. 실제로 데이터 과학자들에게 엔지니어링까지 함께 하기를 원하는 회사들이 늘어나고 있다. 엔지니어링 측면의 역량까지 요구되는 이유는 두 가지 측면에서 분석할 수 있다. AI 분야의 낮아진 진입장벽과 다양한 도구 모델 복잡도와 데이터의 증가 -> 다양한 기술의 발전 `먼저 AI 분야의 낮아진 진입장벽과 다양한 도구`로 인해 다양한 개발자들이 쉽게 AI 분야에 진입이 가능하고 Keras, PyTorch 등 다양한 프레임워크의 발전과 오픈소스 지..

    [XGBoost] XGBoost 학습 시 GPU(CUDA) 사용하기

    XGBoost 모델 학습 시 매우 느린 성능을 보인다. 특히 Hyper-Parameter Optimization과 같은 기법을 병행하여 사용한다면 힘든 시간이 될 것이다. XGBoost의 대부분의 알고리즘은 CUDA 호환 GPU로 가속화될 수 있으며 이는 학습, 예측 및 평가를 포함한다. XGBoost에서 GPU를 지원한다. 지원 조건은 아래와 같다. CUDA 11.0 이상 Compute Capability 5.0 이상 GPU 활성화 방법 GPU 가속을 활성화하려면 device 매개변수를 cuda로 설정한다. 만약 동일한 노드에 여러 장치가 있는 경우 장치 순서(사용할 GPU를 지정)는 cuda: 구문을 사용하여 지정한다. XGBoost는 기본적으로 0(CUDA 런타임에서 보고된 첫 번째 장치)으로 설정..

    희소행렬을 효율적으로 저장하는 COO, CSR 형식

    희소행렬을 효율적으로 저장하는 COO, CSR 형식

    희소행렬(Sparse Matrix)은 대부분의 원소가 0으로 채워진 행렬을 의미합니다. 이러한 행렬은 데이터의 특성에 따라 매우 큰 메모리를 차지할 수 있습니다. 따라서, 이러한 희소행렬을 저장하고 효율적으로 다루기 위해 COO(Coordinate List)와 CSR(Compressed Sparse Row) 형식이 주로 사용됩니다. 데이터 포맷에서 "희소행렬"과 "COO(Coordinate List)", "CSR(Compressed Sparse Row)" 형식은 주로 희소 행렬(행렬 내 대부분의 요소가 0인 경우)을 저장하고 효율적으로 다루기 위해 사용됩니다. 희소행렬(Sparse Matrix): 일반적인 행렬과 달리, 대부분의 원소가 0으로 구성되어 있습니다. 이러한 행렬은 메모리를 효율적으로 사용하기..

    [Metrics] 분류 모델 평가를 위한 지표는 어떻게 선정해야 하는가?

    [Metrics] 분류 모델 평가를 위한 지표는 어떻게 선정해야 하는가?

    모델 평가지표를 선택할 때에는 해당 문제의 특성과 목표, 그리고 모델이 사용되는 상황을 고려해야 합니다. 다양한 모델 평가지표 중에서 어떤 것을 선택할지 결정하는 데에는 여러 요소가 영향을 미칩니다. 모델 지표 선택 시 고려사항 해결하려는 문제에 대한 정확한 이해가 필요 분류 문제인지 회귀 문제인지를 고려해야 합니다. 분류 문제에서는 정확도(Accuracy), 정밀도(Precision), 재현율(Recall), F1 스코어 등이 중요한 평가지표입니다. 회귀 문제에서는 평균 제곱 오차(Mean Squared Error), 평균 절대 오차(Mean Absolute Error) 등이 일반적입니다. 데이터의 불균형 문제에 대한 고민 클래스 간의 샘플 수가 불균형하다면 정확도만으로는 모델 성능을 올바르게 평가할 ..

    [결측치 확인] Missingno 이용하기

    [결측치 확인] Missingno 이용하기

    데이터 분석 시 결측치를 확인하고 처리하는 것은 필수 요소입니다. missingno 모듈은 데이터셋에서 누락된 데이터를 시각적으로 파악하고 분석하는 데 도움을 주는 Python 라이브러리입니다. 주로 데이터셋의 결측치를 시각화하여 어떤 부분이 비어 있는지, 데이터의 패턴을 파악하는 데 사용됩니다. 이 모듈은 주로 판다스 데이터프레임과 함께 사용되며, 데이터셋에서 결측치를 식별하고 시각적으로 보여주는 기능을 제공합니다. missingno 모듈의 주요 기능으로는: Matrix: missingno.matrix() 함수는 데이터셋의 결측치를 매트릭스 형태로 시각화하여 데이터셋 전체의 결측치 분포를 파악할 수 있습니다. import missingno as msno import pandas as pd # 데이터프레..

    이상치 탐지(Anomaly Detection) - Overview

    이상치 탐지(Anomaly Detection) - Overview

    이상치 탐지는 데이터 분석과 기계학습 분야에서 중요한 주제 중 하나로, 데이터에서 이상한 패턴이나 값들을 식별하는 과정을 의미합니다. 이상치는 데이터 분석의 정확성과 안정성을 저해할 수 있기 때문에 그 중요성이 더욱 커집니다. 이상치 탐지: 데이터 분석의 핵심 데이터 분석은 현대 비즈니스 및 연구 분야에서 핵심적인 역할을 합니다. 데이터는 다양한 분야에서 수집되며, 이를 분석함으로써 중요한 의사결정을 내릴 수 있습니다. 그러나 데이터에는 종종 이상치가 포함되어 있을 수 있으며, 이러한 이상치는 정확한 분석을 방해할 수 있습니다. 이상치는 다양한 형태로 나타날 수 있으며, 이러한 이상치를 식별하고 처리하는 것은 데이터 분석가나 기계학습 엔지니어에게 중요한 작업입니다. 이상치란 무엇인가? 이상치란 주어진 데..