LogisticRegression

pyspark.ml.classification。 LogisticRegression ( *,featuresCol:str=“特性”,labelCol:str=“標簽”,predictionCol:str=“預測”,麥克斯特:int=One hundred.,regParam:浮動=0.0,elasticNetParam:浮動=0.0,托爾:浮動=1 e-06,fitIntercept:bool=真正的,閾值:浮動=0.5,閾值:可選(列表(浮動]]=沒有一個,probabilityCol:str=“概率”,rawPredictionCol:str=“rawPrediction”,標準化:bool=真正的,weightCol:可選(str]=沒有一個,aggregationDepth:int=2,家庭:str=“汽車”,lowerBoundsOnCoefficients:可選(pyspark.ml.linalg.Matrix]=沒有一個,upperBoundsOnCoefficients:可選(pyspark.ml.linalg.Matrix]=沒有一個,lowerBoundsOnIntercepts:可選(pyspark.ml.linalg.Vector]=沒有一個,upperBoundsOnIntercepts:可選(pyspark.ml.linalg.Vector]=沒有一個,maxBlockSizeInMB:浮動=0.0 )

邏輯回歸。這類支持多項物流(softmax)和二項邏輯回歸。

例子

> > >pyspark.sql進口> > >pyspark.ml.linalg進口向量> > >快速公車提供=sc並行化([(標簽=1.0,重量=1.0,特性=向量密集的(0.0,5.0)),(標簽=0.0,重量=2.0,特性=向量密集的(1.0,2.0)),(標簽=1.0,重量=3.0,特性=向量密集的(2.0,1.0)),(標簽=0.0,重量=4.0,特性=向量密集的(3.0,3.0))))toDF()> > >blor=LogisticRegression(weightCol=“重量”)> > >blorgetRegParam()0.0> > >blorsetRegParam(0.01)LogisticRegression……> > >blorgetRegParam()0.01> > >blorsetMaxIter(10)LogisticRegression……> > >blorgetMaxIter()10> > >blor清晰的(blor麥克斯特)> > >blorModel=blor適合(快速公車提供)> > >blorModelsetFeaturesCol(“特征”)LogisticRegressionModel……> > >blorModelsetProbabilityCol(“newProbability”)LogisticRegressionModel……> > >blorModelgetProbabilityCol()“newProbability”> > >blorModelgetMaxBlockSizeInMB()0.0> > >blorModelsetThreshold(0.1)LogisticRegressionModel……> > >blorModelgetThreshold()0.1> > >blorModel係數DenseVector ([-1.080…,-0.646……)> > >blorModel攔截3.112……> > >blorModel評估(快速公車提供)精度= =blorModel總結精度真正的> > >data_path=“數據/ mllib / sample_multiclass_classification_data.txt”> > >mdf=火花格式(“libsvm”)負載(data_path)> > >mlor=LogisticRegression(regParam=0.1,elasticNetParam=1.0,家庭=“多項”)> > >mlorModel=mlor適合(mdf)> > >mlorModelcoefficientMatrixSparseMatrix (3、4、[0, 1, 2, 3], [3,2,1], [1.87……,-2.75……,-0.50……),1)> > >mlorModelinterceptVectorDenseVector ([0.04…,-0.42……,0。37...])> > >電平=sc並行化([(特性=向量密集的(- - - - - -1.0,1.0))))toDF()> > >blorModel預測(電平()特性)1.0> > >blorModelpredictRaw(電平()特性)DenseVector ([-3.54…,3.54……)> > >blorModelpredictProbability(電平()特性)DenseVector ([0.028, 0.972])> > >結果=blorModel變換(電平)()> > >結果預測1.0> > >結果newProbabilityDenseVector ([0.02…,0.97……)> > >結果rawPredictionDenseVector ([-3.54…,3.54……)> > >test1=sc並行化([(特性=向量稀疏的(2,(0),(1.0)))))toDF()> > >blorModel變換(test1)()預測1.0> > >blorsetparam(“向量”)回溯(最近的電話):TypeError:關鍵字參數方法setparam力量。> > >lr_path=temp_path+“/ lr”> > >blor保存(lr_path)> > >lr2=LogisticRegression負載(lr_path)> > >lr2getRegParam()0.01> > >model_path=temp_path+“/ lr_model”> > >blorModel保存(model_path)> > >model2=LogisticRegressionModel負載(model_path)> > >blorModel係數(0]= =model2係數(0]真正的> > >blorModel攔截= =model2攔截真正的> > >model2LogisticRegressionModel: uid =…numClasses = 2, numFeatures = 2> > >blorModel變換(電平)(1)= =model2變換(電平)(1)真正的

方法

清晰的(參數)

清除參數映射的參數是否被顯式地設置。

複製((額外的))

創建這個實例的副本具有相同uid和一些額外的參數。

explainParam(參數)

解釋一個參數並返回它的名字,醫生,和可選的默認值,用戶提供的字符串值。

explainParams()

返回文檔的所有參數選擇默認值和用戶提供的值。

extractParamMap((額外的))

提取嵌入默認參數值和用戶提供的值,然後合並他們額外的值從輸入平麵參數映射,後者使用價值如果存在衝突,即。排序:默認參數值< <額外的用戶提供的值。

適合(數據集[params))

適合一個模型與可選參數的輸入數據集。

fitMultiple(paramMaps數據集)

適合一個模型為每個參數映射的輸入數據集paramMaps

getAggregationDepth()

得到的價值aggregationDepth或其默認值。

getElasticNetParam()

得到的價值elasticNetParam或其默認值。

getFamily()

獲得的價值家庭或其默認值。

getFeaturesCol()

得到的價值featuresCol或其默認值。

getFitIntercept()

得到的價值fitIntercept或其默認值。

getLabelCol()

得到的價值labelCol或其默認值。

getLowerBoundsOnCoefficients()

獲得的價值lowerBoundsOnCoefficients

getLowerBoundsOnIntercepts()

獲得的價值lowerBoundsOnIntercepts

getMaxBlockSizeInMB()

得到的價值maxBlockSizeInMB或其默認值。

getMaxIter()

麥克斯特的價值或其默認值。

getOrDefault(參數)

得到參數的值在用戶提供的參數映射或其默認值。

getParam(paramName)

通過它的名稱參數。

getPredictionCol()

得到的價值predictionCol或其默認值。

getProbabilityCol()

得到的價值probabilityCol或其默認值。

getRawPredictionCol()

得到的價值rawPredictionCol或其默認值。

getRegParam()

得到的價值regParam或其默認值。

getStandardization()

被標準化的價值或其默認值。

getThreshold()

獲得二進製分類閾值。

getThresholds()

如果閾值設置,返回其值。

getTol()

被托爾的價值或其默認值。

getUpperBoundsOnCoefficients()

獲得的價值upperBoundsOnCoefficients

getUpperBoundsOnIntercepts()

獲得的價值upperBoundsOnIntercepts

getWeightCol()

得到的價值weightCol或其默認值。

hasDefault(參數)

檢查是否一個參數有默認值。

hasParam(paramName)

測試這個實例包含一個參數是否與給定名稱(字符串)。

isDefined(參數)

檢查參數是否由用戶或顯式地設置一個默認值。

收取(參數)

檢查參數是否由用戶顯式地設置。

負載(路徑)

從輸入路徑,讀取一個毫升實例的快捷方式read () .load(路徑)

()

返回一個MLReader這個類的實例。

保存(路徑)

這個毫升實例保存到給定的路徑,一個快捷方式的“寫().save(路徑)。

(參數值)

設置一個參數嵌入參數映射。

setAggregationDepth(值)

設置的值aggregationDepth

setElasticNetParam(值)

設置的值elasticNetParam

setFamily(值)

設置的值家庭

setFeaturesCol(值)

設置的值featuresCol

setFitIntercept(值)

設置的值fitIntercept

setLabelCol(值)

設置的值labelCol

setLowerBoundsOnCoefficients(值)

設置的值lowerBoundsOnCoefficients

setLowerBoundsOnIntercepts(值)

設置的值lowerBoundsOnIntercepts

setMaxBlockSizeInMB(值)

設置的值maxBlockSizeInMB

setMaxIter(值)

設置的值麥克斯特

setparam(* [,labelCol featuresCol…))

setparam(自我,*,featuresCol =“特性”,labelCol =“標簽”,predictionCol =“預測”,麥克斯特= 100,regParam = 0.0, elasticNetParam = 0.0, tol = 1 e-6, fitIntercept = True,閾值= 0.5,=沒有閾值,probabilityCol =“概率”,rawPredictionCol =“rawPrediction”,標準化= True, weightCol = None, aggregationDepth = 2,家庭=“汽車”,lowerBoundsOnCoefficients = None, upperBoundsOnCoefficients = None, lowerBoundsOnIntercepts = None, upperBoundsOnIntercepts = None, maxBlockSizeInMB = 0.0):集邏輯回歸的參數。

setPredictionCol(值)

設置的值predictionCol

setProbabilityCol(值)

設置的值probabilityCol

setRawPredictionCol(值)

設置的值rawPredictionCol

setRegParam(值)

設置的值regParam

setStandardization(值)

設置的值標準化

setThreshold(值)

設置的值閾值

setThresholds(值)

設置的值閾值

setTol(值)

設置的值托爾

setUpperBoundsOnCoefficients(值)

設置的值upperBoundsOnCoefficients

setUpperBoundsOnIntercepts(值)

設置的值upperBoundsOnIntercepts

setWeightCol(值)

設置的值weightCol

()

返回一個MLWriter實例毫升實例。

屬性

aggregationDepth

elasticNetParam

家庭

featuresCol

fitIntercept

labelCol

lowerBoundsOnCoefficients

lowerBoundsOnIntercepts

maxBlockSizeInMB

麥克斯特

參數個數

返回所有參數命令的名字。

predictionCol

probabilityCol

rawPredictionCol

regParam

標準化

閾值

閾值

托爾

upperBoundsOnCoefficients

upperBoundsOnIntercepts

weightCol

方法的文檔

清晰的 ( 參數: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

合並後的參數映射

適合 ( 數據集:pyspark.sql.dataframe.DataFrame,參數個數:聯盟[ParamMap、列表(ParamMap)元組(ParamMap),沒有一個)=沒有一個 )→聯盟(,列表(] ]

適合一個模型與可選參數的輸入數據集。

參數
數據集 pyspark.sql.DataFrame

輸入數據集。

參數個數 dict或列表或元組,可選的

一個可選的參數覆蓋嵌入參數的地圖。如果列表/元組的參數映射,這適用於每一個參數並返回一個列表的模型映射。

返回
變壓器或者一個列表變壓器

擬合模型(年代)

fitMultiple ( 數據集:pyspark.sql.dataframe.DataFrame,paramMaps:序列(ParamMap] )→迭代器(元組(int,] ]

適合一個模型為每個參數映射的輸入數據集paramMaps

參數
數據集 pyspark.sql.DataFrame

輸入數據集。

paramMaps collections.abc.Sequence

一係列的參數映射。

返回
_FitMultipleIterator

一個線程安全的iterable包含為每個參數映射模型。每次調用下一個(modelIterator)將返回(指數模型)模型是適合使用在哪裏paramMaps(指數)指數值可能不是連續的。

getAggregationDepth ( )→int

得到的價值aggregationDepth或其默認值。

getElasticNetParam ( )→浮動

得到的價值elasticNetParam或其默認值。

getFamily ( )→str

獲得的價值家庭或其默認值。

getFeaturesCol ( )→str

得到的價值featuresCol或其默認值。

getFitIntercept ( )→bool

得到的價值fitIntercept或其默認值。

getLabelCol ( )→str

得到的價值labelCol或其默認值。

getLowerBoundsOnCoefficients ( )pyspark.ml.linalg.Matrix

獲得的價值lowerBoundsOnCoefficients

getLowerBoundsOnIntercepts ( )pyspark.ml.linalg.Vector

獲得的價值lowerBoundsOnIntercepts

getMaxBlockSizeInMB ( )→浮動

得到的價值maxBlockSizeInMB或其默認值。

getMaxIter ( )→int

麥克斯特的價值或其默認值。

getOrDefault ( 參數:聯盟(str,pyspark.ml.param.Param(T]] )→聯盟(任何,T]

得到參數的值在用戶提供的參數映射或其默認值。如果沒有設置提出了一個錯誤。

getParam ( paramName:str )pyspark.ml.param.Param

通過它的名稱參數。

getPredictionCol ( )→str

得到的價值predictionCol或其默認值。

getProbabilityCol ( )→str

得到的價值probabilityCol或其默認值。

getRawPredictionCol ( )→str

得到的價值rawPredictionCol或其默認值。

getRegParam ( )→浮動

得到的價值regParam或其默認值。

getStandardization ( )→bool

被標準化的價值或其默認值。

getThreshold ( )→浮動

獲得二進製分類閾值。

如果閾值設置長度為2(即。,binary classification), this returns the equivalent threshold:\ \(壓裂{1}{1 + \壓裂{閾值(0)}{閾值(1)}}\)。否則,返回閾值如果設置如果設置或其默認值。

getThresholds ( )→列表(浮動]

如果閾值設置,返回其值。否則,如果閾值設置,返回對應的二進製分類閾值:(閾閾值)。如果沒有設置,拋出一個錯誤。

getTol ( )→浮動

被托爾的價值或其默認值。

getUpperBoundsOnCoefficients ( )pyspark.ml.linalg.Matrix

獲得的價值upperBoundsOnCoefficients

getUpperBoundsOnIntercepts ( )pyspark.ml.linalg.Vector

獲得的價值upperBoundsOnIntercepts

getWeightCol ( )→str

得到的價值weightCol或其默認值。

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,價值:任何 )→沒有

設置一個參數嵌入參數映射。

setAggregationDepth ( 價值:int )pyspark.ml.classification.LogisticRegression

設置的值aggregationDepth

setElasticNetParam ( 價值:浮動 )pyspark.ml.classification.LogisticRegression

設置的值elasticNetParam

setFamily ( 價值:str )pyspark.ml.classification.LogisticRegression

設置的值家庭

setFeaturesCol ( 價值:str )→P

設置的值featuresCol

setFitIntercept ( 價值:bool )pyspark.ml.classification.LogisticRegression

設置的值fitIntercept

setLabelCol ( 價值:str )→P

設置的值labelCol

setLowerBoundsOnCoefficients ( 價值:pyspark.ml.linalg.Matrix )pyspark.ml.classification.LogisticRegression

設置的值lowerBoundsOnCoefficients

setLowerBoundsOnIntercepts ( 價值:pyspark.ml.linalg.Vector )pyspark.ml.classification.LogisticRegression

設置的值lowerBoundsOnIntercepts

setMaxBlockSizeInMB ( 價值:浮動 )pyspark.ml.classification.LogisticRegression

設置的值maxBlockSizeInMB

setMaxIter ( 價值:int )pyspark.ml.classification.LogisticRegression

設置的值麥克斯特

setparam ( *,featuresCol:str=“特性”,labelCol:str=“標簽”,predictionCol:str=“預測”,麥克斯特:int=One hundred.,regParam:浮動=0.0,elasticNetParam:浮動=0.0,托爾:浮動=1 e-06,fitIntercept:bool=真正的,閾值:浮動=0.5,閾值:可選(列表(浮動]]=沒有一個,probabilityCol:str=“概率”,rawPredictionCol:str=“rawPrediction”,標準化:bool=真正的,weightCol:可選(str]=沒有一個,aggregationDepth:int=2,家庭:str=“汽車”,lowerBoundsOnCoefficients:可選(pyspark.ml.linalg.Matrix]=沒有一個,upperBoundsOnCoefficients:可選(pyspark.ml.linalg.Matrix]=沒有一個,lowerBoundsOnIntercepts:可選(pyspark.ml.linalg.Vector]=沒有一個,upperBoundsOnIntercepts:可選(pyspark.ml.linalg.Vector]=沒有一個,maxBlockSizeInMB:浮動=0.0 )pyspark.ml.classification.LogisticRegression

setparam(自我,*,featuresCol =“特性”,labelCol =“標簽”,predictionCol =“預測”,麥克斯特= 100,regParam = 0.0, elasticNetParam = 0.0, tol = 1 e-6, fitIntercept = True,閾值= 0.5,=沒有閾值,probabilityCol =“概率”,rawPredictionCol =“rawPrediction”,標準化= True, weightCol = None, aggregationDepth = 2,家庭=“汽車”,lowerBoundsOnCoefficients = None, upperBoundsOnCoefficients = None, lowerBoundsOnIntercepts = None, upperBoundsOnIntercepts = None, maxBlockSizeInMB = 0.0):集邏輯回歸的參數。如果閾值和閾值參數都設置,它們必須是等價的。

setPredictionCol ( 價值:str )→P

設置的值predictionCol

setProbabilityCol ( 價值:str )→P

設置的值probabilityCol

setRawPredictionCol ( 價值:str )→P

設置的值rawPredictionCol

setRegParam ( 價值:浮動 )pyspark.ml.classification.LogisticRegression

設置的值regParam

setStandardization ( 價值:bool )pyspark.ml.classification.LogisticRegression

設置的值標準化

setThreshold ( 價值:浮動 )→P

設置的值閾值。清除的價值閾值如果它被設置。

setThresholds ( 價值:列表(浮動] )→P

設置的值閾值

setTol ( 價值:浮動 )pyspark.ml.classification.LogisticRegression

設置的值托爾

setUpperBoundsOnCoefficients ( 價值:pyspark.ml.linalg.Matrix )pyspark.ml.classification.LogisticRegression

設置的值upperBoundsOnCoefficients

setUpperBoundsOnIntercepts ( 價值:pyspark.ml.linalg.Vector )pyspark.ml.classification.LogisticRegression

設置的值upperBoundsOnIntercepts

setWeightCol ( 價值:str )pyspark.ml.classification.LogisticRegression

設置的值weightCol

( )→pyspark.ml.util.JavaMLWriter

返回一個MLWriter實例毫升實例。

屬性的文檔

aggregationDepth =參數(父母=‘定義’,name = ' aggregationDepth ', doc =的建議深度treeAggregate (> = 2)。)
elasticNetParam =參數(父母=‘定義’,name = ' elasticNetParam ', doc = ' ElasticNet混合參數,在區間[0,1]。L2為α= 0,懲罰是一種懲罰。L1為α= 1,這是一個點球。”)
家庭 =參數(父母=‘定義’,name = '家庭',doc = '家人的名字標簽的描述是分布在模型中使用。支持選擇:汽車、二項、多項”)
featuresCol =參數(父母=‘定義’,name = ' featuresCol ', doc =功能列名稱。)
fitIntercept =參數(父母=‘定義’,name = ' fitIntercept ', doc =是否適合一個截距項。)
labelCol =參數(父母=‘定義’,name = ' labelCol ', doc =“標簽列名。”)
lowerBoundsOnCoefficients =參數(父母=‘定義’,name = ' lowerBoundsOnCoefficients ', doc = '的下界如果綁定約束優化下擬合係數。約束矩陣必須兼容的形狀(1、功能)二項式回歸,或(數量的類,數量的特性)多項式回歸。”)
lowerBoundsOnIntercepts =參數(父母=‘定義’,name = ' lowerBoundsOnIntercepts ', doc = '攔截,如果合適的上下界約束優化。邊界向量的大小必須與1 beequal二項式回歸,或為多項式回歸oflasses數量。”)
maxBlockSizeInMB =參數(父母=‘定義’,name = ' maxBlockSizeInMB ',醫生在MB = '最大內存疊加輸入數據塊。數據分區內堆放。如果超過剩餘的數據大小的分區是調整大小的數據。默認0.0代表了選擇最優值,取決於特定的算法。必須> = 0”。)
麥克斯特 =參數(父母=‘定義’,name =“麥克斯特”,醫生=“馬克斯(> = 0)的迭代次數。)
參數個數

返回所有參數命令的名字。默認實現使用dir ()所有的屬性類型參數

predictionCol =參數(父母=‘定義’,name = ' predictionCol ', doc =預測列名稱。)
probabilityCol =參數(父母=‘定義’,name = ' probabilityCol ', doc = '列名為預測類條件概率。注意:並不是所有的模型輸出精確校準的概率估計!這些概率應該被視為機密,而不是精確的概率。”)
rawPredictionCol =參數(父母=‘定義’,name = ' rawPredictionCol ', doc =“原始預測(又名信心)列名”。)
regParam =參數(父母=‘定義’,name = ' regParam ', doc =“正則化參數(> = 0)”。)
標準化 =參數(父母=‘定義’,name =“標準化”,醫生=是否規範培訓特性擬合模型之前。)
閾值 =參數(父母=‘定義’,name =“閾值”,醫生= '閾值以二進製分類預測,在區間[0,1]。如果閾值和閾值都是,他們必須match.e.g。如果閾值p,那麼閾值必須等於1 - p, p。”)
閾值 =參數(父母=‘定義’,name =“閾值”,醫生=“多層次分類閾值調整的概率預測每個類。數組長度必須等於類的數量,最多值> 0,除了一個值可能是0。類最大的值p / t是預測,p是原始類和t的概率是類的門檻。”)
托爾 =參數(父母=‘定義’,name =“托爾”,醫生=迭代算法的收斂公差(> = 0)”。)
upperBoundsOnCoefficients =參數(父母=‘定義’,name = ' upperBoundsOnCoefficients ', doc = '的上界如果綁定約束優化下擬合係數。約束矩陣必須兼容的形狀(1、功能)二項式回歸,或(數量的類,數量的特性)多項式回歸。”)
upperBoundsOnIntercepts =參數(父母=‘定義’,name = ' upperBoundsOnIntercepts ', doc = '的上界攔截如果配件在綁定約束優化。綁定向量的大小必須等於1二項式回歸,或為多項式回歸類的數量。”)
weightCol =參數(父母=‘定義’,name = ' weightCol ', doc = '體重列名。如果這不是設置或空,我們對所有實例權重為1.0。”)