資源簡介
#coding=utf-8
"""
#演示目的:利用鳶尾花數據集畫出P-R曲線
"""
print(__doc__)
import matplotlib.pyplot as plt
import numpy as np
from sklearn import svm, datasets
from sklearn.metrics import precision_recall_curve
from sklearn.metrics import average_precision_score
from sklearn.preprocessing import label_binarize
from sklearn.multiclass import OneVsRestClassifier
#from sklearn.cross_validation import train_test_split #適用于anaconda 3.6及以前版本
from sklearn.model_selection import train_test_split#適用于anaconda 3.7
#以iris數據為例,畫出P-R曲線
iris = datasets.load_iris()
X = iris.data
y = iris.target
# 標簽二值化,將三個類轉為001, 010, 100的格式.因為這是個多類分類問題,后面將要采用
#OneVsRestClassifier策略轉為二類分類問題
y = label_binarize(y, classes=[0, 1, 2])
n_classes = y.shape[1]
print (y)
"""
#演示目的:利用鳶尾花數據集畫出P-R曲線
"""
print(__doc__)
import matplotlib.pyplot as plt
import numpy as np
from sklearn import svm, datasets
from sklearn.metrics import precision_recall_curve
from sklearn.metrics import average_precision_score
from sklearn.preprocessing import label_binarize
from sklearn.multiclass import OneVsRestClassifier
#from sklearn.cross_validation import train_test_split #適用于anaconda 3.6及以前版本
from sklearn.model_selection import train_test_split#適用于anaconda 3.7
#以iris數據為例,畫出P-R曲線
iris = datasets.load_iris()
X = iris.data
y = iris.target
# 標簽二值化,將三個類轉為001, 010, 100的格式.因為這是個多類分類問題,后面將要采用
#OneVsRestClassifier策略轉為二類分類問題
y = label_binarize(y, classes=[0, 1, 2])
n_classes = y.shape[1]
print (y)
代碼片段和文件信息
#?-*-?coding:?utf-8?-*-
“““
Created?on?Wed?Mar?18?10:36:21?2020
@author:?Administrator
“““
#coding=utf-8
“““
#演示目的:利用鳶尾花數據集畫出P-R曲線
“““
print(__doc__)
?
import?matplotlib.pyplot?as?plt
import?numpy?as?np
from?sklearn?import?svm?datasets
from?sklearn.metrics?import?precision_recall_curve
from?sklearn.metrics?import?average_precision_score
from?sklearn.preprocessing?import?label_binarize
from?sklearn.multiclass?import?OneVsRestClassifier
?
#from?sklearn.cross_validation?import?train_test_split??#適用于anaconda?3.6及以前版本
from?sklearn.model_selection?import?train_test_split#適用于anaconda?3.7
?
#以iris數據為例,畫出P-R曲線
iris?=?datasets.load_iris()
X?=?iris.data
y?=?iris.target
?
#?標簽二值化將三個類轉為001?010?100的格式.因為這是個多類分類問題,后面將要采用
#OneVsRestClassifier策略轉為二類分類問題
y?=?label_binarize(y?classes=[0?1?2])
n_classes?=?y.shape[1]
print?(y)
?
#?增加了800維的噪聲特征
random_state?=?np.random.RandomState(0)
n_samples?n_features?=?X.shape
?
X?=?np.c_[X?random_state.randn(n_samples?200?*?n_features)]
?
#?Split?into?training?and?test
X_train?X_test?y_train?y_test?=?train_test_split(X?y?test_size=.5?random_state=random_state)?#隨機數,填0或不填,每次都會不一樣
?
#?Run?classifier?probability?:?boolean?optional?(default=False)Whether?to?enable?probability?estimates.?This?must?be?enabled?prior?to?calling?fit?and?will?slow?down?that?method.
classifier?=?OneVsRestClassifier(svm.SVC(kernel=‘linear‘?probability=True?random_state=random_state))
y_score?=?classifier.fit(X_train?y_train).decision_function(X_test)
?
#?Compute?P
- 上一篇:zabbix微信告警腳本
- 下一篇:python寫的旅游網站源碼
評論
共有 條評論