전체 글(36)
-
VCS, Git의 기본작동원리
버전관리시스템 (VCS; Version Control System) 파일 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전을 다시 꺼내올 수 있는 시스템 VCS를 사용하면 각 파일을 이전 상태로 되돌릴 수 있고 시간에 따라 수정내용을 비교해 볼 수 있고, 파일을 잘 못 고쳤을 때 도 쉽게 복구할 수 있다 로컬 버전 관리 버전관리 프로그램의 1세대 파일들을 로컬 저장소에서 변경이력을 관리 협업이 매우 힘듬 중앙집중식 버전 관리 (CVCS) 파일을 관리하는 서버가 별도로 있고 클라이언트가 중앙서버에서 파일을 받아(check out) 사용가능 관리자가 프로젝트에 참여한 사람 중 누가 무엇을 하는지 관리하기 쉬움 중앙서버에 문제 발생하여 다운될 경우 협업 및 백업 불가능 하드디스크에 문제 생기면 모든 히스..
2024.02.22 -
K-Nearest Neighbors
K-Nearest Neighbors (KNN) 최근접이웃 알고리즘 현재 데이터와 가장 가까운 k개의 데이터를 찾아서 가장 많은 분류값으로 분류하는 알고리즘 k개의 가장 가까운 이웃 데이터에 의해 예측된다는 의미 instance-based learning으로 내부 모델을 구성하지 않고 단순히 훈련데이터의 인스턴스를 저장 분류는 각 포인트의 가장 가까운 이웃의 단순 과반수 투표로 계산됨 k 값에 따라 분류가 달라질 수 있다는 점이 특징 위 그림의 경우 가장 가까운 3개의 기존 데이터의 분류를 살펴본 결과, B분류가 2개, A분류가 1개이므로 새로운 데이터는 B분류로 할당 동작원리 전처리 원핫인코딩 거리기반 계산을 활용한 알고리즘이기에 명목형 변수를 수치형 변수로 변형해줘야함 선형회귀나 로지스틱 회귀에선 다중..
2024.02.20 -
XGBoost
XGBoost : A Scalable Tree Boodsting System을 읽고 참고하여 작성 XGBoost eXtreme Gradient Boosting gradient boosting은 이전 학습기의 결과를 이어받아 순차적으로 학습하기에 시간이 많이 걸리는 게 단점 속도와 정확도면에서 개선한 모델 기존 Gradient Tree Boosting 알고리즘에 과적합 방지를 위한 기법이 추가된 지도학습 알고리즘 기본학습기를 decision tree로 하며 gradient boosting과 같이 잔차를 이용하여 이전 모형의 약점을 보완하는 방식으로 학습 손실함수가 최대한 감소하도록 하는 분할점(split point)를 찾는 모델 Regression, Classification 모두 지원 트리부스팅 방식에 ..
2024.02.18 -
ExtraTrees
Extratrees Decision Tree를 기반으로 한 앙상블 학습방법 극도로 무작위화된 기계학습방법 Bootstrap을 사용하지않음 즉, 각 결정트리를 만들어낼 때 전체 훈련세트를 사용하는 것으로 분할할 때 가장 좋은 분할을 찾는 것이 아닌 무작위로 분할한다는 것 데이터 샘플 수와 특성 설정까지 랜덤 결정트리에서 특성을 무작위로 분할하게 되면 성능은 낮아진다는 단점있으나 많은 트리를 앙상블하기때문에 오버피팅을 막고 검증세트의 점수를 높이는 효과가 있다 랜덤포레스트와 차이 bootstrap을 사용하지 않음 - 전체 특성 중 일부를 랜덤하게 선택해 노드분할 결정트리를 만들어 낼 때 훈련세트 전체를 사용하기 때문에 baggin이라 할 수 없음 랜덤포레스트는 주어진 모든 특성에 대한 정보이득을 계산하고 가..
2024.02.18 -
RandomForest
Random Forest 등장배경 : 의사결정트리의 과적합을 해결책으로 제안됨 -> 모든 feature들을 기반으로 트리를 만들어 가지가 많아져 오버피팅됨 랜덤포레스트는 의사결정나무를 배깅방식으로 만든 알고리즘 * 배깅 (Bagging) : 같은 알고리즘을 사용하되 데이터를 무작위로 추출해 다양한 서브 데이터셋을 생성하고 이들을 병렬적으로 학습한 결과를 다수결이나 평균으로 결정하는 것 랜덤포레스트는 다수의 분류트리로 구성 각 트리들의 성장과정 원본 데이터에서 무작위로 N개의 사례를 샘플링 - 트리의 훈련세트가 됨 m 오류율이 최소화되는 m의 최적 범위가 있다 => oob (out of bag)오류율을 사용해 결정할 수 있다 특징 정확성 확장성 고차원성 : 피쳐엔지니어링 없이 수천개의 입력변수를 처리할 수..
2024.02.17 -
Decision Tree
Decision Tree 의사결정트리 일련의 분류 규칙을 통해 데이터를 분류, 회귀하는 지도학습모델 중 하나 전체 자료를 몇개의 소집단으로 분류하거나 예측을 수행하는 분석방법 상위 노드로부터 하위 노드로 트리구조를 형성하는 매 단계마다 분류 변수와 분류 기준값의 선택이 중요 분류변수와 분류기준값은 하위노드에서 노드 내에서는 동질성이, 노드 간에는 이질성이 가장 커지도록 선택됨 뿌리노드(root node) : 분류/예측대상이 되는 모든 자료집단 잎노드(leaf node) : 각 입력변수들이 루트노드로부터 잎 노드로 이어지는 경로에 해당되는 값들을 가질때의 목표변수값에 해당, 가장 맨 밑에 있는 노드 (terminal node) 분기 : 두가지로 나뉘는 부분 결정노트 : 나뉘어 내려가는 선들 가지분할(spl..
2024.02.17