- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 565664 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174922
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
2020全国大学生数学建模比赛C题总结4 F6 }& H( a: u6 [$ u6 g4 L% ~# U
+ }$ p% s. v! R首先瞎逼逼一番,吐槽一下题目和比赛经历,对这部分不感兴趣的可以跳过:
7 `% S! z% |, O8 Q5 p* D# w8 c- ^% N虽然我是周六下午才开始做的… 总的比赛时间不到两天,不过好在一个人,不怕拖队友。至于题目,我第一眼就喜欢上了 C 题。我想,恐怕很多人都喜欢 C 题吧,因为赛后做了一个总结,发现学校选择 C 题的,比选 B、A 题的加起来还要多。1 P6 y) K1 i* p, m5 T5 {& H5 b3 m
' A9 g x5 Z5 [; R3 A5 S% f' t' c2 z9 j( e o* a# A L: q( k
为什么选择 C 题呢?因为有数据处理…4 t/ z8 [* ^" J0 ~; C, R1 ~
$ N0 a3 d5 _8 {: s v6 B
9 |# ?( i6 W) x1 [1 ]
所以无论它多难,我都选它,哈哈哈。+ k; s* x& `, z8 y
+ P$ K: o5 x1 @- `$ ^
* [3 i' D, O, y# ` C仔细看这一题,它与机器学习好像有区别啊。说起机器学习,我会想到:8 Y* Q# m; c' w T c! d4 c$ j/ z
% o X* T( R4 ~
$ v/ V" k; O" o/ ? B7 }
分类
0 A( J1 s2 W7 V8 a3 N回归
8 ^* L7 o x1 y- z' X [7 P/ t拟合5 [. `) N& z P) O( @/ M9 }
预测
* R; c5 w* I( L# H6 O但是,这题… 好像不是一种,用数据拟合,然后再预测的问题啊(机器学习的通俗定义)4 ?' Q( G, D5 M( H
; v( h; [4 |. s
6 h% U% a$ U; L2 I好吧,选都选了,只能硬着头皮上了。7 l% X5 q( T& V2 E& E
8 O5 l0 T+ o3 D' l l+ i' L
1 Y" J6 U6 z' h5 G
问题分析
7 ]) u2 I3 P& l- }4 D根据附件1,定制一个量化的信贷风险;$ s7 S1 x+ F1 t/ a4 z4 f
为银行制定一个信贷策略
( e) c9 T. h3 `+ d2 T0 J# }' e有突发状况是,上面两个问题应该怎么重新规划?
6 b; X7 ?( O8 X! [三个问题,我们分别称之为问题一、问题二、问题三。
1 [' \; ~0 i& ~$ R/ q4 C$ `4 R) X1 R1 n& N. G! Z
( N* b, |5 Q6 l4 ?% Q% G
数据说明
; N5 h3 E: R j5 W+ G附件1:sheet1:给出了企业的代号,企业有无违约的情况,信用等级6 o* `4 O1 v: j% R1 E1 n7 D
sheet2/3:给出了企业的大约 2 年的进/销 量的发票数据," T) B* L! ~" \: g. l! a
附件2:给出了企业的大约 2 年的进/销 量的发票数据。没有给是否违约、没有给信用等级# p; C4 m. ~. ^" M( X0 g; g( w
附件3:给出了银行的利率,以及相应利率下,不同信用等级的企业,不愿意贷款的概率(原作是比率,我感觉能用比率近似概率)
, H1 |+ g0 \6 h' x: `5 q1 o) H: t% |3 o% I4 f6 x# Z2 n2 s
9 U# ], o& M: u# i/ s问题一求解
; G9 c$ b* O! [3 X/ U6 I你们看,附件1 比 附件 2 多了什么?信用等级、以及有无违约记录。而问题二是要我们求附件二中的企业的信用风险的。所以,仔细一想,肯定是在暗示我们,1、用进/销 量数据,来评价企业的信贷风险。2、信贷风险的量化指标,需要建立在企业信用等级、是否违约两个变量上。3、设法建立进/销 量数据与信用等级、是否违约的关系。" {( ^3 l- c8 ^; P
, u9 Q$ ~+ v9 x0 i
2 W8 y; A; P2 L& K
好了,第一步咱们清楚了,就是要建立信贷风险与信用等级、是否违约的联系咯~
. V$ J. V. h* l: W% u+ S' e& N2 F" c5 k
) h- ` m5 n4 H2 f v
我查阅了一些文献,虽然说得都很复杂,但概括来说,就是一句话,我银行借钱给你,你还的起吗?这就是信贷风险了(说得比较通俗了,有点对不起学金融的同学们)
' P* q7 Y7 E$ P+ p3 F7 m8 j7 {' l2 C1 J$ V. Z2 p' a$ U# ~
, \5 G- R1 P, ^0 ~; @3 y' L0 u, k于是,我将信贷风险定义为:企业违约(赖账不还)的概率。5 f+ r! W6 V) A
7 }5 Z3 i% ^% }' }& ?+ o
x; S9 H1 q- l8 @7 E M而机器学习的知识告诉我们,分类模型除了能够自动判断个体的类别之外,还能够计算出个体,属于该类别的概率。于是,这不就是一个机器学习问题了吗?
' x) I2 I+ B( M* p
2 p$ `3 K2 Q8 k7 K* [% R5 L+ W+ D7 ?7 T" s( h
这个问题就是:根据进/销 量数据,训练一个分类模型,然后将模型的输出,确切的说,概率输出,作为信贷风险,Over。
+ j' C' }* i" q v7 b6 ^8 r# h# K) u3 l. q& s7 F5 S1 x- ]
% b4 e0 @2 y% G) w! ]但是,进/出 量数据是时序性的呀,如果按照上面的思路,那肯定是要一个企业作为一个样本个体。可是…,这个样本个体也太奇怪了吧,是一个时序数据,哇,都能构成一个表格了。。。
+ F0 l" Q: C+ G+ x0 p5 @& }! T: K+ l
: |" D, W) X# X* Q+ }
7 x, s+ X3 \; D0 O+ Q- S9 R8 N0 }按照上面的说法,这有点接近自然语言处理了,也就是一片文章,对应一个类别。这里是一张时序数据表,对应一个类别。天!麻烦!
; r9 z7 ], @: ~- V
5 E5 U+ y/ { G1 D" m$ n7 P# I" m& |* I2 e
有些大佬可能已经豁然开朗,用 NLP 来解决啊!!!
8 v" o7 G" \& x9 E: j/ C' O x
* m2 G( q9 T! F* X/ ]2 f
6 ? R O* b$ [1 Y否也,这种跨越对我来说,有如天堑(虽然我是搞 NLP 的)& ~; R+ V3 z* S. ^* t; N3 d4 b
7 X5 M8 O8 |. V' E+ u! i M3 [1 z9 S) n0 m
因此,我决定,转换一下我们的数据集。
$ O8 P% v) A- D3 k5 X
6 A, F6 P7 A' }! n$ G) \6 e l. z# c: A; k. ?% ?7 J& X
数据处理- P, j( G2 }# {* W: d5 t* W5 `( N
首先,如果按照上面的思路,用机器学习模型的输出,作为信贷风险。那么就要让数据变得简单一点。
% p; w* O4 ?7 `' m; i4 I0 x8 h
7 _& r9 Y e+ x- Y o% S$ s/ _
/ Q& j( C5 F- L: N3 U% W' _; l原始数据是这样的:多个企业,一个企业包含了大约 2 年的进/销数据,一个企业对应一个标签(是否违约)。
# u+ a& P$ h1 u1 g( |9 N
0 N, Q7 B3 E: D: M' Q
+ W U1 ] [$ E" q* L# i+ e我们希望的数据是这样的:一个企业,对应一个向量(行列都行),并对应一个标签,这样才能用机器学习模型。9 q& n# B4 H9 ?' z( I- U. k
$ L6 i& ^, x8 [/ @) U! o/ Y
; k3 |( W# H* f5 H
因此,必须将时序数据弄掉!!!
% \ V! G/ }5 I7 j& C1 K* j, L( ~6 Z) K" p5 u, \+ Z
. T/ F' \9 ?3 Y/ W2 g由于数据是按天给出的,首先,为了简化,我们以 30 天为单位,将数据合并!
# s; g L* T' p+ b. A
7 `% u! a: f/ u C0 u6 A2 f8 f$ l4 Z2 d6 F3 v0 N2 V2 t
然后,用一条曲线(我用的是 9 次多项式),拟合时序数据。有了曲线之后,我们不就可以用函数的系数,来替换原始数据了么?/ T6 l! W X5 E" d- Y+ F
% R1 N: f; D( ^( Y
0 a% L; q, X$ A5 p这样,一个企业的数据,就从对对应表格(时序数据表),转换为对应函数的系数(向量)了。7 _. ~& c, T0 W5 J
i0 v: U+ U" a" v$ ^* @. l" V+ @7 J: n) r' m
等一等,误差怎么办?用曲线拟合数据,肯定有误差的嘛。
8 o* m! D: r, w) B8 G
% q# p$ P! Z# E$ R
. \- |, g7 G: v. g& ~好,误差我们是用什么来度量的? 常用的有 R 方对吧。那就计算出 R 方,然后把 R 方也作为企业的数据之一,不就得了。
" e7 y: h9 t7 Q' T: ~. T0 n
' _" `3 c% D' @5 @2 z% u% e9 @4 u E# o+ F, Z
可能有人犹豫了,可以吗?
' N6 Q) |- ? d8 X1 X
+ J0 J( `0 E4 u% F8 [* Q/ B! i p/ w( ^! w' b* @5 M* Y- @# T7 c
好,拟合的曲线可以一定程度代表企业进/销的基本规律,没问题吧?
3 Y. W. w" t% H7 S) C: I; O E! [: T% a: C6 @# M @
& X2 k$ \0 c" E1 L. e% f
R 方计算了误差。换个角度想,可以代表企业的进/销,偏离拟合曲线的程度,对吧?
- R# i u' B, j# `
, R+ e2 c' }; W' r9 D$ D8 n7 y3 ^4 M2 p/ a# z) x
这不就得了么?
0 F6 L, e$ I2 L/ |; q3 y& f3 K' ~+ Z3 k2 A
" c7 K! L$ t2 I# K2 n# w当然,误差是肯定会有的。但至少经过这样的计算,解决了我们的燃眉之急吧。为了方便讲解,我们将这个数据成为 一数据 吧。% w" _( N: C! Q; H+ M
# b6 R9 l" Q7 Q/ a
7 B, H; D, p7 l1 M" D
有人还会问,信用等级呢?我们不能忽视这个数据吧?da si ka ni。
$ }8 @' Q' D1 l0 a9 O
% P% `, x ]3 Y# [. ?: h4 B8 W5 X5 S; x5 H$ h% s
且看我怎么处理,我们可以像 NLP 的 Word2Vec 那样。我们用一数据为输入、信用等级为输出,训练一个模型,然后用模型的参数,或者其他东西作为 二数据 不就得了么? g& H* i( I* X5 A8 x
% F/ E% }/ i/ y6 P: D$ T$ q8 k- A7 f6 c9 h
之后再用 二数据 为输入,建立一个机器学习模型,用来计算企业是否违约的概率。 Case Close!
2 e8 u' Q) K! [6 t2 B2 F5 @6 D( u7 I& b: |9 H0 N8 e
4 t* x! L$ b$ u6 a4 V问题二 求解
+ \7 L- N! T: C7 J+ t! U/ R制定银行信贷策略是吧?- l. C1 Q8 F- H! b8 D& _0 S4 B
& c R; R1 n4 ~! Z/ C' ~* h
3 X, u" ^- Z* V8 r b怎么制定?无非是利率、期限、额度咯~
1 j% q) T$ \$ z8 |7 Y. }& p/ l
C: E8 z& f6 W
期限我们不管,因为没依据。利率和额度紧密相连,都是钱的问题嘛。
, v3 @( q F2 c' e. Q
# q; n. K3 i5 Y3 N4 e; t, ?
% x" [ F( U: A$ {0 l2 |让我们想象银行是为了干什么的。商业银行肯定是为了赚钱啊,哈哈哈哈。
# F2 Q, Q4 T! c* I
6 ~& i9 r9 c3 `- R
- p, ~1 D1 h0 L/ g9 }于是,问题转换为,求解一个优化问题,即选择合适的利率、额度,使得银行的利润最高。: w$ R+ ^3 b# I0 _ Y, q0 _2 e% f
. Y; k# s8 g5 d! v8 K/ C d! q5 Q% o7 W+ u8 r
so easy?ok?
% K( {" v1 W& q1 k6 x
0 ]- l5 h+ u9 q# |; ~0 T6 T
* V) z- a6 v* o8 ]- k% {于是,最根本的问题,就要对银行的利润建模咯~~
5 Y0 B. v, y+ s+ G, w
% O% J. k2 ]- T2 b* j! u. e X6 {! Q @1 w- k
利润的期望 = (1+利率)^(时间) X(企业不违规的概率)X(企业愿意借钱的概率)
7 v& I' q7 ~. d+ ~) m' Q% U0 c1 a0 [1 D4 w5 e' c4 O
$ C8 t1 i9 K9 Z% v" l v& c
用期望近似利润,case close,say goodbye。
- G* p a- b0 ]+ X' X% |: I* |* I/ F: ~8 z
0 P2 @- u+ _, G- Q8 d9 `至于优化问题,加上题目约束后,就是一个约束优化问题了,怎么求解?方法实在太多了。我们训练机器学习模型,不就是求解一个优化问题吗?作为弄机器学习的,你不会连求解一个优化问题都不会吧?
1 `4 v: T, E8 O% m2 \1 a
5 ?8 r( ?3 `. u, Q9 {$ g/ u& l. k( b3 h% f) H
有的人会再次反驳:可我们这次求的是一个约束优化问题啊!
+ X, k& i1 R+ x. v+ i6 ^ H& [- G8 i4 m9 \1 `$ N0 O; [0 j. x
% h/ f9 w0 D) r- H我会答:你用罚函数的方法,不就可以将约束优化问题,转化为无约束优化问题了吗?1 n; e" e _$ h! D3 h) i L
! C! P2 V: X. O: h" j! I1 J5 w9 b8 T2 ~3 r
问题三# K s8 J2 D9 B( o9 X
突发状况会影响企业的运营状况,所以我们只要将 一数据 的 R 方微调一下,不就得了吗?????
( G( V4 w, A. r9 c/ w7 J& ?4 r" e+ e" p$ Z- M2 h' g8 _
+ \2 [% U/ R1 O% m0 z
有点简答吧?
- _- n9 h+ g* C, Z0 f$ o8 d9 T4 l% v$ ` u( T4 u
C2 |4 ^1 n% R, |, r
最终总结
- D0 d# z" G4 E+ mC 题,似乎是最简单的。但处理数据,比较麻烦,可能很多人卡在这里的吧。最难的一个点就是:如何将一个时序表,对应到一个标签的问题了吧。6 m8 M" n* d3 l% G) n
/ a( @8 ]% x5 y i# |! X ]' i: g% h1 G% N/ l
好了,最后一次数学建模比赛了,大家江湖再见吧。
2 K# U0 ]5 m* A: i————————————————. b% ^2 H9 H3 @+ T0 \4 [1 x) F
版权声明:本文为CSDN博主「zhuo木鸟」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。5 J" E% P h9 I5 r* q8 A( n$ d
原文链接:https://blog.csdn.net/weixin_42141390/article/details/1085801405 ~7 C, _3 ?* z' M) J
$ E2 R. s" y8 o( W0 |4 U4 o
2 f$ u% r/ C3 E9 | |
zan
|