QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 7555|回复: 0
打印 上一主题 下一主题

2020全国大学生数学建模比赛C题总结

[复制链接]
字体大小: 正常 放大
杨利霞        

5273

主题

82

听众

17万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2021-5-24 15:54 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    2020全国大学生数学建模比赛C题总结
    / n1 R1 {8 ^* J! d
    # [1 z( O8 k- O首先瞎逼逼一番,吐槽一下题目和比赛经历,对这部分不感兴趣的可以跳过:5 ?! T& K1 A- J0 d
    虽然我是周六下午才开始做的… 总的比赛时间不到两天,不过好在一个人,不怕拖队友。至于题目,我第一眼就喜欢上了 C 题。我想,恐怕很多人都喜欢 C 题吧,因为赛后做了一个总结,发现学校选择 C 题的,比选 B、A 题的加起来还要多。$ ^# i6 I5 v! G- R) P1 ]

    ( U. _& D1 [1 Z3 y% m' ?8 S
    5 ~( a3 x( k. I8 G! h- W7 c4 {1 U
    为什么选择 C 题呢?因为有数据处理…
    7 o9 Y- w, g- ]) S: l- [; Z: j: [, N4 n8 p, U6 @) Q+ h; B5 x& t" L

    * X: Z7 b0 U4 i: @. n9 ^! @所以无论它多难,我都选它,哈哈哈。
    3 L( ^$ d3 i' I' `6 ^0 R+ z
    * X' A) x9 v- U- S

    ) u0 k- x5 R9 Z( H仔细看这一题,它与机器学习好像有区别啊。说起机器学习,我会想到:7 W6 P! h$ x9 P& V; U  o4 o
    2 f" }4 I, w1 r, x% ]5 \- _

    : I6 P" c% X9 l  I) y) Y/ q分类7 Z% ~& F- I9 o: c6 H" K
    回归
    7 u  {  I; K$ b3 n! ?6 h1 o4 h1 c拟合% @# U5 P7 K4 B% H% R/ f. b
    预测+ S  o3 ]" r% ?! K2 Q* c
    但是,这题… 好像不是一种,用数据拟合,然后再预测的问题啊(机器学习的通俗定义)
    / ~, U  l5 L, i' f* b# _9 d9 T) `: {5 Z8 o

    ; {. k5 Q# B/ K7 T% L+ ~好吧,选都选了,只能硬着头皮上了。
    3 l1 ?  V! v3 H) v7 m% S) @1 l$ v, n; g* L6 \/ [1 H

    ! H9 [( S( {" y9 O) a问题分析
    ) e) Z$ f/ x! @, E7 t根据附件1,定制一个量化的信贷风险;: E- y) u5 t2 B" B  o$ D) ]
    为银行制定一个信贷策略0 I6 h  U+ u5 W4 f' D
    有突发状况是,上面两个问题应该怎么重新规划?! e0 R; r; O4 _  \
    三个问题,我们分别称之为问题一、问题二、问题三。
    8 W8 N* |& \% A. N; z
    5 d/ a3 U6 Q, h

    ! @, c. R9 Z$ r, M; K数据说明. n) z% e* [- u! {) [
    附件1:sheet1:给出了企业的代号,企业有无违约的情况,信用等级
    + E/ o! d, c" x2 _, R! a( ?2 Ysheet2/3:给出了企业的大约 2 年的进/销 量的发票数据,& C9 C% Z, T/ _( z8 @9 B( {0 T% V
    附件2:给出了企业的大约 2 年的进/销 量的发票数据。没有给是否违约、没有给信用等级% ]( b( l3 N. b, z7 T5 q
    附件3:给出了银行的利率,以及相应利率下,不同信用等级的企业,不愿意贷款的概率(原作是比率,我感觉能用比率近似概率)6 `6 c# [/ b# L, V. K

    ( _* X9 h1 ], y$ o3 I0 l

    ) {, E- P8 y  e# u问题一求解
    6 _2 T( U% W( b" S; b" N你们看,附件1 比 附件 2 多了什么?信用等级、以及有无违约记录。而问题二是要我们求附件二中的企业的信用风险的。所以,仔细一想,肯定是在暗示我们,1、用进/销 量数据,来评价企业的信贷风险。2、信贷风险的量化指标,需要建立在企业信用等级、是否违约两个变量上。3、设法建立进/销 量数据与信用等级、是否违约的关系。0 O) D" B9 a* t; C  {$ z, X
      l6 O2 W" s# e0 X8 i% w

    1 |' y- L7 Y0 h. v7 p好了,第一步咱们清楚了,就是要建立信贷风险与信用等级、是否违约的联系咯~! [! V+ F. P6 r+ E7 v( Z
    9 ]; v0 U8 U& \. h  V" Q0 Y
    + d0 E0 z  e5 b5 Q7 {/ Q
    我查阅了一些文献,虽然说得都很复杂,但概括来说,就是一句话,我银行借钱给你,你还的起吗?这就是信贷风险了(说得比较通俗了,有点对不起学金融的同学们)
    8 M: n# K! M( e2 C; c6 g0 d
    * Q7 x, l% a# q' e, g9 z7 K

    6 r0 t/ |! j8 c. r; R: Z$ P" {: X& |  Y于是,我将信贷风险定义为:企业违约(赖账不还)的概率。
    . |6 t, N0 |' O+ {) F
    / o4 S" r: o$ @" Z% j# W. M

    ) F, Z0 s2 C& L8 i! \7 u# W而机器学习的知识告诉我们,分类模型除了能够自动判断个体的类别之外,还能够计算出个体,属于该类别的概率。于是,这不就是一个机器学习问题了吗?
    / O0 ^0 O1 _* A6 e
    : A' j! z+ a4 T8 d) f
    8 s9 A, V) B5 N8 X; _+ p
    这个问题就是:根据进/销 量数据,训练一个分类模型,然后将模型的输出,确切的说,概率输出,作为信贷风险,Over。
    5 }# q# E' i  l- L) ]7 i% W
    2 S) d. H6 |+ }8 @6 j" Q5 I

    6 [, I. U+ e3 d但是,进/出 量数据是时序性的呀,如果按照上面的思路,那肯定是要一个企业作为一个样本个体。可是…,这个样本个体也太奇怪了吧,是一个时序数据,哇,都能构成一个表格了。。。' b* `3 E1 m1 S3 Z; h- F
    7 c  }$ s( w- g) x( m
    . p* r4 V+ F( _6 |0 J( q$ i1 L9 L
    按照上面的说法,这有点接近自然语言处理了,也就是一片文章,对应一个类别。这里是一张时序数据表,对应一个类别。天!麻烦!3 }+ ]; i& T) \+ t

    8 m8 J: E5 {0 e: ^
      {0 r1 g$ e, v; F
    有些大佬可能已经豁然开朗,用 NLP 来解决啊!!!4 e1 U0 i) @1 f0 ]

    2 w" m  x/ |' e% F& M6 j' S
    ' w8 B) G+ V. `
    否也,这种跨越对我来说,有如天堑(虽然我是搞 NLP 的)
    , h! M6 a% a: R/ Y, u3 {8 o8 {3 W& p+ b+ d4 ]3 y4 H, h: b+ ?
    3 w9 `. D$ U1 k6 w" V  h
    因此,我决定,转换一下我们的数据集。
    3 t5 G% e9 e# m+ v
    # j) t4 o8 Q7 j6 V

    ' k- n& t6 @3 S$ s5 _1 V' M4 ?数据处理, u* [/ ^9 d* w/ Z: }
    首先,如果按照上面的思路,用机器学习模型的输出,作为信贷风险。那么就要让数据变得简单一点。' o( b9 G# ?; ?2 b7 A9 V5 o

    ( X1 s0 r, a+ V0 X# o

    * K, V/ j0 H0 }原始数据是这样的:多个企业,一个企业包含了大约 2 年的进/销数据,一个企业对应一个标签(是否违约)。+ N* H8 v- i8 o( P' F( V( ]
    9 y; P. A" K8 v, O

    # V; z8 T7 S% F! f$ ]) x: @/ l我们希望的数据是这样的:一个企业,对应一个向量(行列都行),并对应一个标签,这样才能用机器学习模型。
    2 U1 I3 ?$ o2 u6 p
    6 |! t6 n8 D6 d5 g/ N& Z" ~; {
    * n* p) U" ?; u9 m, D
    因此,必须将时序数据弄掉!!!# t; G1 [; H! {4 O6 S- u) c1 Z
    + y9 q  F+ p& |" x; x2 f
      a* ?- z: n/ N7 ~: m. v" z7 e% S) z
    由于数据是按天给出的,首先,为了简化,我们以 30 天为单位,将数据合并!2 z+ A* G+ k0 o  [3 u3 E
    0 n! |* ~3 u  @& C

    2 a; Y3 v- E9 u& w$ M8 |+ ^然后,用一条曲线(我用的是 9 次多项式),拟合时序数据。有了曲线之后,我们不就可以用函数的系数,来替换原始数据了么?
    - Y0 s  r' c& I3 }9 J* l9 V
    ) k4 A* }/ l5 A. C* @

      m9 `2 k. a0 R' E这样,一个企业的数据,就从对对应表格(时序数据表),转换为对应函数的系数(向量)了。& g* e9 o0 ?( S% z* k

    4 `% s8 Q& c. l8 a# L9 g

    ! F% W8 L6 m+ p, R  h7 {7 {等一等,误差怎么办?用曲线拟合数据,肯定有误差的嘛。
    ) h+ d: R$ q1 Q, E1 b+ E% e* k1 `2 `: R& p5 w

    + e/ F* r  z9 f+ |+ g$ ?好,误差我们是用什么来度量的? 常用的有 R 方对吧。那就计算出 R 方,然后把 R 方也作为企业的数据之一,不就得了。' f$ j2 ~( D+ G7 [. t. r- @

    - l/ v4 t( N3 E  i

    6 f( @/ V; O7 T: ~可能有人犹豫了,可以吗?
    8 \6 J1 v8 I  k! m2 _" T4 U- C; ^6 D* t: w& a; H7 }" o4 s7 g& g$ G
    # i1 T) S4 e1 @8 R/ ^+ s6 g. P
    好,拟合的曲线可以一定程度代表企业进/销的基本规律,没问题吧?
    " f, C9 H4 Z' z, M' L/ L# K5 K8 V2 x7 h; i- n1 F& C8 l3 Q+ b+ V% {

    9 K1 G* S8 X5 C, L( A0 @3 `. QR 方计算了误差。换个角度想,可以代表企业的进/销,偏离拟合曲线的程度,对吧?4 [8 K9 L6 ~% m- X6 ^! \2 A# J. w

    $ f6 r& _& O9 n
    9 Z) o, v' G$ `+ k& b$ q
    这不就得了么?
    1 K2 y1 r# A0 U0 i
    . o4 i+ x. \2 r
    . H7 S2 h6 T& K$ ?8 c) t, I  j
    当然,误差是肯定会有的。但至少经过这样的计算,解决了我们的燃眉之急吧。为了方便讲解,我们将这个数据成为 一数据 吧。
    , S. Q5 w, D% I1 ]: o% ~2 y. G0 i1 K: k" t$ u8 S

    4 W  |$ W% \0 S2 @& @有人还会问,信用等级呢?我们不能忽视这个数据吧?da si ka ni。2 U: b( ~/ I' E5 _( n
    1 c) q  A" r  f0 J
    ; r) u9 @6 n* w3 Q+ N0 o
    且看我怎么处理,我们可以像 NLP 的 Word2Vec 那样。我们用一数据为输入、信用等级为输出,训练一个模型,然后用模型的参数,或者其他东西作为 二数据 不就得了么?3 O/ h, M% d/ ~5 O! p
    ; F4 \# ~- y' F, k- @/ S3 e
    , V1 m; W- l, E# Z3 R
    之后再用 二数据 为输入,建立一个机器学习模型,用来计算企业是否违约的概率。 Case Close!
    ' ]9 N! S2 R5 p" p- \; r$ ^1 P( B2 N$ k6 O$ w+ p: S" u
    % P1 e- {' n, q6 w
    问题二 求解
    1 s( m8 @( ]0 f/ {制定银行信贷策略是吧?
    9 c9 l/ X5 \( q. S' X
    - X# H1 [8 R6 X! [
    + }# i/ S8 t: w& T3 z4 a# I, R
    怎么制定?无非是利率、期限、额度咯~* V5 A; T6 d! F: y# S! Y, P

    / |* e( I! e' l4 p( p

    9 M2 n/ c7 w0 y2 ?! W期限我们不管,因为没依据。利率和额度紧密相连,都是钱的问题嘛。
    3 N& |$ v6 H( B3 I+ v$ Q" G% f0 T" J' V9 o4 ^0 s
    9 Y8 a+ [4 H0 H6 |
    让我们想象银行是为了干什么的。商业银行肯定是为了赚钱啊,哈哈哈哈。
    * |  U& W$ i0 h' p0 b* Z" p
    * L* T% C" A- @9 }2 c
    * V0 r/ P/ \; c2 z$ ^
    于是,问题转换为,求解一个优化问题,即选择合适的利率、额度,使得银行的利润最高。
    0 n, Q9 ^, c# e. C5 Y. {
    9 ~$ c. N+ H4 p. b9 Q. j2 |# D

    1 f% H8 L' g: j0 f4 N0 ]so easy?ok?
    . r) C7 D  |; Z# Z# C7 v+ `3 K7 A
    2 N# ~" B* t) u) h& O0 u
    / z6 y% z! k% _  d, M
    于是,最根本的问题,就要对银行的利润建模咯~~
    * |5 z% J. E. Z4 Z6 g& T9 F- q% w4 G( R

    6 J/ e- e3 H7 B5 S6 Y1 y利润的期望 = (1+利率)^(时间) X(企业不违规的概率)X(企业愿意借钱的概率)6 n) [1 A+ p; S: Q4 Y

    $ A% G/ ]1 j; N& Q4 S* ]; W
    ) M4 J' X% `* k4 e: m  }2 S# o
    用期望近似利润,case close,say goodbye。
    * I$ k0 k$ G  t* z- f$ r' C9 ?# j. W

    4 M/ ]/ P4 p* @4 h, w至于优化问题,加上题目约束后,就是一个约束优化问题了,怎么求解?方法实在太多了。我们训练机器学习模型,不就是求解一个优化问题吗?作为弄机器学习的,你不会连求解一个优化问题都不会吧?* I- w1 K& Z6 c% b' f

    ( H; z. Q5 J' s  R
    3 }- }4 ?  b$ [8 |
    有的人会再次反驳:可我们这次求的是一个约束优化问题啊!' W! `# f3 V8 b2 h* P

    2 a! A7 D! L, j6 F4 Y+ g, l
    + Q, |- y# |7 d6 L: ^
    我会答:你用罚函数的方法,不就可以将约束优化问题,转化为无约束优化问题了吗?
    % p& h: A0 o2 P2 i8 a
    + O3 |7 j2 R$ G: ?6 }

    ) @2 v9 f- W, ^1 W问题三
    & t2 t/ M# z& A! a: P突发状况会影响企业的运营状况,所以我们只要将 一数据 的 R 方微调一下,不就得了吗?????% p1 X/ d" C6 d( u

    ! R# T; y( ]7 e  W; M

    , E+ q$ f. m5 S4 r" ?2 x2 {& p有点简答吧?
    * M0 e8 v( j% L+ T% Z* e. i% S4 c3 N& O% b% Y* x( @
    ' T6 I5 K* j% r0 E, i4 J
    最终总结$ g! K2 b( q: w: I4 k
    C 题,似乎是最简单的。但处理数据,比较麻烦,可能很多人卡在这里的吧。最难的一个点就是:如何将一个时序表,对应到一个标签的问题了吧。- x# L* e" D& d, J2 z/ N3 G

    . [. Z: s  g, r" O
    9 k. |! e) M& ~* D7 |. V/ v
    好了,最后一次数学建模比赛了,大家江湖再见吧。/ N6 r3 k6 @4 d9 h
    ————————————————
    : d+ Y+ I  O/ C. a# V% X7 ?% F' V版权声明:本文为CSDN博主「zhuo木鸟」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。4 f+ H7 X% B6 U2 D  o/ l4 o
    原文链接:https://blog.csdn.net/weixin_42141390/article/details/108580140
    ; W4 \3 ]) ]8 @
    + x' s6 N6 f8 p
    ' T$ b& W0 J( j' z0 Y

    风控大赛.jpg (209.44 KB, 下载次数: 0)

    售价: 1 点体力  [记录]  [购买]

    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-4-11 06:52 , Processed in 0.433590 second(s), 55 queries .

    回顶部