[PYTHON] Implémentation PRML Chapitre 3 Modèle de fonction de base linéaire

Implémentation PRML Chapitre 3 Modèle de fonction de base linéaire

J'ai écrit un script pour trouver la solution estimée la plus probable.

script.py


import numpy as np
from numpy.linalg import inv
import matplotlib.pyplot as plt

M = 10 #Complexité du modèle
N = 20 #Le nombre de données
L = 10 #Nombre d'ensembles de données

ary_mu = np.linspace(0,1,M)

def phi(ary_mu, x):
    ret = np.array([np.exp(-(x-mu)**2/(2*0.1**2)) for mu in ary_mu])
    ret[0] = 1
    return ret

for x in range(L):
    x_train = np.linspace(0,1,N)
    y_train = np.sin(2*np.pi*x_train) + np.random.normal(0,0.3,N)

    #Matrice de planification(3.16 formules)Calculs de
    PHI = np.array([phi(ary_mu,x) for x in x_train]).reshape(N,M)

    #Solution estimée la plus probable(3.Type 15)Calculs de
    w_ml = inv(PHI.transpose().dot(PHI)).dot(PHI.transpose()).dot(y_train)
    #Utilisez ci-dessous pour le rendre régulier
    # l = 0.3
    # w_ml = inv(l*np.identity(M)+PHI.transpose().dot(PHI)).dot(PHI.transpose()).dot(y_train)

    xx = np.linspace(0,1,100)
    y = [phi(ary_mu,x).dot(w_ml) for x in xx]

    plt.plot(xx,y)

plt.show()
 sin(2*\pi*x) + N(0,0.3)

J'ai généré des données avec et affiché les résultats pour chaque ensemble de données.

Lorsque vous ne régularisez pas normal.png

Quand la régularisation est effectuée 正則化.png

est. D'une manière ou d'une autre, l'effet de la régularisation s'est manifesté.

Recommended Posts

Implémentation PRML Chapitre 3 Modèle de fonction de base linéaire
PRML Chapitre 14 Implémentation Python de modèle mixte conditionnel
Explication et mise en œuvre de PRML Chapitre 4
PRML Chapitre 5 Implémentation Python du réseau neuronal
PRML Chapitre 3 Preuve Implémentation approximative de Python
PRML Chapitre 8 Algorithme Somme des produits Implémentation Python
PRML Chapitre 4 Implémentation Python de la régression logistique bayésienne
PRML Chapter 5 Implémentation Python de réseau à densité mixte
PRML Chapitre 9 Implémentation Python de distribution gaussienne mixte
PRML: Chapitre 8 Modèle graphique Suppression du bruit d'image
PRML Chapitre 10 Implémentation Python de distribution gaussienne mixte
PRML Chapitre 6 Implémentation Python Gaussian Return
PRML Chapter 2 Student t-Distribution Python Implementation
PRML Chapitre 1 Implémentation de Python pour l'ajustement de courbe bayésienne
<Cours> Machine learning Chapitre 1: Modèle de régression linéaire
Implémenté en Python PRML Chapitre 3 Régression linéaire bayésienne
PRML Chapitre 11 Implémentation Python Monte Carlo Chaîne de Markov
PRML Chapitre 12 Mise en œuvre de l'analyse principale bayésienne Python
Régression avec un modèle linéaire
PRML Chapter 7 Implémentation de Python Vector Machine associée pour les problèmes de régression