ML | DL/혼자공부하는머신러닝딥러닝 9

9강. 로지스틱 회귀 알아보기

👉🏻 복습 선형 회귀에 특성을 많이 추가하면 과대적합될 수 있다 과대적합된 모델을 억제하기 위해 규제라는 기법을 사용한다 pandas를 사용해 CSV파일을 pandas의 dataframe으로 읽어들이고 넘파이 배열로 변환했다 sklearn의 PolynomialFeatures를 활용해 다항특성을 여러개 만들었다 제곱, 특성끼리 곱하기 ... 변환기 fit(), transform() 메서드를 제공한다 fit()은 학습해서 통계 데이터를 얻는 경우도 있지만 그렇지 않은 경우도 있다. 하지만 API일관성을 위해서 항상 사용한다 fit_transform() 도 제공을 한다 주의할 점은 훈련 세트에 사용한 변환기를 테스트세트에서도 활용해야 한다 매개변수 옵션 등을 똑같이 적용하기 위해 훈련세트에 있는 특성값 통계치..

8강. 특성 공학과 규제 알아보기

03-3. 특성 공학과 규제 👉🏻 복습 최근접 이웃은 이웃한 샘플의 타깃을 찾아 평균값을 계산하기 때문에 훈련 세트 범위 바깥 데이터는 잘 예측할 수 없다 이 문제를 해결하기 위해 선형 회귀 알고리즘을 사용 특성은 하나(길이)만 사용 특성이 하나일 때 선형회귀는 직선의 방정식을 계산하는 것 회귀 문제에서는 타깃값을 y축에 놓고 표현하는 것이 일반적 특성 하나니까 x축과 y축 두 개의 축을 갖는 2차원 평면에서 직선의 방정식으로 표현됨 직선의 방정식을 계산하는 것은 기울기와 절편을 찾는 것 계수, 가중치 등으로도 불림 linear_model에 있는 LinearRegression 클래스를 import, 객체를 만들고 fit()메서드에 훈련세트의 특성과 타깃값을 넣어 훈련, predict()메서드로 50cm ..

7강. 사이킷런으로 선형 회귀 모델 만들어 보기

03-2. 선형 회귀 * 머신 러닝 알고리즘은 지도학습과 비지도 학습으로 나뉨 (+ 강화학습) * 지도학습은 분류와 회귀로 나뉜다 * 분류는 여러개의 클래스 중 하나를 구분해냄 * 회귀는 임의의 어떤 숫자를 예측 * 농어의 길이로 무게 예측 * 클래스가 아니라 무게(임의의 실수) 예측 * 분류: 가장 가까운 이웃 샘플의 클래스를 보고 다수인 클래스를 가지고 예측 * 회귀: 이웃한 샘플을 찾은 후 샘플의 타깃값(임의의 숫자)의 평균 * 분류일 경우 샘플 n개 중에 m개를 정확히 예측 - 맞은 비율을 정확도로 사용 * 회귀는 타깃과 예측값의 차이를 활용한 지표를 많이 사용 (R² = 사이킷런 score()메서드에서 제공하는 반환값) * 훈련세트와 테스트세트에 각각 score()메서드 적용 → 결과를 봤을 때..

6강. 회귀 문제를 이해하고 k-최근접 이웃 알고리즘으로 풀어 보기

03-1. k- 최근접 이웃 회귀 * 25cm, 150g짜리 생선 = 도미인데 빙어로 분류됨 * kneighbors()를 통해 이상한 도미의 최근접 이웃을 찾아봄 → 하나만 도미, 나머지는 빙어 * 이유는 x축과 y축의 스케일이 달라서!!! * 조정후 살펴보니 x축으로는 데이터가 퍼지지 않고 y축을 따라서 데이터가 분포되어 있다 → 무게 특성이 영향을 많이 준다는 것 * 특성의 스케일을 맞춰줘야 특정 특성에 알고리즘이 좌지우지 되지 않는다 * 데이터전처리 - 스케일 조정 中 표준점수 (z점수) * 테스트할 데이터도 훈련세트의 평균과 표준편차를 이용해 표준 점수를 구해야 한다 * 거리에 민감한 알고리즘: k-최근접 이웃, 회귀 알고리즘들, 딥러닝 알고리즘들 / 전처리 필수!!! * 트리기반 알고리즘은 거리..

5강. 정교한 결과 도출을 위한 데이터 전처리 알아보기

👉🏻 복습.. ✅ 양성 클래스 (Positive Calss) - 이진 분류 (0 or 1)에서 찾고자 하는 클래스 (1) - 찾고자 하는 클래스가 아닌 것은 음성 클래스 (0) - 대부분의 알고리즘이 이렇게 데이터를 주입해주기를 기대하고 있다 - 좋고 나쁘고의 문제가 아님 *샘플링편향 * 주로 샘플을 행에 특성을 열에 넣은 이차원 배열을 훈련 데이터로 사용 * 배열 자체를 섞으면 쌍을 이루지 못하기 때문에 배열의 인덱스를 섞음 + 배열 슬라이싱: 섞인 배열을 쉽게 만들 수 있다, 인덱스 배열만 만들어 섞으면 되기 때문에 공간 차지가 크지 않다 👉🏻 이전 머신러닝 프로그램의 문제점 - 위 생선을 빙어로 예측한다고 함 - 하지만 도미에 가까워보임 👉🏻 넘파이로 데이터 준비 - 이전 시간까지는 fish_len..

4강. 훈련 세트와 테스트 세트로 나누어 사용하기

02-1. 훈련 세트와 테스트 세트 👀 완벽한 보고서 - k- 최근접 이웃 알고리즘은 규칙(패턴)을 찾는 것이라기보다는 단순히 훈련 데이터를 저장한 다음 가까운 이웃을 골라서 다수의 클래스를 따르는 방식 - 훈련 데이터를 가지고 있다면 사실상 정답을 가지고 있는 것 - 정답을 알고 있으니 답을 맞출 수 밖에 없는것 ex) 기출문제를 풀어서 시험을 대비했는데 시험에 기출문제와 완전히 동일한 문제가 나온 상황 - 풀이 방법과 상관 없이 답을 외워버리면 100점을 맞을 수 있다 - fit()메서드에 훈련한 데이터 말고 다른 데이터로 score()메서드에서 테스트해야 올바른 평가 방법 - 테스트 데이터를 따로 준비 👉🏻 지도학습과 비지도학습 🧩 지도학습 입력(input)과 타겟(target)이 있는 데이터(훈련..

3강. 마켓과 머신러닝

01-3. 마켓과 머신러닝 👉🏻 첫 번째 머신러닝 프로그램 - 머신러닝을 한다 = 머신러닝 프로그램을 만든다 - 프로그램: 파이썬 등의 프로그래밍 언어를 사용한 무언가..? 👀 예) 한빛 마켓 - 생선을 파는 모바일 쇼핑몰 - 직원이 생선을 구분을 못하니 생선을 자동 구분하는 머신러닝 프로그램을 만들기로 함 - 머신러닝 프로그램이 생선 데이터를 보고 도미라는 것을 판단 - 이 머신러닝 프로그램은 도미의 크기가 30 ~ 40 cm라는 것을 어떻게 알았을까? 👉🏻 전통적인 프로그램 누군가가 규칙이나 기준을 정해줌 프로그래머 당사가 규칙을 만들거나 팀 회의를 통해 기획자가 정해주거나 고객사 등 의뢰자가 거의 대부분의 프로그램 미리 규칙을 정하기 어려운 경우가 많다 이 때 머신러닝 프로그램을 사용한다 - 불변의..

1~2강. 인공지능, 머신러닝 그리고 딥러닝이란 무엇인가? | 코랩과 주피터 노트북으로 손코딩 준비하기

👉🏻 인공지능 - 사람처럼 학습하고 추론할 수 있는 지능을 가진 시스템을 만드는 기술 👉🏻 인공지능의 발전사 🧩 인공지능 태동기 - 인공지능의 꿈이 부풀어 올랐던 시기 - 1943: 월터피츠와 워런 맥컬러가 최초로 뉴런의 개념을 정립 더보기 월터 피츠(Walter Pitts)와 워런 맥컬러(Warren McCulloch)는 뇌의 동작을 모방하기 위해 MCP(McCulloch-Pitts Neuron) 뉴런 모델을 개발했다. MCP 뉴런은 뇌의 작은 단위로 생각할 수 있으며, 간단한 규칙에 따라 동작한다. MCP 뉴런은 두 가지 주요 부분으로 구성된다. 입력: MCP 뉴런은 여러 개의 입력을 받을 수 있다. 이 입력은 뇌에서 오는 신호와 같이 생각할 수 있다. 예를 들어, 눈으로 무엇인가를 보고, 귀로 소리..