no image
핸즈온 머신러닝 - 8
참고 : 핸즈온 머신러닝 2판 차원 축소머신러닝 문제는 훈련 샘플 각각이 수천 수백개의 특성을 가지는 경우가 존재많은 특성은 훈련을 느리게 할수 있고 좋은 솔루션을 찾기 어렵게 만듬 이런 문제를 차원의 저주 라고함 차원을 축소하면 일부 정보를 소실하지만 잃는 정보가 많지 않음차원을 축소하여 훈련 속도 증가, 데이터 시각화 에도 유용함차원 축소에서 사용되는 두 가지 접근 방법 (투영, 매니폴드 학습) 존재 차원의 저주현실은 3차원 세계임으로 고차원 공간을 직관적으로 파악하기 어려움훈련 세트의 차원이 클수록 과대적합의 위험성이 커짐차원의 저주를 해결하는 방법중 하나는 훈련 샘플의 밀도가 충분히 높아질 때까지 훈련 세트를 키우는 방법이 방법은 실제로 엄청난 수의 데이터 샘플을 추가 수집해야 함으로 불가능 차원..
2024.06.18
no image
핸즈온 머신러닝 - 7
참고 : 핸즈온 머신러닝 2판 앙상블 학습과 랜덤 포레스트일련의 예측기로부터 예측을 수집하면 가장 좋은 모델하나보다 더 좋은 예측을 얻을 수 있음훈련 세트로부터 무작위로 각기 다른 서브셋을 만들어 일련의 결정 트리 분류기를 훈련 투표 기반 분류기좋은 분류기를 만드는 매우 간단한 방법은 각 분류기의 예측을 모아서 가장 많이 선택된 클래스를 예측하는 것다수결 투표로 정해지는 분류기를 직접 투표 분류기 라고 함앙상블 방법은 예측기가 가능한 한 서로 독립적일 때 최고의 성능을 보임다양한 분류기를 얻는 한 가지 방법은 각기 다른 알고리즘으로 학습시키는 것, 매우 다른 종류의 오차를 만들 가능성이 높기 때문에 앙상블 모델의 정확도를 향상시킴 투표 기반 분류기 훈련 예시from sklearn.ensemble impo..
2024.06.18
no image
핸즈온 머신러닝 - 6
참고 : 핸즈온 머신러닝 2판 결정 트리분류와 회귀 작업 그리고 다중출력 작업도 가능한 머신러닝 알고리즘 결정 트리 학습과 시각화DecisionTreeClassifier 시각화 예시from sklearn.datasets import load_irisfrom sklearn.tree import DecisionTreeClassifieriris = load_iris()X = iris.data[:, 2:] # 꽃잎 길이와 너비y = iris.targettree_clf = DecisionTreeClassifier(max_depth=2, random_state=42)tree_clf.fit(X, y)from graphviz import Sourcefrom sklearn.tree import export_graphvi..
2024.06.18
no image
핸즈온 머신러닝 - 5
참고 : 딥러닝을 이용한 자연어 처리 입문서포트 벡터 머신(SVM)매우 강력하고 선형이나 비선형 분류, 회귀, 이상치 탐색에도 사용할 수 있는 다목적 머신러닝 모델특히 복잡한 분류 문제에 잘 들어맞으며 작거나 중간 크기의 데이터셋에 적합선형 SVM 분류두 class가 직선을 기준으로 잘 나눠져 있음왼쪽 그래프는 세 개의 선형 분류기에서 만들어진 결정 경계점선으로 나타낸 결정경계는 클래스를 적절하게 분류하고 있지 않음오른쪽 그래프는 SVM 분류기의 결정경계직선이 두 개의 클래스를 나누고 있고 제일 가까운 훈련 샘플로 부터 가능한 멀리 떨어져 있음클래스 사이에 폭이 넓은 도로를 찾는 것과 같다고 하여 라지 마진 분류 라고 함점선 경계에 위치한 샘플을 서포트 벡터, 서포트 벡터 밖의 샘플을 추가해도 결과 동일..
2024.06.17
no image
핸즈온 머신러닝 - 4
참고 : 핸즈온 머신러닝 2판모델 훈련직접 계산할 수 있는 공식을 사용하여 훈련 세트에 가장 잘 맞는 모델 파라미터를 해석적으로 구함경사 하강법(GD)라고 불리는 반복적인 최적화 방식을 사용하여 모델 파라미터를 조금씩 바꾸면서 비용 함수를 훈련 세트에 대해 최소화 시킴선형 회귀선형이지만 특성이 많아지면 고차원이 됨파라미터 기준은 MSE 최소 하는 파라미터 선정입력 특성의 가중치 합 + 편향(절편, x0) 이라는 상수를 더해 예측을 생성정규 방정식공식비용함수를 최소하 하는 𝜽 값을 찾기위한 해석적 방법정규 방정식 예시import numpy as npX = 2 * np.random.rand(100, 1)y = 4 + 3 * X + np.random.randn(100, 1)plt.plot(X, y, "b."..
2024.06.17
no image
핸즈온 머신러닝 - 3
참고 : 핸즈온 머신러닝 2판 이진 분류기mnist를 활용한 5, 5아님 분류기sklearn의 SGDClassifier 모델 사용SGD (확률적 경사 하강법)은 매우 큰 데이터셋을 효율적으로 처리하는 장점을 가짐SGD는 한번에 하나씩 훈련 샘플을 독립적으로 처리함from sklearn.linear_model import SGDClassifiersgd_clf = SGDClassifier(max_iter=1000, tol=1e-3, random_state=42)sgd_clf.fit(X_train, y_train_5)SGDClassifier은 훈련하는데 무작위성을 사용 성능 측정교차 검증skleran의 cross_val_score 함수와 유사한 작업 수행하는 예시from sklearn.model_selecti..
2024.06.15
no image
핸즈온 머신러닝 - 2
참고 : 핸즈온 머신러닝 2판 다변량 회귀 : 독립변수가 둘 이상인 회귀 문제단변량 회귀 : 독립변수가 하나인 회귀 문제회귀 성능지표RMSE (평균 제곱근 오차) - 오차가 커질수록 값이 커짐MAE (평균 절대 오차) - 이상치에 민감한 성능지표둘다 예측값과 target값 사이의 거리를 재는 방법 데이터 구조 훑어 보기housing = load_housing_data()housing.head() longitudelatitudehousing_median_agetotal_roomstotal_bedroomspopulationhouseholdsmedian_incomemedian_house_valueocean_proximity0-122.2337.8841.0880.0129.0322.0126.08.3252452600..
2024.06.13
no image
핸즈온 머신러닝 - 1
참고 : 핸즈온 머신러닝 2판지도학습 : 알고리즘에 주입하는 훈련 데이터에 레이블 이라는 원하는 답이 포함된 학습분류 : 전형적인 지도 학습 작업, 스팸 필터처럼 많은 메일 샘플과 정보가 훈련되어 스팸, 정상으로 분류회귀 : 변수들의 특성을 사용해 target을 예측하는 것, 변수와 레이블이 포함된 데이터가 많이 필요일부 회귀 알고리즘은 분류에서도 사용이 가능, 반대의 경우도 가능로지스틱 회귀는 분류에서 주로 사용되며 클래스에 속할 확률을 출력함  - k-최근접 이웃 (k-nearest neighbors) - 선형 회귀 (linear regression) - 로지스틱 회귀 (logistic regression) - 서포트 벡터 머신 (support vector machine, SVM) - 결정 ..
2024.06.13
no image
mesop
Github : https://github.com/google/mesop?tab=readme-ov-file GitHub - google/mesopContribute to google/mesop development by creating an account on GitHub.github.com Mesop은 데모 및 내부 앱과 같은 웹 앱을 신속하게 구축할 수 있는 Python 기반 UI 프레임워크UI 초보자를 위한 직관적인 구조반응형 UI, python 함수로 UI 구성 설정가능Streamlit, Gradio와 같은 Web앱 이지만 더욱 사용하기 쉬운 형태, 직관적인 구조예시 이미지  기존의 복잡한 Web APP 을 보다 간편하게 구현Google 에서 개발한 오픈소스로 GCP와 확장성이 기대됨
2024.06.10