valmodel =new LogisticRegressionWithLBFGS().setNumClasses(10).run(training)
這段代碼是直接使用了此邏輯回歸
L-BFGS算法就是對擬牛頓算法的一個改進。它的名字已經告訴我們它是基于擬牛頓法BFGS算法的改進。L-BFGS算法的基本思想是:算法只保存并利用最近m次迭代的曲率信息來構造海森矩陣的近似矩陣。
擬牛頓法
是求解非線性優(yōu)化問題最有效的方法之一,擬牛頓法只要求每一步迭代時知道目標函數(shù)的梯度。
先介紹下邏輯回歸!
Logistic回歸與多重線性回歸實際上有很多相同之處,最大的區(qū)別就在于它們的因變量不同,其他的基本都差不多。正是因為如此,這兩種回歸可以歸于同一個家族,即廣義線性模型(generalizedlinear model)。
這一家族中的模型形式基本上都差不多,不同的就是因變量不同。
如果是連續(xù)的,就是多重線性回歸;
如果是二項分布,就是Logistic回歸;
如果是Poisson分布,就是Poisson回歸;
如果是負二項分布,就是負二項回歸。
Logistic回歸的因變量可以是二分類的,也可以是多分類的,但是二分類的更為常用,也更加容易解釋。所以實際中最常用的就是二分類的Logistic回歸。
Logistic回歸的主要用途:
尋找危險因素:尋找某一疾病的危險因素等;
預測:根據(jù)模型,預測在不同的自變量情況下,發(fā)生某病或某種情況的概率有多大;
判別:實際上跟預測有些類似,也是根據(jù)模型,判斷某人屬于某病或屬于某種情況的概率有多大,也就是看一下這個人有多大的可能性是屬于某病。
Logistic回歸主要在流行病學中應用較多,比較常用的情形是探索某疾病的危險因素,根據(jù)危險因素預測某疾病發(fā)生的概率,等等。例如,想探討胃癌發(fā)生的危險因素,可以選擇兩組人群,一組是胃癌組,一組是非胃癌組,兩組人群肯定有不同的體征和生活方式等。這里的因變量就是是否胃癌,即“是”或“否”,自變量就可以包括很多了,例如年齡、性別、飲食習慣、幽門螺桿菌感染等。自變量既可以是連續(xù)的,也可以是分類的。
常規(guī)步驟
Regression問題的常規(guī)步驟為:
尋找h函數(shù)(即hypothesis);
構造J函數(shù)(損失函數(shù));
想辦法使得J函數(shù)最小并求得回歸參數(shù)(θ)