Loading...
2021. 12. 13. 00:16

decision tree의 가지치기(pruning)

위와 같이 decision tree는 recursive partitioning을 통해 각 node에서 information gain이 순간 순간 최대가 되는 방향으로 feature를 선택하고 최종 node의 entropy가 0이 될 때까지 구분을 진행합니다. 그런데 딥러닝을 많이 하신 혹시나 이 글을 읽고 계신 분은 짐작하셨겠지만 주어진 training data에 너무나 fitting된다는 단점이 있습니다. 그러니까 새로운 data가 들어올 때 사실 정확한 분류를 해줄지는 미지수라는 점입니다. 그래서 pruning이라는 방법을 수행하여 일반화 능력(generalization performance)을 올려줍니다. 일반화 능력은 딥러닝에서 모델이 train중 한 번도 보지 못한 test data에 대해서도 ..

2021. 12. 11. 21:23

예시를 통해 이해하는 decision tree가 생성되는 원리

현재 딥러닝이 분류문제의 기본 상식으로 알려져있지만 이전에 고전적인 머신러닝에서는 decision tree를 이용하여 분류문제를 해결했습니다. decision tree는 주어진 dataset을 class별로 구별해나가는 하나의 tree를 생성하는 모형인데요. 어떤 식으로 구별해나가는지 그 원리를 예를 들어 설명하겠습니다. 주어진 dataset은 여러개의 feature를 가지고 있겠죠? 예를 들면 다음과 같은 dataset을 생각해봅시다. 현재 D1~D14까지 data를 outlook, temperature, humidity, wind라는 feature를 이용하여 target 변수인 play tennis의 yes or no 여부를 구분해야합니다. 현재 구분하기 전에 yes는 9개 있고 no는 5개 있습니다..

빅데이터분석기사 3회 대비 실전 벼락치기

1. 정렬하기 data.sort_values( by = (정렬기준이 되는 칼럼) , ascending =True/False) ascending =True이면 오름차순 정렬이고 ascending = False이면 내림차순 정렬 2. series는 대응하는 원소끼리 수학적 계산이 가능 단, 인덱스가 맞지 않으면 계산이 이상해질 수 있음 3. 통계량계산 data.mean() , data.median(), data.sum(), data.count(), data.std(), data.var(), .... 최빈값은 scipy 모듈을 이용해서 구할 수 있음 from scipy.stats import mode mode_data = mode(data) 4. 결측치 찾기 data.isnull().sum()을 통해 결측치가..

2021. 11. 28. 00:52

코딩테스트를 위한 SQL 간단 벼락치기

1. 세미콜론 모든 수행 문장이 끝날 때 최종적으로 마지막에 세미콜론 ; 으로 끝냄 2. 특정 칼럼 조회 2-1) 기본형식 select (칼럼) from (테이블명); 2-2) 모든 칼럼 조회 select * from (테이블명); 3. 조건 지정 3-1) where문 사용 select * from (테이블명) where (조건): > 테이블에 존재하는 모든 칼럼을 조회하는데 조건에 맞는 행만을 조회함 > where emp.ename="kim"; 처럼 (테이블명).(칼럼명)으로 칼럼을 지정할 수 있음 3-2) 연산자 일반적인 프로그래밍 언어와 비슷한 연산자들을 지원함 where A = 1000; where A >= 1000; where A = 1000 AND B A가 1000이상 2000이하인 행을 조회..