KT AIVLE School/[TIL] AIVLE School 당일 복습 41

[TIL] [KT AIVLE School] 에이블스쿨 DX 트랙 7주차 5일. 머신러닝 - 지도학습(5). Ensemble - Voting, Bagging, Boosting, Stacking / Random Forest, XGBoost, LGBM / 언더샘플링, 오버샘플링

오늘로 머신러닝 - 지도학습편이 끝났다. AICE 준비하면서 생긴 여러 의문들을 해결할 수 있었던 것 같다.기적의 공부법 선암기 후이해      앙상블 알고리즘이란 지금까지 배운 기본 알고리즘들은 과적합에 취약했다. 이는 감당할 수 있는 복잡성에 한계가 있다는 뜻이고,자연스레 많은 데이터를 사용하기 힘들게 된다. 앙상블 알고리즘(Ensemble)은 그 이름대로,복잡성에 한계가 있는 알고리즘을 여러 개 사용하여힘을 합쳐 문제를 해결하는 알고리즘을 총칭하는 말이다. 앙상블 알고리즘은 몇 유형으로 나뉘는데, 그게 뭐냐면보팅(Votiong)같은 데이터로 서로 다른 알고리즘을 학습 배깅(Bagging)서로 다른 데이터로 같은 알고리즘을 학습RandomForest부스팅(Boosting)점진적으로 같은 알고리즘을 발..

[TIL] [KT AIVLE School] 에이블스쿨 DX 트랙 7주차 4일. 머신러닝 - 지도학습(4). Logistic Regression, SVM, K-Fold Cross Validation, Learning Curve, Grid Search

와! 어렵다! 흑흑 수학적 원리 이해보다 사용법을 먼저 익히고,그다음 원리 이해를 하는 전략으로 가야겠다.   기본 알고리즘(4). Logistic Regression  Linear Regression에서 보았듯, Regression은 회귀 문제를 푸는 알고리즘이다. 그런데 Logistic Regression(로지스틱회귀)는 분류 문제를 푸는 회귀 모델이라는 독특한 모델이다. 이게 왜 그런가 하니... 위 그림처럼 분류 문제에서 이렇게 선형 경계가 나타날 때가 있다. 선 위면 파란색, 선 아래면 빨간색이다. 그런데 잘 보면, 경계에 가까운 점들은 선 위인데 파란색일 때도 있고 그 반대도 있다. 이런 경우, 우리는 저 경계 부근의 값을 두 가지로 처리할 수 있다. 경계 주변 일정 범위에 있는 값은 이상치로..

[TIL] [KT AIVLE School] KT 에이블스쿨 6기(DX 트랙) 7주차 3일. 머신러닝 - 지도학습(3). KNN 모델, Decision Tree 모델

박차를 가하고 있는 머신러닝 3일차. 점점 수학 비중이 늘어난다 괴롭다 일단 수업들으면서 이해한 만큼만 주절주절 적어 본다.       기본 알고리즘(2). KNN(K-Nearest Neighbor) KNN( K-Nearest Neighbor, K 최근접 이웃)은 train 데이터를 산점도로 쫙 나타낸 다음에,(따라서 fit() 과정은 그냥 산점도를 그리는 과정이다. = 연산이 단순하다.) 주어진 test 데이터를 이 산점도에 찍은 후그 근처에 있는 점들(이웃, Nearest Neigbor) K개로부터 답을 구하는 모델이다. Linear Regression과 달리 회귀와 분류 양쪽에 다 쓸 수 있다. 회귀는 이웃들의 평균, 분류는 이웃들의 최빈값을 답으로 뱉으면 되니까.  그런 이유로 KNN에서는 이웃의..

[TIL] [KT AIVLE School] KT 에이블스쿨 6기(DX 트랙) 7주차 2일. 머신러닝 - 지도학습(2). 분류 평가지표 심화, Linear 모델

머신러닝 2일차. 대충 그런게 있다-라고 알고 애써 멀리해 왔던 모델링 수학이 본격적으로 시작되었다. 그야말로 하늘은 높고 공부할 건 늘어나는 가을이다.             모델 평가지표 지난 포스팅(https://guoyee94.tistory.com/40)에서 다룬 모델들의 평가지표. 아무래도 좀 모자란 부분이 보이니까 한번만 더 짚는다. 다시 한 번 머신러닝의 평가지표를 살펴 보자.  회귀 문제회귀MAE(Mean Absolute Error)평균절대오차Σ(오차의 절댓값) ÷ 데이터 수MSE보다 직관적, 이상치에 민감하지 않음 MSE(Mean Squared Error) 평균제곱오차Σ(오차의 제곱) ÷ 데이터 수MAE보다 비직관적, 이상치에 민감함RMSE(Root Mean Squared Error)  √..

[TIL] [KT AIVLE School] KT 에이블스쿨 6기(DX 트랙) 7주차 1일. 머신러닝 - 지도학습(1). 머신러닝 지도학습 기초 / 분류 문제/ 회귀 문제 / 평가 지표

드디어 머신러닝이다. 아무래도 코딩이 서툰 입장에서는템플릿 딱딱 정해져 있는 머신러닝이 편하게 느껴지긴 하는듯. 최근 TIL에만 하루에 4시간씩 소비하고 있었는데,AICE 준비하면서 그나마 미리 알아둔 부분이라 다행이다. TIL도 중요하지만 이미 넣어버린 ADsP, SQLD 어쩔거야...잽싸게 복습 끝내고 준비시간을 갖도록 한다.    머신러닝이란 넓은 의미는 뭐... 넣어 두고,좁은 의미로 머신러닝이란컴퓨터에게 데이터를 x(feature), y(target) 형태로 줌으로써x와 y가 어떤 관계를 가지고 있는지 학습시키는 것이다.  우리가 학습을 시키는 대상, 또는 학습을 완료한 주체를 '모델'이라고 부르며,이 모델에게 실제 데이터(x)를 줘서 우리는 알아내지 못하는 y를 예측시키는 것이 궁극적 목적이다..

[TIL] [KT AIVLE School] KT 에이블스쿨 6기(DX 트랙) 6주차 4일. 데이터 분석 표현(2). streamlit으로 차트 그리기, folium map 사용하기.

지난 포스팅에 이어지는 내용. [streamlit의 이해, streamlit 메서드]https://guoyee94.tistory.com/36 이번에는 streamlit으로 차트 그리는 법과 folium map을 알아보자.         streamlit으로 차트 그리기 streamlit은 강력한 차트 기능을 지원한다. 분석가 입장에서는 비분석가에게 정보를 제공하기 위해 사용하게 되는 만큼,시각화에 힘이 빡 들어간 프레임워크이기 때문이다. streamlit을 활용해서 차트를 그리는 방법은 세 가지가 있다. 1. Simple Chart  - Streamlit에 내장되어 있음, 따로 import 불필요  - st.line_chart(df) / st.bar_chart(df) / st.area_chart(df) ..

[TIL] [KT AIVLE School] KT 에이블스쿨 6기(DX 트랙) 6주차 4일. 데이터 분석 표현(1). streamlit 이해, streamlit 메서드

특히 뒤풀이가 폭풍같이 지나가버린 2차 미니프로젝트. 지금 안건데 지난주 후기를 안썼더라. 숙제가 늘어나는 기분. 어쨌든 미니프로젝트 후기는 이번 주말에 쓰기로 하고,이번주 목-금은 '허신' 강사님께 '데이터 분석 표현'이란 걸 배운다. 월화수목금2차 미니프로젝트한글날데이터 분석 표현  Jupyter Notebook 환경을 벗어나,실무에선 시각화 및 인터페이스 재현을 이렇게 진행하는건가...? 를 맛볼 수 있는 시간이었던 것 같다.        Streamlit의 이해  Streamlit은 파이썬으로 쉽게 데이터 애플리케이션을 만들 수 있게 해주는 오픈소스 프레임워크이다. 복잡한 웹 개발 지식 없이도 간단한 코드로 대화형 웹 애플리케이션을 개발할 수 있으며, 특히 데이터 분석, 머신러닝 모델 시각화 및 ..

[TIL] [KT AIVLE School] KT 에이블스쿨 6기(DX 트랙) 5주차 1일. 데이터 수집(2)

데이터 수집 파트의 둘째날이자 마지막 날. 웹 분야를 완전히 처음 접하는 건 아니지만...강사님 설명이 무척 빠르셨다. 아예 처음이었으면 멘탈이 많이 갈렸을 듯.  동적 페이지 크롤링 실습 몇가지 사례를 통해 동적 페이지 크롤링을 더 해 보았다. 사전학습 때도 느꼈지만, 크롤링은 변수와 상황이 너무 많아서 힘든 것 같다 ㅠ 공식처럼 쓰는 게 안된달까... 큰 틀은 지난 포스팅에서 본 것과 같다.# 1. URLurl = 'https://m.stock.naver.com/api/index/KOSPI/price?pageSize=10&page=2'# 2. request(URL) > response(JSON(str))response = requests.get(url)# 3. JSON(str) > list or di..

[TIL] [KT AIVLE School] KT 에이블스쿨 6기(DX 트랙) 5주차 1일. 데이터 수집(1) - 웹 크롤링 이론, python class

폭풍같안던 한기영 강사님의 데이터 분석 파트가 끝나고... 미니프로젝트 D-day 카운트와 함께 박두진 강사님께서 오셨다. 전직 국어쌤으로서 괜히 친근감이 드는 성함이다. 청록파 박두진 강사님은 뭐랄까,기본을 탄탄하게 쌓아 주시고, 잡담이 없으신 편이다. 처음에는 너무 달리신다... 싶었는데,오히려 그래서 집중도 잘 되고 시간이 녹게 만드는 마성(?)을 지니셨다.  오늘부터 이틀간 배울 것은 데이터 수집! 분석할 데이터를 가져 오는 아주 중요한 과정이다. 다만 오늘의 내용은 그 전에 알아야 할 과정이랄까? 데이터가 클라이언트와 서버 간에 어떻게 전달되는지,그 원리를 통해서 동적 페이지에서 크롤링을 어떻게 해 오는지,파이썬에서 클래스란 무엇인지 등을 배웠다.          웹 크롤링 이론 클라이언트 - ..

[TIL] [KT AIVLE School] KT 에이블스쿨 6기(DX 트랙) 5주차 1일. 데이터 분석 : 이변량 분석(2)

목차1. 이변량 분석 : 범주 → 범주2. 이변량 분석 : 숫자 → 범주 1차 미프도 잘 끝나고, AICE Associate도 그럭저럭 쳤고! 바쁘던 저번주가 끝나자마자 코딩마스터스 마감과 2차 미프가 스멀스멀 다가오는 이번 주. 주말도 에이블 기자단 활동하랴, DX 10반 소식지 만들랴 정신 없이 지나갔다. 마지막 제자들 수능이랑 면접도 얼마 안 남았고 말이지 ㅎㅎ 진짜 힘내자. 10월의 나. 그래도 잡념이 잘 안 든다는 점에서 이정도 바쁜 게 딱 좋은 걸지도 모르겠다. 그럼 데이터 분석 마지막 수업이었던 오늘도,복습 드가자잇          이변량 분석 : 범주 → 범주 범주 → 범주 이변량 분석 방법론시각화교차표, mosaic, stacked bar plot수치화카이제곱검정  범주 feature로 ..