correction to code

This commit is contained in:
mhjensen
2019-11-07 14:28:20 +01:00
parent 31eea8bbeb
commit 7aa82d944e
20 changed files with 185 additions and 297 deletions
@@ -255,29 +255,19 @@ ada_clf <span style="color: #666666">=</span> AdaBoostClassifier(
algorithm<span style="color: #666666">=</span><span style="color: #BA2121">&quot;SAMME.R&quot;</span>, learning_rate<span style="color: #666666">=0.5</span>, random_state<span style="color: #666666">=42</span>)
ada_clf<span style="color: #666666">.</span>fit(X_train, y_train)
plot_decision_boundary(ada_clf, X, y)
<span style="color: #008000; font-weight: bold">from</span> <span style="color: #0000FF; font-weight: bold">sklearn.ensemble</span> <span style="color: #008000; font-weight: bold">import</span> AdaBoostClassifier
m <span style="color: #666666">=</span> <span style="color: #008000">len</span>(X_train)
plt<span style="color: #666666">.</span>figure(figsize<span style="color: #666666">=</span>(<span style="color: #666666">11</span>, <span style="color: #666666">4</span>))
<span style="color: #008000; font-weight: bold">for</span> subplot, learning_rate <span style="color: #AA22FF; font-weight: bold">in</span> ((<span style="color: #666666">121</span>, <span style="color: #666666">1</span>), (<span style="color: #666666">122</span>, <span style="color: #666666">0.5</span>)):
sample_weights <span style="color: #666666">=</span> np<span style="color: #666666">.</span>ones(m)
plt<span style="color: #666666">.</span>subplot(subplot)
<span style="color: #008000; font-weight: bold">for</span> i <span style="color: #AA22FF; font-weight: bold">in</span> <span style="color: #008000">range</span>(<span style="color: #666666">5</span>):
svm_clf <span style="color: #666666">=</span> SVC(kernel<span style="color: #666666">=</span><span style="color: #BA2121">&quot;rbf&quot;</span>, C<span style="color: #666666">=0.05</span>, gamma<span style="color: #666666">=</span><span style="color: #BA2121">&quot;auto&quot;</span>, random_state<span style="color: #666666">=42</span>)
svm_clf<span style="color: #666666">.</span>fit(X_train, y_train, sample_weight<span style="color: #666666">=</span>sample_weights)
y_pred <span style="color: #666666">=</span> svm_clf<span style="color: #666666">.</span>predict(X_train)
sample_weights[y_pred <span style="color: #666666">!=</span> y_train] <span style="color: #666666">*=</span> (<span style="color: #666666">1</span> <span style="color: #666666">+</span> learning_rate)
plot_decision_boundary(svm_clf, X, y, alpha<span style="color: #666666">=0.2</span>)
plt<span style="color: #666666">.</span>title(<span style="color: #BA2121">&quot;learning_rate = {}&quot;</span><span style="color: #666666">.</span>format(learning_rate), fontsize<span style="color: #666666">=16</span>)
<span style="color: #008000; font-weight: bold">if</span> subplot <span style="color: #666666">==</span> <span style="color: #666666">121</span>:
plt<span style="color: #666666">.</span>text(<span style="color: #666666">-0.7</span>, <span style="color: #666666">-0.65</span>, <span style="color: #BA2121">&quot;1&quot;</span>, fontsize<span style="color: #666666">=14</span>)
plt<span style="color: #666666">.</span>text(<span style="color: #666666">-0.6</span>, <span style="color: #666666">-0.10</span>, <span style="color: #BA2121">&quot;2&quot;</span>, fontsize<span style="color: #666666">=14</span>)
plt<span style="color: #666666">.</span>text(<span style="color: #666666">-0.5</span>, <span style="color: #666666">0.10</span>, <span style="color: #BA2121">&quot;3&quot;</span>, fontsize<span style="color: #666666">=14</span>)
plt<span style="color: #666666">.</span>text(<span style="color: #666666">-0.4</span>, <span style="color: #666666">0.55</span>, <span style="color: #BA2121">&quot;4&quot;</span>, fontsize<span style="color: #666666">=14</span>)
plt<span style="color: #666666">.</span>text(<span style="color: #666666">-0.3</span>, <span style="color: #666666">0.90</span>, <span style="color: #BA2121">&quot;5&quot;</span>, fontsize<span style="color: #666666">=14</span>)
save_fig(<span style="color: #BA2121">&quot;boosting_plot&quot;</span>)
ada_clf <span style="color: #666666">=</span> AdaBoostClassifier(
DecisionTreeClassifier(max_depth<span style="color: #666666">=1</span>), n_estimators<span style="color: #666666">=200</span>,
algorithm<span style="color: #666666">=</span><span style="color: #BA2121">&quot;SAMME.R&quot;</span>, learning_rate<span style="color: #666666">=0.5</span>, random_state<span style="color: #666666">=42</span>)
ada_clf<span style="color: #666666">.</span>fit(X_train_scaled, y_train)
y_pred <span style="color: #666666">=</span> ada_clf<span style="color: #666666">.</span>predict(X_test_scaled)
skplt<span style="color: #666666">.</span>metrics<span style="color: #666666">.</span>plot_confusion_matrix(y_test, y_pred, normalize<span style="color: #666666">=</span><span style="color: #008000">True</span>)
plt<span style="color: #666666">.</span>show()
y_probas <span style="color: #666666">=</span> ada_clf<span style="color: #666666">.</span>predict_proba(X_test_scaled)
skplt<span style="color: #666666">.</span>metrics<span style="color: #666666">.</span>plot_roc(y_test, y_probas)
plt<span style="color: #666666">.</span>show()
skplt<span style="color: #666666">.</span>metrics<span style="color: #666666">.</span>plot_cumulative_gain(y_test, y_probas)
plt<span style="color: #666666">.</span>show()
</pre></div>
<p>
@@ -2169,29 +2169,19 @@ ada_clf = AdaBoostClassifier(
algorithm=<span style="color: #CD5555">&quot;SAMME.R&quot;</span>, learning_rate=<span style="color: #B452CD">0.5</span>, random_state=<span style="color: #B452CD">42</span>)
ada_clf.fit(X_train, y_train)
plot_decision_boundary(ada_clf, X, y)
<span style="color: #8B008B; font-weight: bold">from</span> <span style="color: #008b45; text-decoration: underline">sklearn.ensemble</span> <span style="color: #8B008B; font-weight: bold">import</span> AdaBoostClassifier
m = <span style="color: #658b00">len</span>(X_train)
plt.figure(figsize=(<span style="color: #B452CD">11</span>, <span style="color: #B452CD">4</span>))
<span style="color: #8B008B; font-weight: bold">for</span> subplot, learning_rate <span style="color: #8B008B">in</span> ((<span style="color: #B452CD">121</span>, <span style="color: #B452CD">1</span>), (<span style="color: #B452CD">122</span>, <span style="color: #B452CD">0.5</span>)):
sample_weights = np.ones(m)
plt.subplot(subplot)
<span style="color: #8B008B; font-weight: bold">for</span> i <span style="color: #8B008B">in</span> <span style="color: #658b00">range</span>(<span style="color: #B452CD">5</span>):
svm_clf = SVC(kernel=<span style="color: #CD5555">&quot;rbf&quot;</span>, C=<span style="color: #B452CD">0.05</span>, gamma=<span style="color: #CD5555">&quot;auto&quot;</span>, random_state=<span style="color: #B452CD">42</span>)
svm_clf.fit(X_train, y_train, sample_weight=sample_weights)
y_pred = svm_clf.predict(X_train)
sample_weights[y_pred != y_train] *= (<span style="color: #B452CD">1</span> + learning_rate)
plot_decision_boundary(svm_clf, X, y, alpha=<span style="color: #B452CD">0.2</span>)
plt.title(<span style="color: #CD5555">&quot;learning_rate = {}&quot;</span>.format(learning_rate), fontsize=<span style="color: #B452CD">16</span>)
<span style="color: #8B008B; font-weight: bold">if</span> subplot == <span style="color: #B452CD">121</span>:
plt.text(-<span style="color: #B452CD">0.7</span>, -<span style="color: #B452CD">0.65</span>, <span style="color: #CD5555">&quot;1&quot;</span>, fontsize=<span style="color: #B452CD">14</span>)
plt.text(-<span style="color: #B452CD">0.6</span>, -<span style="color: #B452CD">0.10</span>, <span style="color: #CD5555">&quot;2&quot;</span>, fontsize=<span style="color: #B452CD">14</span>)
plt.text(-<span style="color: #B452CD">0.5</span>, <span style="color: #B452CD">0.10</span>, <span style="color: #CD5555">&quot;3&quot;</span>, fontsize=<span style="color: #B452CD">14</span>)
plt.text(-<span style="color: #B452CD">0.4</span>, <span style="color: #B452CD">0.55</span>, <span style="color: #CD5555">&quot;4&quot;</span>, fontsize=<span style="color: #B452CD">14</span>)
plt.text(-<span style="color: #B452CD">0.3</span>, <span style="color: #B452CD">0.90</span>, <span style="color: #CD5555">&quot;5&quot;</span>, fontsize=<span style="color: #B452CD">14</span>)
save_fig(<span style="color: #CD5555">&quot;boosting_plot&quot;</span>)
ada_clf = AdaBoostClassifier(
DecisionTreeClassifier(max_depth=<span style="color: #B452CD">1</span>), n_estimators=<span style="color: #B452CD">200</span>,
algorithm=<span style="color: #CD5555">&quot;SAMME.R&quot;</span>, learning_rate=<span style="color: #B452CD">0.5</span>, random_state=<span style="color: #B452CD">42</span>)
ada_clf.fit(X_train_scaled, y_train)
y_pred = ada_clf.predict(X_test_scaled)
skplt.metrics.plot_confusion_matrix(y_test, y_pred, normalize=<span style="color: #658b00">True</span>)
plt.show()
y_probas = ada_clf.predict_proba(X_test_scaled)
skplt.metrics.plot_roc(y_test, y_probas)
plt.show()
skplt.metrics.plot_cumulative_gain(y_test, y_probas)
plt.show()
</pre></div>
</section>
@@ -2153,29 +2153,19 @@ ada_clf = AdaBoostClassifier(
algorithm=<span style="color: #CD5555">&quot;SAMME.R&quot;</span>, learning_rate=<span style="color: #B452CD">0.5</span>, random_state=<span style="color: #B452CD">42</span>)
ada_clf.fit(X_train, y_train)
plot_decision_boundary(ada_clf, X, y)
<span style="color: #8B008B; font-weight: bold">from</span> <span style="color: #008b45; text-decoration: underline">sklearn.ensemble</span> <span style="color: #8B008B; font-weight: bold">import</span> AdaBoostClassifier
m = <span style="color: #658b00">len</span>(X_train)
plt.figure(figsize=(<span style="color: #B452CD">11</span>, <span style="color: #B452CD">4</span>))
<span style="color: #8B008B; font-weight: bold">for</span> subplot, learning_rate <span style="color: #8B008B">in</span> ((<span style="color: #B452CD">121</span>, <span style="color: #B452CD">1</span>), (<span style="color: #B452CD">122</span>, <span style="color: #B452CD">0.5</span>)):
sample_weights = np.ones(m)
plt.subplot(subplot)
<span style="color: #8B008B; font-weight: bold">for</span> i <span style="color: #8B008B">in</span> <span style="color: #658b00">range</span>(<span style="color: #B452CD">5</span>):
svm_clf = SVC(kernel=<span style="color: #CD5555">&quot;rbf&quot;</span>, C=<span style="color: #B452CD">0.05</span>, gamma=<span style="color: #CD5555">&quot;auto&quot;</span>, random_state=<span style="color: #B452CD">42</span>)
svm_clf.fit(X_train, y_train, sample_weight=sample_weights)
y_pred = svm_clf.predict(X_train)
sample_weights[y_pred != y_train] *= (<span style="color: #B452CD">1</span> + learning_rate)
plot_decision_boundary(svm_clf, X, y, alpha=<span style="color: #B452CD">0.2</span>)
plt.title(<span style="color: #CD5555">&quot;learning_rate = {}&quot;</span>.format(learning_rate), fontsize=<span style="color: #B452CD">16</span>)
<span style="color: #8B008B; font-weight: bold">if</span> subplot == <span style="color: #B452CD">121</span>:
plt.text(-<span style="color: #B452CD">0.7</span>, -<span style="color: #B452CD">0.65</span>, <span style="color: #CD5555">&quot;1&quot;</span>, fontsize=<span style="color: #B452CD">14</span>)
plt.text(-<span style="color: #B452CD">0.6</span>, -<span style="color: #B452CD">0.10</span>, <span style="color: #CD5555">&quot;2&quot;</span>, fontsize=<span style="color: #B452CD">14</span>)
plt.text(-<span style="color: #B452CD">0.5</span>, <span style="color: #B452CD">0.10</span>, <span style="color: #CD5555">&quot;3&quot;</span>, fontsize=<span style="color: #B452CD">14</span>)
plt.text(-<span style="color: #B452CD">0.4</span>, <span style="color: #B452CD">0.55</span>, <span style="color: #CD5555">&quot;4&quot;</span>, fontsize=<span style="color: #B452CD">14</span>)
plt.text(-<span style="color: #B452CD">0.3</span>, <span style="color: #B452CD">0.90</span>, <span style="color: #CD5555">&quot;5&quot;</span>, fontsize=<span style="color: #B452CD">14</span>)
save_fig(<span style="color: #CD5555">&quot;boosting_plot&quot;</span>)
ada_clf = AdaBoostClassifier(
DecisionTreeClassifier(max_depth=<span style="color: #B452CD">1</span>), n_estimators=<span style="color: #B452CD">200</span>,
algorithm=<span style="color: #CD5555">&quot;SAMME.R&quot;</span>, learning_rate=<span style="color: #B452CD">0.5</span>, random_state=<span style="color: #B452CD">42</span>)
ada_clf.fit(X_train_scaled, y_train)
y_pred = ada_clf.predict(X_test_scaled)
skplt.metrics.plot_confusion_matrix(y_test, y_pred, normalize=<span style="color: #658b00">True</span>)
plt.show()
y_probas = ada_clf.predict_proba(X_test_scaled)
skplt.metrics.plot_roc(y_test, y_probas)
plt.show()
skplt.metrics.plot_cumulative_gain(y_test, y_probas)
plt.show()
</pre></div>
<p>
+12 -22
View File
@@ -2158,29 +2158,19 @@ ada_clf <span style="color: #666666">=</span> AdaBoostClassifier(
algorithm<span style="color: #666666">=</span><span style="color: #BA2121">&quot;SAMME.R&quot;</span>, learning_rate<span style="color: #666666">=0.5</span>, random_state<span style="color: #666666">=42</span>)
ada_clf<span style="color: #666666">.</span>fit(X_train, y_train)
plot_decision_boundary(ada_clf, X, y)
<span style="color: #008000; font-weight: bold">from</span> <span style="color: #0000FF; font-weight: bold">sklearn.ensemble</span> <span style="color: #008000; font-weight: bold">import</span> AdaBoostClassifier
m <span style="color: #666666">=</span> <span style="color: #008000">len</span>(X_train)
plt<span style="color: #666666">.</span>figure(figsize<span style="color: #666666">=</span>(<span style="color: #666666">11</span>, <span style="color: #666666">4</span>))
<span style="color: #008000; font-weight: bold">for</span> subplot, learning_rate <span style="color: #AA22FF; font-weight: bold">in</span> ((<span style="color: #666666">121</span>, <span style="color: #666666">1</span>), (<span style="color: #666666">122</span>, <span style="color: #666666">0.5</span>)):
sample_weights <span style="color: #666666">=</span> np<span style="color: #666666">.</span>ones(m)
plt<span style="color: #666666">.</span>subplot(subplot)
<span style="color: #008000; font-weight: bold">for</span> i <span style="color: #AA22FF; font-weight: bold">in</span> <span style="color: #008000">range</span>(<span style="color: #666666">5</span>):
svm_clf <span style="color: #666666">=</span> SVC(kernel<span style="color: #666666">=</span><span style="color: #BA2121">&quot;rbf&quot;</span>, C<span style="color: #666666">=0.05</span>, gamma<span style="color: #666666">=</span><span style="color: #BA2121">&quot;auto&quot;</span>, random_state<span style="color: #666666">=42</span>)
svm_clf<span style="color: #666666">.</span>fit(X_train, y_train, sample_weight<span style="color: #666666">=</span>sample_weights)
y_pred <span style="color: #666666">=</span> svm_clf<span style="color: #666666">.</span>predict(X_train)
sample_weights[y_pred <span style="color: #666666">!=</span> y_train] <span style="color: #666666">*=</span> (<span style="color: #666666">1</span> <span style="color: #666666">+</span> learning_rate)
plot_decision_boundary(svm_clf, X, y, alpha<span style="color: #666666">=0.2</span>)
plt<span style="color: #666666">.</span>title(<span style="color: #BA2121">&quot;learning_rate = {}&quot;</span><span style="color: #666666">.</span>format(learning_rate), fontsize<span style="color: #666666">=16</span>)
<span style="color: #008000; font-weight: bold">if</span> subplot <span style="color: #666666">==</span> <span style="color: #666666">121</span>:
plt<span style="color: #666666">.</span>text(<span style="color: #666666">-0.7</span>, <span style="color: #666666">-0.65</span>, <span style="color: #BA2121">&quot;1&quot;</span>, fontsize<span style="color: #666666">=14</span>)
plt<span style="color: #666666">.</span>text(<span style="color: #666666">-0.6</span>, <span style="color: #666666">-0.10</span>, <span style="color: #BA2121">&quot;2&quot;</span>, fontsize<span style="color: #666666">=14</span>)
plt<span style="color: #666666">.</span>text(<span style="color: #666666">-0.5</span>, <span style="color: #666666">0.10</span>, <span style="color: #BA2121">&quot;3&quot;</span>, fontsize<span style="color: #666666">=14</span>)
plt<span style="color: #666666">.</span>text(<span style="color: #666666">-0.4</span>, <span style="color: #666666">0.55</span>, <span style="color: #BA2121">&quot;4&quot;</span>, fontsize<span style="color: #666666">=14</span>)
plt<span style="color: #666666">.</span>text(<span style="color: #666666">-0.3</span>, <span style="color: #666666">0.90</span>, <span style="color: #BA2121">&quot;5&quot;</span>, fontsize<span style="color: #666666">=14</span>)
save_fig(<span style="color: #BA2121">&quot;boosting_plot&quot;</span>)
ada_clf <span style="color: #666666">=</span> AdaBoostClassifier(
DecisionTreeClassifier(max_depth<span style="color: #666666">=1</span>), n_estimators<span style="color: #666666">=200</span>,
algorithm<span style="color: #666666">=</span><span style="color: #BA2121">&quot;SAMME.R&quot;</span>, learning_rate<span style="color: #666666">=0.5</span>, random_state<span style="color: #666666">=42</span>)
ada_clf<span style="color: #666666">.</span>fit(X_train_scaled, y_train)
y_pred <span style="color: #666666">=</span> ada_clf<span style="color: #666666">.</span>predict(X_test_scaled)
skplt<span style="color: #666666">.</span>metrics<span style="color: #666666">.</span>plot_confusion_matrix(y_test, y_pred, normalize<span style="color: #666666">=</span><span style="color: #008000">True</span>)
plt<span style="color: #666666">.</span>show()
y_probas <span style="color: #666666">=</span> ada_clf<span style="color: #666666">.</span>predict_proba(X_test_scaled)
skplt<span style="color: #666666">.</span>metrics<span style="color: #666666">.</span>plot_roc(y_test, y_probas)
plt<span style="color: #666666">.</span>show()
skplt<span style="color: #666666">.</span>metrics<span style="color: #666666">.</span>plot_cumulative_gain(y_test, y_probas)
plt<span style="color: #666666">.</span>show()
</pre></div>
<p>