機器學習入門 邏輯斯蒂 隨機梯度上公升

2022-08-29 13:39:32 字數 2242 閱讀 3271

#

-*- coding: utf-8 -*-

import

pandas

import

numpy

#create featrue list

column_name = ['

sample code number

', '

clump thickness

', '

uniformity of cell size

', '

uniformity of cell shape

','marginal adhesion

','single epithelial cell size

','bare nuclei

','bland chromatin

','normal nucleoli

','mitoses

','class']

#獲取資料

data = pandas.read_csv('

', names=column_name)

#print(type(data))

#將資料中的空值替換為?

data = data.replace(to_replace='

?', value=numpy.nan)

#刪除鍵值存在空值的資料

data = data.dropna(how='

any'

)from sklearn.model_selection import

train_test_split

#將資料集分為 訓練集和測試集(x_train:訓練資料,y_train:訓練標記/特徵;x_test:測試資料集,y_test:測試標記、特徵)

x_train, x_test, y_train, y_test = train_test_split(data[column_name[1:10]], data[column_name[10]], test_size=0.25, random_state=33)

from sklearn.preprocessing import

standardscaler

from sklearn.linear_model import

logisticregression

from sklearn.linear_model import

sgdclassifier

ss =standardscaler()

x_train =ss.fit_transform(x_train)

x_test =ss.transform(x_test)

lr =logisticregression()

sc =sgdclassifier()

lr.fit(x_train, y_train)

lr_y_predict =lr.predict(x_test)

sc.fit(x_train, y_train)

sc_y_predict =sc.predict(x_test)

from sklearn.metrics import

classification_report

print('

邏輯斯蒂模型-準確率

'.decode('

utf-8

'), lr.score(x_test, y_test))

print(classification_report(y_test,lr_y_predict, target_names=['

良性','惡性'

]))print('

隨機梯度上公升模型-準確率

'.decode('

utf-8

'), sc.score(x_test, y_test))

print(classification_report(y_test,sc_y_predict, target_names=['

良性','惡性'

]))#

print(lr_y_predict)

#print(sc_y_predict)

《機器學習及實踐》 閱讀記錄。

線性分類:

1.邏輯斯蒂演算法;

2.隨機梯度上公升演算法;

線性分類器是最常用和最基礎的機器學習模型。邏輯斯蒂(logisticregression)和隨機梯度上公升(sgdclassifier)前者對引數採用精確解析的方式,計算時間場但模型效能較高,後者採用隨機梯度上公升估算模型引數,計算時間短但產出的模型效能略低。

邏輯斯蒂回歸 機器學習ML

參考 1.統計學習方法 李航 2.邏輯斯蒂回歸是乙個非常經典的二項分類模型,也可以擴充套件為多項分類模型。其在應用於分類時的過程一般如下,對於給定的資料集,首先根據訓練樣本點學習到引數w,b 再對 點分別計算兩類的條件概率,將 點判為概率值較大的一類。1 線性模型 邏輯斯蒂回歸屬於對數線性模型,那什...

《機器學習實戰》 邏輯斯蒂回歸《一》

回歸我們知道有線性回歸,線性回歸模型能夠無限的逼近我們的結果。以 x i,yi 為例,通過線性回歸 f x w tx b 表示式,就可以得到我們對yi 的估計值。如何從線性回歸轉換到分類呢?由於線性回歸得到的是連續值,z wtx b z 的範圍 是這樣的乙個連續值無法直接轉換為類別。那怎麼辦?最簡單...

機器學習演算法詳解 邏輯斯蒂回歸模型

邏輯斯蒂回歸模型是一種分類模型,其目的解決分類問題而非回歸問題。logistic回歸是乙個判別模型,直接學習後驗概率分布,其學習演算法可以理解為極大似然估計法。模型分類演算法通過定義乙個分離超平面來分割不同類別的資料,用sigmoid函式作為後驗概率分布函式來對輸入資料進行分類。模型的學習演算法通過...