XGBoost
·
Machine Learning
XGBoost 가장 먼저 개발된 부스팅 알고리즘 손실 함수뿐만 아니라 모형 복잡도까지 고려함 캐글 컴피티션 우승자가 많이 사용하는 성능이 검증된 부스팅 모델 종속변수가 연속형 데이터인 경우든 범주형 데이터인 경우든 모두 사용 가능 이미지나 자연어가 아닌 표로 정리된 데이터의 경우, 거의 모든 상황에 활용할 수 있음 장점 단점 예측 속도가 상당히 빠르며, 예측력 또한 좋음 복잡한 모델인 만큼, 해석이 어려움 변수 종류가 많고 데이터가 클수록 상대적으로 뛰어난 성능을 보여줌 더 나은 성능을 위한 하이퍼파라미터 튜닝이 까다로움 부스팅: 순차적으로 트리를 만들어 이전 트리로부터 더 나은 트리를 만들어내는 알고리즘 트리 모델을 기반으로 한 최신 알고리즘 중 하나 XGBoost, LightGBM, CatBoost ..
프로그래머스 | 2022 KAKAO BLIND RECRUITMENT | 신고 결과 받기 [파이썬 python]
·
Algorithm/프로그래머스
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def solution(id_list, report, k): dict = {i:[] for i in id_list} # 유저ID : 신고한 ID stop = {i:0 for i in id_list} # 유저별 신고 당한 횟수 for re in set(report): # set으로 중복 제거 dict[re.split()[0]].append(re.split()[1]) stop[re.split()[1]] += 1 stop_id = [] # 정지된 ID for key, value in stop.items(): ..
프로그래머스 | 2023 KAKAO BLIND RECRUITMENT | 개인정보 수집 유효기간 [파이썬 python]
·
Algorithm/프로그래머스
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 방법 1) - 연/월/일 비교 def solution(today, terms, privacies): today = list(map(int, today.split('.'))) # [0]연, [1]월, [2]일 terms = {i[0]: int(i[2:])for i in terms} # 딕셔너리 answer = [] # 파기해야할 정보 for i, pri in enumerate(privacies): # 하나씩 비교 day, kind = pri.split() day = list(map(int, day.split('..
Random Forest
·
Machine Learning
랜덤 포레스트, RandomForest 랜덤 포레스트(Random Forest): 결정 트리의 단점인 오버피팅 문제를 완화시켜 주는 발전된 형태의 트리 모델 랜덤으로 독립적인 트리를 여러 개 만들어서 예측 여러 모델을 활용하여 하나의 모델을 이루는 기법을 앙상블이라 함 장점 단점 결정 트리와 마찬가지로, 아웃라이어에 거의 영향을 받지 않음 학습 속도가 상대적으로 느림 선형/비선형 데이터에 상관없이 잘 작동함 수많은 트리를 동원하기 떄문에 모델에 대한 해석이 어려움 종속변수가 연속형 데이터와 범주형 데이터인 경우 모두 사용가능 아웃라이어가 문제가 되는 경우 선형 모델보다 좋은 대안이 될 수 있음 오버피팅 문제로 결정트리를 사용하기 어려울 때 사용 가능 코드 from sklearn.ensemble impor..
Decision Tree
·
Machine Learning
결정 트리, Decision Tree 관측값과 목푯값을 연결시켜 주는 예측 모델로서 나무 모양으로 데이터를 분류함 수많은 트리 기반 모델의 기본 모델(based model) 선형 모델과는 달리, 트리 모델에서는 각 변수의 특정 지점을 기준으로 데이터를 분류해 가며 예측 모델을 만듦 장점 단점 데이터에 대한 가정이 없는 모델임(Nonparametric Model) 트리가 무한정 깊어지면 오버피팅 문제를 야기할 수 있음 예를들어 선형 모델은 정규분포에 대한 가정이나 독립변수와 종속변수의 선형 관계 등을 가정으로 하는 모델인 반면, 결정 트리는 데이터에 대한 가정이 없어 어디에나 자유롭게 적용할 수 있음 추후에 등장할 트리 기반 모델들에 비하면 예측력이 상당히 떨어짐 아웃라이어에 영향을 거의 받지 않음 트리 ..
Naive Bayes
·
Machine Learning
나이브 베이즈 모델 Naive Bayes 베이즈 정리를 적용한 조건부 확률 기반의 분류 모델 조건부 확률: A가 일어났을 때 B가 일어날 확률 딥러닝보다 간단한 방법으로 자연어 처리를 원할 때 나이브 베이즈 모델을 사용 장점 단점 비교적 간단한 알고리즘에 속하며 속도 또한 빠름 모든 독립변수가 각각 독립적임을 전제로 하는데 이는 장점이 되기도하고 단점이 되기도 함 작은 훈련셋으로도 잘 예측함 실제로 독립변수들이 모두 독립적이라면 다른 알고리즘보다 우수할 수 있지만, 실제 데이터에서 그런 경우가 많지 않기 때문에 단점임 각 독립변수들이 모두 독립적이고 그 중요도가 비슷할 때 유용함 자연어 처리(NLP)에서 간단하지만 좋은 성능을 보여줌 범주 형태의 변수가 많을 때 적합하며, 숫자형 변수가 많은 때는 적합하..