[데이터마이닝] eXplainable AI ② LIME, SHAP
·
ML & DL/데이터마이닝
[데이터마이닝] 데이터마이닝에 관한 스터디를 진행하고자 정리한 내용입니다. 참고한 자료들은 아래에 따로 정리해두었으며,개인 공부 과정에서 틀린 부분이 있을 수 있습니다. (잘못된 부분은 알려주시면 수정하겠습니다!) Intro.지난 시간에 이어 계속 eXplainable AI (설명 가능한 인공지능) 에 대한 내용을 다룹니다. 모델에 관계없이 사용 가능한 Model-Agnostic method를 다루고 있으며, PDP, ICE, Feature Importance에 이어서 LIME과 SHAP에 대해 살펴보겠습니다.앞서 살펴본 PDP와 ICE는 입력과 출력의 관계를 적절히 시각화함으로써 해석력을 얻었다면, 지금부터 볼 LIME과 SHAP은 설명을 위한 대리모델(surrogate model, explanatio..
[데이터마이닝] eXplainable AI ① PDP, ICE, Feature Importance
·
ML & DL/데이터마이닝
데이터마이닝에 관한 스터디를 진행하고자 정리한 내용입니다. 참고한 자료들은 아래에 따로 정리해두었으며,개인 공부 과정에서 틀린 부분이 있을 수 있습니다. (잘못된 부분은 알려주시면 수정하겠습니다!) Intro.우리는 앞서 트리 기반 모델을 다룰 때 앙상블을 통해 모델의 성능을 강력하게 높일 수 있음을 배웠습니다.그런데 여기서 다시 한 가지 의문이 들 수 있어요. Decision Tree의 장점은 명확한(해석 가능한) 규칙의 집합을 만들어 ‘의사 결정’에 직관적으로 도움을 준다는 것이었는데, 앙상블은 그런 트리가 수십, 수백 개가 모여서 작동합니다. 그렇다면 그 앙상블 모델의 결과에 대해서는 대체 어떻게 설명할 수 있을까요?학습 매커니즘을 일일이 설명할 수는 있겠지만, 더이상 원래의 트리모델처럼 명확한 규..
[혼자 공부하는 머신러닝+딥러닝] 🎊혼공학습단 완주 회고록🎊
·
ML & DL/머신러닝 기초
본 포스팅은 2023 혼공학습단 수료 인증을 위해 작성한 글입니다.(23.01.02. ~ 23.02.17.) 혼공학습단 수료드디어 혼공학습단의 6주차 미션이 모두 끝났습니다!!! 언제 오려나 하고 시작했는데 정말 말도 안 되게 금방 와버리네요... 여러모로 정신없는 1월이었는데 그래도 어찌저찌 다 해냈습니다!다시 책 목차를 펴고 돌아보니 한편으론 뿌듯하면서도, 한편으론 여전히 배움의 깊이가 부족하단 생각에 자세를 고쳐 앉게 되네요..ㅎㅎ 박해선 저자님께서 강의 중에 종종 말씀해주셨듯이 이 책은 정말 입문 수준이고, 더 다양한 라이브러리들과 그 기반 원리를 배우려면 중급자 이상의 다른 교재를 더 공부해야 할 것 같습니다. (그리고 사실 완주라고 했지만 여전히 8,9 챕터는 하지도 않았으니..^^)공부 방법..
[혼자 공부하는 머신러닝+딥러닝] 7-3. 신경망 모델 훈련
·
ML & DL/머신러닝 기초
Intro.지금까지 인공신경망+심층신경망을 배우고, 이를 케라스 API로 직접 만들어봤다.이번 시간엔 이렇게 모델을 훈련하면서 필요한 추가 도구들을 배워보자!1. 신경망 모델 돌아보기모델 만드는 함수 제작신경망 모델 만드는 과정을 함수로 만들어서 편하게 사용하려고 함.이제는 `model_fn()` 함수에다가 쌓고 싶은 층만 전달해주면 알아서 신경망 모델 만들어 줌!훈련(fit) 결과값 시각화저번 시간에 심층신경망 훈련했던 코드를 다시 보면, 아래와 같은 메시지가 있음사실 keras의 `.fit()` 메소드는 History 객체를 반환함.➔ 그 안에는 훈련 측정값이 담긴 `history` 딕셔너리가 들어있음! ('accuracy'는 우리가 따로 metrics 넣어줬기 때문에 있는 거임 ㅇㅇ)이 측정값(결과..
[데이터마이닝] 클러스터링 알고리즘
·
ML & DL/데이터마이닝
데이터마이닝에 관한 스터디를 진행하고자 정리한 내용입니다. 참고한 자료들은 아래에 따로 정리해두었으며,개인 공부 과정에서 틀린 부분이 있을 수 있습니다. (잘못된 부분은 알려주시면 수정하겠습니다!) Intro.지도학습의 대표 격인 트리 기반 모델에 대해 알아봤으니, 이젠 비지도학습 차례입니다. 비지도학습의 대표적인 알고리즘인 클러스터링(clustering)의 세계로 들어가봅시다.1. 클러스터링 개요1.1. Background지도학습은 입력(X)과 정답(Y)이 모두 존재하여 둘의 관계를 찾아내는 것이 목표인 반면, 비지도학습은 정답(Y)없이 입력(X)의 내재적 특징을 찾는 것이 목표였죠. 그중에서도 아래 그림처럼 비슷한 객체끼리 묶어주는 것을 ‘군집화(clustering)’라고 합니다.군집화(cluster..
[SQL] 핵심 정리 노트
·
SQL/BigQuery
SQL을 공부하며 배운 내용을 정리한 것이며, 개인적으로 기억하고 다시 찾아보기 위한 용도로 작성합니다.링크가 없는 경우 : [BigQuery 기초] 글에서 다뤘던 내용링크가 있는 경우 : 이후에 추가로 알게 된 내용 Last updated : 25.04.24 1. 쿼리 및 함수 정리 기본 쿼리 (추출, 조건)FROMWHEREAND, OR, NOT, INIS NULL비교연산자 (=, !=, ), BETWEEN(등호 포함)SELECTEXCEPT컬럼끼리 사칙연산 가능 (+, -, *, /)CASE WHEN ~ ENDIFORDER BY (OSC, DESC)`,`로 조건 여러 개 입력 가능 (첫 조건에서 동일 순서라면 다음 조건으로 정렬) 25.03.06LIMIT집계/계산GROUP BY (필수), GROUP ..
[데이터마이닝] 앙상블 학습 (Ensemble learning)
·
ML & DL/데이터마이닝
데이터마이닝에 관한 스터디를 진행하고자 정리한 내용입니다. 참고한 자료들은 아래에 따로 정리해두었으며,개인 공부 과정에서 틀린 부분이 있을 수 있습니다. (잘못된 부분은 알려주시면 수정하겠습니다!) Intro. 지난 스터디 때 지도학습의 대표 알고리즘으로 DecisionTree를 다뤘습니다. 단일한 Decision Tree 모델로는 생각보다 일반화 성능을 높이기 쉽지 않은데요. 모델의 성능을 높이려면 트리를 복잡하게 분기해야 하는데, 복잡해질수록 과대적합이 되는 딜레마가 있기 때문입니다. (즉, DecisionTree는 기본적으로 ‘Non-robust’하고 Variance가 큰 모델입니다.)그런데 단일한 Decision Tree를 여러 개 모아서 활용하는 '앙상블' 기법을 사용하면 이러한 한계를 극복할 ..
[데이터마이닝] 트리 모델 가지치기(Pruning)
·
ML & DL/데이터마이닝
데이터마이닝에 관한 스터디를 진행하고자 정리한 내용입니다. 참고한 자료들은 아래에 따로 정리해두었으며,개인 공부 과정에서 틀린 부분이 있을 수 있습니다. (잘못된 부분은 알려주시면 수정하겠습니다!) (⚠️혹시 글자 폰트가 이상하게 깨질 경우, 새로고침하면 정상적으로 나옵니다!)Intro.지난 스터디에서는 트리 알고리즘의 기본적인 학습 과정을 배웠습니다. 트리 알고리즘의 핵심은 아래 2가지 질문으로 볼 수 있었는데, 지난 시간에 배운 내용은 그 중에서 "어떻게 분기할 것인가"에 대한 내용이었습니다. 🔑Key Ideas in Decision Tree (트리 알고리즘의 핵심이 되는 2가지 질문)1. 어떻게 분기할 것인가?▶ 1회성 분기가 아니라, 반복적으로 분기하자! = 재귀적 분기(Recursive Par..
[데이터마이닝] 의사 결정 나무(Decision Tree)
·
ML & DL/데이터마이닝
데이터마이닝에 관한 스터디를 진행하고자 정리한 내용입니다. 참고한 자료들은 아래에 따로 정리해두었으며,개인 공부 과정에서 틀린 부분이 있을 수 있습니다. (잘못된 부분은 알려주시면 수정하겠습니다!) (⚠️혹시 글자 폰트가 이상하게 깨질 경우, 새로고침하면 정상적으로 나옵니다!)Intro.이번 시간에는 지도학습의 대표적인 알고리즘 중 하나인 의사 결정 나무(Decision Tree)에 대해 다룹니다. 단순해보일 수 있지만 강력한 성능의 앙상블 모델(XGBoost, LightGBM 등)의 기반이 되는 중요한 알고리즘입니다. 1. Decision Tree 소개1.1. 기본 아이디어의사결정나무(Decision Tree)는 간단한 규칙들을 논리적으로 결합한 순차적 모델(sequential model)로, 흔히 아..
[데이터마이닝] 하이퍼파라미터 튜닝 (Grid search, Random search, Bayesian optimization)
·
ML & DL/데이터마이닝
데이터마이닝에 관한 스터디를 진행하면서 정리한 내용입니다. 참고한 자료들은 아래에 따로 정리해두었으며, 개인 공부 과정에서 틀린 부분이 있을 수 있습니다. (잘못된 부분은 알려주시면 수정하겠습니다!) Intro.머신러닝은 인간의 개입을 최소화한 기계학습 방법이긴 하지만, 여전히 인간의 역할이 존재합니다. 인간이 통상 어떤 기계를 사용할 때도 기본적인 설정을 해줘야 하듯이, 머신러닝 모델을 구성할 때도 학습을 제어하는 데 필요한 설정을 어느 정도 직접 해주어야 하는 것이죠. 이전 포스팅에서 봤듯이, 모델에서 학습되지 않고 사용자가 직접 세팅해야 하는 설정(매개변수)을 ‘하이퍼 파라미터(Hyper-paremeter)’라고 합니다. 그리고 그러한 설정들 중 가장 성능을 좋게 만드는 설정을 찾아나가는 과정을 '..