本篇內(nèi)容主要講解“python Logistic回歸怎么實(shí)現(xiàn)”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“python Logistic回歸怎么實(shí)現(xiàn)”吧!
創(chuàng)新互聯(lián)公司從2013年開(kāi)始,是專(zhuān)業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元岱岳做網(wǎng)站,已為上家服務(wù),為岱岳各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792
不要被它的名字弄糊涂!它是一種分類(lèi)而非回歸算法。它用于根據(jù)給定的自變量集估計(jì)離散值(二進(jìn)制值,如0/1,yes/no,true/false)。簡(jiǎn)單來(lái)說(shuō),它通過(guò)將數(shù)據(jù)擬合到logit函數(shù)來(lái)預(yù)測(cè)事件發(fā)生的概率。因此,它也被稱為logit回歸。由于它預(yù)測(cè)概率,因此其輸出值介于0和1之間(如預(yù)期的那樣)。
再次,讓我們通過(guò)一個(gè)簡(jiǎn)單的例子來(lái)嘗試?yán)斫膺@一點(diǎn)。
假設(shè)你的朋友給你一個(gè)難題來(lái)解決。只有2個(gè)結(jié)果場(chǎng)景 - 要么你解決它,要么你沒(méi)解決?,F(xiàn)在想象一下,你正在獲得各種各樣的謎題/測(cè)驗(yàn),試圖了解你擅長(zhǎng)哪些科目。這項(xiàng)研究的結(jié)果將是這樣的 - 如果給你一個(gè)基于三角測(cè)量的十年級(jí)問(wèn)題,你有70%的可能解決它。另一方面,如果是第五級(jí)歷史問(wèn)題,獲得答案的概率僅為30%。這就是Logistic回歸為您提供的。
在數(shù)學(xué)領(lǐng)域,結(jié)果的對(duì)數(shù)幾率被建模為預(yù)測(cè)變量的線性組合:
odds= p/ (1-p) = probability of event occurrence / probability of not event occurrence
ln(odds) = ln(p/(1-p))
logit(p) = ln(p/(1-p)) = b0+b1X1+b2X2+b3X3....+bkXk
以上,p是存在感興趣特征的概率。它選擇的參數(shù)最大化觀察樣本值的可能性,而不是最小化誤差平方和(如普通回歸)。
現(xiàn)在,您可能會(huì)問(wèn),為什么要使用log函數(shù)?為簡(jiǎn)單起見(jiàn),我們只是說(shuō)這是復(fù)制步進(jìn)函數(shù)的最佳數(shù)學(xué)方法之一。我可以詳細(xì)介紹,但這會(huì)超出本文的目的。
來(lái)看使用python的scikit-learn完成的Logistic回歸案例:
# ## 使用Scikit-learn的LogisticRegression完成測(cè)試案例# In[30]:import pandas as pdfrom sklearn.linear_model import LogisticRegressionfrom sklearn.metrics import accuracy_score# ### 讀取訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)集# In[31]:train_data = pd.read_csv('train-data.csv')test_data = pd.read_csv('test-data.csv')print(train_data.head())# ### 打印訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)形狀# In[32]:print('Shape of training data :',train_data.shape)print('Shape of testing data :',test_data.shape)# In[33]:#現(xiàn)在,我們需要預(yù)測(cè)測(cè)試數(shù)據(jù)中缺少的目標(biāo)變量# target變量 - Survived#在訓(xùn)練數(shù)據(jù)上分離獨(dú)立變量和目標(biāo)變量train_x = train_data.drop(columns=['Survived'],axis=1)train_y = train_data['Survived']#在測(cè)試數(shù)據(jù)上分離獨(dú)立變量和目標(biāo)變量test_x = test_data.drop(columns=['Survived'],axis=1)test_y = test_data['Survived']model = LogisticRegression(solver='liblinear')model.fit(train_x,train_y)# In[34]:#訓(xùn)練模型的系數(shù)print('Coefficient of model :', model.coef_)#攔截模型print('Intercept of model',model.intercept_)# In[35]:# 預(yù)測(cè)訓(xùn)練數(shù)據(jù)集predict_train = model.predict(train_x)# 訓(xùn)練數(shù)據(jù)集得分accuracy_train = accuracy_score(train_y,predict_train)print('accuracy_score on train dataset : ', accuracy_train)# In[36]:# 預(yù)測(cè)測(cè)試數(shù)據(jù)集predict_test = model.predict(test_x)# 測(cè)試數(shù)據(jù)集得分accuracy_test = accuracy_score(test_y,predict_test)print('accuracy_score on test dataset : ', accuracy_test)
到此,相信大家對(duì)“python Logistic回歸怎么實(shí)現(xiàn)”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
本文標(biāo)題:pythonLogistic回歸怎么實(shí)現(xiàn)
轉(zhuǎn)載注明:http://chinadenli.net/article30/ihscpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、網(wǎng)站制作、App設(shè)計(jì)、響應(yīng)式網(wǎng)站、微信小程序、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)