top of page

LDA

  • niko
  • 3 juil. 2018
  • 1 min de lecture

""" Created on Tue Jul 3 14:09:18 2018

@author: Niko """

#import des bibliothèques

import numpy as np from sklearn.discriminant_analysis import LinearDiscriminantAnalysis

#initialisation d'un jeu de données (3 classes : 0, 1 et 2) n_samples = 100 X = np.zeros([3 * n_samples, 2]) mean_0 = [1, 1] mean_1 = [2, 2] mean_2 = [3, 3]

noise_level = 0.20

cov = np.array([[1, 0.5], [0.5, 1]])

noise_level_large = np.sqrt(2) * noise_level cov_large = noise_level_large ** 2 * cov cov = noise_level**2 * cov

y = np.zeros(3 * n_samples,)

X[0:n_samples, ] = np.random.multivariate_normal(mean_0, cov, n_samples) X[n_samples: 2 * n_samples, ] = np.random.multivariate_normal(mean_1, cov_large, n_samples) y[n_samples:2 * n_samples] = 1 X[2 * n_samples:3 * n_samples, ] = np.random.multivariate_normal(mean_2, cov, n_samples) y[2 * n_samples:3 * n_samples, ] = 2

# Create points where the probability will be evaluated display_1 = np.array([2, 2]) display_2 = np.array([3, 1]) display_3 = np.array([2.5, 2.5])

#initialisation du modèle LDA

clf_LDA = LinearDiscriminantAnalysis() clf_LDA.fit(X, y)

#probabilité d'appartenir à chacune des 3 classes values_proba_lda_1 = clf_LDA.predict_proba(display_1.reshape(1, -1))[0] values_proba_lda_2 = clf_LDA.predict_proba(display_2.reshape(1, -1))[0] values_proba_lda_3 = clf_LDA.predict_proba(display_3.reshape(1, -1))[0] print(values_proba_lda_1) print(values_proba_lda_2) print(values_proba_lda_3)

Commentaires


A découvrir ...
bottom of page