EX 2: Normal and Shrinkage Linear Discriminant Analysis for classification
分類法/範例二: Normal and Shrinkage Linear Discriminant Analysis for classification
(一)產生測試資料
%matplotlib inline
from __future__ import division
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_blobs
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis
n_train = 20 # samples for training
n_test = 200 # samples for testing
n_averages = 50 # how often to repeat classification
n_features_max = 75 # maximum number of features
step = 4 # step size for the calculation
def generate_data(n_samples, n_features):
X, y = make_blobs(n_samples=n_samples, n_features=1, centers=[[-2], [2]])
# add non-discriminative features
if n_features > 1:
X = np.hstack([X, np.random.randn(n_samples, n_features - 1)])
return X, y(二)改變特徵數量並測試shrinkage之功能
(三)顯示LDA判別結果

(四)完整程式碼
Last updated