《李巨集毅機器學習》task7

2021-09-24 04:43:24 字數 1418 閱讀 2962

熵是用來衡量乙個系統混論程度的物理量,代表乙個系統中蘊含多少資訊量,資訊量越大表明乙個系統不確定性就越大,就存在越多的可能性。

演算法支援模型

樹結構特徵選擇

連續值處理

缺失值處理

剪枝id3

分類多叉樹

資訊增益

不支援不支援

不支援c4.5

分類多叉樹

資訊增益比

支援支援

支援cart

分類/回歸

二叉樹基尼係數,均方差

支援支援

支援

import numpy as np

import pandas as pd

defcancshannonent

(dataset)

:'''

:param dataset: dataset

:return: shannonent

'''# 計算公式前,注意資料的格式(array)

numentries =

len(dataset)

# 獲取資料的行數

labelcounts =

# 設定字典資料格式,想要儲存的資料格式為:類別:頻數

for featvec in dataset:

# 獲取資料集每一行的資料

currentlabel = featvec[-1

]# 獲取特徵向量的最後一列

# 檢查字典中key是否存在

# 如果key不存在

if currentlabel not

in labelcounts.keys():

# 將當前的標籤存於字典中,並將頻數置為0

labelcounts[currentlabel]=0

# 如果key存在,在當前的鍵值上+1

labelcounts[currentlabel]+=1

# 資料已準備好,計算熵

shannonent =

0.0# 初始化資訊熵

for key in labelcounts:

# 遍歷出資料中所的類別

pro =

float

(labelcounts[key]

)/numentries

shannonent -= pro * np.log2(pro)

# 計算資訊熵

return shannonent # 返回資訊熵

dataset = pd.read_csv(

'watermelon_3a.csv'

)dataset = np.array(dataset.values)

shannon = cancshannonent(dataset)

print

(shannon)

《李巨集毅機器學習》task5

假定 lr邏輯回歸假設樣本服從泊松0 1分布,因此p y x 表示式 求最大似然估計 進而求最大對數似然估計 損失函式 損失函式表徵 值與真實值之間的差異程度,如果 值與真實值越接近則損失函式應該越小。在此損失函式可以取為最大似然估計函式的相反數,其次除以m這一因子並不改變最終求導極值結果,通過除以...

李巨集毅機器學習 Introduction

人工智慧是我們想要達到的目標,即讓機器和人一樣智慧型。而機器學習是方法,讓機器從資料中學習,從而得到智慧型的方法。智慧型是什麼呢?對於人類智慧型而言,根據霍華德 加德納的多元智慧型理論,人類的智慧型分為以下七種智慧型 這不僅涵蓋了現在人工智慧的研究領域,計算機視覺 語音識別 自然語言處理等。而且也指...

李巨集毅機器學習attack model 學習筆記

loss函式及限制條件 無目標攻擊 l 負的 y 與y true 交叉熵 輸入的x 使y 與y true越遠越好 有目標攻擊 輸入的x 使y 與y true越遠越好且y 與y false越近越好 限制條件 x與x0距離需要小於乙個值,不被發現,否則攻擊就無意義 攻擊的目標是x在乙個小的變化內使模型失...