<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article">
 <front>
  <journal-meta>
   <journal-id journal-id-type="publisher-id">
    jfrm
   </journal-id>
   <journal-title-group>
    <journal-title>
     Journal of Financial Risk Management
    </journal-title>
   </journal-title-group>
   <issn pub-type="epub">
    2167-9533
   </issn>
   <issn publication-format="print">
    2167-9541
   </issn>
   <publisher>
    <publisher-name>
     Scientific Research Publishing
    </publisher-name>
   </publisher>
  </journal-meta>
  <article-meta>
   <article-id pub-id-type="doi">
    10.4236/jfrm.2025.141003
   </article-id>
   <article-id pub-id-type="publisher-id">
    jfrm-140948
   </article-id>
   <article-categories>
    <subj-group subj-group-type="heading">
     <subject>
      Articles
     </subject>
    </subj-group>
    <subj-group subj-group-type="Discipline-v2">
     <subject>
      Business 
     </subject>
     <subject>
       Economics
     </subject>
    </subj-group>
   </article-categories>
   <title-group>
    Research on Credit Risk Rating of Commercial Banks Based on Support Vector Machine
    <br>—Data from China’s Listed Commercial Banks</br>
   </title-group>
   <contrib-group>
    <contrib contrib-type="author" xlink:type="simple">
     <name name-style="western">
      <surname>
       Shunquan
      </surname>
      <given-names>
       Zhu
      </given-names>
     </name>
    </contrib>
   </contrib-group> 
   <aff id="affnull">
    <addr-line>
     aSchool of Digital Finance, Guangzhou Huashang College, Guangzhou, China
    </addr-line> 
   </aff> 
   <pub-date pub-type="epub">
    <day>
     13
    </day> 
    <month>
     01
    </month>
    <year>
     2025
    </year>
   </pub-date> 
   <volume>
    14
   </volume> 
   <issue>
    01
   </issue>
   <fpage>
    37
   </fpage>
   <lpage>
    46
   </lpage>
   <history>
    <date date-type="received">
     <day>
      15,
     </day>
     <month>
      January
     </month>
     <year>
      2025
     </year>
    </date>
    <date date-type="published">
     <day>
      25,
     </day>
     <month>
      January
     </month>
     <year>
      2025
     </year> 
    </date> 
    <date date-type="accepted">
     <day>
      25,
     </day>
     <month>
      February
     </month>
     <year>
      2025
     </year> 
    </date>
   </history>
   <permissions>
    <copyright-statement>
     © Copyright 2014 by authors and Scientific Research Publishing Inc. 
    </copyright-statement>
    <copyright-year>
     2014
    </copyright-year>
    <license>
     <license-p>
      This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/
     </license-p>
    </license>
   </permissions>
   <abstract>
    In the era of big data and artificial intelligence, machine learning is one of the hot issues in the field of credit rating. On the basis of combing the literature on credit rating methods at home and abroad, this paper uses the support vector machine (SVM) method of machine learning to set up a three-classification credit rating model for Chinese listed commercial banks, which is compared with the existing methods of credit rating, the data show that the model classification accuracy on the test set is 80%. The support vector machine (SVM) method can identify the credit rating of Chinese-listed commercial banks, and it has wide applicability and good promotion value. The paper enriches the traditional credit rating method and has important significance in standardizing the healthy development of the financial market.
   </abstract>
   <kwd-group> 
    <kwd>
     Chinese Listed Commercial Banks
    </kwd> 
    <kwd>
      Support Vector Machine
    </kwd> 
    <kwd>
      Credit Risk Rating
    </kwd> 
    <kwd>
      Data Supporting
    </kwd>
   </kwd-group>
  </article-meta>
 </front>
 <body>
  <sec id="s1">
   <title>1. Research Background and Literature Review</title>
   <p>
    <xref ref-type="bibr" rid="scirp.140948-"></xref>In the era of big data and artificial intelligence, the credit rating of artificial intelligence machine learning has been widely concerned by academia, financial industry and government departments. Traditional credit rating methods, such as statistical and back-propagation (BP) neural network, are difficult to solve the problems of small sample, local minimum, high dimension, poor ability of function approximation and classification, low learning speed and need to guide learning. This seriously affects the quality of credit ratings. Therefore, it is necessary to explore a new credit rating method-credit rating for listed companies based on least squares support vector machine (LSSVM)—to solve the above problems and improve the quality of credit classification. Therefore, this paper can not only enrich the research. The traditional credit rating method is of great significance to the healthy development of the financial market.</p>
   <p>The research on credit rating has experienced the following types: qualitative rating method, statistical rating method, neural network rating method and KMV rating method. (1) Qualitative analysis rating method, mainly 5C element analysis method and LAPP principle, 5C element analysis method mainly analyzes the credit status from character, ability, capital, collateral guarantee and condition environment; LAPP principle mainly analyzes credit status from four aspects: liquidity, activity, profitability and potential. In addition, there are DuPont financial analysis system and Wall proportion analysis method. The disadvantages of these methods are strong subjectivity and great subjective influence by people. In order to overcome the problems of poor qualitative analysis ability, lack of overall summary and insufficient quantitative analysis, statistical rating method has been widely adopted abroad since the 1960s. In order to overcome the poor comprehensive analytical ability of the qualitative analysis method, they lack the overall generalization. Since the 1960s, statistical rating method has been widely used in foreign countries. (2) Statistical rating method, <xref ref-type="bibr" rid="scirp.140948-3">
     Beaver (1966)
    </xref> introduced the forecasting function of financial variables into the empirical field. The univariate model of credit classification is established. <xref ref-type="bibr" rid="scirp.140948-1">
     Altman (1968)
    </xref> first applied multivariate statistical method to credit classification. However, statistical law is strict regarding data. For example, the data must be obeyed from the multivariate normal distribution, there are no multiple collinearities between the variables, the covariance matrix of the paired samples should be the same, etc., but the data, in reality, cannot meet this requirement. Therefore, the follow-up scholars use Probit or Logistic to establish the model. <xref ref-type="bibr" rid="scirp.140948-8">
     Ohlson (1980)
    </xref> suggests that the logistic regression method should be used to establish the credit rating classification model. Compared with previous studies, <xref ref-type="bibr" rid="scirp.140948-6">
     Collins and Green (1982)
    </xref> showed that the effect ratio of Logistic model was higher than that of Logistic model. The effect of multivariate discriminant analysis model is good. <xref ref-type="bibr" rid="scirp.140948-7">
     Lo (1986)
    </xref> found that if the sample data is under normal distribution, the effect of the multivariate credit model is better than that of the Logistic regression model, and if the sample data does not obey the normal distribution, the effect of the multivariate credit model is better than that of the Logistic regression model. The effect of Logistic model is better than that of multivariate discriminant model. Therefore, Lo A. W. suggested that before establishing credit classification model, <xref ref-type="bibr" rid="scirp.140948-2">
     Anthony et al. (2001)
    </xref> used survival analysis to predict the financial distress of deposit and loan institutions, and used logarithm to test the distribution characteristics of data samples. Logistic distribution is the probability distribution of survival time. The results show that the prediction accuracy of Logistic distribution is higher than that of Probit method, and it is robust to the definition of dilemma and the cost of misjudgment. (3) The neural network rating method in the late 1980s and early 1990s. With the development of information technology, the neural network method introduced credit rating. It can solve the problem of non-normal distribution and nonlinear credit classification, but it is difficult to solve the problem of small sample data, local minimum, and high dimension. The ability of function approximation and classification is weak and the learning speed is slow. (4) KMV rating method appeared in the late 1990s. There are many new credit classification models, the most representative of which are the CreditMetrics model established by JP Morgen Bank on the basis of VaR model in 1997 and the KMV model developed by KMV Company. However, there are many parameters to be determined when establishing CreditMetrics model, such as rank transfer matrix, correlation coefficient between assets, forward return rate and so on. These parameters come from the statistics of long-term data. At present, there are few similar statistics in China.</p>
   <p>The study of credit rating by Chinese scholars began in the mid-1990s. <xref ref-type="bibr" rid="scirp.140948-10">
     Wang et al. (1999)
    </xref>, <xref ref-type="bibr" rid="scirp.140948-4">
     Chen (1999)
    </xref>, <xref ref-type="bibr" rid="scirp.140948-5">
     Chen &amp; Chen (2000)
    </xref>, <xref ref-type="bibr" rid="scirp.140948-12">
     Wu (2001)
    </xref>, <xref ref-type="bibr" rid="scirp.140948-14">
     Zhang &amp; Cheng (2005)
    </xref>, <xref ref-type="bibr" rid="scirp.140948-9">
     Shi et al. (2005)
    </xref>, <xref ref-type="bibr" rid="scirp.140948-16">
     Zhu (2008)
    </xref>, <xref ref-type="bibr" rid="scirp.140948-11">
     Wu et al. (2009)
    </xref>, <xref ref-type="bibr" rid="scirp.140948-13">
     Yu et al. (2009)
    </xref>, <xref ref-type="bibr" rid="scirp.140948-15">
     Zhu (2009)
    </xref> and other scholars have published some research results. <xref ref-type="bibr" rid="scirp.140948-11">
     Wu et al. (2009)
    </xref> established a support vector machine ensemble method based on five-level classification and applied Libsvm to a commercial silver. The empirical analysis of 176 groups of bank credit sample data shows that the proposed method has higher classification accuracy than other classification methods, which proves the feasibility and effectiveness of this method. The results of <xref ref-type="bibr" rid="scirp.140948-13">
     Yu et al. (2009)
    </xref> show that the least square fuzzy support vector machine model with variable penalty factor based on kernel principal component analysis has good classification results. <xref ref-type="bibr" rid="scirp.140948-15">
     Zhu (2009)
    </xref> applied option pricing method to the credit classification of listed companies.</p>
  </sec><sec id="s2">
   <title>2. Method and Principle of Support Vector Machine</title>
   <p>Support Vector Machine (SVM) is a classifier based on support vector operations. “Machine” means a machine, which can be understood as a classifier, and a classifier is a classification function.</p>
   <sec id="s2_1">
    <title>2.1. Linear classification</title>
    <p>In training data, each data has n attributes and a class of class flags. We can think that these data are in an n-dimensional space. Our goal is to find a n − 1 dimensional hyperplane, which can divide the data into two parts or parts, each of which belongs to the same category.</p>
    <p>In fact, there are many hyperplanes like this, and we have to find one of the best. Therefore, a constraint is added: the distance from the hyperplane to the nearest data point on each side is maximum. It also becomes the maximum interval hyperplane. This classifier also becomes the maximum interval classifier. A support vector machine (SVM) is a two-class or multiple-classifier.</p>
    <p>For training data set T, the data can be divided into two categories: C1 and C2. For functions: 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         f 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          x 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <mi>
         w 
       </mi> 
       <msup> 
        <mi>
          x 
        </mi> 
        <mi>
          T 
        </mi> 
       </msup> 
       <mo>
         + 
       </mo> 
       <mi>
         b 
       </mi> 
      </mrow> 
     </math> (Linear classifier). Data for C1 classes 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         w 
       </mi> 
       <msup> 
        <mi>
          x 
        </mi> 
        <mi>
          T 
        </mi> 
       </msup> 
       <mo>
         + 
       </mo> 
       <mi>
         b 
       </mi> 
       <mo>
         ≥ 
       </mo> 
       <mn>
         1 
       </mn> 
      </mrow> 
     </math>. At least one of them. 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         , 
       </mo> 
       <mi>
         f 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <mn>
         1 
       </mn> 
      </mrow> 
     </math> This point is called the nearest point. Data for C2 classes 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         x 
       </mi> 
       <msup> 
        <mi>
          w 
        </mi> 
        <mi>
          T 
        </mi> 
       </msup> 
       <mo>
         + 
       </mo> 
       <mi>
         b 
       </mi> 
       <mo>
         ≤ 
       </mo> 
       <mo>
         − 
       </mo> 
       <mn>
         1 
       </mn> 
      </mrow> 
     </math>. At least one of them 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         , 
       </mo> 
       <mi>
         f 
       </mi> 
       <mo stretchy="false">
         ( 
       </mo> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo stretchy="false">
         ) 
       </mo> 
       <mo>
         = 
       </mo> 
       <mo>
         − 
       </mo> 
       <mn>
         1 
       </mn> 
      </mrow> 
     </math>. This point is also the nearest point. The above two constraints can be combined as: 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mi>
         f 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mi>
           w 
         </mi> 
         <msup> 
          <mi>
            x 
          </mi> 
          <mi>
            T 
          </mi> 
         </msup> 
         <mo>
           + 
         </mo> 
         <mi>
           b 
         </mi> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         ≥ 
       </mo> 
       <mn>
         1 
       </mn> 
      </mrow> 
     </math>. 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math> is the corresponding classification value of 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math> (−1 or 1). Seek 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        w 
      </mi> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        b 
      </mi> 
     </math>, then the hyperplane function is 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         w 
       </mi> 
       <msup> 
        <mi>
          x 
        </mi> 
        <mi>
          T 
        </mi> 
       </msup> 
       <mo>
         + 
       </mo> 
       <mi>
         b 
       </mi> 
       <mo>
         = 
       </mo> 
       <mn>
         0 
       </mn> 
      </mrow> 
     </math>. In order to obtain the optimal 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         f 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          x 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math>, in training data, we expected that the distance from each point to the hyperplane would be the largest.</p>
   </sec>
   <sec id="s2_2">
    <title>2.2. Nonlinear Classification</title>
    <p>One advantage of the SVM is that it supports non-linear classification. It is combined with Lagrange multiplier method and KKT condition, and the kernel function can generate nonlinear classifier.</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         w 
       </mi> 
       <mo>
         = 
       </mo> 
       <mstyle displaystyle="true"> 
        <munderover> 
         <mo>
           ∑ 
         </mo> 
         <mrow> 
          <mi>
            i 
          </mi> 
          <mo>
            = 
          </mo> 
          <mn>
            1 
          </mn> 
         </mrow> 
         <mi>
           n 
         </mi> 
        </munderover> 
        <mrow> 
         <msub> 
          <mi>
            α 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
         <msub> 
          <mi>
            y 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
        </mrow> 
       </mstyle> 
      </mrow> 
     </math>; 
     <math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         f 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          x 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <mstyle displaystyle="true"> 
        <munderover> 
         <mo>
           ∑ 
         </mo> 
         <mrow> 
          <mi>
            i 
          </mi> 
          <mo>
            = 
          </mo> 
          <mn>
            1 
          </mn> 
         </mrow> 
         <mi>
           n 
         </mi> 
        </munderover> 
        <mrow> 
         <msub> 
          <mi>
            α 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
         <msub> 
          <mi>
            y 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
         <mi>
           K 
         </mi> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <msub> 
            <mi>
              x 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
           <mo>
             , 
           </mo> 
           <mi>
             x 
           </mi> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
         <mo>
           + 
         </mo> 
         <mi>
           b 
         </mi> 
        </mrow> 
       </mstyle> 
      </mrow> 
     </math>, here 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>: training data i; 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          y 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>: label value of training data i; 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          α 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>: the Lagrange multiplier of the training data i; 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         K 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <mi>
         exp 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mo>
           − 
         </mo> 
         <mfrac> 
          <mrow> 
           <mo>
             | 
           </mo> 
           <mo>
             | 
           </mo> 
           <msub> 
            <mi>
              x 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
           <mo>
             − 
           </mo> 
           <msub> 
            <mi>
              x 
            </mi> 
            <mn>
              2 
            </mn> 
           </msub> 
           <mo>
             | 
           </mo> 
           <msup> 
            <mo>
              | 
            </mo> 
            <mn>
              2 
            </mn> 
           </msup> 
          </mrow> 
          <mrow> 
           <mn>
             2 
           </mn> 
           <msup> 
            <mi>
              σ 
            </mi> 
            <mrow> 
             <mn>
               12 
             </mn> 
            </mrow> 
           </msup> 
          </mrow> 
         </mfrac> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math>: Kernel function; 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         α 
       </mi> 
       <mo>
         , 
       </mo> 
       <mi>
         σ 
       </mi> 
      </mrow> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        b 
      </mi> 
     </math> is the value generated by the training data.</p>
    <p>By adjusting 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        σ 
      </mi> 
     </math> to match the size of the dimension, the larger 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        σ 
      </mi> 
     </math>, the lower the dimension.</p>
   </sec>
   <sec id="s2_3">
    <title>2.3. Kernel Functions for Nonlinear Classification</title>
    <p>According to the theory of machine learning, nonlinear problems can be transformed into linear problems by mapping to high dimensions. For example, a point in two dimensions. 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mrow> 
        <mo>
          〈 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          〉 
        </mo> 
       </mrow> 
      </mrow> 
     </math> can be mapped to a 5-dimensional space with five dimensions: 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
       <mo>
         , 
       </mo> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
       <mo>
         , 
       </mo> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
       <msub> 
        <mi>
          x 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
       <mo>
         , 
       </mo> 
       <msubsup> 
        <mi>
          x 
        </mi> 
        <mn>
          1 
        </mn> 
        <mn>
          2 
        </mn> 
       </msubsup> 
       <mo>
         , 
       </mo> 
       <msubsup> 
        <mi>
          x 
        </mi> 
        <mn>
          2 
        </mn> 
        <mn>
          2 
        </mn> 
       </msubsup> 
      </mrow> 
     </math>. Mapping to high dimensions has two questions: how does one map? Another problem is that the calculation becomes more complicated. Fortunately, we can use the kernel function to solve this problem.</p>
    <p>Kernel function, also known as kernel technique (kernel trick). The kernel function provides a method to calculate the inner product of the high dimensional space by the vector value of the original space, regardless of the way of mapping.</p>
    <p>We can replace 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         K 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> with a kernel function.</p>
    <p>There are many kinds of kernel functions, generally using Gauss kernel, the following formula:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         K 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            x 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <mi>
         exp 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mo>
           − 
         </mo> 
         <mfrac> 
          <mrow> 
           <mo>
             | 
           </mo> 
           <mo>
             | 
           </mo> 
           <msub> 
            <mi>
              x 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
           <mo>
             − 
           </mo> 
           <msub> 
            <mi>
              x 
            </mi> 
            <mn>
              2 
            </mn> 
           </msub> 
           <mo>
             | 
           </mo> 
           <msup> 
            <mo>
              | 
            </mo> 
            <mn>
              2 
            </mn> 
           </msup> 
          </mrow> 
          <mrow> 
           <mn>
             2 
           </mn> 
           <msup> 
            <mi>
              σ 
            </mi> 
            <mrow> 
             <mn>
               12 
             </mn> 
            </mrow> 
           </msup> 
          </mrow> 
         </mfrac> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math></p>
   </sec>
  </sec><sec id="s3">
   <title>3. Variable Selection and Modeling Sample</title>
   <p>We choose the credit rating of listed commercial banks to study the application of SVM. According to the evaluation reports of the authoritative credit rating agencies such as United, Zhongcongxin and Dagong International, the credit rating of commercial banks generally takes into account the following indicators: total assets, total loans, total deposits, owner’s equity, operating income, Net profit, rate of return on total assets, rate of return on net assets, non-performing loan ratio, provision coverage, inventory ratio, liquidity ratio, capital adequacy ratio, tier one capital adequacy ratio, core tier one capital adequacy ratio.</p>
   <p>Considering the perfection and accuracy of data acquisition, only domestic commercial banks with credit ratings of AAA, AA+, AA are adopted. Banks with a credit rating of AA− have less or more incomplete data. In this paper, two variables are selected as characteristic values, liquidity ratio and profit ratio, for the following reasons: first, the size of assets varies among different banks in order to eliminate the impact of data absolute value differences on the study. It is appropriate to use financial ratio. The second is to make the drawing more intuitive, so only two eigenvalue vectors are taken for training; the third is that the liquidity ratio reflects the bank’s solvency, and the profit ratio reflects the bank’s profit capacity, which is an important indicator of credit rating.</p>
   <sec id="s3_1">
    <title>3.1. Collect to Data</title>
    <p>Because there are too many incomplete values of bank financial data obtained by tushare data interface, and the number of banks is too small. Therefore, the use of API on Uqer site to obtain.</p>
    <p>Data operating income and net profit: income and revenue.</p>
    <p>The profit ratio = NIncome/revenue.</p>
    <p>Access to data on current assets and current liabilities:</p>
    <p>Current assets = tradingFA + loanToOthBankFi + intReceiv + purResaleFa + CReserCB + derivAssets + deposInOthBfi + preciMetals + investAsReceiv;</p>
    <p>current liabilities = CBBorr + depos + loanFrOthBankFi + tradingFL + soldForRepura + payrollPayable + taxesPayable + intPayable + bondPayable + deposFrOthBfi + derivLiab;</p>
    <p>Current ratio = current assets/current liabilities.</p>
    <p>The exact meaning of these variables can be found in the data menu in the mining platform.</p>
    <p>In addition, we collect data by looking at bank annual reports and rating reports issued by credit rating agencies.</p>
   </sec>
   <sec id="s3_2">
    <title>3.2. Read in Data</title>
    <p>Import Python’s numpy, pandas, sklearn, matplotlib module and train_test_split, pyplot, svm function.</p>
    <p>import numpy as np</p>
    <p>import pandas as pd</p>
    <p>import sklearn</p>
    <p>from sklearn.model_selection import train_test_split</p>
    <p>from sklearn import svm</p>
    <p>import matplotlib as mpl</p>
    <p>import matplotlib.pyplot as plt</p>
    <p>data=np.loadtxt(‘F:/2glkx/data/zonghe1.txt’,delimiter=‘,’)</p>
    <p># using loadtxt to read data can directly convert text data into arrays for easy operation</p>
    <p># to facilitate subsequent training, set the AAA to 3 AA to 2.5 AA to 2</p>
    <p>Data = np.loadtxt(‘F:/2glkx/data/zonghe1.txt’,delimiter=‘,’)</p>
    <p># convert floating-point data to a string for later operations</p>
    <p>data=data.astype(Str)</p>
   </sec>
  </sec><sec id="s4">
   <title>4. Training and Testing Results of Credit Rating of Commercial Banks Based on Support Vector Machine</title>
   <sec id="s4_1">
    <title>4.1. Separation of Data into Training and Test Sets</title>
    <p>x, y = np.split (data, (2,), axis = 1)</p>
    <p>x_train, x_test, y_train, y_test = sklearn.model_selection.train_test_split (x, y, random_state = 1, train_size = 0.6)</p>
    <p>1) split (data, segmentation position, axis 1 (horizontal partition) or 0 (vertical segmentation);</p>
    <p>2) sklearn. model_selection. train_test_split randomly divided into training set and test set.</p>
    <p>train_test_split (train_data, train_target, test_size = number, random_state = 0).</p>
    <p>Parameter interpretation:</p>
    <p>train_data: the sample feature set to be partitioned.</p>
    <p>train_target: sample results to be partitioned.</p>
    <p>test_size: the percentage of test_size: samples, if an integer, is the number of samples.</p>
    <p>random_state: is the seed of random numbers.</p>
    <p>Random number seed: in fact, the number of random numbers, in case of repeated trials, ensure that the same set of random numbers. For example, if you fill in 1 at a time, you will get the same random array if the other parameters are the same. But fill in 0 or not, each time will be different. The generation of random numbers depends on the seeds. The relationship between random numbers and seeds follows the following two rules: different seeds produce different random numbers and the same seeds produce the same random numbers even if the instances are different.</p>
   </sec>
   <sec id="s4_2">
    <title>4.2. Training Classifier</title>
    <p># clf = svm.SVC (C = 0.1, kernel = ‘linear’, decision_function_shape = ‘ovr’)</p>
    <p>clf = svm.SVC (C = 0.8, kernel = ‘rbf’, gamma = 100, decision_function_shape = ‘ovr’)</p>
    <p>clf.fit(x_train, y_train.ravel())</p>
    <p>When kernel = ‘linear’,The larger C is, the better the classification effect is, but it is possible to over-fit (defaul C = 1).</p>
    <p>In kernel = ‘rbf’, the smaller the gamma value is, the more continuous the classification interface is, and the more “scattered” is, the better the classification effect is, but it may be over-fitted.</p>
    <p>When decision_function_shape = ‘ovr’ is defined as one v rest, that is, one category is divided from other categories, and when decision_function_shape = ‘ovo’ is defined as the one v one, is divided into two categories, the result of multi-classification is simulated by two-classification method.</p>
    <p>The following results were obtained:</p>
    <p>SVC (C = 0.8, cache_size = 200, class_weight = None, coef0 = 0.0,</p>
    <p>decision_function_shape = ‘ovr’, degree = 3, gamma = 100, kernel = ‘rbf’,</p>
    <p>max_iter = −1, probability = False, random_state = None, shrinking = True,</p>
    <p>tol = 0.001, verbose = False)</p>
    <p>After several attempts, gamma = 100 can achieve the best effect.</p>
    <p>print (clf.score (x_train, y_train))</p>
    <p>print (clf.score (x_test, y_test))</p>
    <p>The following results were obtained:</p>
    <p>0.7962962962962963</p>
    <p>0.5277777777777778</p>
    <p>It can be seen from above that the accuracy of the SVC classifier is 0.80 for the training set and 0.53 for the test set.</p>
   </sec>
  </sec><sec id="s5">
   <title>5. Visual Graphics for Credit rating of Commercial Banks</title>
   <p># determining the range of coordinate axes x,y represents two characteristics respectively</p>
   <p>x = x.astype(float)</p>
   <p>y = y.astype(float) #Convert the x,y data type back to a later operation</p>
   <p>x1_min, x1_max = x [:, 0].min(), x [:, 0].max () # Range of column 0</p>
   <p>x2_min, x2_max = x [:, 1].min(), x [:, 1].max () # Range of column 1</p>
   <p>x1, x2 = np.mgrid[x1_min:x1_max:200j, x2_min:x2_max:200j]</p>
   <p>#Generating grid sampling points</p>
   <p>grid_test = np.stack ((x1.flat, x2.flat), axis = 1) # Test point</p>
   <p>grid_hat = clf.predict (grid_test)</p>
   <p>grid_hat = grid_hat.reshape (x1.shape)</p>
   <p># Predictive classification value grid_hat = grid_hat.reshape (x1.shape)</p>
   <p>#Make it the same shape as the input</p>
   <p># Draw a Visualized Drawing</p>
   <p>cm_light = mpl.colors.ListedColormap ([‘#A0FFA0’, ‘#FFA0A0’, ‘#A0A0FF’])</p>
   <p>cm_dark = mpl.colors.ListedColormap ([‘g’, ‘r’, ‘b’])</p>
   <p>x1 = x1.astype (float)</p>
   <p>x2 = x2.astype (float)</p>
   <p>grid_hat = grid_hat.astype (float)</p>
   <p>plt.pcolormesh (x1, x2, grid_hat, cmap = cm_light)</p>
   <p>plt.scatter (x [:, 0], x [:, 1], c = ‘b’, edgecolors = ‘k’, s = 25, cmap = cm_dark) #sample</p>
   <p>plt.xlabel (u’Current Ratio’, fontsize = 13)</p>
   <p>plt.ylabel (u’Profit Ratio’, fontsize = 13)</p>
   <p>plt.xlim (x1_min, x1_max)</p>
   <p>plt.ylim (x2_min, x2_max)</p>
   <p>plt.show ()</p>
   <p>Get the figure as shown in <xref ref-type="fig" rid="fig1">
     Figure 1
    </xref>.</p>
   <fig id="fig1" position="float">
    <label>Figure 1</label>
    <caption>
     <title>Figure 1. Three categories of credit ratings of commercial banks.</title>
    </caption>
    <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/2410935-rId64.jpeg?20250228021603" />
   </fig>
  </sec><sec id="s6">
   <title>6. Analysis and Conclusion of the Results of Three Categories of Credit Rating of Commercial Banks</title>
   <p>It can be seen from <xref ref-type="fig" rid="fig1">
     Figure 1
    </xref> that the scattered sample points are divided into three categories according to the classifier trained by the sample set, that is, AAA, AA A, which is distributed in three color regions. The purple area above is AAA grade commercial banks. It can be seen that its profit margin is the highest. The liquidity ratio can be seen to be between 0.3 and 0.5 through scattered point distribution, but there are also some very high liquidity ratios, which exceed 0.5. The red area is AA commercial bank; its profit margin level is lower than AAA grade commercial banks, higher than AA grade, and its liquidity ratio is also between 0.3 and 0.5. Green area is AA grade bank. AA-rated banks have low-profit margins but a high liquidity ratio, mostly between 0.5 - 0.8.</p>
   <p>Because the number of data samples is limited by the actual situation (the number of banks), and the data are not all from the same source (excellent mining, bank annual reports, Rating assessment reports, and the final use of training data is recomputed (profit margin = net profit/operating income, liquidity ratio = current assets/current liabilities), with significant errors, Only two characteristic variables (profit margin, liquidity ratio) are selected. Therefore, it cannot fully reflect the credit rating of commercial banks. However, we can see from <xref ref-type="fig" rid="fig1">
     Figure 1
    </xref> that profit margin is an important indicator of bank credit, and it reflects the bank’s earnings. Profit ability: The higher the credit level of the bank, the stronger its profitability.</p>
  </sec><sec id="s7">
   <title>Fund Program</title>
   <p>This research is the phased achievements of the scientific research ability improvement project of Key construction disciplines in Guangdong Province (No: 2024ZDJS113), the Application Oriented Demonstration Major of Guangzhou Huashang College (No: HS2024SFZY08) and the construction project of the core course teaching and Research Section of Financial Technology major of Guangzhou Huashang College (No: HS2024ZLGC43), etc.</p>
  </sec>
 </body><back>
  <ref-list>
   <title>References</title>
   <ref id="scirp.140948-ref1">
    <label>1</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Altman, E. I. (1968). Financial Ratios, Discriminant Analysis and the Prediction of Corporate Bankruptcy. The Journal of Finance, 23, 589-609. &gt;https://doi.org/10.1111/j.1540-6261.1968.tb00843.x
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref2">
    <label>2</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Anthony, H., Catanach, J.,&amp;Perry, S. E. (2001). An Evaluation of the Survival Model’s Contribution to Thrift Institution Distress Prediction. Journal of Managerial Issue, 8, 401-417.
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref3">
    <label>3</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Beaver, W. H. (1966). Financial Ratios as Predictors of Failure. Journal of Accounting Research, 4, 71-111. &gt;https://doi.org/10.2307/2490171
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref4">
    <label>4</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Chen, J. (1999). Empirical Analysis of Financial Deterioration Forecast of Listed Companies. Accounting Research, 4, 31-38.
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref5">
    <label>5</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Chen, X.,&amp;Chen, Z. H. (2000). Theoretical Method and Application of Enterprise Financial Distress Research. Investment Research, 6, 23.
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref6">
    <label>6</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Collins, R. A.,&amp;Green, R. D. (1982). Statistical Methods for Bankruptcy Forecasting. Journal of Economics and Business, 34, 349-354. &gt;https://doi.org/10.1016/0148-6195(82)90040-6
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref7">
    <label>7</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Lo, A. W. (1986). Logit versus Discriminant Analysis: A Specification Test and Application to Corporate Bankruptcies. Journal of Econometrics, 31, 151-178. &gt;https://doi.org/10.1016/0304-4076(86)90046-1
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref8">
    <label>8</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Ohlson, J. A. (1980). Financial Ratios and the Probabilistic Prediction of Bankruptcy. Journal of Accounting Research, 18, 109-131. &gt;https://doi.org/10.2307/2490395
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref9">
    <label>9</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Shi, X. J. et al. (2005). Research on Consistency between Options and Accounting Information Credit Model. Theory and practice of Systems Engineering, 10, 11-20.
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref10">
    <label>10</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Wang, C. F. et al. (1999). Credit Risk Assessment of Commercial Banks Based on Neural Network Technology. Theory and practice of Systems Engineering, 9, 24-32.
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref11">
    <label>11</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Wu, C. et al. (2009). Research on Credit Risk Assessment Model of Commercial Banks Based on Five-Level Classification Support Vector Machine Integration. Forecast, 4, 57-61.
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref12">
    <label>12</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Wu, S. N. (2001). Research on Forecasting Model of Financial Distress of Listed Companies in China. Economic Research, 6, 46-55.
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref13">
    <label>13</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Yu, L. et al. (2009). A Least Squares Fuzzy Support Vector Machine Model with Variable Penalty Factor based on Kernel Principal Component Analysis and Its Application in Credit Classification. Systems Science and Mathematics, 10, 1311-1326.
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref14">
    <label>14</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Zhang, M.,&amp;Cheng, T. (2005). Dynamic Perspective of Empirical Research on Financial Early Warning of Listed Companies. Financial Research, 31, 62-70.
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref15">
    <label>15</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Zhu, S. Q. (2009). Research on Credit Classification Modeling and Application of Listed Companies Based on Option Pricing Theory. Statistics and Information Forum, 7, 23-38.
    </mixed-citation>
   </ref>
   <ref id="scirp.140948-ref16">
    <label>16</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Zhu, Y. F. (2008). Feature Selection and Effect Evaluation of Microenterprise Credit Evaluation Based on Neural Network. Statistics and Information Forum, 4, 8-11.
    </mixed-citation>
   </ref>
  </ref-list>
 </back>
</article>