일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- Machine Learning
- cpp class
- 합성곱 신경망
- numpy 기초
- lambda
- OOP
- 데이터 마이닝
- 클러스터링
- 넘파이
- NumPy
- Design Pattern
- 파이썬
- ack
- 머신러닝
- 차원축소
- 자바
- c++
- 코딩테스트실력진단
- cpp
- 넘파이 배열
- 기계학습
- 데이터 분석
- java
- python
- 코딩테스트
- 넘파이 기초
- 디자인 패턴
- 코드트리
- 네트워크 기초
- 코테
- Today
- Total
목록전체 글 (69)
준비하는 대학생
네트워크 기술의 이해 데이터 통신에는 다양한 요소들이 복잡하게 얽혀 있으며, 이를 이해하는 것은 정보통신 기술을 이해하는데 중요한 부분입니다. 이 글에서는 네트워크 기술의 기초적인 부분을 설명하고, 이를 통해 전반적인 통신 시스템을 이해하는 데 도움을 제공하고자 합니다. 이 기술들은 우리가 지금 이 글을 읽고 있는 인터넷을 가능하게 하는 기반이기도 합니다. 1. 회선 교환 방식과 패킷 교환 방식 데이터가 어떻게 네트워크를 통해 이동하는지 이해하려면 먼저 '회선 교환 방식'과 '패킷 교환 방식'에 대해 알아야 합니다. 1.1 회선 교환 방식(circuit exchange method) 회선 교환 방식은 데이터를 교환하기 전에 1:1의 전송로를 만들고, 교환을 마칠 때까지 전송로를 계속 사용하는 방식입니다...
LDA란? LDA(Linear Discriminant Analysis)는 선형 판별 분석법으로 PCA와 비슷합니다. LDA는 입력데이터의 차원을 축소하는 것이 PCA와 비슷하지만 LDA는 지도학습의 분류에 사용하기 쉽게 개별 클래스를 분별할 수 있는 기준을 최대한 유지하면서 축소합니다. PCA는 데이터의 변동성이 가장 큰 축을 찾았다면 LDA는 데이터의 결정 클래스를 최대한으로 분리할 수 있는 축을 찾는 것입니다. LDA는 특정 공간 내 클래스를 최대로 분리할 수 있는 축을 찾기 위해 클래스간 분산과 클래스 내부 분산의 비율을 최대화 하는 방식으로 차원을 축소합니다. 즉, 같은 클래스 끼리는 뭉쳐있고, 다른 클래스와의 거리를 최대화 하게 하여 분류하기 쉬운 차원으로 축소하는 것입니다. LDA를 구하는 방..
정확도 정확도란? 실제 데이터에서 예측 데이터가 얼마나 같은지 판단하는 지표 $$ 정확도 = \frac{예측\ 결과가\ 동일한\ 데이터\ 건수}{전체\ 예측\ 데이터\ 건수} $$ 정확도 지표의 이진분류 모델 성능 왜곡 import numpy as np from sklearn.metrics import accuracy_score, confusion_matrix, precision_score, recall_score # 예를 들어, 데이터셋에 클래스 1이 5개, 클래스 0이 95개 있는 경우 y_true = [0] * 95 + [1] * 5 y_pred = [0] * 100 # 모델이 항상 0으로만 예측 # 정확도 계산 accuracy = accuracy_score(y_true, y_pred) print(..
로지스틱 회귀란 일반적인 선형 회귀는 연속적인 값을 예측하는 데 사용되지만, 로지스틱 회귀는 이진 분류 문제(binary classification)를 해결하는 데 적합합니다. 예를 들어, 이메일이 스팸인지 아닌지, 환자가 특정 질병을 가지고 있는지 여부 등을 판별할 수 있습니다. 동작 원리 선형 결합: 우선, 입력 특성들과 각 특성에 대응하는 가중치들을 곱한 값을 모두 합하여 선형 결합(Linear Combination)을 구합니다. $$ z = b+x_1w_1+x_2w_2+...+x_nw_n $$ 여기서 w는 기울기, x는 특성 값입니다. b 는 절편(편향,bias)입니다. Logit을 확률로 변환: 이 선형 결합 값을 Logit 함수의 역함수인 Sigmoid 함수에 통과시켜서, 0과 1 사이의 확..
선형회귀란? 선형회귀는 종속 변수 y와 하나 이상의 독립 변수(또는 설명 변수) X와의 선형 상관 관계를 모델링하는 회귀분석 기법입니다. 즉, 데이터를 가장 잘 대표하는 직선을 찾는 것이 목적입니다. 이때, 직선은 기울기와 절편을 가지며, 이를 통해 새로운 데이터에 대해 y 값을 예측하는 데 사용할 수 있습니다. 수식으로 표현하면, y = wx + b와 같이 나타낼 수 있습니다. 여기서 y는 종속 변수, x는 독립 변수, w는 가중치(기울기), b는 절편입니다. 회귀분석 모델의 종류 단순회귀분석(Simple Regression Analysis) : 독립 변수가 1개인 회귀분석 (Y=b+wx+ϵ) 다중회귀분석(Multiple Regression Analysis) : 독립 변수가 여러 개인 회귀분석 (Y=b..
에이다부스트(AdaBoost) 에이다부스트는 Adaptive Boosting의 줄임말로, 약한 학습기를 순차적으로 학습시키면서 이전 모델들이 잘못 분류한 데이터에 대해 가중치를 조정해 나가는 방법입니다. 가중치 부여: 처음에는 모든 데이터 샘플에 동일한 가중치가 부여됩니다. 학습 및 가중치 업데이트: 각 학습기가 순차적으로 학습하면서, 잘못 분류된 데이터 샘플들의 가중치를 높이고, 올바르게 분류된 데이터 샘플들의 가중치를 낮춥니다. 최종 예측: 모든 학습기가 학습을 마친 후, 학습기들의 예측을 가중합하여 최종 예측을 만듭니다. 에이다부스트(AdaBoost) 동작 원리 AdaBoost는 아래와 같은 순서로 동작합니다: 데이터셋의 각 샘플에 동일한 가중치가 부여됩니다. 초기 가중치는 1/N으로 설정되며, N..
앙상블 학습(Ensemble Learning)이란? 앙상블 학습은 여러 개의 기본 학습 모델을 조합하여 더 강력한 모델을 만드는 기법입니다. 비유를 들자면, 한 명의 전문가의 의견보다 여러 명의 전문가들의 의견을 종합한 쪽이 더 신뢰성이 높을 수 있다는 원리와 비슷합니다. 앙상블 학습의 주요 기법들 1. 보팅(Voting) 보팅은 여러 개의 다른 종류의 기본 모델들의 예측을 결합하는 가장 간단한 형태의 앙상블 학습입니다. 보팅은 크게 두 가지로 나뉩니다. (같은 데이터를 다른 모델들로 예측) 하드 보팅(Hard Voting): 각 모델의 예측 결과를 투표로 취합하여 가장 많은 표를 얻은 결과를 최종 예측값으로 사용합니다. 소프트 보팅(Soft Voting): 각 모델의 예측 확률을 평균내어, 가장 높은 ..
교차 검증 교차 검증은 데이터를 여러 부분으로 나누고, 각 부분을 훈련과 테스트 용도로 번갈아 사용하여 모델을 평가하는 방법입니다. 이를 통해 모델의 일반화 성능을 더 정확하게 측정할 수 있습니다. 특징 훈련데이터가 많지 않을 때 사용합니다. 훈련 데이터 (training data)로 학습하고 테스트 데이터(test data)로 평가하는 경우, 해당 테스트 데이터에만 과적합되는 모델이 생성되어 일반화 성능이 떨어집니다. 훈련 데이터 (training data)에서 검증 데이터(validation data)를 떼어내어 모형을 검증하는 과정을 여러 번 반복합니다. K-폴드 교차 검증 K-폴드 교차 검증은 데이터셋을 K개의 부분(폴드)으로 나누는 방법입니다. 이 방법에서는 K번의 다른 실험을 수행하며, 매번 ..