출처: https://astrocosmos.tistory.com/202 [ASTROCOSMOS:티스토리] '분류 전체보기' 카테고리의 글 목록 (2 Page) :: 하나둘셋넷
728x90

[메타코드 강의 후기] 메타코드 머신러닝 입문 부트캠프 - "Bias and variance Trade-off"

메타코드M (metacodes.co.kr)

 

머신러닝 입문 부트캠프ㅣKAIST AI 박사과정

 

www.metacodes.co.kr

안녕하세요 메타코드 서포터즈 5기 송주영입니다.

머신러닝을 공부함에 있어서 코딩으로 넘어가기 전에 기초 이론을 다지는 이 부분이 쉽게 않게 느껴지네요.

통계학과나 수학과 분들이 부러워지는 순간이었어요

그래도 힘내서 끝까지 완주해보겠습니다!

 

Training Data vs Test Data

데이터를 받게 된다면 하나의 데이터셋을 통째로 받게 됩니다.

이 데이터셋에 대해 일정 퍼센티지에 따라서 학습용으로 사용할 데이터와 평가용으로 사용할 데이터로 나눕니다.

데이터를 나누는 과정에서는 랜덤 샘플링 과정을 수행합니다.

보통 학습용으로 80%를 정하고 20%를 평가 데이터로 할당합니다.

 

모델의 복잡도

모델의 복잡도는 선형에서 비선형으로 갈수록 더 올라갑니다.

선형 함수는 단순히 기울기와 절편으로 이루어져 있고, 차수가 올라갈수록 파라미터가 하나씩 증가하는 것을 생각해보면 당연합니다.

모델이 복잡해질수록 학습 데이터를 잘 학습한다는 장점을 갖습니다.

대신, 모델이 복잡한데 데이터가 모자르다면 충분한 학습이 이루어지 지지 않는 Under-fitting 현상이 발생하기 때문에 무조건 좋은 것은 아닙니다.

 

편향과 분산 - (1)

편향과 분산은 모두 알고리즘이 가지고 있는 에러의 종류로서 이들을 합친 것이 MSE 값입니다.

평균에 대한 분배 법칙을 따라서 해당 수식을 전개하는 과정입니다.

$\theta  $는 우리가 모르는 어떤 특정값을 말합니다. 따라서 정해진 값이기 때문에 랜덤성, 평균이 없습니다.

따라서 수식에서 3번째 항은 그대로 나온 모습을 보입니다.

 

편향과 분산 - (2)

편향은 실제값과 예측값의 차이를 말합니다.

이는 학습 데이터에 대한 정확도라고 이해할 수도 있습니다.

분산은 예측값의 범위를 말합니다. 따라서 분산이 크다면 첫 번째 예측값과 두 번째 예측값이 크게 달라지게 됩니다.

분산이 적다면 여러 번 추정을 하더라도 비슷한 값을 가지게 될 것이다.

 

편향과 분산 - (3)

편향은 정답과 예측값의 차이를 말합니다.

이 그림에서는 빨간색 점을 정답, 파란색 점은 예측으로 표현했습니다.

Low Variance 상태를 보면 파란색 점들이 뭉쳐 있는 모습을 보이고, Low Bias일 때는 빨간색 점과 파란색 점과의 거리가 좁은 모습을 보입니다.

즉 Variance는 정답 여부를 떠나서, 얼마나 일정한 값을 도출하는가를 말합니다.

 

편향과 분산 - (3)

그래프에서 X축의 좌측은 선형 모델, 우측은 비선형 모델에 해당합니다.

모델의 복잡도가 낮을수록, 즉 선형 모델에 가까울수록 편향값은 커지지만 Variance 값은 작은 모습을 보입니다.

모델이 단순하기 때문에 에러가 발생하더라도 일정한 모습을 보이고, 이로 인해 Variance 값이 작습니다.

대신 선형 모델에서는 파라미터가 적기 때문에 편향값은 커집니다.

똑같은 데이터셋이 들어올 때 모델의 복잡도가 커지면, Under-fitting이 발생하고 이는 편향에 영향을 주며, 분산은 반대로 Over-fitting이 발생합니다.

 

 

728x90
728x90

[메타코드 강의 후기] 메타코드 머신러닝 입문 부트캠프 - "Gradient Descent"

메타코드M (metacodes.co.kr)

 

머신러닝 입문 부트캠프ㅣKAIST AI 박사과정

 

www.metacodes.co.kr

안녕하세요 4기부터 활동을 한 서포터즈 5기 송주영입니다.

우리나라 날씨가 갈수록 변덕스러워 지는 것 같아요ㅠ

이럴수록 다를 몸조리 잘 하시길 바랍니다.

이번 수업에서도 머신러닝에 대해 수학적 개념을 배우며, 기초를 다질 수 있었어요!

강의 리뷰 시작하겠습니다.

 

Gradient Descent 경사하강법

경사 하강법이란, 손실 함수를 0에 가깝게 하는 지점을 찾는 것입니다.

이를 위하여 미분을 반복적으로 진행하게 됩니다.

미분을 했을 때 양수 값이 나온다면, 이를 줄이기 위해 반대 방향으로 업데이트를 수행합니다.

이러한 과정 epoch 만큼 반복하고, 이 epoch는 사람이 설정하는 하이퍼 파라미터입니다.

 

학습률(learning rate)

학습률은 계산된 미분값 얼마나 반영할 지 결정하는 개념입니다.

학습률 또한 사람이 설정하는 하이퍼 파라미터에 해당합니다.

학습률을 도입하는 이유는 미분을 했을 때, 값이 크게 변화한다면 최저점을 찾기 힘들 수 있기 때문입니다.

최저점에 천천히 도달하게 하고 싶다는 학습률을 낮게 설정합니다.

 

학습률 스케줄러

학습률은 일반적으로 큰 값에서 작은 값으로 변화시킵니다.

Cosine annealing 특정 횟수마다 학습률을 최대에서 최저까지 변화시키는 과정을 수행합니다.

변화 과정은 cosine 함수와 비슷한 모습을 보입니다.

Cosine annealing 기법을 통해 global 지점이 아닌, local 지점에서 parameter를 찾는 경우를 방지합니다.

 

Advanced Gradient Descent

단순 Gradient Descent 보다 개선된 방법이다.

확률적 경사 하강법이란, 전체 데이터셋을 활용하여 계산을 수행하면 그 비용이 크기 때문에 1개의 데이터로 업데이트를 진행하고, 이를 n번 반복하는 방법을 말합니다.

이렇게 한 경우 특정 샘플이 전체를 대변하기 어렵다는 문제를 갖습니다.

이때 학습 속도와 정확도를 모두 조절할 수 있도록 하는 것이 배치(batch)의 개념입니다.

 

Advanced Gradient Descent - Adam

경사 하강법 중에는 Adam이라는 방법이 존재하며, A는 adaptive를 말합니다.

적응적 학습률 알고리즘으로, AdaGrad와 Momentum을 융합한 기법입니다.

AdaGrad는 변수별로 학습률이 달라지게 하는 알고리즘입니다.

Momentum은 학습률의 진행 방향에 관성이라는 개념을 추가하여 보다 Local Mininum에 빠지는 것을 방지합니다.

 

Momentum, Local optimal, Global optimal

하이퍼 파라미터 조정의 최종 목표는 손실함수를 최소화시키는 것입니다.

그림에서 좌측의 볼록한 부분이 Local Optimal, 우측의 볼록한 부분이 Global Optimal에 해당합니다.

위에서 말한 Momentum을 그림으로 이해하면, 그래프가 볼록한 지점을 지나 상승 지점을 이동할 때, 좀 더 많이 움직이게 하여 넓은 지점을 탐색하고 Global Optimal을 찾는 것을 유도합니다.

하이퍼 파라미터 설정에 있어서, 손실 함수의 최저점이 Local인지 항상 확인할 필요가 있습니다.

728x90
728x90

[메타코드 강의 후기] 메타코드 머신러닝 입문 부트캠프 - "기초수학 ~ 최소제곱법"

메타코드M (metacodes.co.kr)

 

머신러닝 입문 부트캠프ㅣKAIST AI 박사과정

 

www.metacodes.co.kr

안녕하세요 메타코드 서포터즈 5기 송주영입니다.

인공지능을 코드로 먼저 접해서 이해도가 높지 않은 상태였는데, 이러한 강의를 찾게 되어서 만족스럽네요ㅎ

이 강의를 끝까지 수강하고 이론과 코딩 역량을 발전시키자는 계획을 세웠어요

 

강의 리뷰 시작하겠습니다!

 

이진분류, 다중분류

이진 분류와 다중 분류 문제에서 사용하는 시그모이드와 소프트 맥스 함수입니다.

시그모이드 함수의 경우 0.5를 기준으로 하여 이 값보다 높으면 1, 작으면 0으로 클래스를 두 가지로 분류합니다.

소프트맥스 함수는 다중 분류 문제를 위한 함수로, 시그마가 사용된 모습을 보입니다.

각각의 클래스에 대한 확률값을 반환합니다.

 

로그 함수

로그 함수는 지수 함수와 y = x 선을 기준으로 대칭이 되는 모습을 보입니다.

지수 함수와 역함수의 관계임을 의미합니다.

로그 함수의 밑이 e 일 때는 $log_{e}$로 표현하기 보다는 $ln$으로 표현합니다.

표현은 자연로그라고 합니다.

 

선형 회귀

선형 회귀는 단순 선형 회귀, 다중 선형 회귀, 다항 회귀로 구분됩니다.

피처의 종류가 1개이면 단순 선형 회기입니다.

피쳐의 종류가 여러 개이면 다중 선형 회귀입니다.

독립 변수의 차수를 높이면 다항 회귀에 해당하고 수식에서 보면 x의 차수가 다름을 확인할 수 있습니다.

 

최적의 파라미터

Parameter란 모델이 데이터로부터 학습한 가중치를 말합니다.

최적이라는 표현은 데이터를 가장 잘 표현한다는 의미이며 이는 실제값과 예측값과의 차이가 적다는 것을 의미합니다.

즉, 손실이 가장 적게 일어나야 합니다.

정리하면 최적의 파라미터란 손실 함수값이 최소가 되는 경우의 모델 파라미터를 말합니다.

 

파라미터

Parameter의 종류에는 모델이 학습한 Parameter(=weight)와 사람이 설정하는 Hypeparameter가 있습니다.

Weight는 모델이 데이터로부터 직접 학습한 것으로 사람이 직접 개입하여 변경시키는 못합니다.

Hyperparameter에는 학습률, 배치 크기 등이 존재하며 이들의 적절한 값을 찾아 모델의 설명력을 높여야 합니다.

각각의 개념은 뒤의 강의에서 학습할 예정입니다.

 

회귀식 계산

$ {a}^*$는 기울기, $ {b}^*$는 절편에 해당한다.

표를 기준으로 먼저 $\overline{x}$와 $\overline{y}$를 계산한다.

계산된 기울기와 절편값을 활용하여 예측값을 구한다.

공부 시간이 8시간일 때는 일치함을 확인할 수 있다.

 

산출된 식에 대해서 엑셀을 활용하여 결과값을 계산해보고, 실제값과의 차이를 계산해보니 흥미로웠습니다.

그동안 단순하게 코드를 입력하여 나온 결과값들을 사용하다가, 이번에는 직접 계산을 해보니 이해도를 높일 수 있었습니다.

 

읽어주셔서 감사합니다!!

 

728x90
728x90

[메타코드 강의 후기] 메타코드 머신러닝 입문 부트캠프 - "강좌 소개 ~ 기초 수학"

메타코드M (metacodes.co.kr)

 

머신러닝 입문 부트캠프ㅣKAIST AI 박사과정

 

www.metacodes.co.kr

안녕하세요 메타코드 서포터즈 5기로 활동하고 있는 송주영입니다.

SQL과 Python을 연결한 데이터 분석 강의를 마치고 이번에는 머신러닝 입문 강의를 시작했습니다.

인공지능을 배울 때는 기초가 중요하다고 생각해서 만약에 이 분야에 관심이 있으시다면 이러한 입문 강의를 들어보시길 추천드려요!!

강의 리뷰 시작하겠습니다

 

강의목차

인공지능 학습에는 크게 지도 학습과 비지도 학습이 있습니다.

지도 학습은 다시 회귀와 분류 모델로 분류할 수 있습니다.

회귀 모델은 하나의 값을 예측하는 것으로, 입력된 값에 대해 연속형 값을 예측합니다.

분류 모델은 입력된 데이터를 이산형 데이터로 분류합니다.

 

회귀 모델, 분류 모델

회귀 모델과 분류 모델에 대한 보다 자세한 설명입니다.

회귀 모델과 분류 모델 모두 연속값, 이산값을 입력값으로 가질 수 있습니다.

회귀 모델은 출력값이 연속값, 분류 모델은 출력값이 이산값이라는 차이를 갖습니다.

분류의 경우 이진 분류이냐 다중 분류이냐에 따라 사용하는 함수가 각각 시그모이드 함수, 소프트맥스 함수로 나뉩니다.

 

용어 정리 - Feature, Label

데이터는 Feature와 Label로 구성됩니다.

Feature는 데이터의 특징으로 예시를 보면 혈압, 몸무게, 나이 등이 해당합니다.

라벨은 각 데이터에 대한 예측값을 의미합니다. 질병 예측으로 생각해보면, O와 X가 될 수 있습니다.

Feature와 Label은 독립 변수와 종속 변수로도 표현할 수 있습니다.

 

용어 정리 - 입출력, 모델

Input은 모델에 입력되는 값으로 데이터의 Feature 부분입니다.

Output은 모델로부터의 출력값으로 예측 결과를 말합니다.

모델에는 선형 회귀 모델과 비선형 회귀 모델이 있습니다.

비선형 회귀 모델식을 보면 선형 결합식으로 표현이 불가능함을 보입니다.

 

미분, 최솟값

미분은 함수에서 해당 지점의 순간 변화율을 의미합니다.

손실함수는 $(y- \hat{y})^2$ 형태로 표현될 수 있습니다.

손실함수에서 손실값을 최소로 하는 것이 목표입니다.

미분의 성질을 활용한다면 손실함수에서의 최솟값을 구할 수 있습니다.

 

자연상수 e

자연 상수를 이해하기 위하여 1원이 1년 뒤에 + 1원의 성장을 한다는 예시를 보여주셨습니다.

성장 구간을 쪼개지 않았을 때는 최종적으로 2원이 되고, 성장 구간을 한 번 쪼갠다면 2.25원이 됨을 볼 수 있습니다.

마찬가지의 과정을 무한히 수행한다면 값이 2.718에 수렴합니다.

수학에서 중요한 무리수 중 하나이므로 값과 값의 의미를 잘 이해해두어야 합니다.

 

이상으로, 강의 리뷰 마치겠습니다.

이번 수업에서는 인공지능 코딩에 앞서 기초 개념을 다지는 단계였습니다.

인공지능에 대한 깊은 이해를 위해서는 수학이 필수적임을 느낄 수 있는 수업이었습니다.

 

읽어주셔서 감사합니다!!

 

 

 

728x90
728x90

[메타코드 강의 후기] SQL과 Python 연결하고 데이터분석 실습 - "데이터분석 마무리"

메타코드M (metacodes.co.kr)

 

SQL과 Python 연결하고 데이터분석 실습 - [ 데이터 전처리 / 시각화 ]

 

www.metacodes.co.kr

안녕하세요 메타코드 5기 서포터즈 송주영입니다

저번 강의을 들으며, Python과 SQL 질의문을 둘 다 공부할 수 있어서 유용한 수업이라고 느껴졌습니다

특히 인사이트를 뽑아내는 과정을 알려주셔서 데이터를 바라보는 능력을 키울 수 있었다고 생각했어요

이 강의에서 배운 내용들을 잘 정리해두고 참고하며 새로운 데이터를 마주하게 되었을 때 의미있는 분석을 하고자 합니다

 

"SQL과 Python 연결하고 데이터분석 실습" 수업 리뷰 진행하겠습니다.

 

수량과 금액으로 나누어 제품 판매 분석

제품 판매를 분석함에 있어서는 판매 수량, 판매 금액을 모두 확인할 필요가 있습니다.

좌측은 판매수량에 대한 시각화 정보이고, 우측은 판매 금액에 대한 시각화 정보입니다.

페라리를 보면 판매수량도 많고, 판매 금액 또한 높은 모습을 보입니다.

Lincoln을 확인해보면 판매 수량에서는 높은 비중을 차지하였으나, 판매 금액에서는 높은 비중을 나타내지는 않습니다.

 

지역별 매출 비교

지역에 따라 총 매출액과 평균 매출액의 차이가 어떠한지 시각화하였습니다.

총 매출액에서는 미국이 압도적으로 높은 위치를 차지하였으나, 평균 매출에서는 가장 높은 비중을 차지하지는 않습니다.

그래프를 보면 홍콩은 총 매출이 가장 적은 모습을 보입니다.

따라서, 홍콩에서의 매출을 높이기 위해서는 어떠한 요소들이 필요할 지 알아볼 필요가 있습니다.

 

전략 수립

위의 결과를 살펴보았을 때, 매출이 높은 국가와 매우 낮은 국가를 대상으로 어떤 전략을 취해야 하는 지 나누어 볼 필요가 있습니다.

하나의 국가에 지나치게 의존도가 높다면 그 국가의 상황에 따라 회사의 매출이 좌우될 위험이 존재합니다.

매출이 낮은 국가에게서 매출액을 높일 수 있다면 이러한 위험성을 분산시킬 수 있을 것입니다.

해당 국가의 문화적 특성, 시장 특성들을 고려하여 마케팅 전략을 수립한다면 보다 다양한 국가에게서 높은 매출을 기록할 수 있을 것입니다.

 

제품 카테고리별 분석

제품 카테고리별로 분석을 진행하였습니다.

총 매출과 평균 매출을 비교하였고, 총 매출이 높다고 해서 반드시 평균 매출이 높지는 않음을 확인했습니다.

카테고리에 대해서는 매출이 높은 경우와 낮은 경우로 나누어서 전략을 수립합니다.

매출이 높은 카테고리에 대해서 꾸준히 높은 매출을 얻을 수 있도록 하며, 매출이 낮은 카테고리의 매출을 늘려 보다 위험성을 분산시킬 수 있도록 합니다.

 

제품군의 연도별 매출 분석

제품별 매출을 연도별로 구분하여 분석하였습니다.

이러한 시각화 정보를 통해 매출액의 절대적 수치도 확인할 수 있지만, 이들의 변화가 어떤지 또한 확인할 수 있습니다.

전년대비 큰 상승을 기록하는 제품들도 존재하고, 상대적으로 변동폭이 적은 제품들도 존재합니다.

급격하게 증가한 경우, 급격하게 감소한 경우가 주요 분석 대상이 될 수 있습니다.

 

분석에 따른 전략 수립

연도별 매출 분석 결과의 예시입니다.

매출이 증가하는 제품에 대해서는 추가 마케팅 자원 투입, 생산 확대를 고려할 수 있고 매출이 감소하는 추세를 보인다면 고 시장 조사, 고객 피드백 수집이 필요할 것입니다.

연도별 분석을 진행하며 특정 시기마다 수요가 증가하는 제품이 있다면 이를 분석하여 새로운 시장을 발굴할 수 있도록 합니다.

재고 관리의 최적화를 위해서 또한 제품들의 매출이 증가하는지 감소하는지를 면밀하게 확인해야 합니다.

 

이상으로 "SQL과 Python 연결하고 데이터분석" 강의 마무리하도록 하겠습니다.

짧은 시간 동안 핵심 내용들을 잘 짚어준 강의라 몰입감 있게 수업을 들을 수 있었습니다.

강의 수강생들을 대상으로 강의자료, 코드 파일을 주셔서 실제 프로젝트에 활용해보려 합니다.

 

글 읽어주셔서 감사합니다!!

728x90
728x90

[메타코드 강의 후기] SQL과 Python 연결하고 데이터분석 실습 - "Python과 MySQL 연결, 데이터베이스 생성"

메타코드M (metacodes.co.kr)

 

SQL과 Python 연결하고 데이터분석 실습 - [ 데이터 전처리 / 시각화 ]

 

www.metacodes.co.kr

안녕하세요

메타코드 5기 서포터즈 송주영입니다.

 

저번 주에 통계 기초 올인원 강의를 모두 수강하여 이번에는 "SQL과 Python 연결하고 데이터 분석 실습" 강의를 수강하게 되었습니다.

이 강의는 SQL과 Python을 다룰 수 있는 분들에게 적합한 강의이므로 혹시 이 강의에 관심 있으시면 참고하시면 좋을거 같아요!!

 

강의 리뷰 시작하겠습니다.

 

Mysql.connector

먼저 이 수업을 시작하기에 앞서 Python에서 mysql을 사용할 수 있도록 라이브러리를 설치해야 합니다.

사용할 라이브러리는 Mysql.connector입니다.

"pip install mysql-connector-python" 명령어를 사용하여 라이브러리를 설치할 수 있습니다.

프롬프트 창에서 입력할 수도 있고, 저의 경우에는 VS code에서 설치했습니다.

 

데이터베이스 연결

위에서 라이브러리를 설치했으니 이제 데이터베이스를 연결할 순서입니다.

데이터베이스를 연결하기에 앞서 mysql.connector 를 import 합니다.

기본 코드 구조는 사진에서 확인이 가능합니다.

자신이 사용하던 MySQL의 주소, 이름, 비밀번호를 확인하여 입력하면 됩니다.

 

Python 환경에서의 SQL

Python 환경에서 SQL 질의를 사용하는 방법입니다.

SQL에서와 똑같은 문법을 작성하고 query 변수에 할당했습니다.

Python 환경에서는 데이터프레임을 통해 데이터를 다루었습니다.

데이터베이스의 데이터 또한 유사하게 다룰 것이기 때문에 df 변수에 할당했습니다.

 

데이터베이스 생성

수업에서 사용할 데이터베이스입니다. 주소는 아래와 같습니다.

https://www.mysqltutorial.org/getting-started-with-mysql/mysql-sample-database/

이전에 SQL 수업을 수강하신 분들은 익숙하실 것입니다.

이 수업을 처음으로 선생님을 뵙게 되셨다면 본격적인 수업에 앞서 데이터베이스를 세팅해야 합니다.

 

실행 전 쿼리 체크

Python 환경에서 SQL 질의를 통해 데이터프레임을 생성하기 전에는 항상 SQL 환경에서 쿼리문이 올바르게 동작하는지 확인한 이후에 실행하도록합니다.

Python 환경에서 코드 실행 이후에 확인하는 것보다 SQL 환경에서 점검하는 것이 보다 간편합니다.

쿼리문에서는 세 개의 컬럼을 출력합니다.

count, sum 집계 함수를 사용하여 customerNumber에 따른 원하는 집계 결과를 출력하였습니다.

 

VIP 고객 데이터 분석

고객 데이터를 분석함에 있어서는, 전체 데이터를 통째로 보는 것도 필요하지만 구간별로 나누어서 확인할 필요도 있습니다.

2004년에는 매우 큰 금액을 소비하고, 2005년에는 매우 적은 금액을 소비하였지만 전체 년도를 기준으로 집계를 수행하면 이러한 변화를 알아차리기 힘들게 됩니다.

전년 대비 구매 금액이 큰 구매 고객에게는 이들이 꾸준히 관심을 유지할 수 있도록 해야합니다.

전년 대비 구매 금액이 크게 감소한 고객들을 대상으로는, 이들이 다시 소비를 할 수 있도록 마케팅 전략을 수립해야 합니다.

 

MySQL을 Python에 연결하여 데이터베이스의 데이터를 가져와 분석을 진행하니 흥미로운 경험이었습니다.

Python에서 매번 csv 파일을 읽으면 시간이 오래 걸리는 경우가 생길 거 같기도 한데, 이러한 방법을 알아둔다면 상황에 맞게 보다 유연한 방법으로 데이터를 다룰 수 있을 거라 느꼈습니다.

 

이상으로 강의 리뷰를 마치도록 하겠습니다.

읽어주셔서 감사합니다!!

 

728x90
728x90

[메타코드 강의 후기] 통계 기초의 모든것 올인원_회귀분석_Part2_240630

https://www.metacodes.co.kr/edu/read2.nx?M2_IDX=30098&page=1&SC_EC1_IDX=442&SC_EC2_IDX=929&sc_is_discount=&sc_is_new=&EP_IDX=8382&EM_IDX=8208

 

통계 기초의 모든것 올인원 [ 1편, 2편 ]ㅣ18만 조회수 검증

 

www.metacodes.co.kr

안녕하세요

메타코드 서포터즈 5기 송주영입니다.

 

한 주를 마무리하면 지금까지 듣던 "통계 기초의 모든 것 올인원" 강의를 완강하게 되어 뿌듯함을 느꼈어요

ADsP 자격증을 따면서 기초적인 통계를 배우기는 했지만 이렇게 하나의 강의를 온전히 들으니 자격증에서는 배우지 못한 내용들을 배울 수 있어서 좋았어요

 

만약 비전공이시거나, 비전공 출신으로 자격증은 취득했으나 아직 통계 개념이 어렵다면 메타코드 통계 강의를 들어보면서 큰 틀을 잡아보시는 것도 좋을 거라 생각해요

 

"통계 기초의 모든것 올인원_회귀분석_Part2" 강의 후기 작성하겠습니다.

 

잔차제곱합, MSE

$\widehat{y}$ 추정회귀식에 해당한다.

이를 풀어서 작성하면 “베타 0 hat”, “베타 1 hat”, “x i”를 통해 작성할 수 있다.

MSE는 SSE를 자유도로 나눈 값을 말한다.

“시그마 제곱 hat”으로 표시하며, 오차분산의 불편(unbiased) 추정량이다.

 

$ \beta _{1} $의 추정 및 검정(1)

“a i”라는 새로운 term을 하나 만들었으며, 이 식은 아래 추정 및 검정 과정에서 사용된다.

“베타 1”에 대한 추정과 검정을 하는 것이 목표이다.

이러한 추정과 검정을 할 때는 항상 기댓값과 Variance를 구하는 과정을 수행했으며, 이 경우에도 마찬가지이다.

“베타 1 hat”에 대한 식은 값들을 차례로 대입하고 나누어주는 과정을 수행하여 구한다.

“베타 1 hat” 식의 마지막 부분에서 “베타 0”에는 “a i”에 해당하는 값의 summation이고, “베타 1”에는 ‘a i”값의 summation에 “x i”가 곱해져 있다.

“a i”의 summation의 값은 0이고, “베타 1”에 곱해져 있는 부분은 1이 되므로 최종적으로 “베타 1 hat”에 대한 값은 “베타 1”이 된다.

“a i”의 summation 식을 보면 분자값이 0이 되게 되므로 전체 값이 0이 된다.

 

$ \beta _{1} $의 추정 및 검정(2)

“a i hat”의 제곱식을 대입한 뒤 정리하면 분자가 “시그마 제곱” 형태가 된다.

“시그마 제곱”의 불편추정량은 MSE에 해당한다.

“베타 1 hat”에 대한 Variance 값은 자유도가 (n-2)인 t 분포를 따른다.

신뢰구간을 설정한다면 양측 검정이므로 “베타 1 hat”에 똑같은 식을 +, -를 해준다.

이때 양측 검정이므로 알파 값의 1/2에 해당하는 사용한다.

 

$\beta _{0}$ 의 추정 및 검정

“시그마 제곱”은 “MSE”에 해당하므로, “시그마 제곱” 값을 모른다면 “MSE”를 구하여 사용한다.

검정통계량에서 분모 부분은 Standard Error이며, “시그마 제곱”를 모르기 때문에 “MSE”를 넣었다.

분자는 “베타 0 hat”에서 “베타 0 hat”의 기댓값인 “베타 0”를 빼준다.

이렇게 구한 검정통계량 값은 자유도가 (n-2)인 T 분포를 따른다.

 

변동분해, 분산분석

총 변동 $y_{i}  - \overline{y}$ 식은 개별관측값과 이에 대한 평균의 차이다.

식에서 각 항을 제곱하면, 설명이 안되는 변동은 잔차제곱합 SSE가 되고 설명이 되는 변동은 회귀제곱합 SSR이 된다.

자유도는 총 변동, 잔차변동, 회귀변동이 각각 (n-1), (n-2), n이다.

각각의 자유도로 나누어주면 MSE와 MSR 값을 구할 수 있다.

 

회귀모형 검정_F 검정

단순 선형회귀에서는 “베타 1 = 0”이 귀무가설이다.

만약 다중 선형회귀가 된다면 베타 1, 베타 2, 베타 3, ..으로 늘어난다.

F 통계량 식에서 MSR은 자유도가 1, MSE는 자유도가 (n-2)이다.

단측검정이므로 유의수준 알파를 그대로 사용한다.

 

강의를 완강하며, 어려운 점들도 있었지만 선생님께서 쉬운 예시를 들어주셔서 따라갈 수 있었던 것 같아요.

진도의 뒷 부분에 도달하니 앞 부분에서 내가 어떤 개념을 덜 이해하고 넘어갔는지 체감할 수 있었고, 이에 대해 다시 복습할 필요성을 느꼈습니다.

 

다음 수업으로는 Python을 활용하여 통계 이론을 실습하는 수업을 할지 아니면 다른 수업을 들을지 고민이 드네요

현재 생각으로는 그래도 실습을 하며 배운 개념을 계속하여 적용하다 보면 통계 개념에 익숙해지고 이해가 되지 않을까 생각을 하고 있습니다.

 

이상으로 "통계기초의 모든 것 올인원" 강의 후기는 마무리하도록 하겠습니다.

감사합니다!!

 

728x90
728x90

[메타코드 강의 후기] 통계 기초의 모든것 올인원_회귀분석_Part1_240629

메타코드M (metacodes.co.kr)

 

통계 기초의 모든것 올인원 [ 1편, 2편 ]ㅣ18만 조회수 검증

 

www.metacodes.co.kr

안녕하세요 메타코드 서포터즈 5기로 활동하고 있는 송주영입니다.

날씨가 더워짐에 따라 더욱 공부하기가 힘들어지고 있네요ㅠ

 

이번주에는 "통계 기초의 모든 것 올인원" 강의 완강을 앞두고 있어서 뿌듯함을 느끼고 있습니다.

서포터즈 활동을 하지 않았더라면 이렇게 꾸준히 강의를 들을 수 있었을지 모르겠네요

 

아래부터는 "회귀분석_Part1"에 대해 정리한 내용을 올릴게요

 

 

회귀분석이란

첫 번째 예시인 기업의 시가총액, 투자활동과 주식 수익률은 변수가 두 개이므로 다중 회귀분석에 해당한다.

만약, 10년 데이터로 주식 수익률을 예측했는데, 예측률이 높다고 해서 현재의 주식 수익률을 예측할 수 있는 것은 아니다.

과거 예측은 과거에 빈 데이터가 있는 경우에 예측을 통하여 그 데이터를 채울 수 있음을 말한다.

회귀분석의 종류 중에서 이 강의에서는 다중선형회귀분석에 대해 배울 것이다.

 

회귀분석 종류

단순선형 회귀 모형에서는 추정해야 하는 대상이 “베타 0”와 “베타 1” 두 가지이다.

다중선형회귀 모형으로 넘어간다면 식에서 볼 수 있듯이 추정해야 하는 대상이 더 증가하게 된다.

비선형 회귀 모델은 분수 형태와, exponential 형태인 것이 특징이다.

다변량 회귀모델은 종속변수 Y가 여러 개인 것을 말한다.

 

회귀분석 - 단순회귀

추정해야 하는 것은 “베타 0”와 “베타 1” 두 가지이다.

추정 단순회귀식에서는 “입실론” term은 없어야 한다. 위 식은 모델에 대한 내용이므로 오차인 “입실론”이 필요한 것이다.

오차항에 대한 가정은 잔차에 대한 진단을 수행하는 것이다.

오차항에 대한 기댓값이 없다는 내용은 outlier가 없음을 의미한다.

 

회귀분석 - 종속변수 분포

식에 있는 “입실론”은 확률변수이므로 y 또한 당연히 확률변수이다.

기댓값 식에서, 오차항의 기댓값은 0이므로 “입실론” 항은 사라지게 된다.

Variance 식에서는 “베타0”, “베타1”은 값이 실제로 있는 것이기 때문에 Variance에 영향을 받지 않고, “입실론” 항만 남게 된다.

종속변수 yi 에대한 분산은 “시그마 제곱”으로 떨어지기 때문에 정규분포를 따른다.

 

회귀분석 - 최소제곱법

회귀계수를 추정하는 방식 중 “최소제곱법”에 대해 배운다.

기본 식에서 입실론을 제외한 항을 반대편으로 넘기면 “입실론”에 대한 식을 얻을 수 있다.

오차의 제곱합이 최소가 될 수 있도록 하는 선을 찾는 방법아 “최소제곱법”이다.

최소제곱법을 푸는 방식 중에서 편미분을 활용하는 방법이다.

 

편미분을 활용한 최소제곱법의 해

앞의 최소제곱법에 대해 자세하게 풀어보는 과정이다.

“베타 0”와 “베타 1”에 대한 편미분을 수행하여 식을 두 개 만들었다.

이렇게 만들어진 두 식에 대해 뺄셈을 수행한다.

베타를 기준으로 좌우 식을 정리하고 최종식을 도출한다.

 

이상으로 이번 강의에 대한 내용은 모두 정리했습니다.

수업을 들으면서, 데이터 분석에 앞서 갖춰야 할 통계 지식의 난이도가 높다고 느꼈어요

 

편미분을 활용하여 최소제곱법의 해를 구할 때는, 대학교 시절에 배웠던 편미분에 대한 지식을 끄집어 내는 과정도 필요했네요

대학교에서 배운 내용과 더불어 이러한 강의들을 꾸준히 들으며 데이터를 보다 정확하고 의미있게 분석할 수 있는 능력을 키워야겠다고 다짐했습니다.

 

글 읽어주셔서 감사합니다!!!

728x90
728x90

[메타코드 강의 후기] 통계 기초의 모든것 올인원 - 이원배치 분산분석_240623

메타코드M (metacodes.co.kr)

 

통계 기초의 모든것 올인원 [ 1편, 2편 ]ㅣ18만 조회수 검증

 

www.metacodes.co.kr

안녕하세요 메타코드 서포터즈로 활동하고 있는 송주영입니다.

저는 작년 하반기부터 데이터 분석가의 꿈을 꾸고 이 분야를 공부하기 시작했어요.

 

메타코드는 데이터 분석, 인공지능 등 다양한 분야의 강의를 제공하고 있는 강의 사이트입니다. 이 분야의 입문자들에게는 어떤 강의가 좋을지 직관적으로 안내해주는 것이 메타코드 사이트의 장점이라고 생각합니다. 꾸준히 이벤트도 진행하고 있으니 가벼운 마음으로 방문해보셔도 좋을거 같아요

 

요새 꾸준히 공부하기가 어려워서ㅠ 서포터즈 활동을 하면 보다 몰입감을 가지고 강의를 들을 수 있을거 같아서 시작했고, 메타코드가 성장하는 모습을 보니 간접적으로나마 기여했다는 생각이 들어서 뿌듯함 또한 느끼고 있습니다.

 

"통계 기초의 모든 것 올인원" 강의 중 이원배치 분산분석에 대한 강의 후기 작성해봤습니다.

 

반복이 없는 경우 이원배치 분산분석 Table

왼쪽이 인자 A에 대한 treatment이다.

MBTI라고 생각하면 위에서부터 ISFJ, ENFP 이렇게 내려온다고 생각하자

B에 대해서는 성격, 혈액형을 예시로 생각해보자

각 열에 대하여 B에 대한 number는 고정되어 있고, A에 대한 number가 변화함을 확인하자

. (점)이 찍혀있는 것은 어떤 인자를 평균으로 바꾸었는지를 나타낸다.

 

반복이 없는 경우 이원배치 분산분석 관찰모형

 

큰 틀에서는 일원 분산분석과 비슷하고, 교호작용이 추가되었다.

신경 써야할 부분은 Notation이 더 추가되었기 때문에 이에 대해 정확히 파악하는 것이다.

관찰값 모형의 역할은 큰 가이드라인이다. 이 모형에 따라서 각각의 항들을 찾아가야 한다.

관찰값 모형을 간단하게 만듦으로써 이미 연구가 되어있는 값들을 가져올 수 있게 된다.

 

반복이 없는 경우 이원배치 분산분석 제곱합 분해

제곱합 공식을 보면, 앞 부분은 처리에 의한 효과(집단 간 변동)을 말하고, 뒷 부분은 잔차에 대한 값을 표현한다.

SST는 일원 분산분석과 같고,

뒤의 두 항은 각각 A에 의한 처리효과와 B에 의한 처리효과를 나타낸다.

마지막 항은 잔차에 대한 값이다.

 

반복이 없는 경우 이원배치 분산분석 ANOVA Table

Table을 작성해보면 A와 B의 자유도는 각각 ( p - 1 ), ( q - 1 )이 된다.

각각의 요인이 가질 수 있는 레벨의 갯수에서 1을 뺀 값을 말한다.

F 통계량은 MSE를 분모로 둔 상태에서 내가 검증하고 싶은 요인을 분자에 넣으면 구할 수 있다.

F 분포를 사용하는데, 단측 검정이기 때문에 일원 분산분석에서와 마찬가지로 통계량 값을 그대로 사용해야 한다.

 

반복이 있는 경우의 이원배치 분산분석

이원배치 분산분석에서 반복이 있는 경우에 대한 내용이다.

주효과 분석은 일원배치 분산분석에서와 마찬가지로 각각의 인자에 의한 효과를 말한다.

상호작용 효과는 주 효과들 간에 교호작용을 말한다.

예를 들면, 인자 A(성적)에 의해 종속변수(독서시간)가 변화를 나타내는데 인자 B(혈액형) 또한 영향을 주는 상황을 말한다.

 

반복이 있는 경우의 이원배치 분산분석 관찰모형

이원배치 분산분석에서 반복이 있는 경우의 관찰값 모형이다.

반복이 없는 경우의 식과 비교하면, 감마값이 추가되었다는 차이가 있다.

감마는 인자들 간에 교호작용에 대한 값을 말한다.

오차항의 경우, 일원배치 분산분석에서 배웠던 오차항에 대한 기본 가정을 따르고 있어야 한다.

 

강의후기

 

저번 일원배치 분산분석 강의보다 식에 Notation이 많아져서 힘들게 느껴졌네요ㅠ

강의를 들으면서 중간중간에 정지를 하고 정리하는 시간을 많이 가졌어요

저번 강의에서처럼 MBTI, 성적 등을 예시로 들며 설명해주셔서 그래도 이해할 수 있었던거 같아요

좀 더 난이도가 높아졌지만, 더 어려웠던 만큼 다 듣고 정리하니 성취감이 더 크게 다가오네요

 

데이터 분석을 하다보면 코딩 스킬에 그치지 않고, 통계 지식을 체계적으로 쌓는 것이 중요한데 메타코드에서 이러한 강의를 들으니 큰 도움이 된다고 느껴집니다

 

 

728x90

+ Recent posts