国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

這篇具有很好參考價值的文章主要介紹了機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

基于邏輯回歸對股票客戶流失預(yù)測分析

作者:i阿極

作者簡介:Python領(lǐng)域新星作者、多項比賽獲獎?wù)撸翰┲鱾€人首頁

??????如果覺得文章不錯或能幫助到你學(xué)習(xí),可以點贊??收藏??評論??+關(guān)注哦!??????

??????如果有小伙伴需要數(shù)據(jù)集和學(xué)習(xí)交流,文章下方有交流學(xué)習(xí)區(qū)!一起學(xué)習(xí)進(jìn)步!??


專欄案例:機器學(xué)習(xí)案例
機器學(xué)習(xí)(一):線性回歸之最小二乘法
機器學(xué)習(xí)(二):線性回歸之梯度下降法
機器學(xué)習(xí)(三):基于線性回歸對波士頓房價預(yù)測
機器學(xué)習(xí)(四):基于KNN算法對鳶尾花類別進(jìn)行分類預(yù)測
機器學(xué)習(xí)(五):基于KNN模型對高爐發(fā)電量進(jìn)行回歸預(yù)測分析
機器學(xué)習(xí)(六):基于高斯貝葉斯對面部皮膚進(jìn)行預(yù)測分析
機器學(xué)習(xí)(七):基于多項式貝葉斯對蘑菇毒性分類預(yù)測分析
機器學(xué)習(xí)(十四):基于邏輯回歸對超市銷售活動預(yù)測分析
機器學(xué)習(xí)(十五):基于神經(jīng)網(wǎng)絡(luò)對用戶評論情感分析預(yù)測
機器學(xué)習(xí)(十六):線性回歸分析女性身高與體重之間的關(guān)系
機器學(xué)習(xí)(十七):基于支持向量機(SVM)進(jìn)行人臉識別預(yù)測
機器學(xué)習(xí)(十八):基于邏輯回歸對優(yōu)惠券使用情況預(yù)測分析
機器學(xué)習(xí)(十九):基于邏輯回歸對某銀行客戶違約預(yù)測分析
機器學(xué)習(xí)(二十):基于樸素貝葉斯對花瓣花萼的寬度和長度分類預(yù)測
機器學(xué)習(xí)(二十一):LightGBM算法原理(附案例實戰(zhàn))


1、邏輯回歸模型原理

邏輯回歸(Logistic Regression)是一種二分類的監(jiān)督學(xué)習(xí)算法,用于預(yù)測樣本的概率屬于某一類別的概率。相比于線性回歸,邏輯回歸可以更好地處理分類問題。

邏輯回歸的核心思想是,通過對樣本特征進(jìn)行線性組合,得到一個連續(xù)的預(yù)測值,然后通過一個函數(shù)將其映射到0和1之間的概率值。這個映射函數(shù)通常采用Sigmoid函數(shù),其數(shù)學(xué)表達(dá)式為:
機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

其中 y y y為線性組合的結(jié)果, e e e為自然常數(shù)。機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

邏輯回歸模型的數(shù)學(xué)表達(dá)式為:
機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

其中, θ \theta θ是需要學(xué)習(xí)的參數(shù), x x x是輸入的樣本特征向量。

我們的目標(biāo)是最大化訓(xùn)練樣本的似然函數(shù),即:
機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

其中, m m m是訓(xùn)練樣本數(shù), y ( i ) y^{(i)} y(i)為樣本 i i i的真實標(biāo)簽。

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

我們的目標(biāo)是最大化對數(shù)似然函數(shù),即:
機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

可以使用梯度下降等優(yōu)化算法來求解最優(yōu)參數(shù) θ \theta θ。

邏輯回歸的優(yōu)點包括:

  • 簡單易懂,容易解釋
  • 計算量小,速度快
  • 適用于線性可分和線性不可分的二分類問題

邏輯回歸的缺點包括:

  • 對異常值敏感
  • 對特征相關(guān)性敏感
  • 不能很好地處理多分類問題

2、實驗環(huán)境

python 3.9

anaconda

jupyter notebook

3、模型LogisticRegression函數(shù)介紹

LogisticRegression(penalty='l2', dual=False, tol=0.0001, C=1.0, fit_intercept=True, intercept_scaling=1,
                               class_weight=None, random_state=None, solver= 'liblinear',max_iter=100, 
                               multi_class='ovr', verbose=0, warm_start=False, n_jobs=1)
  • penalty:為Logistic回歸模型的目標(biāo)函數(shù)添加正則化懲罰項,與線性回歸模型類似,默認(rèn)為l2正則

  • dual:bool類型參數(shù),是否求解對偶形式,默認(rèn)為False,只有當(dāng)penalty參數(shù)為’l2’、solver參數(shù)為’liblinear’時,才可使用對偶形式

  • tol:用于指定模型跌倒收斂的閾值

  • C:用于指定懲罰項系數(shù)Lambda的倒數(shù),值越小,正則化項越大

  • fit_intercept:bool類型參數(shù),是否擬合模型的截距項,默認(rèn)為True

  • intercept_scaling:當(dāng)solver參數(shù)為’liblinear’時該參數(shù)有效,主要是為了降低X矩陣中人為設(shè)定的常數(shù)列1的影響

  • class_weight:用于指定因變量類別的權(quán)重,如果為字典,則通過字典的形式{class_label:weight}傳遞每個類別的權(quán)重;如果為字符串’balanced’,則每個分類的權(quán)重與實際樣本中的比例成反比,當(dāng)各分類存在嚴(yán)重不平衡時,設(shè)置為’balanced’會比較好;如果為None,則表示每個分類的權(quán)重相等

  • random_state:用于指定隨機數(shù)生成器的種子

  • solver:用于指定求解目標(biāo)函數(shù)最優(yōu)化的算法,默認(rèn)為’liblinear’,還有其他選項,如牛頓法’newton-cg’、L-BFGS擬牛頓法’lbfgs’

  • max_iter:指定模型求解過程中的最大迭代次數(shù), 默認(rèn)為100

  • multi_class:如果因變量不止兩個分類,可以通過該參數(shù)指定多分類問題的解決辦法,默認(rèn)采用’ovr’,即one-vs-rest方法,還可以指定’multinomial’,表示直接使用多分類邏輯回歸模型(Softmax分類)

  • verbose:bool類型參數(shù),是否輸出模型迭代過程的信息,默認(rèn)為0,表示不輸出

  • warm_start:bool類型參數(shù),是否基于上一次的訓(xùn)練結(jié)果繼續(xù)訓(xùn)練模型,默認(rèn)為False,表示每次迭代都是從頭開始

  • n_jobs:指定模型運算時使用的CPU數(shù)量,默認(rèn)為1,如果為-1,表示使用所有可用的CPU

4、邏輯回歸實戰(zhàn)案例

4.1案例背景

在進(jìn)行每一筆股票交易的時候,交易者(股民)都是要付給開戶所在的證券公司一些手續(xù)費的,雖然單筆交易的手續(xù)費并不高,然而股票市場每日都有巨額的成交量,使得每一筆交易的手續(xù)費匯總起來的數(shù)目相當(dāng)可觀,而這一部分收入對于一些證券公司來說很重要,甚至可以占到所有營業(yè)收入50%以上,因此證券公司對于客戶(也即交易者)的忠誠度和活躍度是很看重的。

如果一個客戶不再通過該證券公司交易,也即該客戶流失了,那么對于證券公司來說便損失了一個收入來源,因此證券公司會搭建一套客戶流失預(yù)警模型來預(yù)測交易者是否會流失,從而對于流失概率較大的客戶進(jìn)行相應(yīng)的挽回措施,因為通常情況下,獲得新客戶的成本比保留現(xiàn)有客戶的成本要高的多。

4.2數(shù)據(jù)讀取和數(shù)據(jù)集劃分

讀取數(shù)據(jù)并展示前五行數(shù)據(jù)

import pandas as pd
df = pd.read_excel('股票客戶流失.xlsx')
df.head()

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

劃分特征變量和目標(biāo)變量

X = df.drop(columns='是否流失') 
y = df['是否流失']   

劃分訓(xùn)練集和測試集

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=1)  # 設(shè)置random_state使得每次劃分的數(shù)據(jù)一樣

X_train.head()  # 顯示訓(xùn)練集X_train的前5行

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

4.3模型建立與預(yù)測評價

模型搭建

from sklearn.linear_model import LogisticRegression
model = LogisticRegression()
model.fit(X_train, y_train)

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析
預(yù)測數(shù)據(jù)結(jié)果

y_pred = model.predict(X_test)
print(y_pred[0:100])  # 打印預(yù)測內(nèi)容的前100個看看

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

放到一個DataFrame里進(jìn)行查看比對

a = pd.DataFrame()  # 創(chuàng)建一個空DataFrame 
a['預(yù)測值'] = list(y_pred)
a['實際值'] = list(y_test)
a.head()  # 可以看到此時前5個預(yù)測準(zhǔn)確度為80%

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

看全部的預(yù)測準(zhǔn)確度

from sklearn.metrics import accuracy_score
score = accuracy_score(y_pred, y_test)
print(score)

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析
預(yù)測概率

y_pred_proba = model.predict_proba(X_test)  
y_pred_proba[0:5]

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析
查看概率的方式

a = pd.DataFrame(y_pred_proba, columns=['不流失概率', '流失概率'])
a.head()

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析
查看流失的概率

y_pred_proba[:,1]

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

4.4繪制ROC曲線

計算ROC曲線需要的假警報率(fpr)、命中率(tpr)及閾值(thres)

from sklearn.metrics import roc_curve
fpr, tpr, thres = roc_curve(y_test, y_pred_proba[:,1])
a = pd.DataFrame()  # 創(chuàng)建一個空DataFrame 
a['閾值'] = list(thres)
a['假警報率'] = list(fpr)
a['命中率'] = list(tpr)
a.head()

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

繪制ROC曲線

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei']  # 設(shè)置中文
plt.plot(fpr, tpr)  # 通過plot()函數(shù)繪制折線圖
plt.title('ROC曲線')  # 添加標(biāo)題,注意如果要寫中文,需要在之前添加一行代碼:plt.rcParams['font.sans-serif'] = ['SimHei']
plt.xlabel('FPR')  # 添加X軸標(biāo)簽
plt.ylabel('TPR')  # 添加Y軸標(biāo)
plt.show()

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析

求出模型的AUC值

from sklearn.metrics import roc_auc_score
score = roc_auc_score(y_test, y_pred_proba[:,1])
score

機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析


??文章下方有交流學(xué)習(xí)區(qū)!一起學(xué)習(xí)進(jìn)步!??????
??首發(fā)CSDN博客,創(chuàng)作不易,如果覺得文章不錯,可以點贊??收藏??評論??
??你的支持和鼓勵是我創(chuàng)作的動力???文章來源地址http://www.zghlxwxcb.cn/news/detail-425799.html

到了這里,關(guān)于機器學(xué)習(xí):基于邏輯回歸(Logistic Regression)對股票客戶流失預(yù)測分析的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 多元回歸預(yù)測 | Matlab基于邏輯回歸(Logistic Regression)的數(shù)據(jù)回歸預(yù)測,多輸入單輸出模型

    多元回歸預(yù)測 | Matlab基于邏輯回歸(Logistic Regression)的數(shù)據(jù)回歸預(yù)測,多輸入單輸出模型

    效果一覽 文章概述 多元回歸預(yù)測 | Matlab基于邏輯回歸(Logistic Regression)的數(shù)據(jù)回歸預(yù)測,多輸入單輸出模型 評價指標(biāo)包括:MAE、RMSE和R2等,代碼質(zhì)量極高,方便學(xué)習(xí)和替換數(shù)據(jù)。要求2018版本及以上。 部分源碼

    2024年02月13日
    瀏覽(23)
  • 機器學(xué)習(xí)實戰(zhàn):Python基于Logistic邏輯回歸進(jìn)行分類預(yù)測(一)

    機器學(xué)習(xí)實戰(zhàn):Python基于Logistic邏輯回歸進(jìn)行分類預(yù)測(一)

    1.1 Logistic回歸的介紹 邏輯回歸( Logistic regression ,簡稱 LR )是一種經(jīng)典的二分類算法,它將輸入特征與一個sigmoid函數(shù)進(jìn)行線性組合,從而預(yù)測輸出標(biāo)簽的概率。該算法常被用于預(yù)測離散的二元結(jié)果,例如是/否、真/假等。 優(yōu)點: 實現(xiàn)簡單。Logistic回歸的參數(shù)可以用極大似然

    2024年02月08日
    瀏覽(27)
  • 邏輯回歸(Logistic Regression)

    邏輯回歸(Logistic Regression)

    入門小菜鳥,希望像做筆記記錄自己學(xué)的東西,也希望能幫助到同樣入門的人,更希望大佬們幫忙糾錯啦~侵權(quán)立刪。 ? 目錄 一、邏輯回歸簡介與用途 二、邏輯回歸的理論推導(dǎo) 1、問題描述和轉(zhuǎn)化 2、初步思路:找一個線性模型來由X預(yù)測Y 3、Sigmoid函數(shù)(邏輯函數(shù)) 4、剛剛的

    2023年04月18日
    瀏覽(22)
  • 邏輯回歸(Logistic Regression)

    邏輯回歸(Logistic Regression)

    在分類問題中,你要預(yù)測的變量 y是離散的值,我們將學(xué)習(xí)一種叫做邏輯回歸 (Logistic Regression) 的算法,這是目前最流行使用最廣泛的一種學(xué)習(xí)算法。 在分類問題中,我們嘗試預(yù)測的是結(jié)果是否屬于某一個類(例如正確或錯誤)。分類問題的例子有:判斷一封電子郵件是否是

    2024年02月09日
    瀏覽(22)
  • 二元邏輯回歸(logistic regression)

    二元邏輯回歸(logistic regression)

    目錄 一,原理 二,python代碼 2.1 數(shù)據(jù)集的格式 2.2 代碼 三,適用條件 回歸 : ???????? 假設(shè)存在一些數(shù)據(jù)點,用一條直線或者曲線或折現(xiàn)去擬合這些點就叫做回歸。也就是找出平面點上兩個軸變量之間的函數(shù)關(guān)系,或者其他坐標(biāo)系下的變量間關(guān)系。一句話就是:回歸就是

    2024年02月06日
    瀏覽(24)
  • Python實現(xiàn)邏輯回歸(Logistic Regression)

    Python實現(xiàn)邏輯回歸(Logistic Regression)

    ?? 項目專欄:【Python實現(xiàn)經(jīng)典機器學(xué)習(xí)算法】附代碼+原理介紹 ?? 最近粉絲群中很多朋友私信咨詢一些決策樹、邏輯回歸等機器學(xué)習(xí)相關(guān)的編程問題,為了能更清晰的說明,所以建立了本專欄 專門記錄基于原生Python實現(xiàn)一些入門必學(xué)的機器學(xué)習(xí)算法 ,幫助廣大零基礎(chǔ)用戶

    2024年02月01日
    瀏覽(27)
  • 邏輯回歸(Logistic Regression)和正則化

    邏輯回歸(Logistic Regression)和正則化

    案例: 在分類問題中,我們嘗試預(yù)測的是結(jié)果是否屬于某一個類(例如正確或錯誤)。分類問題的例子有:判斷一封電子郵件是否是垃圾郵件;判斷一次金融交易是否是欺詐;之前我們也談到了腫瘤分類問題的例子,區(qū)別一個腫瘤是惡性的還是良性的。 二元分類問題: 將因

    2024年01月24日
    瀏覽(25)
  • 邏輯回歸(Logistic Regression)原理(理論篇)

    邏輯回歸(Logistic Regression)原理(理論篇)

    目錄 一、邏輯回歸簡介及應(yīng)用 二、邏輯回歸的原理 (1)sigmoid函數(shù) (2)輸入和輸出形式 ?(3)基于目標(biāo)函數(shù)求解參數(shù)w 三、邏輯回歸代碼復(fù)現(xiàn) ? ? ? ? logistic回歸又稱logistic回歸分析,是一種廣義的線性回歸分析模型,常用于數(shù)據(jù)挖掘,疾病自動診斷,經(jīng)濟預(yù)測等領(lǐng)域。例

    2024年02月13日
    瀏覽(21)
  • sklearn實現(xiàn)邏輯回歸(Logistic Regression)

    sklearn實現(xiàn)邏輯回歸(Logistic Regression)

    ?? 項目專欄:sklearn實現(xiàn)經(jīng)典機器學(xué)習(xí)算法(附代碼+原理介紹) ?? 哈嘍,親愛的小伙伴們,你們知道嗎?最近我們的粉絲群里有好多小可愛私信問我一些關(guān)于決策樹、邏輯回歸等機器學(xué)習(xí)的超級有趣的問題呢!?? 為了讓大家更輕松地理解,我決定開一個超可愛的專欄,叫做

    2024年02月21日
    瀏覽(20)
  • 【機器學(xué)習(xí)】Classification using Logistic Regression

    【機器學(xué)習(xí)】Classification using Logistic Regression

    導(dǎo)入所需的庫 分類問題的例子包括:將電子郵件識別為垃圾郵件或非垃圾郵件,或者確定腫瘤是惡性還是良性。這些都是二分類的例子,其中有兩種可能的結(jié)果。結(jié)果可以用 ‘positive’/‘negative’ 成對描述,如’yes’/\\\'no, ‘true’/‘false’ 或者 ‘1’/‘0’. 分類數(shù)據(jù)集的繪圖

    2024年02月14日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包