QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 7565|回复: 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题总结! v+ u  {/ O4 p. V" y2 Z8 ]

    9 W5 v7 g5 @. y, g首先瞎逼逼一番,吐槽一下题目和比赛经历,对这部分不感兴趣的可以跳过:& S) Z9 L6 b/ U: d7 p
    虽然我是周六下午才开始做的… 总的比赛时间不到两天,不过好在一个人,不怕拖队友。至于题目,我第一眼就喜欢上了 C 题。我想,恐怕很多人都喜欢 C 题吧,因为赛后做了一个总结,发现学校选择 C 题的,比选 B、A 题的加起来还要多。% }3 z8 P: n5 V2 @* u

    2 J# e) Q5 |: J3 M
    " l- e2 }) o% f8 K* I
    为什么选择 C 题呢?因为有数据处理…
    " H; {6 c- Y  R9 i5 T8 n9 t4 h1 v. K) o. k' N% d
    " r. e# X1 |8 t6 b% T' j& p% [
    所以无论它多难,我都选它,哈哈哈。
    , e( p+ @, `8 \! y$ O! ^+ C
    % m1 k; W, ]. ]. K2 J! `% h4 M; {# @

    4 T! W: ?( m; Y: r& }仔细看这一题,它与机器学习好像有区别啊。说起机器学习,我会想到:
    ; J5 N( n! p( `* c
    5 f9 g& d  b# i2 O1 s

    # n: q' J- _$ k分类' p/ _# ?$ C/ b9 r
    回归
    2 w# B0 K' D* W拟合
    ! [/ a7 d, ]+ y1 y) |预测" c6 Y; ^4 L4 d& t% Q3 l$ O5 C
    但是,这题… 好像不是一种,用数据拟合,然后再预测的问题啊(机器学习的通俗定义)+ |( P; R) _5 H' \- P; f% v( _
    ! F/ P2 }/ }6 O" @) s& [
    4 P( e' E9 W8 n. x
    好吧,选都选了,只能硬着头皮上了。# Y$ y- o; R) H2 q3 |3 @8 R" J, j

      p2 g/ w5 n9 k% m7 s& x
    + p; Z; N% b1 Q0 U  I! L2 a
    问题分析
    2 i0 `0 E* C6 s( E9 B  d! j4 ]6 S根据附件1,定制一个量化的信贷风险;
    : R" u% Q3 ]( k9 B3 C! H5 `' [* A为银行制定一个信贷策略
    . R2 g& p7 {& Y3 O2 [' a! C' C有突发状况是,上面两个问题应该怎么重新规划?2 }0 H! \9 u+ [- x- J/ Q  f  e
    三个问题,我们分别称之为问题一、问题二、问题三。' V8 {: R4 O; h! l
    0 y2 B/ b) q# o* i
    9 e4 ?5 T% r3 B3 P
    数据说明1 T5 l0 F3 @* l3 w
    附件1:sheet1:给出了企业的代号,企业有无违约的情况,信用等级
    . N+ t6 i+ E4 ^# Gsheet2/3:给出了企业的大约 2 年的进/销 量的发票数据,
    0 ~% M( N% ^3 H# f附件2:给出了企业的大约 2 年的进/销 量的发票数据。没有给是否违约、没有给信用等级
    + u2 B/ x) b- t$ k附件3:给出了银行的利率,以及相应利率下,不同信用等级的企业,不愿意贷款的概率(原作是比率,我感觉能用比率近似概率)4 k- g& q/ z3 w; [% {6 {
    ( i' h2 M( T/ a' F, H" ]& A
    * I6 p2 `, i7 v9 m1 p
    问题一求解$ M5 P' i( t% s5 u
    你们看,附件1 比 附件 2 多了什么?信用等级、以及有无违约记录。而问题二是要我们求附件二中的企业的信用风险的。所以,仔细一想,肯定是在暗示我们,1、用进/销 量数据,来评价企业的信贷风险。2、信贷风险的量化指标,需要建立在企业信用等级、是否违约两个变量上。3、设法建立进/销 量数据与信用等级、是否违约的关系。
    - G. e: q+ P7 p3 M0 O/ `/ `& @' m2 b7 o
    1 [' m6 s# {: \2 Q
    好了,第一步咱们清楚了,就是要建立信贷风险与信用等级、是否违约的联系咯~, a/ z1 e, B) [; S# K
      U$ v. A1 e0 t% M* l9 X

    6 r% g& l1 U. E$ z我查阅了一些文献,虽然说得都很复杂,但概括来说,就是一句话,我银行借钱给你,你还的起吗?这就是信贷风险了(说得比较通俗了,有点对不起学金融的同学们)) X$ d7 H3 o9 R0 I+ L9 t( n6 e
    7 n% o# N& y! D$ Q7 \
    , s. l$ A' S. y$ E  E4 ?  X
    于是,我将信贷风险定义为:企业违约(赖账不还)的概率。
    , W$ L6 @8 _/ L8 }4 q" H2 M7 I
    5 S- m5 h' {# c* u
    ! ]4 y) T! {1 A4 C5 w
    而机器学习的知识告诉我们,分类模型除了能够自动判断个体的类别之外,还能够计算出个体,属于该类别的概率。于是,这不就是一个机器学习问题了吗?
    2 F  ]: |4 z$ a' n: ]# Z, i& W6 ^5 O3 o# S1 x! A0 N
    $ l) w# a4 B: A3 g. h, I
    这个问题就是:根据进/销 量数据,训练一个分类模型,然后将模型的输出,确切的说,概率输出,作为信贷风险,Over。) V" j/ |3 k  l: ^2 n$ C# H8 d

    $ h) A0 r& Q) M+ I6 M' e

    : S/ L4 t1 q6 I但是,进/出 量数据是时序性的呀,如果按照上面的思路,那肯定是要一个企业作为一个样本个体。可是…,这个样本个体也太奇怪了吧,是一个时序数据,哇,都能构成一个表格了。。。2 x- m" d6 ]) l! ?0 v
    . k4 Z% Y6 Y3 `2 v  A! Y
    $ s  Q  c" {" B+ F) z
    按照上面的说法,这有点接近自然语言处理了,也就是一片文章,对应一个类别。这里是一张时序数据表,对应一个类别。天!麻烦!
    $ L8 I' P/ r+ D7 u; m4 J
    8 u! R! e5 d; e* x8 _& p( F

    * r; S& s3 m( {3 ?- C9 V/ d! R+ H有些大佬可能已经豁然开朗,用 NLP 来解决啊!!!
    / `/ J4 h# Q/ g* L" ~- u
    0 ?" B: P7 i7 x4 W# N/ f4 y

    3 O) X, u3 o. H7 O6 @否也,这种跨越对我来说,有如天堑(虽然我是搞 NLP 的)0 @$ f+ c  W  l2 }0 m
    / i. `. o; K5 X& b2 g3 u
    , a" r0 l4 b5 N. y) ?
    因此,我决定,转换一下我们的数据集。& o9 `" x/ I0 o/ B+ k3 J

    0 Y5 r9 S1 U! o$ R. U+ v1 A

    " |& Q  s$ |. g4 ~, M数据处理
    4 V6 q: y8 z9 i: K. G首先,如果按照上面的思路,用机器学习模型的输出,作为信贷风险。那么就要让数据变得简单一点。
    3 o  q# k4 v2 Q+ m5 u6 U8 e0 ^. J, P" S2 }$ M

    & `9 f" X  J* F: E2 d原始数据是这样的:多个企业,一个企业包含了大约 2 年的进/销数据,一个企业对应一个标签(是否违约)。
    6 {% i" R5 q: y. \( Q  W! E3 U  \3 }3 {/ ^3 u; P% m" N

    4 v1 R7 N& b( k6 X8 c6 q我们希望的数据是这样的:一个企业,对应一个向量(行列都行),并对应一个标签,这样才能用机器学习模型。' S5 v6 J. g8 \4 i5 Z  L: o

    5 O7 a+ ]- t* [

    . e- U/ R# ]' i6 L! S* X3 X- @因此,必须将时序数据弄掉!!!
    % k2 g! I# z9 ?' \5 P  ~% }; _$ A& y
    % e1 `4 V) {  l' n
    ! }$ q2 b& H& E6 W; ?6 e" i
    由于数据是按天给出的,首先,为了简化,我们以 30 天为单位,将数据合并!3 _- M6 Z" `3 |+ a) ]7 y

    $ a1 R3 Z& ]9 V3 L, A8 g

    ' V9 A, v, F' i. _然后,用一条曲线(我用的是 9 次多项式),拟合时序数据。有了曲线之后,我们不就可以用函数的系数,来替换原始数据了么?' k1 {. ^. r" @: G" O

    + C6 W. z3 n0 `8 e9 ^

    & c+ w6 S9 }6 [1 t5 Y& O6 k这样,一个企业的数据,就从对对应表格(时序数据表),转换为对应函数的系数(向量)了。
    & i. s$ d0 t4 v6 C+ ^+ Y7 |) e+ E. ~6 p+ `6 S2 ]
    & ]4 r9 g% {" }9 _5 r
    等一等,误差怎么办?用曲线拟合数据,肯定有误差的嘛。- ^# T- e$ S# I0 W, [; d
    0 M, K5 O* c: |; R
    ; Q( D2 R" i8 ~/ O/ Y7 B& `, b
    好,误差我们是用什么来度量的? 常用的有 R 方对吧。那就计算出 R 方,然后把 R 方也作为企业的数据之一,不就得了。  N/ w" I+ w" _6 \! b7 Q' a' F
    # o7 w& p1 d" W( k! Z+ m

    & G1 }4 Z3 v+ I; x1 w: V/ g可能有人犹豫了,可以吗?
    # A' D6 g  S* |: {3 H8 U
    4 N" `1 u/ E# Q- o9 G* M

    6 G/ s  p9 U0 G/ C& l好,拟合的曲线可以一定程度代表企业进/销的基本规律,没问题吧?
    & T1 q( u  J* O# R
    7 e. \8 Z' ~* \! I8 J+ b4 m
    ) M; |. x4 e" g6 T! G% G# J0 F
    R 方计算了误差。换个角度想,可以代表企业的进/销,偏离拟合曲线的程度,对吧?
    5 i  v& ?& H2 |) c& y' f2 W- r
    1 v2 b  j5 M5 l$ }5 S
    * S7 m3 ?. K4 K/ i' E: W
    这不就得了么?+ v  b$ U9 m! U) _! y0 u
      [( r4 K* h. b* z9 s3 |/ M

    ! r* ?' }0 s, j  v9 {+ f7 W, T当然,误差是肯定会有的。但至少经过这样的计算,解决了我们的燃眉之急吧。为了方便讲解,我们将这个数据成为 一数据 吧。4 Q  w( C+ \2 f
    % k3 _% P, z' \4 Z6 ]
    " {; K: O- n* U9 I" @" p
    有人还会问,信用等级呢?我们不能忽视这个数据吧?da si ka ni。
    ' E% W3 U! A( W: c, f8 Z$ [: q
    4 ]4 ?* G4 I* i- q* V
    * Z( d. n- O& h  c3 |0 l- U
    且看我怎么处理,我们可以像 NLP 的 Word2Vec 那样。我们用一数据为输入、信用等级为输出,训练一个模型,然后用模型的参数,或者其他东西作为 二数据 不就得了么?5 e7 M; r9 N6 Z3 r
    4 g- A- W3 m0 a

    3 A( e+ U* o4 [6 Z7 P0 c9 s- e' H之后再用 二数据 为输入,建立一个机器学习模型,用来计算企业是否违约的概率。 Case Close!% f4 ~4 ]9 ~; j) ^/ l

    ' o7 m, A! G5 n, R* Z0 D0 D
    4 m6 \0 w6 [5 c8 m9 ?( _  \( ?; h
    问题二 求解& ~6 J* \7 M5 l  W+ ?4 P
    制定银行信贷策略是吧?
    ; t" q% l% k& R7 ]/ n' e$ l- \" B$ Q6 }& B, B
    : n. u, E8 n* R7 s7 D4 m1 L8 j
    怎么制定?无非是利率、期限、额度咯~
    . o" t3 u: |3 }  _2 M& G
    , D, Y/ j& C: G2 I6 ~' e
    " W$ A. Z' h7 E1 {$ ?
    期限我们不管,因为没依据。利率和额度紧密相连,都是钱的问题嘛。7 l$ |6 V7 p: l6 c- \: _

    ' k$ B: d* G9 R  O/ K) C: N
    + E, q" F* D) T
    让我们想象银行是为了干什么的。商业银行肯定是为了赚钱啊,哈哈哈哈。1 x" ?6 {& |$ Z1 F# j

    , c+ Z1 y' e/ \" g
    + K4 @7 U8 R$ A7 }
    于是,问题转换为,求解一个优化问题,即选择合适的利率、额度,使得银行的利润最高。' c, U2 c" ^+ v4 y  z# j
    0 e) e+ ~+ D4 K4 Y% u! T2 n+ b% V: X

    - ?3 p$ y. O% N# S+ N/ B- Nso easy?ok?
    ) W: q5 V6 C4 Z& k9 `5 s4 o5 m( ~
    4 H) x  u  i4 X. m8 @: P

    / P3 R& x! o# n8 |! ^6 j于是,最根本的问题,就要对银行的利润建模咯~~
    1 s* Z6 x/ I- \8 x9 d! y* h8 b- ?9 `7 N

    + f' P6 L; r- t利润的期望 = (1+利率)^(时间) X(企业不违规的概率)X(企业愿意借钱的概率)5 A& F1 F  @! c- A7 O
    . V) w' J  ?0 U; {5 {
    ) b/ u# `/ |( V" H4 `1 f2 h: \
    用期望近似利润,case close,say goodbye。
    3 I' y$ G; U+ @" R' d% }. s. D( L; |, ^
    0 f' a# e6 i1 H- x# \- {0 M
    至于优化问题,加上题目约束后,就是一个约束优化问题了,怎么求解?方法实在太多了。我们训练机器学习模型,不就是求解一个优化问题吗?作为弄机器学习的,你不会连求解一个优化问题都不会吧?. `* X8 z7 ?2 `$ R; I/ O

    & ~! g1 I! D. i' ]2 D$ O' X
    4 S9 m* n% q9 ~) T2 y
    有的人会再次反驳:可我们这次求的是一个约束优化问题啊!
    $ F0 v; M5 Y3 n2 T4 I0 D, E8 ~" L! X3 D( A$ n% ?. R

    ( @  C3 P2 }, J我会答:你用罚函数的方法,不就可以将约束优化问题,转化为无约束优化问题了吗?
    : [# P$ U# e6 j+ R8 s8 C$ U1 O: w3 @( K& a' V. a% L
    ) h: x) @5 P! J' c- O; Q* @& ?$ L, i
    问题三5 m9 \& o9 E+ H2 d7 A
    突发状况会影响企业的运营状况,所以我们只要将 一数据 的 R 方微调一下,不就得了吗?????5 E& [9 L! E% }# Q6 a" O

    7 S/ B5 H0 b! f+ W4 Y
    9 J- h  _2 M  b3 l
    有点简答吧?
    : j, m' [- [$ F- U2 t
    , q# H. F. G0 S: \

    ' _5 s! k' e2 q+ \# z5 F最终总结2 p6 I  L+ Y/ H3 I
    C 题,似乎是最简单的。但处理数据,比较麻烦,可能很多人卡在这里的吧。最难的一个点就是:如何将一个时序表,对应到一个标签的问题了吧。
      N5 F/ v7 x% ^: P
    " x" B; N8 ]1 o- K+ B

    ) p0 z% ~2 j7 s好了,最后一次数学建模比赛了,大家江湖再见吧。
    ) N# C/ ^4 U/ t/ B3 F  B————————————————, P% V# ?" e* x6 V. k. @. P
    版权声明:本文为CSDN博主「zhuo木鸟」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。& n; R  N, d' k+ _& o" O& F4 D7 |  P
    原文链接:https://blog.csdn.net/weixin_42141390/article/details/108580140
    + @& b8 ^1 D5 d: q! i( S
    / [/ m* g) }7 N$ z4 `3 }1 d6 C+ p- l/ Q5 x9 h7 K* H

    风控大赛.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-21 16:27 , Processed in 0.440532 second(s), 55 queries .

    回顶部