AI

    [Numpy] Serise clip() 함수 - 값 범위 제한하기

    NumPy는 파이썬에서 과학 및 수학적 계산을 위한 핵심 라이브러리 중 하나입니다. NumPy의 다양한 함수와 메서드는 데이터 조작 및 분석을 쉽게 할 수 있도록 도와줍니다. 여기에는 데이터의 값을 제한하고 특정 범위 내에 값을 유지하는 데 유용한 clip() 함수가 있습니다. 이번 글에서는 NumPy의 clip() 함수를 소개하고 활용하는 방법에 대해 알아보겠습니다. numpy.clip() 함수란? numpy.clip() 함수는 주어진 배열의 값을 지정된 최소값과 최대값 사이로 제한합니다. 이 함수를 사용하면 데이터의 범위를 제한하고 이상치를 처리하는 데 유용합니다. numpy.clip()의 구문은 다음과 같습니다. numpy.clip(a, a_min, a_max, out=None) 여기서: a: 값을..

    Google-Colab 에서 LightGBM GPU 사용하기

    Kaggle Notebook에선 lightGBM gpu 버전을 쉽게 사용할 수 있다. 하지만 Google CoLab 에선 별도로 설치가 필요하다. 아래 코드를 CoLab 노트북 셀에서 실행하여 설치한 후 사용해본다. !git clone --recursive https://github.com/Microsoft/LightGBM %cd LightGBM !mkdir build %cd build !cmake ../../LightGBM -DUSE_GPU=1 !make -j4 %cd ../python-package !python3 setup.py install --gpu

    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) 등이 일반적입니다. 데이터의 불균형 문제에 대한 고민 클래스 간의 샘플 수가 불균형하다면 정확도만으로는 모델 성능을 올바르게 평가할 ..