FeatureHasher¶
-
類
pyspark.ml.feature。
FeatureHasher
( *,numFeatures:int=262144年,inputCols:可選(列表(str]]=沒有一個,outputCol:可選(str]=沒有一個,categoricalCols:可選(列表(str]]=沒有一個 ) ¶ -
功能散列項目一組分類或指定的數值特征的特征向量維度(通常遠遠小於原始特征空間的)。這是使用哈希技巧(https://en.wikipedia.org/wiki/Feature_hashing)映射特性指標的特征向量。
FeatureHasher變壓器運行在多個列。每一列可能包含數字或分類特性。行為和處理列數據類型如下:
-
- 數字列:
-
數字特征,使用散列值的列名稱映射特性值的指數的特征向量。默認情況下,數字特征並不視為分類(即使他們是整數)。把他們分類,指定相關的列categoricalCols。
-
- 字符串列:
-
分類特性,字符串的哈希值“column_name =值”是用來映射到矢量指數指標的價值1.0。因此,分類特性是一個炎熱的編碼(同樣使用
OneHotEncoder
與dropLast = false)。
-
- 布爾列:
-
布爾值作為字符串列以同樣的方式對待。即布爾特征表示為“column_name = true”或“column_name = false”,指標的價值1.0。
忽略Null(失蹤)值在生成的特征向量(隱式零)。
由於使用簡單的模變換向量的散列函數指數,建議使用2的冪numFeatures參數;否則將不均勻地映射到的特性向量指標。
例子
> > >數據=((2.0,真正的,“1”,“foo”),(3.0,假,“2”,“酒吧”)]> > >關口=(“真正的”,“bool”,“stringNum”,“字符串”]> > >df=火花。createDataFrame(數據,關口)> > >切肉機=FeatureHasher()> > >切肉機。setInputCols(關口)FeatureHasher……> > >切肉機。setOutputCol(“特征”)FeatureHasher……> > >切肉機。變換(df)。頭()。特性SparseVector (262144 {174475: 2.0, 247670: 1.0, 257907: 1.0, 262126: 1.0})> > >切肉機。setCategoricalCols([“真正的”])。變換(df)。頭()。特性SparseVector (262144 {171257: 1.0, 247670: 1.0, 257907: 1.0, 262126: 1.0})> > >hasherPath=temp_path+“/廚師”> > >切肉機。保存(hasherPath)> > >loadedHasher=FeatureHasher。負載(hasherPath)> > >loadedHasher。getNumFeatures()= =切肉機。getNumFeatures()真正的> > >loadedHasher。變換(df)。頭()。特性= =切肉機。變換(df)。頭()。特性真正的
方法
清晰的
(參數)清除參數映射的參數是否被顯式地設置。
複製
((額外的))創建這個實例的副本具有相同uid和一些額外的參數。
explainParam
(參數)解釋一個參數並返回它的名字,醫生,和可選的默認值,用戶提供的字符串值。
返回文檔的所有參數選擇默認值和用戶提供的值。
extractParamMap
((額外的))提取嵌入默認參數值和用戶提供的值,然後合並他們額外的值從輸入平麵參數映射,後者使用價值如果存在衝突,即。排序:默認參數值< <額外的用戶提供的值。
二進製的值或其默認值。
得到的價值inputCols或其默認值。
得到的價值numFeatures或其默認值。
getOrDefault
(參數)得到參數的值在用戶提供的參數映射或其默認值。
得到的價值outputCol或其默認值。
getParam
(paramName)通過它的名稱參數。
hasDefault
(參數)檢查是否一個參數有默認值。
hasParam
(paramName)測試這個實例包含一個參數是否與給定名稱(字符串)。
isDefined
(參數)檢查參數是否由用戶或顯式地設置一個默認值。
收取
(參數)檢查參數是否由用戶顯式地設置。
負載
(路徑)從輸入路徑,讀取一個毫升實例的快捷方式read () .load(路徑)。
讀
()返回一個MLReader這個類的實例。
保存
(路徑)這個毫升實例保存到給定的路徑,一個快捷方式的“寫().save(路徑)。
集
(參數值)設置一個參數嵌入參數映射。
設置的值
categoricalCols
。setInputCols
(值)設置的值
inputCols
。設置的值
numFeatures
。setOutputCol
(值)設置的值
outputCol
。setparam
(自我\ * (numFeatures,…))為這個FeatureHasher設置參數。
變換
(數據集[params))與可選參數轉換的輸入數據集。
寫
()返回一個MLWriter實例毫升實例。
屬性
返回所有參數命令的名字。
方法的文檔
-
清晰的
( 參數:pyspark.ml.param.Param )→沒有¶ -
清除參數映射的參數是否被顯式地設置。
-
複製
( 額外的:可選(ParamMap]=沒有一個 )→摩根大通¶ -
創建這個實例的副本具有相同uid和一些額外的參數。這個實現第一次調用參數。複製and then make a copy of the companion Java pipeline component with extra params. So both the Python wrapper and the Java pipeline component get copied.
- 參數
-
- 額外的 東西,可選
-
額外參數複製到新實例
- 返回
-
-
JavaParams
-
這個實例的副本
-
-
explainParam
( 參數:聯盟(str,pyspark.ml.param.Param] )→str¶ -
解釋一個參數並返回它的名字,醫生,和可選的默認值,用戶提供的字符串值。
-
explainParams
( )→str¶ -
返回文檔的所有參數選擇默認值和用戶提供的值。
-
extractParamMap
( 額外的:可選(ParamMap]=沒有一個 )→ParamMap¶ -
提取嵌入默認參數值和用戶提供的值,然後合並他們額外的值從輸入平麵參數映射,後者使用價值如果存在衝突,即。排序:默認參數值< <額外的用戶提供的值。
- 參數
-
- 額外的 東西,可選
-
額外的參數值
- 返回
-
- dict
-
合並後的參數映射
-
getCategoricalCols
( )→列表(str] ¶ -
二進製的值或其默認值。
-
getInputCols
( )→列表(str] ¶ -
得到的價值inputCols或其默認值。
-
getNumFeatures
( )→int¶ -
得到的價值numFeatures或其默認值。
-
getOrDefault
( 參數:聯盟(str,pyspark.ml.param.Param(T]] )→聯盟(任何,T] ¶ -
得到參數的值在用戶提供的參數映射或其默認值。如果沒有設置提出了一個錯誤。
-
getOutputCol
( )→str¶ -
得到的價值outputCol或其默認值。
-
getParam
( paramName:str )→pyspark.ml.param.Param ¶ -
通過它的名稱參數。
-
hasDefault
( 參數:聯盟(str,pyspark.ml.param.Param(任何]] )→bool¶ -
檢查是否一個參數有默認值。
-
hasParam
( paramName:str )→bool¶ -
測試這個實例包含一個參數是否與給定名稱(字符串)。
-
isDefined
( 參數:聯盟(str,pyspark.ml.param.Param(任何]] )→bool¶ -
檢查參數是否由用戶或顯式地設置一個默認值。
-
收取
( 參數:聯盟(str,pyspark.ml.param.Param(任何]] )→bool¶ -
檢查參數是否由用戶顯式地設置。
-
classmethod
負載
( 路徑:str )→RL¶ -
從輸入路徑,讀取一個毫升實例的快捷方式read () .load(路徑)。
-
classmethod
讀
( )→pyspark.ml.util.JavaMLReader(RL] ¶ -
返回一個MLReader這個類的實例。
-
保存
( 路徑:str )→沒有¶ -
這個毫升實例保存到給定的路徑,一個快捷方式的“寫().save(路徑)。
-
集
( 參數:pyspark.ml.param.Param,價值:任何 )→沒有¶ -
設置一個參數嵌入參數映射。
-
setCategoricalCols
( 價值:列表(str] )→pyspark.ml.feature.FeatureHasher ¶ -
設置的值
categoricalCols
。
-
setInputCols
( 價值:列表(str] )→pyspark.ml.feature.FeatureHasher ¶ -
設置的值
inputCols
。
-
setNumFeatures
( 價值:int )→pyspark.ml.feature.FeatureHasher ¶ -
設置的值
numFeatures
。
-
setOutputCol
( 價值:str )→pyspark.ml.feature.FeatureHasher ¶ -
設置的值
outputCol
。
-
setparam
( 自我,\ *,numFeatures = 1 < < 18歲,inputCols =沒有,outputCol =沒有,categoricalCols =沒有 ) ¶ -
為這個FeatureHasher設置參數。
-
變換
( 數據集:pyspark.sql.dataframe.DataFrame,參數個數:可選(ParamMap]=沒有一個 )→pyspark.sql.dataframe.DataFrame¶ -
與可選參數轉換的輸入數據集。
- 參數
-
-
數據集
pyspark.sql.DataFrame
-
輸入數據集
- 參數個數 東西,可選
-
一個可選的參數覆蓋嵌入參數的地圖。
-
數據集
- 返回
-
-
pyspark.sql.DataFrame
-
改變了數據集
-
-
寫
( )→pyspark.ml.util.JavaMLWriter¶ -
返回一個MLWriter實例毫升實例。
屬性的文檔
-
categoricalCols
:pyspark.ml.param.Param(列表(str)) =參數(父母=‘定義’,name = ' categoricalCols ', doc =數字列治療作為分類) ¶
-
inputCols
=參數(父母=‘定義’,name = ' inputCols ', doc =輸入列名稱。) ¶
-
numFeatures
=參數(父母=‘定義’,name = ' numFeatures ', doc = '的功能。應該大於0。”) ¶
-
outputCol
=參數(父母=‘定義’,name = ' outputCol ', doc =輸出列名稱。) ¶
-
參數個數
¶ -
返回所有參數命令的名字。默認實現使用
dir ()
所有的屬性類型參數
。
-