質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
scikit-learn

scikit-learnは、Pythonで使用できるオープンソースプロジェクトの機械学習用ライブラリです。多くの機械学習アルゴリズムが実装されていますが、どのアルゴリズムも同じような書き方で利用できます。

Matplotlib

MatplotlibはPythonのおよび、NumPy用のグラフ描画ライブラリです。多くの場合、IPythonと連携して使われます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

解決済

教師あり学習モデル(SVM)において全く同じ訓練データを用いて学習を行っても作製されるモデルに違いが出る?

1mzmk
1mzmk

総合スコア37

scikit-learn

scikit-learnは、Pythonで使用できるオープンソースプロジェクトの機械学習用ライブラリです。多くの機械学習アルゴリズムが実装されていますが、どのアルゴリズムも同じような書き方で利用できます。

Matplotlib

MatplotlibはPythonのおよび、NumPy用のグラフ描画ライブラリです。多くの場合、IPythonと連携して使われます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

1回答

0評価

0クリップ

1545閲覧

投稿2020/04/19 03:03

編集2020/04/19 04:07

Python

import numpy as np import matplotlib.pyplot as plt import mglearn from sklearn.model_selection import train_test_split from sklearn.svm import LinearSVC X = csv_titanic[["Age"],["Fare"]] y = csv_titanic["Survived"] X_train,X_test,y_train, y_test=train_test_split(X, y, stratify=y, random_state = 0 ) print(y_train.value_counts()) print(y_test.value_counts()) print(y.value_counts()) svm = LinearSVC().fit(X_train,y_train) X_array = np.array(X) def plot_separator(model): mglearn.plots.plot_2d_separator(model,X_array) mglearn.discrete_scatter(X_array[:,0],X_array[:,1],y) plt.xlabel("Age") plt.ylabel("Fare") plt.legend(["abc","alive"]) plt.xlim([0,80]) plt.ylim([0,300]) plt.show() svm_15 = LinearSVC(C=15).fit(X_train,y_train) plot_separator(svm_15) svm_100 = LinearSVC(C=100).fit(X_train,y_train) plot_separator(svm_100)

上のようなコードでSVMを用いてモデルを作ったのですが、最後の4行だけを何度か実行すると実行するたびに異なるモデルが生成されます。(異なる分離直線が引かれます)

つまり、全く同じ訓練データを用いて同じアルゴリズムで学習させても、その時々で生成されるモデルに違いが出るということでしょうか?

よろしくおねがいします。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

technocore

2020/04/19 04:02

y = csv_titanic["Survived"] X_train,X_test,Y_train, Y_test=train_test_split(X, Y, stratify=Y, random_state = 0 ) 小文字のyに受け取って、大文字のYを指定しています。 そもそも、あなたのソースコード動いていないでしょう。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

scikit-learn

scikit-learnは、Pythonで使用できるオープンソースプロジェクトの機械学習用ライブラリです。多くの機械学習アルゴリズムが実装されていますが、どのアルゴリズムも同じような書き方で利用できます。

Matplotlib

MatplotlibはPythonのおよび、NumPy用のグラフ描画ライブラリです。多くの場合、IPythonと連携して使われます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。