Codestates AI 부트캠프 (44) 썸네일형 리스트형 [머신러닝] 1-2 일반화 (Generalization) 1. 일반화란? 모델에 test set을 넣어보면서 정확도 높은 예측을 할 수 있도록 설계하는 것. 지난 시간에는 데이터셋을 넣어 모델을 훈련시켰다. 이를 통해 만들어진 모델은 이미 제공받은 데이터들에 대해서는 정확도가 높은 대답을 내놓을 것이다. 하지만 학습에 쓰이지 않은, 완전히 새로운 데이터를 넣었을 때의 답변은 어떠할까? 이때도 훈련 때처럼 정확도가 높아야 '모델의 성능이 좋다'고 말할 수 있을 것이다. 모델을 만드는 목적이 '예측'이기 때문이다. 훈련 데이터에서의 성능과 테스트 데이터에서의 성능이 유사하게 나온 것을 '일반화'가 잘 된 모델이라고 한다. 2. 일반화 방법 A. 2 way hold out 일반화는 어떻게 하는걸까? 바로 test 데이터셋을 통해 모델의 성능을 검증하고 가늠해보는 것.. [머신러닝] 1-1 Linear Regression 0. 머신러닝 데이터로부터 유용한 예측을 하기위해 모델이라고 불리는 소프트웨어를 학습시키는 과정. 모델은 데이터 간의 수학적 관계, 규칙, 패턴을 학습한 뒤 새로운 데이터가 들어왔을 때 예측을 한다. A. 머신러닝 방법론 ① 지도학습 : 답(label)이 있는 데이터를 학습하며 데이터와 답 간의 규칙 파악 회귀 문제 : 연속적인 값을 예측하는 문제. ex) 주택 가격 예측, 강수량 예측 분류 문제 : 데이터의 특정 범주에 속할 확률을 예측하는 문제. 범주의 갯수에 따라 이진 분류 / 다중 분류 문제로 나눌 수 있다. ex) 상품 구매 여부 예측, 고양이 종 예측 * 회귀 문제와 분류 문제는 예측값, 사용 모델, 평가 지표 등이 상이하니 어떤 문제를 풀고 있는 지 정확히 파악하는 것이 중요하다 ② 비지도학.. [기초 수학] 3-4 Gradient Descent(경사하강법) 1. 미분 함수를 작게 나누는 것. 함수를 대체 어떻게 나눈다는 말인가? x의 값을 아주아주아주 미세하게 변화시켰을 때, f(x) 값이 어떻게 변하는지 본다는 것이다. 사실상 x의 변화값이 너무너무너무너무 작기 때문에 '점의 기울기'라고 볼 수도 있다. 아래는 미분의 큰 원칙 네가지. 2. 경사하강법 예측값과 실제값 사이의 차이를 나타내는 오차함수를 그래프로 그려본다면, 이 차이가 가장 적은 지점을 찾아 해당하는 독립변수를 찾고싶을 것이다. 그래서 그 지점을 찾기위해 미분을 이용한다. 이후 교육과정에서 자세히 다뤄질 예정이니, 어떤 것인지만 알고 넘어가도록 한다. [DS 기초] 3-3 clustering clustering 수많은 데이터들을 군집화하는 일. 예를 들어, 온라인 쇼핑몰 고객을 한달동안 방문 빈도와 총 구매건수를 통해 적극적 유저와 비적극적 유저, 유령회원 등을 나눌 수 있다. 또, 머신러닝 중 데이터가 분류가 되어있지 않은 경우에 클러스터링을 통해 자동으로 라벨을 붙여줄 수도 있다. K-Means Clustering 클러스터링도 여러 방법이 있지만 오늘 배울 방법은 K-Means Clustering이다. 만약 데이터를 4개의 집단으로 나누고 싶다면, 먼저 4개의 임의의 점을 찍는다. 그리고 가까운 데이터들을 해당 클러스터로 할당한다. 클러스터별로 평균을 구해 다시 4개의 점을 찍고, 또 가까운 점들을 배정한다. 연속적으로 위 행위를 반복하다보면 평균으로 찍힌 점의 위치가 변하지 않고, 특정.. [기초 수학] 3-2 PCA 1. 공분산과 상관계수 공분산 - 변수 간의 연관성을 보여주는 지표 - 두 변수에 대하여 한 변수가 변화할 때, 다른 변수가 어떠한 연관성을 갖고 변하는 지를 나타낸 값 - 공분산이 음수라면 두 변수가 반대 방향으로 움직이는 경향성, 양수라면 같은 방향으로 움직이는 경향성을 가진다고 볼 수 있다 - 공분산의 절댓값이 클수록 두 변수의 연관성도 크다고 볼 수 있다 - 다만 연관성이 같더라도 변수 자체의 값(스케일)이 크면 공분산이 크게 나온다 #공분산 구하기 df.cov() #dataframe 형태로 출력 np.cov(df.T) #array 형태로 출력 상관계수 - 공분산을 두 변수의 표준편차로 나눈 값 - 위에서 변수의 스케일에 따라 공분산이 달라진다고 했는데, 그 부작용을 제거할 수 있는 지표 - 1에.. [기초 수학] 3-1 기본 선형대수 1. list와 array 그리고 set list - 파이썬 기본 배열 - 하나의 list 안에 서로 다른 자료형을 담을 수 있다 - 수치적 연산 불가 array - numpy 배열 - 하나의 array 안에는 동일한 자료형들만 담을 수 있다 - 수치적 연산 가능 (array 내 평균 구하기, 다른 array와의 덧셈-뺄셈 등) a = [1,2,3] array_a = np.array(a) set - 순서가 없다 - 자료간 중복을 허용하지 않는다 2. 선형대수 선형대수를 이용해 컴퓨터에 데이터를 이해시키고 그 속의 패턴을 설명한다. a. 스칼라 : 상수 b. 벡터 : 1차원 형태의 배열 벡터의 크기(norm, length, magnitude) - 벡터의 길이를 나타내므로 음수가 될 수 없음 벡터의 내적(D.. [통계학] 2-4 AB test AB 테스트 사용자 경험 연구 방법론. 예를 들어, 인터넷 쇼핑몰에서 '제품 구매하기' 버튼의 자리를 왼쪽에서 오른쪽으로 옮기려고 한다. 실험기간 동안 쇼핑몰에 접속한 50%에게는 '원래 버전'을, 또 다른 50%에게는 '새 버전'을 보여주며 전환율을 비교해보는 것이다. 앞에서 배운 귀무가설과 대립가설을 세워 비교하는 방식과 거의 비슷하다. z-test sm.stats.proportions_ztest 함수를 이용하면 p-value를 바로 구할 수 있다 # H0 : μ old >= μ new import statsmodels.api as sm # 버튼을 클릭한 방문자수 구하기 old_convert = df.query('Page == "old"').전환율.sum() new_convert = df.query(.. [통계학] 2-3 Hypothesis Test / p-value 활용 참고 https://hello5555.tistory.com/21 1. 가설 검정 알고자하는 질문을 두개의 대립되는 가설로 세우고, 데이터를 통해 검증하는 과정. 2. 1종 오류와 2종 오류 1종 오류(False Positive, alpha) : 귀무 가설이 참인데 기각한 경우 2종 오류(False Negatie, beta) : 귀무 가설이 거짓인데 기각하지 않은 경우 3. 단측 검정과 양측 검정 단측 검정 : 범위를 지정하여 A집단 평균이 해당 범위에 속할 확률을 검정한다 # 예시 # H0 : A 100 양측 검정 : A집단과 B집단이 같은 효과를 보였는지, 다른 효과를 보였는지 검정한다. # 예시 # H0 : A == B # H1 : A != B **주의** 가설을 세울 때, A와 B는 샘플의 통계량이.. 이전 1 2 3 4 5 6 다음 목록 더보기