머신러닝과 딥러닝/ML 개념정리21 [ML] 27. (AutoML) Wandb 개요 1. Wandb란? Weights & Biases, 더 나은 모델을 더 빨리 구축할 수 있도록 하는 기계 학습 플랫폼으로 AutoML의 한 종류이다. Wandb에서는 총 5가지의 기능을 제공하고 있다. 1️⃣Experiment 머신러닝 모델 실험을 추적하기 위한 대쉬보드 제공 2️⃣Reports 실험결과를 문서로 정리하여 협업 및 공유 가능 3️⃣Artifacts 데이터셋 버전과 모델의 버전 관리 가능 4️⃣Tables 데이터 logging하여 시각화 및 query에 사용 5️⃣Sweeps 하이퍼파라미터 튜닝을 자동으로 실행함 정리하면, Wandb는 가볍고 상호 운용 가능한 도구를 활용하여 최적의 모델을 신속하게 추적, dataset의 버전 관리 및 반복을 수행한다. 또한, 모델 성능 평가, 결과 시각화.. 머신러닝과 딥러닝/ML 개념정리 2022. 11. 17. [ML] 26. (AutoML) pycaret 개요, pycaret 주요 function 1. Pycaret이란? Auto ML을 해주는 파이썬 라이브러리 Auto ML이 생소할 수 있는데, 이전에 포스팅한 글이 있으니 참고하면 좋을 것 같다. https://42-snoopy.tistory.com/entry/ML-25-AutoML-%EA%B0%9C%EC%9A%94 [ML] 25. AutoML 개요 1. AutoML이란? 데이터의 성격에 맞게 자동으로 데이터 분석 모델을 추천해주는 Auto Machine Laerning 기법 (머신러닝 모델을 만드는 인공지능이라고 할 수 있다.) 기계학습 파이프라인에서에서 반복적 42-snoopy.tistory.com 한마디로 AutoML은 데이터의 성격에 맞게 자동으로 분석 모델을 추천해주는 기법이라고 할 수 있고 pycaret은 AutoML의 한 종류이다... 머신러닝과 딥러닝/ML 개념정리 2022. 11. 17. [ML] 25. AutoML 개요 1. AutoML이란? 데이터의 성격에 맞게 자동으로 데이터 분석 모델을 추천해주는 Auto Machine Laerning 기법 (머신러닝 모델을 만드는 인공지능이라고 할 수 있다.) 기계학습 파이프라인에서에서 반복적으로 수행하는 하기 과정을 함수화하여 자동화하는 것이다. - 데이터 분할, 데이터 전처리, feature engineering 및 selection, 모델 선택, 하이퍼 파라미터 튜닝 등 2. AutoML 장점 매우 쉽고 효율적으로 원하는 결과값을 얻을 수 잇다. 생산성을 크게 향상시킬 수 있고 비전문가의 머신러닝 접근성과 활용성을 높여준다. [참고] 기존ML에서 필요한 것 - 데이터 혹은 업계에 대한 전문지식 - 통계학에 대한 깊은 이해 - 예측 모델에 대한 이해 - 방대한 시간 3. Au.. 머신러닝과 딥러닝/ML 개념정리 2022. 11. 14. [ML] 22. 머신러닝 분류모델과 분류모델의 알고리즘 개요 [ML] 2. 머신러닝의 주요 4가지 알고리즘 (tistory.com) 예전에 간단하게나마 정리한바가 있지만, 공부를 하면서 헷갈리는 부분이 많아서 하나씩 세부적으로 정리해보고자 한다. 예전 게시글에서도 확인할 수 있지만 사이킷런으로 구현하는 머신러닝에서는 크게 6가지 기능이 있고 가장 핵심은 분류와 회귀모델이라고 할 수 있다. 먼저 분류 모델과 분류모델에서 사용하는 주요 알고리즘에 대해 알아보자. 1. 분류모델 지도학습의 대표적인 유형으로 feature와 label 값을 학습해 모델을 생성하고 생성된 모델에 새로운 데이터를 넣어 적절한 레이블 값을 예측하는 모델 2. 분류 알고리즘 1️⃣ 앙상블 2️⃣ 랜덤포레스트 3️⃣ 로지스틱회귀 4️⃣ 서포터 벡터 머신 5️⃣ 나이브 베이즈 6️⃣ 신경망 7️⃣ .. 머신러닝과 딥러닝/ML 개념정리 2022. 11. 14. [ML] 21. 데이터 전처리 (10) - 파생변수 만들기 멋쟁이 사자처럼 AI스쿨 7기 오늘코드 박조은 강사님의 수업자료를 바탕으로 포스팅하였습니다. 파생변수 이미 존재하는 변수를 활용하여 새로운 변수를 생성하는 것 파생변수는 왜 만들까? 1️⃣ 적절히 생성된 파생변수는 데이터의 특성을 더 잘 설명하기에 데이터 해석이 편리해지고 머신러닝 성능이 개선된다. 2️⃣ 데이터 분석의 목적은 feature들의 숨겨진 관계는 feature들의 연관관계를 통해 파악할 수 있다. 이때, 연관관계를 잘 설명해주는 적절한 feature가 없다면 직접 만들어서 사용할 수 있다. 파생변수 만드는 방법 1️⃣ 사칙연산, 최대, 최소, 산술평균 등 다양한 산술적인 방법으로 만들기 2️⃣ 시간, 지역별로 구분하거나 비율을 구하여 만들기 그 외에도 다양한 방법을 사용하여 파생변수를 생성할.. 머신러닝과 딥러닝/ML 개념정리 2022. 11. 14. [ML] 20. 데이터 전처리 (9) - 인코딩(Ordinary-Encoding, label-Encoding, One-hot-Encoding) 멋쟁이 사자처럼 AI스쿨 7기 오늘코드 박조은 강사님의 수업자료를 바탕으로 포스팅하였습니다. 인코딩이란? categorical Feature를 numerical feature로 변환하는 것이다. 왜 인코딩이 필요할까? 1️⃣ 머신러닝에서는 문자형 변수가 있으면 오류가 발생하며, 문자형 변수를 수치형 변수로 바꿔주어야 한다. (선형회귀 모델, 딥러닝 모델등은 문자형 변수 사용 불가) 2️⃣ 데이터 시각화에 유리하다. 범주형 변수를 수치형 변수로 바꿔는 인코딩 방법에는 여러가지가 있다. 가장 대표적인 것이 1. Ordinal-Encoding 2. One-hot-Encoding Ordinal Encoding은 a 종속변수, label, target, 정답, 1차원 벡터 예) 시험의 답안 X는 보통 2차원으로 .. 머신러닝과 딥러닝/ML 개념정리 2022. 11. 14. [ML] 19. 데이터 전처리(8) - 이산화(Discretisation / Equal with binining, Equal frequency bining) 멋쟁이 사자처럼 AI스쿨 7기 오늘코드 박조은 강사님의 수업자료를 바탕으로 포스팅하였습니다. 1. 이산화란? numerical feature를 일정 기준으로 나누어 그룹화 하는 것으로 연속된 수치데이터의 구간을 잘 나눠준다면 머신러닝 알고리즘에 힌트를 줄 수도 있다. (수치형 데이터를 범주형 데이터로 변환할 필요가 있을 때 사용한다.) 그럼 구간화하는 기준은 어떻게 정해야할까? EDA를 열심히 해서, 어떻게 나누는 것이 예측에 도움이 될지 확인해야한다. 성능이 향상될 수도 있지만, 잘못 구간화하면 모델의 성능이 떨어질 수도 있다는 것을 잊지말자. 또한, 트리모델의 경우 데이터를 너무 잘게 나누지 않는 것이 일반화 하는데 도움이 될 수 있다. 2. 이산화가 필요한 이유 1️⃣ 특징을 잘 나타내는 속성으로 .. 머신러닝과 딥러닝/ML 개념정리 2022. 11. 14. [ML] 18. 데이터 전처리(7) - 정규분포와 트랜스포메이션(log transformation) [스케일링] https://42-snoopy.tistory.com/entry/ML-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%A0%84%EC%B2%98%EB%A6%AC-20-%EC%8A%A4%EC%BC%80%EC%9D%BC%EB%A7%81 멋쟁이 사자처럼 AI스쿨 7기 오늘코드 박조은 강사님의 수업자료를 바탕으로 포스팅하였습니다. 1. feature scaling의 취약점 robust scaling의 경우 비교적 이상치에 강점이 있기는 하지만, 일반적으로 스케일링은 편향된 분포나 이상치에 취약하다. feature scaling을 하면 스케일링은 잘 되었지만, 아직 표준정규분포 형태가 아니기 때문이다. 따라서 처음부터 정규분포 형태가 아닌 경우에는 feature scaling은 그다지 좋은 .. 머신러닝과 딥러닝/ML 개념정리 2022. 11. 14. [ML] 17. 데이터 전처리 (6) - 스케일링(z-score, min-max, robust) 멋쟁이 사자처럼 AI스쿨 7기 오늘코드 박조은 강사님의 수업자료를 바탕으로 포스팅하였습니다. 1. 변수스케일링이란? feature의 범위를 조정하여 정규화하는 것(수치형 피쳐) 트리기반 모델은 데이터의 절대적인 크기보다는 상대적인 크기에 영향을 받기 때문에 따로 스케일링을 해줄 필요는 없지만, 다른 모델을 사용할 때는 변수 스케일링을 해주어야 올바른 분석을 할 수 있다.(특히 회귀에서는 유용하다.) 2. 스케일링이 왜 중요할까? 1️⃣ feature의 범위가 다르면 비교가 어렵다. 2️⃣ 일부 머신러닝 모델(회귀 등에서 다항식 연산을 할 때 등)에서는 제대로 작동하지 않는다. 3️⃣ 스케일링이 잘 되어 있으면 서로 다른 변수끼리 비교하는 것이 편리하고, 성능이 상승한다. 4️⃣ feature scalin.. 머신러닝과 딥러닝/ML 개념정리 2022. 11. 14. [ML] 16. 데이터 전처리 (5) - 희소값 다루기(기타처리) 1. 희소값이란? 범주형 피쳐에서 빈도가 낮은 값 - 데이터를 수집하다 보면 자연스럽게 비율이 높은 값과 낮은 값이 생겨난다. 2. 왜 희소값을 처리해주어야 할까? - 희소값은 데이터 해석을 왜곡하고 머신러닝 성능을 떨굴 수 있기 때문이다. - 희소값을 적절하게 처리를 해주어야 데이터의 전체적인 경향을 파악하는데 좋다. - 또한, 희소값에 대해 one-hot-encoding을 하게 되면 오버피팅이 발생할 수도 있고 너무 희소한 행렬이 생성되기 때문에 계산에 많은 자원(시간, 용량 등)이 필요하다. 3. 희소값 처리 방법 1) 희소값을 결측치 처리하기 2) 희소값을 "기타" 등으로 묶어주기 => 이후 인코딩 진행해도(pd.get_dummies, OneHotEncoder) 해당 값은 인코딩이 되지 않는다. .. 머신러닝과 딥러닝/ML 개념정리 2022. 11. 9. [ML] 15. 데이터 전처리 (4) - 이상치 다루기(스케일링) 멋쟁이 사자처럼 AI스쿨 7기 오늘코드 박조은 강사님의 수업 자료를 바탕으로 포스팅하였습니다. 1. 이상치란? feature에서 일반적인 값의 분포를 벗어나는 경우 - 데이터 수집과정 또는 조작과정에서 오류가 나서 이상치 발생 - 정말 예외적인 경우가 발생하여 이상치 발생 이상치를 찾는 2가지 방법 1) 값의 범위를 지정하여 범위에서 벗어나는 값 찾기 2) 데이터를 시각화 하여 눈에 띄는 값 찾기 1번 방법은 2번에 비해 전문적이지만 어렵고 2번 방법은 2번에 비해 한 눈에 파악하기 쉽지만 주관적일 수 있다. 2. 왜 이상치를 처리해야 할까? 데이터를 왜곡하여 잘못된 결론을 도출할 수 있기 때문에 적절한 방법으로 처리를 해주어야 한다.(제거, 대체 등) 3. 이상치 탐색 1) 기술통계 값 확인하기 tra.. 머신러닝과 딥러닝/ML 개념정리 2022. 11. 9. [ML] 12. 데이터 전처리(1) - 기본방법 개요 1. 데이터 전처리 방법 데이터 전처리 사진출처: Data Preprocessing Concepts with Python | by Amit Chauhan | Towards AI 1) 정규화(scaling) normalization, 스케일의 차이가 클 경우 정규분포로 만들어주거나 스케일 값을 변경해주는 것 2) 이상치(Outliers) 이상치를 제거하거나 대체 이상치를 어떻게 처리할 것인가를 결정할 때는 상당한 도메인 지식이 필요하다. 이상치 자체가 의미를 가지고 있을 수 있기 때문 3) 대체(imputation) 결측치가 있으면 채워오라고 오류를 뱉어낸다. 이때 결측치를 제거하거나 imputation을 진행하여 대체해야한다. 4) 인코딩(encoding) 머신러닝에서는 문자가 있으면 오류를 뱉어내며 문.. 머신러닝과 딥러닝/ML 개념정리 2022. 11. 9. 이전 1 2 다음