! T% F3 B. D: [- J3 ^8 o ; u( S3 K* l5 P' q9 ~* J- Z* a好了,第一步咱们清楚了,就是要建立信贷风险与信用等级、是否违约的联系咯~ ( W9 Z7 I' F+ p6 F+ n u# Y# ]- }$ }! L8 f. m
$ j0 ^0 o6 N8 k' z我查阅了一些文献,虽然说得都很复杂,但概括来说,就是一句话,我银行借钱给你,你还的起吗?这就是信贷风险了(说得比较通俗了,有点对不起学金融的同学们) 2 s. v* @# s' v+ p) W! b & o& ~$ U8 j" c + g* I3 B, i: [9 S& j! M于是,我将信贷风险定义为:企业违约(赖账不还)的概率。' g( k; P) c Q: ]0 s3 f, f& j8 f
- h5 C. I; {3 f- }3 b / ]1 ~& |4 J2 X- g [* K9 Q/ l而机器学习的知识告诉我们,分类模型除了能够自动判断个体的类别之外,还能够计算出个体,属于该类别的概率。于是,这不就是一个机器学习问题了吗? / g3 V+ L' v5 D# y' c, Z( ~6 I 1 b* D; ~& s& r4 C1 h. Q . W" `0 _/ T- \ y i这个问题就是:根据进/销 量数据,训练一个分类模型,然后将模型的输出,确切的说,概率输出,作为信贷风险,Over。2 T' e3 {; C a1 u6 J
1 I+ w7 _- n+ N, {' _
) L9 x* M! Y4 p但是,进/出 量数据是时序性的呀,如果按照上面的思路,那肯定是要一个企业作为一个样本个体。可是…,这个样本个体也太奇怪了吧,是一个时序数据,哇,都能构成一个表格了。。。7 i& I% Q a9 C
4 v0 W8 F' x% a' ]/ ~* H( v
& s Q! l6 O; `5 i! P2 T% R& n
按照上面的说法,这有点接近自然语言处理了,也就是一片文章,对应一个类别。这里是一张时序数据表,对应一个类别。天!麻烦! # [, M$ t" D+ N2 `# S$ S5 O+ ?4 v5 M! {5 l
, L) q! [. D a有些大佬可能已经豁然开朗,用 NLP 来解决啊!!! " c% a9 q+ I. `0 Q # F$ r+ }8 |! o1 q5 m, A, c8 l' O- Q' a# F/ B3 M) ~9 s
否也,这种跨越对我来说,有如天堑(虽然我是搞 NLP 的)4 v4 W. {2 E O+ @0 a
* M0 i# Z% D( r3 o% O+ w % U0 d- G. j/ q7 j7 j我们希望的数据是这样的:一个企业,对应一个向量(行列都行),并对应一个标签,这样才能用机器学习模型。& F4 `& \( h/ H8 M
$ a* ~& h$ t8 R8 o P( O* y' m$ l+ m
2 `1 p3 _ M3 ^* o0 x9 V( s
因此,必须将时序数据弄掉!!! 2 w7 z( U$ ?* j8 Y! L+ Q5 m2 W8 ~; ~+ a# t& g( N/ ^, e
5 C5 M& v- G" i! Q& J1 N p ]由于数据是按天给出的,首先,为了简化,我们以 30 天为单位,将数据合并! " v! N9 \& k1 ^1 X" w8 u2 ? % _9 M9 k- U* P7 u6 `$ A9 [1 r1 |. d4 k2 g* f" B G& ]
然后,用一条曲线(我用的是 9 次多项式),拟合时序数据。有了曲线之后,我们不就可以用函数的系数,来替换原始数据了么? / @7 U2 I# c3 _( `4 q, G: r 9 [) \5 o1 V R" e& B/ m, [3 t* G- S; }! H2 G
这样,一个企业的数据,就从对对应表格(时序数据表),转换为对应函数的系数(向量)了。) {! p) w, B0 t
1 Z3 c- u- l; Z6 f- g7 X, A
& ]: `! q# H8 A. p. u等一等,误差怎么办?用曲线拟合数据,肯定有误差的嘛。 y) p0 k3 x/ @9 g' r6 a; W- |1 T' n4 P3 A0 n
9 C7 S$ {' a3 g2 u* n. s
好,误差我们是用什么来度量的? 常用的有 R 方对吧。那就计算出 R 方,然后把 R 方也作为企业的数据之一,不就得了。9 r. P# |! z7 x. Q( ^; s L1 X" p
3 I# k" r! h7 I; _$ K6 h 0 }; {- w, B7 G* ?3 G可能有人犹豫了,可以吗? v0 K' o* h: q2 ^; z3 o; P' V" [, |. G/ z& t. T
' y, T6 e! j1 P# {# v M
好,拟合的曲线可以一定程度代表企业进/销的基本规律,没问题吧? % r* \9 ?' s0 \4 Q* w \9 F, E ( W+ t% l0 T/ [2 ?% z" i' Q% X' Q. r" b9 \
R 方计算了误差。换个角度想,可以代表企业的进/销,偏离拟合曲线的程度,对吧? 0 X; D! P: [5 w! s & T z7 I8 d5 W; C) \6 P/ n # R# ~) v z; y* ?4 ]' }这不就得了么?" m" O7 N6 l0 K7 J
: j7 o8 l% V& V' T ) _# Z9 @: q8 Z& F当然,误差是肯定会有的。但至少经过这样的计算,解决了我们的燃眉之急吧。为了方便讲解,我们将这个数据成为 一数据 吧。! X* t* T. v" V
" ^8 x Z0 O# l% S5 F$ D$ R; B- A' ^ e
* u+ v0 o6 \) M1 f3 K
有人还会问,信用等级呢?我们不能忽视这个数据吧?da si ka ni。& P- `" u4 q [7 b$ @( `8 E
: H9 B% o* c) t0 I( z$ W: s& t, q5 e# c+ e: P. h
且看我怎么处理,我们可以像 NLP 的 Word2Vec 那样。我们用一数据为输入、信用等级为输出,训练一个模型,然后用模型的参数,或者其他东西作为 二数据 不就得了么? 1 C5 w- z+ a( a! e& N # m; R+ C" h9 ] ( k% r6 t$ S5 l" b( p. `. d之后再用 二数据 为输入,建立一个机器学习模型,用来计算企业是否违约的概率。 Case Close!& }: j5 ~( U5 u
4 D5 ~ B: l7 c$ o: W$ c* a. O z; s
问题二 求解 ) O; J8 m: {5 j+ x2 B制定银行信贷策略是吧? $ Y- S8 u6 X# ]: u% l6 x 3 ], K! e" I" E! W& I( r( R0 j& V2 t
怎么制定?无非是利率、期限、额度咯~ 1 z& u( L. c, z6 B6 ]3 ^) j" z : {" _( r+ K+ N* Y! V0 B6 ?; d. y# q5 n( B1 ^6 ~
期限我们不管,因为没依据。利率和额度紧密相连,都是钱的问题嘛。 : @' S, |7 C! W3 _, c: q( b# Z8 Y2 V( f
) d* p' o3 a' f5 |( t+ c让我们想象银行是为了干什么的。商业银行肯定是为了赚钱啊,哈哈哈哈。( N- t/ C5 p# e$ H1 l
. m0 v, s8 r% f& S5 x
9 [% B: S* H- o4 H2 x
于是,问题转换为,求解一个优化问题,即选择合适的利率、额度,使得银行的利润最高。: R% | h; `- ]0 @# U2 g/ `
; {" _5 M8 ]0 y/ S- c; |5 p3 c$ I( @( v" _/ U" Q' G! v
so easy?ok?: b% l' D+ v/ n& m& k& B
# o2 G4 j- u, x i/ a3 G N. l( y* i8 y& ~
于是,最根本的问题,就要对银行的利润建模咯~~6 b* s8 f8 p8 o
; F+ M! n- c, G( I我会答:你用罚函数的方法,不就可以将约束优化问题,转化为无约束优化问题了吗?7 e4 b. Q. `- U$ y, X
9 g! F1 c, ]2 U7 r5 H ' l# }( l8 f. n- F/ z+ U问题三8 E# Z9 V. h1 i$ j: k/ d0 \
突发状况会影响企业的运营状况,所以我们只要将 一数据 的 R 方微调一下,不就得了吗?????" c+ a+ k0 y$ ?. n6 h. p7 U
7 w3 W* n; N4 I / L" _0 q& i' s8 [有点简答吧?8 @- W" G0 O% `; W; y
- V! R) P/ ^$ s' v* x% R \3 e1 m' c/ p# i, i2 Z
最终总结% J# W& ~2 o- e
C 题,似乎是最简单的。但处理数据,比较麻烦,可能很多人卡在这里的吧。最难的一个点就是:如何将一个时序表,对应到一个标签的问题了吧。+ y# J! b3 ]# [# q3 z, o6 h5 P