본문 바로가기

AI/Machine-Learning43

[sklearn] train_test_split sklearn.model_selection 모듈의 train_test_split 함수는 주어진 데이터를 훈련 세트와 테스트 세트로 분할하는 데 사용되는 함수입니다. 이 함수를 사용하면 기계 학습 모델을 훈련하고 평가하는 데 필요한 데이터를 쉽게 분할할 수 있습니다. 함수 시그니처 train_test_split(*arrays, test_size=None, train_size=None, random_state=None, shuffle=True, stratify=None) 매개변수: *arrays: 분할하려는 데이터 배열들을 가변 인수로 전달합니다. 보통 하나의 피처 행렬 (X)과 하나의 타깃 벡터 (y)를 전달합니다. test_size: (선택사항) 테스트 세트의 비율을 나타내는 실수값이나 정수값입니다. 기.. 2023. 8. 29.
RobustScaler RobustScaler는 데이터의 특성을 보존하면서 이상치(outliers)의 영향을 줄이기 위해 사용되는 데이터 스케일링 방법 중 하나입니다. 데이터 전처리 단계에서 사용되며, 주로 통계 및 머신 러닝 모델링에서 입력 데이터를 조정하는 데 활용됩니다. 데이터 스케일링은 입력 데이터의 범위를 조절하여 모델 학습을 더 효과적으로 만드는 프로세스입니다. 일반적인 스케일링 방법 중 하나는 표준화(Standardization)와 정규화(Normalization)가 있는데, 이러한 방법들은 데이터의 평균과 표준 편차 혹은 최솟값과 최댓값을 사용하여 스케일을 조정합니다. 하지만 이상치가 있는 경우에는 이러한 스케일링 방법이 이상치의 영향을 크게 받을 수 있습니다. RobustScaler는 이러한 문제를 해결하기 위.. 2023. 8. 29.
다중 선형 회귀와 절차 다중 선형 회귀 다중 선형 회귀는 하나의 종속 변수(Y)와 둘 이상의 독립 변수(X1, X2, ..., Xn) 간의 선형 관계를 모델링하는 통계적 기법입니다. 다중 선형 회귀는 종속 변수와 독립 변수 간의 선형 관계를 활용하여 종속 변수의 예측 또는 설명을 위해 사용됩니다. 일반적으로 다중 선형 회귀의 모델 형태는 다음과 같습니다: 다중 선형 회귀 분석은 주어진 독립 변수들의 값과 종속 변수 사이의 관계를 통계적으로 모델링하는 것입니다. 회귀 계수 β1,β2,...,βn는 각 독립 변수들이 종속 변수에 미치는 영향을 나타냅니다. 이러한 회귀 계수들을 추정하기 위해 최소 제곱법(Least Squares Method)을 사용하여 모델을 훈련시킵니다. 최소 제곱법은 실제 값과 모델 예측 값 사이의 잔차(오차).. 2023. 8. 29.
결정계수 (Coefficient of Determination) 결정계수 (Coefficient of Determination)는 회귀 분석에서 모델이 주어진 데이터에 얼마나 잘 적합되는지를 나타내는 지표입니다. 주로 R^2로 표기되며, 0과 1 사이의 값을 가지며 높을수록 모델이 데이터를 잘 설명하고 있다는 것을 의미합니다. 결정계수는 주어진 데이터의 분산 중에서 회귀 모델에 의해 설명되는 분산의 비율을 나타냅니다. SSR (Sum of Squares Regression) SSR은 회귀 모델이 독립 변수(입력 변수)로 종속 변수(출력 변수)를 얼마나 잘 설명하는지를 나타내는 값입니다. 즉, 회귀 모델이 예측한 값과 평균값의 차이를 제곱하여 모두 더한 값으로, 회귀 모델이 설명하는 종속 변수의 분산을 측정합니다. SSR은 모델이 데이터에 대해 설명할 수 있는 변동의 .. 2023. 8. 28.
[Scikit-learn] LinearRegression, SGDRegressor Scikit-learn은 파이썬의 머신러닝 라이브러리로, 다양한 머신러닝 알고리즘과 도구를 제공합니다. 여기서는 Scikit-learn 라이브러리 내의 LinearRegression과 SGDRegressor에 대해 간단히 설명하겠습니다. LinearRegression 선형 회귀(Linear Regression)는 종속 변수(y)와 하나 이상의 독립 변수(x) 간의 관계를 모델링하는 데 사용되는 통계적 기법입니다. 간단히 말해, 주어진 데이터 포인트들을 가장 잘 나타내는 선형 함수를 찾는 과정입니다. 선형 회귀는 주어진 데이터와 가장 잘 맞는 직선(또는 다차원 공간에서의 평면)을 찾아내는 것이 목표입니다. 기본적으로 오차의 제곱을 최소화하는 방향으로 모델 파라미터(계수와 절편)를 조정하여 학습합니다. fr.. 2023. 8. 28.
[NumPy] matmul(), dot() NumPy는 파이썬에서 수치 연산을 위한 핵심 라이브러리로 매트릭스 연산과 관련된 함수들을 제공합니다. matmul과 dot 함수는 둘 다 배열(행렬)의 곱셈 연산을 수행하는 함수입니다. np.matmul() 함수 np.matmul(a, b) 함수는 두 배열 a와 b의 행렬 곱셈을 수행합니다. 행렬 곱셈의 규칙에 따라 앞의 행렬의 열과 뒤의 행렬의 행을 일치시켜야 합니다. import numpy as np A = np.array([[1, 2], [3, 4]]) B = np.array([[5, 6], [7, 8]]) result = np.matmul(A, B) print(result) 출력 [[19 22] [43 50]] np.matmul() 함수는 행렬 곱셈 규칙에 따라 연산을 수행하며, 다차원 배열의 .. 2023. 8. 28.
Numpy rand(), randn() rand와 randn은 두 가지 다른 확률 분포로부터 난수를 생성하는 NumPy 라이브러리의 함수입니다. numpy.random.rand 이 함수는 0과 1 사이의 균일 분포(uniform distribution)에서 난수를 생성합니다. 입력으로는 생성할 난수의 개수나 배열의 형태를 지정할 수 있습니다. 생성된 난수는 균등하게 분포되며, 모든 값이 나올 확률이 동일합니다. 예를 들어, np.random.rand(3, 3)는 0과 1 사이의 값으로 채워진 3x3 배열을 생성합니다. import numpy as np # 0과 1 사이의 난수 생성 random_numbers = np.random.rand(5) print(random_numbers) numpy.random.randn 이 함수는 평균이 0이고 표.. 2023. 8. 28.