목록전체 글 (152)
호기심 많은 분석가
포스팅 개요 데이콘(DACON)의 신용카드 사용자 연체 예측 AI 경진대회를 수행하면서 Classify를 위해 LighBGM 기법을 사용하였다. LightBGM을 쓰기 위해 공부한 내용들을 기록한 포스팅이다. 포스팅 본문 1. Light GBM이란? Light GBM(Light Gradient Boosting Machine)은 트리 기반의 학습 알고리즘인 gradient boosting 방식의 프레임워크이다. 2. 다른 트리 기반의 알고리즘과의 차이점은? Light GBM은 다른 알고리즘이 트리를 수평으로 확장하는 것에 반해 트리를 수직으로 확장한다. 즉, 기존의 알고리즘은 수평으로 확장하여 포화 트리를 만들고(Level-wise tree growth), left-wise tree growth인 LGBM..
1. 4종류의 Categorical Variables Variable Name 변수명 의미 예시 Nominal 명목변수 2개 이상의 종류가 있는, 순서가 무의미한 변수 Blood Type (A, O,...) Ordinal 순위변수 '순서'의 개념이 존재하는 변수 GRADE (A, B, C,..) Cyclical 주기변수 '주기'의 개념이 존재하는 변수 DAY (Mon, Tues,...) Binary 이산변수 2가지 종류밖에 존재하지 않는 변수 SEX (M, F,...) 2. Categorical Variables를 다루는 3가지 중요한 방법 2-1. ENCODING : 순위 변수는 mapping을 통해, 나머지는 Labelencoder를 통해 숫자로 변환 추가 정보 : SVM(Support Vector ..
1. 배깅(Bagging)이란? 배깅(Bagging)은 Bootstrap Aggregating의 약자로, 보팅(Voting)과는 달리 동일한 알고리즘으로 여러 분류기를 만들어 보팅으로 최종 결정하는 알고리즘이다. 베깅은 다음과 같은 방식으로 진행이 됩니다. 동일한 알고리즘을 사용하는 일정 수의 분류기 생성 각각의 분류기는 부트스트래핑(Bootstrapping) 방식으로 생성된 샘플 데이터를 학습 최종적으로 모든 분류기가 보팅을 통해 예측 결정 부트스트래핑 샘플링은 전체 데이터에서 일부 데이터의 중첩을 허용하는 방식 보팅이란? 다른 알고리즘 model을 사용하는 점에서 차이가 있다. 2. 랜덤포레스트(RandomForest) 랜덤포레스트는 여러 개의 결정트리(Decision Tree)를 활용한 배깅 방식의..
포스팅 개요 SQL 문법과 익숙해지고자 프로그래머스의 SQL Coding Test 문제들을 풀어봄. 그중 String, Date 파트의 문제들을 기록해두었습니다. 그 전 문제들은 2021.05.07 - [Coding Test & Algorithm] - [MySQL] 프로그래머스 Coding_Test / String, Date (1) 포스팅에서 확인할 수 있습니다. 포스팅 본문 아래의 문제들은 모두 동일한 TABLE을 기준으로 문제가 주어졌습니다. TABLE 설명 4. 오랜 기간 보호한 동물(2) 입양을 간 동물 중, 보호 기간이 가장 길었던 동물 두 마리의 아이디와 이름을 조회하는 SQL문을 작성해주세요. 이때 결과는 보호 기간이 긴 순으로 조회해야 합니다. SELECT AI.ANIMAL_ID, AI.N..
포스팅 개요 SQL 문법과 익숙해지고자 프로그래머스의 SQL Coding Test 문제들을 풀어봄. 그중 String, Date 파트의 문제들을 기록해두었습니다. 그 전 문제들은 2021.05.07 - [Coding Test & Algorithm] - [MySQL] 프로그래머스 Coding_Test / JOIN (2) 포스팅에서 확인할 수 있습니다. 포스팅 본문 아래의 문제들은 모두 동일한 TABLE을 기준으로 문제가 주어졌습니다. TABLE 설명 1. 루시와 엘라 찾기 동물 보호소에 들어온 동물 중 이름이 Lucy, Ella, Pickle, Rogan, Sabrina, Mitty인 동물의 아이디와 이름, 성별 및 중성화 여부를 조회하는 SQL 문을 작성해주세요. SELECT AI.ANIMAL_ID, A..
포스팅 개요 SQL 문법과 익숙해지고자 프로그래머스의 SQL Coding Test 문제들을 풀어봄. 그중 JOIN 파트의 문제들을 기록해두었습니다. JOIN 파트에서 가장 어려운 문제들을 조금 자세히 다뤄보기 위해 이번 포스팅을 작성하였습니다. 그 전 문제들은 2021.05.07 - [Coding Test & Algorithm] - [MySQL] 프로그래머스 Coding_Test / JOIN (1)에서 확인하실 수 있습니다. 포스팅 본문 아래의 문제들은 모두 동일한 TABLE을 기준으로 문제가 주어졌습니다. TABLE 설명 4. 보호소에서 중성화한 동물 보호소에서 중성화 수술을 거친 동물 정보를 알아보려 합니다. 보호소에 들어올 당시에는 중성화되지 않았지만, 보호소를 나갈 당시에는 중성화된 동물의 아이디..
포스팅 개요 SQL 문법과 익숙해지고자 프로그래머스의 SQL Coding Test 문제들을 풀어봄. 그중 JOIN 파트의 문제들을 기록해두었습니다. 그 전 문제들은 2021.05.06 - [Coding Test & Algorithm] - [MySQL] 프로그래머스 Coding_Test / IS NULL 포스팅에서 확인할 수 있습니다. 포스팅 본문 아래의 문제들은 모두 동일한 TABLE을 기준으로 문제가 주어졌습니다. TABLE 설명 1. 없어진 기록 찾기 천재지변으로 인해 일부 데이터가 유실되었습니다. 입양을 간 기록은 있는데, 보호소에 들어온 기록이 없는 동물의 ID와 이름을 ID 순으로 조회하는 SQL문을 작성해주세요. SELECT AO.ANIMAL_ID, AO.NAME FROM ANIMAL_INS ..
포스팅 개요 SQL 문법과 익숙해지고자 프로그래머스의 SQL Coding Test 문제들을 풀어봄. 그중 IS NULL 파트의 문제들을 기록해두었습니다. 그 전 문제들은 2021.05.06 - [Coding Test & Algorithm] - [SQL] 프로그래머스 Coding_Test / GROUP BY (2) 포스팅에서 확인할 수 있습니다. 포스팅 본문 아래의 문제들은 모두 동일한 TABLE을 기준으로 문제가 주어졌습니다. TABLE 설명 1. 이름이 없는 동물의 아이디 동물 보호소에 들어온 동물 중, 이름이 없는 채로 들어온 동물의 ID를 조회하는 SQL 문을 작성해주세요. 단, ID는 오름차순 정렬되어야 합니다. SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS ..
포스팅 개요 SQL 문법과 익숙해지고자 프로그래머스의 SQL Coding Test 문제들을 풀어봄. 그중 GROUP BY 파트의 문제들을 기록해두었습니다. 앞선 문제는 2021.05.06 - [Coding Test & Algorithm] - [SQL] 프로그래머스 Coding_Test / GROUP BY (1) 확인하실 수 있습니다 포스팅 본문 아래의 문제들은 모두 동일한 TABLE을 기준으로 문제가 주어졌습니다. TABLE 설명 4. 입양 시각 구하기 (2) 보호소에서는 몇 시에 입양이 가장 활발하게 일어나는지 알아보려 합니다. 0시부터 23시까지, 각 시간대별로 입양이 몇 건이나 발생했는지 조회하는 SQL문을 작성해주세요. 이때 결과는 시간대 순으로 정렬해야 합니다. WITH RECURSIVE TEM..
포스팅 개요 SQL 문법과 익숙해지고자 프로그래머스의 SQL Coding Test 문제들을 풀어봄. 그중 GROUP BY 파트의 문제들을 기록해두었습니다. 그 전 문제들은 2021.05.06 - [Coding Test & Algorithm] - [SQL] 프로그래머스 Coding_Test / SUM, MAX, MIN 포스팅에서 확인할 수 있습니다. 포스팅 본문 아래의 문제들은 모두 동일한 TABLE을 기준으로 문제가 주어졌습니다. TABLE 설명 1. 고양이와 개는 몇 마리 있을까 동물 보호소에 들어온 동물 중 고양이와 개가 각각 몇 마리인지 조회하는 SQL문을 작성해주세요. 이때 고양이를 개보다 먼저 조회해주세요. SELECT ANIMAL_TYPE, COUNT(ANIMAL_TYPE) AS count F..