唐宇迪機器學習進階第一講數據特徵

唐宇迪機器學習進階第一講數據特徵

###1數據特徵
離散值處理
總結下來就是csv文件數據進行添加索引序號
主要庫

import pandas as pd
import numpy as np
from sklearn.preprocessing import LabelEncoder,OneHotEncoder

導入數據

zr = pd.read_csv('D:/2019.9.19/10.6sunday/10.6.csv')
zr[['時間','經度','緯度']]

將其中一列進行編碼

rui = LabelEncoder()#實例化
shijian_labels = rui.fit_transform(zr['經度'])
shijian_mappings = {index: label for index, label in enumerate(rui.classes_)}
shijian_mappings

結果:
{0: 119.36778100000001,
1: 119.36778500000001,
2: 119.36781499999999,
3: 119.36784899999999,
4: 119.36786599999999}
第二種方法:

jingdu_le = LabelEncoder()
jingdu_labels = jingdu_le.fit_transform(zr['經度'])
zr['經度_label'] = jingdu_labels
zr_sub = zr[['時間','GPS車速','X軸加速度','Y軸加速度','Z軸加速度','經度','經度_label','緯度']]
#zr_sub = zr
zr_sub
#jingdu_labels
#zr

結果:
在這裏插入圖片描述
第三種方法

jingdu_dummy_features = pd.get_dummies(zr['經度'])
pd.concat([zr[['時間','經度']],jingdu_dummy_features],axis = 1)

結果:
在這裏插入圖片描述
對數變換:遇到對數變換就要想數據是否符合正態分佈,不符合會做對數變換。(COX-BOX)
##2文本特徵
1.詞袋模型
首先:要有一個詞的庫
出現的每個詞拿到手後組成大的詞的匯表,對每個向量在詞彙表中一一對應,記錄每個向量中詞出現的頻率。
缺點:
只考慮詞頻:是否出現和有幾個
前後沒有關係
2.N-Grams模型
在詞袋模型中一個詞的搜索變成兩個,三個或更多詞的搜索,這樣就有了聯繫。
缺點:
會使判斷翻了幾個數量級(計算複雜度較高)
出的結果更稀疏了(呈現出的有價值的信息太少)
3.TF-IDF模型
TF:詞頻 IDF:逆文檔頻率
TF:一個詞在一篇文章中出現的次數除以總詞數
IDF:一共有幾篇文章中出現了這個詞的文章數除以總文章數
TF*1/IDF
4.Similarity特徵(餘弦相似性)
5.聚類特徵(降維)
6.主題模型(唐宇迪老師不推薦)LDA
主題和詞的權重
7.詞嵌入模型
word2vec(比較不錯)
與神經網絡結合,維度較高
##圖像特徵
每個圖象都是以矩陣形式進行處理(x,y,z)
x,y像素點;z顏色通道(好像是三原色改變爲不同的值圖片會出現不同。)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章