QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 7564|回复: 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题总结
    8 s( O" o0 W' K* R# T2 |9 @
    ! P) w- W& h  }9 I4 W5 F0 P首先瞎逼逼一番,吐槽一下题目和比赛经历,对这部分不感兴趣的可以跳过:
    ' x8 f8 g/ K, L- J- [虽然我是周六下午才开始做的… 总的比赛时间不到两天,不过好在一个人,不怕拖队友。至于题目,我第一眼就喜欢上了 C 题。我想,恐怕很多人都喜欢 C 题吧,因为赛后做了一个总结,发现学校选择 C 题的,比选 B、A 题的加起来还要多。
    4 \1 M- ~. _' y6 h0 |8 F1 H! w2 H7 K  y( [

    : Z% y" ^( Z; X为什么选择 C 题呢?因为有数据处理…
    ) F! \; ~. g+ U" L; q: H- \6 f3 _7 a. p5 ~. u

    ( J5 X) @0 p# a! c1 ]/ k所以无论它多难,我都选它,哈哈哈。' A+ t/ ]' H3 `6 d1 I& ^3 ~
    1 I# M: Q9 O0 A- |0 J5 z

    # B: Y) u( f& z, B仔细看这一题,它与机器学习好像有区别啊。说起机器学习,我会想到:
    " O( O% m, H" U0 D+ C6 J! t+ q5 {  \) J$ ~& _4 l

    + M# ~0 e# K4 o/ c( D% q  P分类+ L* t/ \2 b" c  E' ~( I+ `, K
    回归
    4 s* s4 H8 C2 S, T; D/ X+ M& z- ~拟合
    1 J1 G- M4 v1 ~0 E- v7 s预测
    2 [- C. a# F( Y  b但是,这题… 好像不是一种,用数据拟合,然后再预测的问题啊(机器学习的通俗定义)+ K& g  I  ~! _* |

    # \# a7 d# |" g
    + g1 V! @) a% c  a- T2 w
    好吧,选都选了,只能硬着头皮上了。7 u2 K) s4 `0 b
    1 u0 J" |0 O4 {
    ( B' X. |" E* Y. ?9 a  Y3 {. u% `; h
    问题分析& g: d* k; X7 Z. X8 v7 ]3 ?
    根据附件1,定制一个量化的信贷风险;. j* w) I( c6 o& Q+ s6 I8 }; N
    为银行制定一个信贷策略. _+ I/ F3 B! V7 @
    有突发状况是,上面两个问题应该怎么重新规划?/ n4 N) h" U/ z6 g6 c6 @
    三个问题,我们分别称之为问题一、问题二、问题三。
    - I% f% O  e' J" U  i
    7 l: n% Q& x9 }: @: S6 a* `
    / }8 {: K* `, |5 r
    数据说明
    6 n! ], b; U- u4 Q  V附件1:sheet1:给出了企业的代号,企业有无违约的情况,信用等级
    * c7 A, f0 i2 q! I: E1 Xsheet2/3:给出了企业的大约 2 年的进/销 量的发票数据,
    % F: ]  N7 J2 U, E" l) F/ B+ h附件2:给出了企业的大约 2 年的进/销 量的发票数据。没有给是否违约、没有给信用等级
    + S! ~/ }$ \3 W3 I! K4 G4 H附件3:给出了银行的利率,以及相应利率下,不同信用等级的企业,不愿意贷款的概率(原作是比率,我感觉能用比率近似概率)# O0 Y1 c$ a. O

    - z9 A2 i- J% h5 \" j% g0 S1 P9 W8 g
    . L' C% j! T. C; P$ g; w! d
    问题一求解
    $ t7 s4 G  c/ A! ?" u/ O* q3 I你们看,附件1 比 附件 2 多了什么?信用等级、以及有无违约记录。而问题二是要我们求附件二中的企业的信用风险的。所以,仔细一想,肯定是在暗示我们,1、用进/销 量数据,来评价企业的信贷风险。2、信贷风险的量化指标,需要建立在企业信用等级、是否违约两个变量上。3、设法建立进/销 量数据与信用等级、是否违约的关系。
    % @8 y- ]8 |) e. A
    1 l' T, t3 c1 V; _3 b# H1 H

    - \! @( y5 o- V6 D1 ]好了,第一步咱们清楚了,就是要建立信贷风险与信用等级、是否违约的联系咯~2 O7 j/ k" w2 U" w) B5 z

    - b! u- ~6 d1 r6 e
    ; V6 ~. A. b8 ~2 t0 x. Y" [4 b8 u  E
    我查阅了一些文献,虽然说得都很复杂,但概括来说,就是一句话,我银行借钱给你,你还的起吗?这就是信贷风险了(说得比较通俗了,有点对不起学金融的同学们)
    2 f* e6 n$ g. v, O: b3 J! a$ `
    ! Q9 w/ }3 A; Z3 u1 i: y0 E3 O+ ^& J
    % A/ S/ ^$ I, v# z* K
    于是,我将信贷风险定义为:企业违约(赖账不还)的概率。
    , P1 B* o; U  y( D" h
    % ?) O" x1 ]) d7 f) c

    $ T3 ?3 {1 Q) a9 K& a而机器学习的知识告诉我们,分类模型除了能够自动判断个体的类别之外,还能够计算出个体,属于该类别的概率。于是,这不就是一个机器学习问题了吗?8 Y" M4 G/ j# z' F$ N3 A
    9 C9 U  a  ]! N! ?7 S* g) v% G  R5 }
    6 w# A9 }  |' l# J% F7 ?9 q
    这个问题就是:根据进/销 量数据,训练一个分类模型,然后将模型的输出,确切的说,概率输出,作为信贷风险,Over。  m3 H* |- u7 o$ M
    ; x7 q9 l6 o# d8 a7 t

    - d: q4 Y3 n6 Y' J4 _2 p但是,进/出 量数据是时序性的呀,如果按照上面的思路,那肯定是要一个企业作为一个样本个体。可是…,这个样本个体也太奇怪了吧,是一个时序数据,哇,都能构成一个表格了。。。
    3 O2 A/ u* k& |
    6 G. b: W5 n% V4 M7 w0 m% S

    0 }/ \$ e8 q2 A% ?  i# ^按照上面的说法,这有点接近自然语言处理了,也就是一片文章,对应一个类别。这里是一张时序数据表,对应一个类别。天!麻烦!
    / ]6 [* g( q! U7 ^
    0 E! |. L( H7 B# x( A
    8 `# c! {- F7 g7 ]2 p9 b
    有些大佬可能已经豁然开朗,用 NLP 来解决啊!!!7 `% d2 p# u( S( L4 b

    , e! g' n8 _' \. }
      H5 O9 G1 ^' h; D4 V% c
    否也,这种跨越对我来说,有如天堑(虽然我是搞 NLP 的)
    ) v& R' _3 ?: K& Z6 h
    . q2 G( p) _. a/ p8 m4 [

    : O7 g+ e) D& I; C. O# u7 n因此,我决定,转换一下我们的数据集。$ X* v: x  g# P  e4 x* x
    2 \/ a0 ~( z* j6 z7 O
    / O/ v; G: S. U$ A# |' u3 {, A0 I
    数据处理
    1 l  y- M2 H& L0 W8 J首先,如果按照上面的思路,用机器学习模型的输出,作为信贷风险。那么就要让数据变得简单一点。
    5 Y8 i9 ?, ?' y( _
    6 C# z6 v' t  H, I
    0 D# c' B9 o1 P: d1 ~
    原始数据是这样的:多个企业,一个企业包含了大约 2 年的进/销数据,一个企业对应一个标签(是否违约)。
    ; G/ `$ _& o$ t/ _0 }/ i- j
    6 p3 k$ G$ w  m, y' m

    * g% @# Z; V' N9 M. B. R我们希望的数据是这样的:一个企业,对应一个向量(行列都行),并对应一个标签,这样才能用机器学习模型。
    6 j; U+ N5 G! T8 p) [3 P' l" K. y' D( Q$ A: ^. a8 o* ^
    ) ?1 P& b6 d7 L7 |$ U
    因此,必须将时序数据弄掉!!!& e: z8 J  @: M; q+ D
    $ F  Q- u5 v7 D* w9 I( I0 N

    , D' [. t! Y" o由于数据是按天给出的,首先,为了简化,我们以 30 天为单位,将数据合并!
    . k  a* y: V* |2 R. C  Z: |" b7 F4 w$ W$ F
    ) ^' }6 H4 w: {5 \6 Z" i
    然后,用一条曲线(我用的是 9 次多项式),拟合时序数据。有了曲线之后,我们不就可以用函数的系数,来替换原始数据了么?, n! E8 k- E4 W8 Z: H# \% G5 k
    , U9 H9 d4 x) n6 V4 ~

    ; P& l6 l* K, f; a/ [4 s这样,一个企业的数据,就从对对应表格(时序数据表),转换为对应函数的系数(向量)了。2 n! L) ]5 ]/ N
    % E9 U+ _4 U5 [# A, F
    ) q: c. y( Q8 M5 A: l
    等一等,误差怎么办?用曲线拟合数据,肯定有误差的嘛。; P. i3 ]& Z8 A7 g/ ]
    " E3 N! X: P, v" o4 b8 D

    5 u* \; Q! d; F; [* r好,误差我们是用什么来度量的? 常用的有 R 方对吧。那就计算出 R 方,然后把 R 方也作为企业的数据之一,不就得了。& M2 t9 X0 |) L: d% Q" M# S; d
    ( Q% B8 ?) I: `$ X3 a

    * I6 I7 z, X: `6 y& k/ O, R可能有人犹豫了,可以吗?
    & I7 r% o8 `1 u( _# m" w, J" Z- I9 J7 W
    ' U) N$ n" F) g: `% f
    9 x: u% R- `& [( f! j, }1 e- I4 e
    好,拟合的曲线可以一定程度代表企业进/销的基本规律,没问题吧?+ T- S" K; ?$ r" d+ }
    1 A$ K+ a, F( v

    4 w7 Y# j& [3 r4 Z8 e6 {R 方计算了误差。换个角度想,可以代表企业的进/销,偏离拟合曲线的程度,对吧?
    : i% Z- H( c* u4 l6 c" ?* u) k" T- n
      o0 |! `) K1 r. ~1 e: C6 |* Y
    这不就得了么?0 W; a  x3 D$ _

    ; q' X7 a" |5 }& N- ]

    # Z+ K' w% ^8 b" m& i当然,误差是肯定会有的。但至少经过这样的计算,解决了我们的燃眉之急吧。为了方便讲解,我们将这个数据成为 一数据 吧。
    , ]; C. d, ?; D; O# [9 V: k; q  o$ j6 M; s+ h' M4 h$ M
    6 p/ f1 C+ V& ~# M' W. k
    有人还会问,信用等级呢?我们不能忽视这个数据吧?da si ka ni。, i* q. Z8 f( A& C+ P

    8 S. U" t1 T9 m$ y( v
    ) Z1 s8 D9 m/ O$ a! _! H/ ?
    且看我怎么处理,我们可以像 NLP 的 Word2Vec 那样。我们用一数据为输入、信用等级为输出,训练一个模型,然后用模型的参数,或者其他东西作为 二数据 不就得了么?
    4 X  Z. r. {+ T
    5 g7 Q* h( ], \" F" m1 Q9 o5 O: O
    + x- x2 {& P1 U- Y4 z. m4 F
    之后再用 二数据 为输入,建立一个机器学习模型,用来计算企业是否违约的概率。 Case Close!
    ) v: J1 ?6 n3 u# }: J, b2 l& f+ ]  u$ u4 f; ~
    ) ?2 H: t4 L  R. B% i+ R
    问题二 求解& E5 f. ?7 c2 y; S0 N
    制定银行信贷策略是吧?
    7 e' g* Z7 L3 O7 @, _; l) x
    ) f* P$ j! ]' E9 b
    # ?3 f- r% d) D+ B
    怎么制定?无非是利率、期限、额度咯~/ \5 i" p& S; d' f3 c* v2 L

    - h+ R  W" |$ l; H3 @' C9 T. [3 C

    ) G2 B% f& F9 ^& ?: C# `+ k% p- U期限我们不管,因为没依据。利率和额度紧密相连,都是钱的问题嘛。
    5 ?9 q! X% H1 n! B* v* S1 _! U
    4 ?$ [" j+ }- B0 o( S
    $ a& E1 t! k. F, d7 i3 c
    让我们想象银行是为了干什么的。商业银行肯定是为了赚钱啊,哈哈哈哈。3 |/ ~. {8 L# ~3 v

    : H) {' R) ?& }; u& X5 `# A- H

    % r2 [6 M! E) w- S( z) ?6 {# {于是,问题转换为,求解一个优化问题,即选择合适的利率、额度,使得银行的利润最高。0 z- \0 ]4 t/ M/ q
    & m) q: l) ^# h
    3 D: S) p9 ~8 K: X
    so easy?ok?
    ' U/ Q  y& C: H  {# _& J
      c6 _( y# K/ x" {3 g

    # K& b! G) b) L于是,最根本的问题,就要对银行的利润建模咯~~4 S! U. W9 @8 P0 V8 [

    " |' n6 a2 _$ K
    . B/ ?3 s% W5 _+ q: ]- m
    利润的期望 = (1+利率)^(时间) X(企业不违规的概率)X(企业愿意借钱的概率)6 @  E; p5 L! c5 v6 D( |, P" U

    4 M0 z7 x2 e: A0 D8 f
    6 _% z0 m% D/ e# J
    用期望近似利润,case close,say goodbye。- S2 |# Y4 a, L3 Y
    3 B( m( S$ k; [
    " ]+ ^; ]3 @: h+ k' b
    至于优化问题,加上题目约束后,就是一个约束优化问题了,怎么求解?方法实在太多了。我们训练机器学习模型,不就是求解一个优化问题吗?作为弄机器学习的,你不会连求解一个优化问题都不会吧?
    8 r' p( ?5 U, q/ f6 Y, u8 }# {5 n, F

    , o, v+ V% O# b$ I" p有的人会再次反驳:可我们这次求的是一个约束优化问题啊!9 [& q* W: t0 B/ C6 C. X

    & P+ i6 R: L! l" m6 O$ }! P5 F
    " A) ~8 y& T* L  t7 R
    我会答:你用罚函数的方法,不就可以将约束优化问题,转化为无约束优化问题了吗?/ ]; ~( n' X& r$ w
    4 I4 h, C* n4 K, |- D1 _9 ~
    6 n; t; V5 w1 v0 |, ~
    问题三
    ' S, I* A6 H9 l: f$ }2 x突发状况会影响企业的运营状况,所以我们只要将 一数据 的 R 方微调一下,不就得了吗?????0 ~1 J* L$ s1 q: A, t- V0 v
    ; A0 I' d1 G. \2 X+ G5 b
    . ]- z* J& _1 d
    有点简答吧?
    ' }8 Q# |+ {/ ]5 M, J, g  A+ G; r( w, O1 m# C! B' l) I

    ! a- z8 M3 a2 D1 b* ]& @3 ]最终总结4 F- n  s' d. {: I6 x- Q2 T+ X
    C 题,似乎是最简单的。但处理数据,比较麻烦,可能很多人卡在这里的吧。最难的一个点就是:如何将一个时序表,对应到一个标签的问题了吧。
    5 Q8 @5 z5 x9 D6 l% p
    8 u" L$ T& }% \7 A' ]6 J! Y

    ) G/ r; g0 U4 [好了,最后一次数学建模比赛了,大家江湖再见吧。: H6 {, g1 J1 J8 M# I  ?2 G' X
    ————————————————
    ( J; @7 k7 m% i: D版权声明:本文为CSDN博主「zhuo木鸟」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    5 B% W1 x" f% D8 ?+ d原文链接:https://blog.csdn.net/weixin_42141390/article/details/108580140: J/ c4 d8 N! E; V8 W/ A, J
    - @) D- w6 H3 H+ W
    ) X% F- x% h% k

    风控大赛.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-15 18:09 , Processed in 0.610594 second(s), 55 queries .

    回顶部