AI/Data Science

    희소행렬을 효율적으로 저장하는 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 # 데이터프레..

    [분석통계] 정규성 검정

    정규성 검정 정규성 검정은 3가지 방법으로 검정을 진행한다. 검정 방법은 시각화 또는 가설 검정을 이용한 방법으로 나뉜다. 가설검정을 이용 시 귀무가설 '$H_{0}$는 모집단의 분포는 정규분포이다' 가 된다. Q-Q Plot 시각화를 이용한 정규성 검정방법 Shapiro-Wilks Test from scipy import stats stats.shapiro(df) Kolmogorov-Smirnov Test (KS-Test) KS-Test 는 누적분포함수를 비교하는 방법이다. 따라서 이론정규분포와 표본의 누적분포함수(cdf)를 비교한다. 아래 코드에서 주의할 점은 kstest 전 데이터를 표준화 전처리가 필수적으로 수행되어야 한다. from scipy import stats data = (df - df...

    [분석통계] 통계적 검정 방법 간단 정리

    1개의 모집단에 관한 검정 1개의 샘플 내에서의 모집단의 평균에 관한 검정 (One-sampel T-test) scipy.stat.ttest_1sample() 사용 alternative 변수에 greater(우측검정), less(좌측검정), two-sided(양측검정) 입력 from scipy import stats stats.ttest_1sample(data, popmean = mu, alternative = 'two-sided') 1개의 샘플 내에서의 모집단의 비율에 관한 검정 모집단의 데이터가 범주형인 경우 특정 범주의 발생비율이 모수이며 해당 모수를 검정하고자 한다. 비율은 근사적 정규분포를 따르기에 Z-test를 사용한다. from statsmodels.stats.proportion import..

    [ANOVA] 일원 / 이원분산분석 해보기 (상호작용항)

    [ANOVA] 일원 / 이원분산분석 해보기 (상호작용항)

    이 글에서는 이론은 다루지 않습니다. 일원분산분석 (One-way ANOVA) 일원분산분석에서 등분산 검정은 sklearn에 포함된 $bartlett()$을 이용하여 구할 수 있다. $bartlett()$ 함수의 시그니처는 아래와 같다. Signature: bartlett(*samples) Docstring: Perform Bartlett's test for equal variances. Bartlett's test tests the null hypothesis that all input samples are from populations with equal variances. For samples from significantly non-normal populations, Levene's test `l..