목록Homework (40)
without haste but without rest
0. 개요 pickle type으로 모델을 저장한다 -> deployment ## Deployment ## ### Store Model for Later with Pickle ### # import module import pickle # save the pipeline model to disk pickle.dump(model, open('./model.pkl', 'wb')) # load the pipeline model from disk and deserialize model_load = pickle.load(open('./model.pkl', 'rb')) # use the loaded pipeline model to predict on new data y_pred = model_load.predict..
0. 개요 교차 검증과 파이프라인에 대해서 학습 교차검증 ### Building a Pipeline ### # load iris and create X and y import pandas as pd import seaborn as sns sns.set_context("paper", font_scale = 1.5) sns.set_style("white") from sklearn.datasets import load_iris dataset = load_iris() X, y = dataset.data, dataset.target from sklearn.decomposition import PCA pca = PCA(n_components = 2) # fit and transform using 2 input di..
0. 개요 (1). impurity (불순도) - entropy - gini (2). pruning (가지치기) 1. data load ## 의사결정나무 ## iris data from sklearn.datasets import load_iris from sklearn.tree import DecisionTreeClassifier iris = load_iris() y = iris.target X = iris.data[:, 2:] feature_names = iris.feature_names[2:] 2. partitioning #파티션 기준 엔트로피, 브랜치 길이 1 tree = DecisionTreeClassifier(criterion = 'entropy', max_depth = 1, random_sta..
0. 개요 코드 보다는 로지스틱 회귀모형에 대한 이론적 학습을 마치고 코드 살펴봐야할 듯.. 로지스틱 회귀분석에 대한 딥러닝 코드 ## 이항 로지스틱 선형회귀모형: SGD import numpy as np from sklearn.datasets import load_iris # load iris dataset iris = load_iris() # 독립변수 X = iris.data # 종속변수: setosa: 0, (vergicolor, veriginica): 1 y = (iris.target != 0) * 1 # 계획행렬 구성 intercept = np.ones((X.shape[0], 1)) X = np.concatenate((intercept, X), axis = 1) # 초깃값 beta = np.ze..
0. 개요 (1) OLS (Ordinary Least Squares) - 일반적으로 흔히 사용하는 최소 제곱법을 이용하는 회귀분석 (2) SGD (Stochastic Gradient Desecnt) - 확률적 경사 하강법 - cost function을 최소화 하는 지점을 찾기 위해 사용한다. - 미니 배치를 사용해서 학습 속도를 높일 수 있다. 1. 데이터 로드 import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns ## California house price url = "https://raw.githubusercontent.com/johnwheeler/handson-ml/master/data..
list.h #pragma once #include #include typedef int element; typedef struct node { element val; struct node* next; } node_t; node_t* get_tail(node_t* head); node_t* insert_tail(node_t* head, element n); void print_list(int n, node_t* head); void free_list(node_t* head); dfs.c #include #include "list.h" #define MAX_V 50 #define TRUE 1 #define FALSE 0 /* typedef struct graph_t { int V; // No. of ver..
0. 개요 - dbscan은 k-means 보다는 connectiviy 하고 - spectral 보다는 compactness 하다. 1. dbscan - 코어 데이터에서 반지름인 epsilon 을 기준으로 해당 원 안에 들어오는 데이터들을 군집으로 묶어 나간다. - 묶인 데이터가 가장 바깥에 위치하면 해당 데이터는 border 데이터, 어디에도 속하지 않는다면 noise 데이터 - moons 데이터와 같은 데이터에서 좋은 성능을 보인다. -> 클러스터 개수가 적은 데이터 - 클러스터 개수가 많은 데이터에서는 좋은 성능을 내지 못한다. - k-means는 moons 데이터에와 같은 자료형에서 좋은 성능을 못낸다. - 경우에 따라서 수치 범위를 보고 표준화를진행해주면 k-means 도 더 좋은 성능을 낼 수..
개요 - 함수 포인터 - 함수 안에서 포인터 객체 생성(데이터 저장까지) 하고 포인터에 반환해주기 - line 132 #include #include #define MAX_ELEMENT 200 typedef struct { char name[10]; int score[3]; double avg; // key } student_t; typedef student_t* element; typedef struct { element heap[MAX_ELEMENT]; int heap_size; int (*gt)(element, element); //함수 포인터 } HeapType; // *힙의 배열에 저장하는 element 타입이 파라미터 int gt_avg(element e1, element e2) { retur..