MCPcopy Create free account
hub / github.com/lazyprogrammer/machine_learning_examples / fit

Method fit

supervised_class2/adaboost.py:19–38  ·  view source on GitHub ↗
(self, X, Y)

Source from the content-addressed store, hash-verified

17 self.M = M
18
19 def fit(self, X, Y):
20 self.models = []
21 self.alphas = []
22
23 N, _ = X.shape
24 W = np.ones(N) / N
25
26 for m in range(self.M):
27 tree = DecisionTreeClassifier(max_depth=1)
28 tree.fit(X, Y, sample_weight=W)
29 P = tree.predict(X)
30
31 err = W.dot(P != Y)
32 alpha = 0.5*(np.log(1 - err) - np.log(err))
33
34 W = W*np.exp(-alpha*Y*P) # vectorized form
35 W = W / W.sum() # normalize so it sums to 1
36
37 self.models.append(tree)
38 self.alphas.append(alpha)
39
40 def predict(self, X):
41 # NOT like SKLearn API

Callers 4

knn_dt_demo.pyFile · 0.45
adaboost.pyFile · 0.45
rf_vs_bag.pyFile · 0.45

Calls 1

predictMethod · 0.45

Tested by

no test coverage detected