본문 바로가기
728x90
반응형
SMALL

Learning-driven Methodology108

[Machine Learning] Histogram-Based Gradient Boosting Ensembles Gradient Boosting Ensembles 부스팅은 트리 모델을 순차적으로 앙상블에 추가하는 앙상블 학습 알고리즘의 클래스를 말한다. 앙상블에 추가된 각 트리 모델은 앙상블에 이미 존재하는 트리 모델에 의해 발생한 예측 오류를 수정하려고 시도한다. 그레이디언트 부스팅은 AdaBoost와 같은 부스팅 알고리즘을 통계 프레임워크로 일반화하는 것으로, 훈련 과정을 가법 모델로 처리하고 임의 손실 함수를 사용할 수 있게 하여 기술의 능력을 크게 향상시킨다. 이와 같이 그레이디언트 부스팅 앙상블은 대부분의 구조화된 (ex: 표 형식 데이터) 예측 모델링 작업에 사용되는 기술이다. 그레이디언트 부스팅이 실제로 매우 잘 수행되지만 모델의 교육 속도가 느릴 수 있다. 이는 여러 CPU 코어를 활용하여 앙상블 멤.. 2023. 7. 7.
[LightGBM] 매개변수 조정 (Parameters Tuning) (3) For Better Accuracy 큰 max_bin 사용 (더 느릴 수 있음) num_iterations가 많은 작은 learning_rate 사용 큰 num_leaves 사용 (과적합의 원인이 될 수 있음) 더 큰 교육 데이터 사용 dart를 시도 Deal with Over-fitting 작은 max_bin 사용 작은 num_leaves 사용 min_data_in_leaf 및 min_sum_hessian_in_leaf 사용 bagging_fract 및 bagging_freq를 설정하여 bagging 사용 feature_fraction을 설정하여 피쳐 하위 샘플링 사용 더 큰 학습 데이터 사용 정규화를 위해 lambda_l1, lambda_l2 및 min_gain_to_split을 사용 깊은 트리가 자.. 2023. 7. 3.
[Deep Learning] 베이지안 하이퍼파라미터 최적화 (Bayesian Hyperparameter Optimization) 베이지안 하이퍼파라미터 최적화 (Bayesian Hyperparameter Optimization) 베이지안 하이퍼파라미터 최적화는 그리드 검색보다 더 효율적으로 하이퍼파라미터를 찾는 방법이다. 하이퍼파라미터의 각 후보 집합은 신경망을 다시 학습시켜야 하므로 후보 집합의 수를 최소한으로 유지하는 것이 가장 좋다. 베이지안 하이퍼파라미터 최적화는 좋은 하이퍼파라미터 후보 집합을 예측하는 모델을 학습시켜 이를 달성한다. bayesian-optimization hyperopt spearmint # Ignore useless W0819 warnings generated by TensorFlow 2.0. # Hopefully can remove this ignore in the future. # See https.. 2023. 5. 26.
[Machine Learning] K겹 교차 검증 (K-fold cross validation) K겹 교차 검증 (K-fold cross validation) k-fold cross-validation (k-겹 교차 검증)은 가장 널리 사용되는 교차 검증 방법의 하나로, 데이터를 k개로 분할한 뒤, k-1개를 학습용 데이터 세트로, 1개를 평가용 데이터 세트로 사용하는데, 이 방법을 k번 반복하여 k개의 성능 지표를 얻어내는 방법이다. k를 4로 설정하는 경우, 데이터를 폴드 (fold)라고 하는 거의 비슷한 크기의 부분 집합 네 개로 나눈다. 그 다음 일련의 모델을 만든다. 첫 번째 모델은 첫 번째 폴드를 평가용 데이터셋으로 사용하고, 두 번째부터 네 번째까지의 폴드 (3개의 폴드)를 학습용 데이터셋으로 사용한다. 그 다음 모델을 두 번째 폴드를 평가용, 1, 3, 4 폴드를 학습용 데이터셋으로 .. 2023. 4. 27.
[Machine Learning] 사용자기반 협업 필터링 (User-based Filtering) 사용자기반 협업 필터링 (User-based Filtering) import pandas as pd import numpy as np import seaborn as sns import matplotlib.pylab as plt from sklearn.metrics import mean_squared_error from datetime import datetime %matplotlib inline movies = pd.read_csv('movies.csv') # 영화 정보 ratings = pd.read_csv('ratings.csv') # 사용자가 영화에 대해 남긴 평점 데이터 print(movies.shape) print(ratings.shape) movies.head() # 제목으로 영화 찾기 mo.. 2022. 12. 7.
[Machine Learning] 추천 시스템 (Recommender System) 추천 시스템 (Recommender System) 추천 시스템 (推薦 system)은 정보 필터링 (IF) 기술의 일종으로, 특정 사용자가 관심을 가질만한 정보 (영화, 음악, 책, 뉴스, 이미지, 웹 페이지 등)를 추천하는 것이다. 추천 시스템에는 협업 필터링 기법을 주로 사용한다. 소셜 북마크 사이트에서 링크를 사람들에게 추천하고 무비렌즈 데이터 세트에서 영화를 추천하는 방법등이 이에 속한다. 협업 필터링 (Collaborative Filtering) 협업 필터링은 많은 사용자들로부터 얻은 기호정보에 따라 사용자들의 관심사들을 자동적으로 예측하게 해주는 방법이다. 협력 필터링 접근법의 근본적인 가정은 사용자들의 과거의 경향이 미래에서도 그대로 유지 될 것이라는 전제에 있다. Data sparsity .. 2022. 12. 7.
[Machine Learning] 의사 결정 트리 : 붓꽃 (Iris) 데이터 로드 import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from sklearn.tree import DecisionTreeClassifier from sklearn import tree iris_dt = load_iris() train_x, test_x, train_y, test_y = train_test_split(iris_dt.data, iris_dt.target, test_size=0.2, random_state=0.. 2022. 11. 29.
[Deep Learning] 활성화 함수 구현 Sigmoid import numpy as np def sigmoid(x): return 1/(1+np.exp(-x)) sigmoid(4) 0.9820137900379085 import matplotlib.pyplot as plt x = np.arange(-10, 10, 0.01) y = sigmoid(x) plt.plot(x, y) ReLU def relu(x): return np.maximum(0, x) x = np.arange(-10, 10, 0.01) y = relu(x) plt.plot(x, y) Softmax def origin_softmax(x): f_x = np.exp(x) / np.sum(np.exp(x)) return f_x x = np.array([1.3, 5.1, 2.2, 0.7, .. 2022. 11. 17.
[Machine Learning] 이상 탐지 (Anomaly Detection) 이상 탐지 (Anomaly Detection) 변칙은 데이터 세트의 예상된 패턴에서 예상치 못한 변화 또는 편차이다. 이상 탐지는 이상 징후가 예상과 다르게 발생하고 있음을 보여주기 때문에 비정상적인 동작을 경고하는 데 사용된다. 이상 징후가 반드시 좋거나 나쁜 것은 아니지만, 기업은 패턴의 단절에 대해 알아야 조치를 취할 필요가 있는지 여부를 평가할 수 있다. 기업은 일상적인 운영 중에 수백만 개의 데이터 포인트를 생성하지만, 그 중요한 정보의 대부분은 사용되지 않고 잊혀진다. 이러한 이유로 비즈니스 세계에서 이상 탐지 기능이 점점 더 부각되고 있다. 즉, 운영을 최적화하고 프로세스를 간소화하여 보다 예측 가능한 미래를 실현하는 것이다. Anomalies와 Outliers의 차이 많은 비즈니스 사용자들.. 2022. 11. 17.
[Machine Learning] 오토인코더 (Autoencoder) 오토인코더 (Autoencoder) 오토인코더는 인코더를 통해 입력을 신호로 변환한 다음 다시 디코더를 통해 레이블 따위를 만들어내는 비지도 학습기법이다. 다시 말해, 오토인코더는 고차원의 정보를 압축해 주는 인코더와 압축된 정보를 다시 원래 정보로 돌려주는 디코더로 이루어져 있다. 원본 데이터에서 인코더를 거쳐 압축된 정보로 변환한 뒤, 다시 디코더를 거쳐 원본 데이터로 복구하는 작업을 한다. 오토인코더 모델은 인코더 - 디코더의 결합된 형태로 만들어진다. 나중에 디코더만 따로 분리하여 압축된 정보를 입력으로 주게 되면, 알아서 원본 이미지와 유사한 마치 Fake 이미지를 만들어 주도록 유도할 수도 있다. 오토인코더의 손실은 MNIST의 28 X 28 이미지 각각의 pixel 값에 대하여 원본과 디코딩.. 2022. 11. 11.
728x90
반응형
LIST