일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 그리디
- 캐치카페신촌점 #캐치카페 #카페대관 #대학생 #진학사 #취준생
- 알고리즘
- 재귀함수
- 퀵정렬
- 선택정렬
- LSTM
- 삽입정렬
- 큐
- GRU
- 인공지능
- BFS
- pytorch
- 계수정렬
- Machine Learning
- 최단 경로
- 스택
- 정렬
- DFS
- 딥러닝
- 이진 탐색
- 머신러닝
- 다이나믹 프로그래밍
- 선형대수
- RESNET
- AI
- rnn
- Today
- Total
목록Machine Learning (10)
hyeonzzz's Tech Blog

4. 분류(Classification) : 기존 데이터가 어떤 레이블에 속하는지 학습한 뒤에 새롭게 관측된 데이터에 대한 레이블을 판별하는 것 책에서는 앙상블 방법(Ensemble Method)을 집중적으로 다룬다. 정형 데이터의 예측 분석 영역에서는 앙상블이 매우 높은 예측 성능을 보이고 있다 앙상블 방식 : 서로 다른 또는 같은 알고리즘을 결합한다 여러 개의 약한 학습기(성능이 상대적으로 떨어지는)를 결합해 확률적 보완과 오류가 발생한 부분에 대한 가중치를 계속 업데이트하면서 예측 성능을 향상시킨다 배깅(Bagging) - 랜덤 포레스트 부스팅(Boosting) - 그래디언트 부스팅, XgBoost, LightGBM 1) 결정 트리 : 데이터에 있는 규칙을 학습을 통해 자동으로 찾아내 트리 기반의 분..

4) F1 스코어 : 정밀도와 재현율을 결합한 지표 어느 한 쪽으로 치우치지 않는 수치를 나타낼 때 높은 값을 가진다 f1_score( ) : F1 스코어를 구함 from sklearn.metrics import f1_score f1 = f1_score(y_test , pred) print('F1 스코어: {0:.4f}'.format(f1)) F1 스코어: 0.7966 임곗값을 변화시키면서 평가 지표 구하기 def get_clf_eval(y_test , pred): confusion = confusion_matrix( y_test, pred) accuracy = accuracy_score(y_test , pred) precision = precision_score(y_test , pred) recall ..

3. 평가 회귀를 위한 평가는 복잡하지 않기 때문에 분류의 평가를 더 집중적으로 알아볼 예정이다 특히 0과 1로 결정값이 한정되는 이진 분류의 성능 평가 지표를 알아보겠다 분류의 성능 평가 지표 정확도(Accuracy) 오차행렬(Confusion Matrix) 정밀도(Precision) 재현율(Recall) F1 스코어 ROC AUC 1) 정확도(Accuracy) : 실제 데이터에서 예측 데이터가 얼마나 같은지를 판단 ※ 정확도만 이용하면 모델의 성능을 왜곡할 수 있기 때문에 정확도 수치만 가지고 판단하지 않는다 특히 불균형한 분포에서 정확한 평가 지표가 될 수 없다 2) 오차 행렬(Confusion Matrix) : 학습된 분류 모델이 예측을 수행하면서 얼마나 헷갈리고 있는지 함께 보여주는 지표 즉, ..

2. 사이킷런으로 시작하는 머신러닝 - 데이터 전처리 데이터에 미리 처리해야 할 기본사항 결손값 NaN, Null 값은 허용되지 않는다 -> 고정된 다른 값으로 변환해야 한다 문자열 값은 인코딩돼서 숫자형으로 변환해야 한다 데이터 인코딩 Label encoding : 문자열 값 -> 숫자형 카테고리 값 TV : 1, 냉장고 : 2, 전자레인지 : 3, 컴퓨터 : 4, 선풍기 : 5, 믹서 : 6 from sklearn.preprocessing import LabelEncoder items=['TV','냉장고','전자레인지','컴퓨터','선풍기','선풍기','믹서','믹서'] # LabelEncoder를 객체로 생성한 후 , fit( ) 과 transform( ) 으로 label 인코딩 수행. encode..
2. 사이킷런으로 시작하는 머신러닝 - Model Selection 모듈 소개 model_selection 모듈의 기능 학습 데이터와 테스트 데이터 세트를 분리 교차 검증 분할 및 평가 Estimator의 하이퍼 파라미터를 튜닝하기 위한 다양한 함수와 클래스 제공 학습/테스트 데이터 세트 분리 - train_test_split() 테스트 데이터 세트를 이용하지 않고 학습 데이터 세트만 학습하고 예측하면 정확도가 100%이다 모의고사 문제와 똑같은 본고사 문제가 출제된 것이랑 똑같다 따라서 예측을 수행하는 데이터 세트는 학습용 데이터 세트가 아닌 전용 테스트 데이터 세트여야 한다 1) 테스트 데이터 세트 30%, random_state=121 from sklearn.tree import DecisionTr..

2. 사이킷런으로 시작하는 머신러닝 - 사이킷런의 기반 프레임워크 익히기 1) Estimator 클래스 사이킷런 클래스는 fit( )과 predict( )만을 이용해 간단하게 학습과 예측 결과를 반환한다 Classifier : 분류 알고리즘을 구현한 클래스 Regressor : 회귀 알고리즘을 구현한 클래스 Estimator : Classifier + Regressor (지도학습의 모든 알고리즘을 구현한 클래스를 통칭) 2) 사이킷런에 내장된 데이터 세트 형태 일반적으로 딕셔너리 형태이다. 키는 보통 data, target, target_name, feature_names, DESCR로 구성돼 있다 data : 피처의 데이터 세트 target : 분류 - 레이블 값, 회귀 - 숫자 결괏값 데이터 세트 t..

2. 사이킷런으로 시작하는 머신러닝 - 사이킷런 소개와 특징 1) 사이킷런(scikit-learn) 파이썬 머신러닝 라이브러리 중 가장 많이 사용되는 라이브러리이다 2. 사이킷런으로 시작하는 머신러닝 - 붓꽃 품종 예측하기 지도학습 : 정답이 주어진 데이터를 학습한 뒤 정답을 예측하는 방식 분류(Classification) : 대표적인 지도학습 방법의 하나 데이터 세트 학습 데이터 세트 : 학습에 이용 테스트 데이터 세트 : 모델의 예측 성능을 평가 하이퍼 파라미터 : 최적의 학습을 위해 직접 입력하는 파라미터들 1. 데이터 세트 분리 - 데이터를 학습 데이터와 테스트 데이터로 분리 2. 모델 학습 - 학습 데이터릴 기반으로 ML 알고리즘을 적용해 모델을 학습시킴 3. 예측 수행 - 학습된 ML 모델을 ..
1. 파이썬 기반의 머신러닝과 생태계 이해 - 판다스 1) 데이터 핸들링 - 판다스 DataFrame : 여러 개의 행과 열로 이뤄진 2차원 데이터를 담는 데이터 구조체, 칼럼이 여러 개 Index : 개별 데이터를 고유하게 식별하는 Key 값 Series : 칼럼이 하나뿐인 데이터 구조체 DataFrame은 여러 개의 Series로 이뤄졌다 2) 판다스 시작 - 파일을 DataFrame으로 로딩, 기본 API read_table() : 필드 구분 문자가 탭('\t') = read_csv('파일명', sep='\t') read_csv() : 필드 구분 문자가 콤마(',') filepath 입력 titanic_df = pd.read_csv('titanic_train.csv') print('titanic 변..

1. 파이썬 기반의 머신러닝과 생태계 이해 - 넘파이 1) 넘파이 머신러닝의 주요 알고리즘은 선형대수와 통계 등에 기반한다 넘파이 - 파이썬에서 선형대수 기반의 프로그램을 쉽게 만들 수 있도록 지원하는 대표적인 패키지 - 루프를 사용하지 않고 대량 데이터의 빠른 배열 연산을 가능하게 한다 - C/C++과 같은 저수준 언어 기반의 호환 API를 제공 - 수행 성능이 매우 중요한 부분은 C/C++ 기반의 코드로 작성하고 이를 넘파이에서 호출하는 방식으로 통합한다 (텐서플로) 하지만 2차원 형태의 행과 열 데이터를 처리하는 데에는 판다스가 더 편리하다! 2) 넘파이 ndarray 개요 array() array() 함수 : 리스트와 같은 다양한 인자를 입력받아서 ndarray로 변환 shape 변수 : ndar..
1. 파이썬 기반의 머신러닝과 생태계 이해 - 머신러닝의 개념 1) 머신러닝 머신러닝 : 애플리케이션을 수정하지 않고도 데이터를 기반으로 패턴을 학습하고 결과를 예측하는 알고리즘 기법을 통칭한다 데이터를 기반으로 통계적인 신뢰도를 강화 → 다양한 수학적 기법을 적용해 데이터 내의 패턴을 스스로 인지 → 신뢰도 있는 예측 결과를 도출 2) 머신러닝의 분류 지도학습과 비지도학습 지도학습 - 분류, 회귀, 추천 시스템, 시각/음성 감지/인지, 텍스트 분석, NLP 비지도학습 - 클러스터링, 차원 축소, 강화학습 3) 데이터 전쟁 머신러닝에서는 데이터와 알고리즘 둘다 매우 중요하다 머신러닝의 단점은 데이터에 매우 의존적이라는 것이다. 따라서 데이터를 이해하고 효율적으로 가공, 처리, 추출해 최적의 데이터를 구축..