Skip to content

Commit 1458cba

Browse files
updated mean outputs
1 parent 77d8e80 commit 1458cba

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

Diff for: machine_learning/gaussian_process_regression.py

+12-12
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ def __init__(self, kernel='rbf', noise=1e-8):
1616
self.y_train = None
1717
self.params = None
1818

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):
2020
"""
2121
Radial Basis Function (RBF) kernel, also known as squared exponential kernel.
2222
@@ -45,12 +45,12 @@ def negative_log_likelihood(self, params):
4545
float: Negative log likelihood
4646
"""
4747
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))
4949
return 0.5 * np.log(np.linalg.det(K)) + \
5050
0.5 * self.y_train.T.dot(np.linalg.inv(K).dot(self.y_train)) + \
5151
0.5 * len(self.X_train) * np.log(2*np.pi)
5252

53-
def fit(self, X, y):
53+
def fit_function(self, X, y):
5454
"""
5555
Fit the GPR model to the training data.
5656
@@ -67,7 +67,7 @@ def fit(self, X, y):
6767
method='L-BFGS-B')
6868
self.params = res.x
6969

70-
def predict(self, X_test, return_std=False):
70+
def predict_func(self, X_test, return_std=False):
7171
"""
7272
Make predictions on test data.
7373
@@ -81,9 +81,9 @@ def predict(self, X_test, return_std=False):
8181
l, sigma_f = self.params
8282

8383
# 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))
8787

8888
K_inv = np.linalg.inv(K)
8989

@@ -103,14 +103,14 @@ def predict(self, X_test, return_std=False):
103103

104104
# Create and fit the model
105105
gpr = GaussianProcessRegressor()
106-
gpr.fit(X, y)
106+
gpr.fit_func(X, y)
107107

108108
# Make predictions
109109
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)
111111

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)
114114

115115
# 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

Comments
 (0)