@@ -16,7 +16,7 @@ def __init__(self, kernel='rbf', noise=1e-8):
16
16
self .y_train = None
17
17
self .params = None
18
18
19
- def rbf_kernel (self , X1 , X2 , l = 1.0 , sigma_f = 1.0 ):
19
+ def rad_basf_kernel (self , X1 , X2 , l = 1.0 , sigma_f = 1.0 ):
20
20
"""
21
21
Radial Basis Function (RBF) kernel, also known as squared exponential kernel.
22
22
@@ -45,12 +45,12 @@ def negative_log_likelihood(self, params):
45
45
float: Negative log likelihood
46
46
"""
47
47
l , sigma_f = params
48
- K = self .rbf_kernel (self .X_train , self .X_train , l , sigma_f ) + self .noise ** 2 * np .eye (len (self .X_train ))
48
+ K = self .rad_basf_kernel (self .X_train , self .X_train , l , sigma_f ) + self .noise ** 2 * np .eye (len (self .X_train ))
49
49
return 0.5 * np .log (np .linalg .det (K )) + \
50
50
0.5 * self .y_train .T .dot (np .linalg .inv (K ).dot (self .y_train )) + \
51
51
0.5 * len (self .X_train ) * np .log (2 * np .pi )
52
52
53
- def fit (self , X , y ):
53
+ def fit_function (self , X , y ):
54
54
"""
55
55
Fit the GPR model to the training data.
56
56
@@ -67,7 +67,7 @@ def fit(self, X, y):
67
67
method = 'L-BFGS-B' )
68
68
self .params = res .x
69
69
70
- def predict (self , X_test , return_std = False ):
70
+ def predict_func (self , X_test , return_std = False ):
71
71
"""
72
72
Make predictions on test data.
73
73
@@ -81,9 +81,9 @@ def predict(self, X_test, return_std=False):
81
81
l , sigma_f = self .params
82
82
83
83
# Compute relevant kernel matrices
84
- K = self .rbf_kernel (self .X_train , self .X_train , l , sigma_f ) + self .noise ** 2 * np .eye (len (self .X_train ))
85
- K_s = self .rbf_kernel (self .X_train , X_test , l , sigma_f )
86
- K_ss = self .rbf_kernel (X_test , X_test , l , sigma_f ) + 1e-8 * np .eye (len (X_test ))
84
+ K = self .rad_basf_kernel (self .X_train , self .X_train , l , sigma_f ) + self .noise ** 2 * np .eye (len (self .X_train ))
85
+ K_s = self .rad_basf_kernel (self .X_train , X_test , l , sigma_f )
86
+ K_ss = self .rad_basf_kernel (X_test , X_test , l , sigma_f ) + 1e-8 * np .eye (len (X_test ))
87
87
88
88
K_inv = np .linalg .inv (K )
89
89
@@ -103,14 +103,14 @@ def predict(self, X_test, return_std=False):
103
103
104
104
# Create and fit the model
105
105
gpr = GaussianProcessRegressor ()
106
- gpr .fit (X , y )
106
+ gpr .fit_func (X , y )
107
107
108
108
# Make predictions
109
109
X_test = np .linspace (0 , 10 , 100 ).reshape (- 1 , 1 )
110
- mu_s , std_s = gpr .predict (X_test , return_std = True )
110
+ mu_s , std_s = gpr .predict_func (X_test , return_std = True )
111
111
112
- print ("Predicted mean:" , mu_s )
113
- print ("Predicted standard deviation:" , std_s )
112
+ print ("Predicted mean output :" , mu_s )
113
+ print ("Predicted standard deviation output :" , std_s )
114
114
115
115
# Note: To visualize results, you would typically use matplotlib here
116
- # to plot the original data, predictions, and confidence intervals
116
+ # to plot the original data, predictions, and confidence intervals
0 commit comments