Оценивание кредитных рисков
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
изует механизмы векторной обработки данных, позволяя избегать использования циклов.
Нам необходимо решить задачу классификации, где исходя из имеющейся информации необходимо получить функцию, наиболее точно подразделяющую выборку кредитов на плохих и хороших.
Существует множество различных методов классификации. В качестве интеллектуальной информационной технологии был выбран иммунокомпьютинг.
Особенность ИК-алгоритма распознавания образов является проекция произвольных данных в пространство ФИС. Такое преобразование обладает следующим преимуществом:
имеет строгое математическое обоснование в терминах сингулярного разложения матриц;
существенно снижает размерность данных;
позволяет наглядно представить и визуализировать любую ситуацию как точку одно- двух- или трехмерного пространства.
В соответствии с этим рассмотрим вычислительные ИК-алгоритмы решения задачи классификации и кластеризации и математическое описание основных процедур.
Структура пакета прикладных программ, реализующего вычислительные процедуры оценки кредитных рисков на основе системы MATLAB, представлена на рисунке 2. Пакет состоит из трех основных модулей. Для создания каждого модуля используются различные инструментальные средства разработки.
Рис. 2 Основные модули пакета прикладных программ.
6.1Математическая модель и вычислительный алгоритм решения задачи классификации
Процедуры классификации кредитных рисков включают операции с наборами чисел, поэтому массивы, матрицы и операции над ними являются той базой, на основе которой строятся инструменты для анализа.
При решении задачи классификации был использован алгоритм вычислительной процедуры с экспертом. Для процедуры обучения с экспертом исходной информацией являются векторы значений индикаторов по каждому из эталонных классов и сформированная на основе мнения эксперта обучающая выборка. Анализируя и исследуя ряд таких систем с привлечением эксперта, можно на основании его знаний выстроить классификацию и оценить к какому из классов принадлежит исследуемый объект. Алгоритм обучения с экспертом состоит их следующих шагов:
Шаг 1. Сворачивание вектора в матрицу. Заданный вектор Х размерности (n x 1) сворачиваем в матрицу M размерности nU x nV = n.
Шаг 2. Формируем матрицы A1, A2,….,Ak для эталонных классов с = 1,…,к и вычисляем их сингулярные векторы:
{U1, V1} - для A1, {U2, V2} - для A2, {Uк, Vк} - для Ak.
Шаг 3. Распознавание. Для каждого входного образа М вычисляем к значений энергии связи между каждой парой сингулярных векторов:
?1 = - U Т1 MV1, ….., ?1 = - U Тк MVк.
Шаг 4. Определяем класс, к которому принадлежит входной образ М. Минимальное значение энергии связи ?* определяет этот класс,:
c = ?* = minc { ?c }
Блок-схема вычислительного алгоритма процедуры обучения с экспертом:
Рис. 3. Блок-схема вычислительного алгоритма процедуры обучения с экспертом
6.2Математическая модель и вычислительный алгоритм решения задачи кластеризации
Процедура самообучения (обучение без эксперта) основана на автоматической классификации. Считаем, что матрица A = [X1, ..., Xm] размерности (n m) формируется набором m векторов X1, ..., Xm. Алгоритм вычислительной процедуры самообучения (обучения без эксперта) состоит из следующих шагов:
Шаг 1. Формируем матрицу A = [X1, ..., Xm] размерности (n m), используя набор m векторов X1, ..., Xm .
Шаг 2. Вычисляем сингулярное разложение матрицы A :
A = s1U1V1T + s2 U 2 V2 + ... + sr U r VrT ,
где si - сингулярные числа матрицы A, Ui , Vi - соответственно, левые и
правые сингулярные векторы; r - ранг матрицы. Эти сингулярные числа и сингулярные векторы удовлетворяют следующим соотношениям:
s1 ? s2 ? ... sr ? 0, si = UiT AVi , UiT Ui = 1, ViT Vi = 1, i = 1, ..., r.
Шаг 3. Произвольным образом выбираем в качестве исходных правые сингулярные векторы Vm1 и Vm2. Определяем значения энергии связи для исходных векторов X1, ...,Xm с Vm1 и Vm2. Результаты вычислений значений энергии связи записываем в таблицу.
Шаг 4. Представляем исходные векторы X1, ..., Xm на плоскости вычисленных значений энергии связи.
Шаг 5. На плоскости вычисленных значений энергии связи формируем классы и проводим интерпретацию полученных результатов.
Рис.4. Блок-схема вычислительного алгоритма процедуры самообучения (обучения без эксперта)
7Решение задач и интерпретация результатов
7.1Решение задачи классификации и интерпретация результатов
кредитный риск интеллектуальная информационная система
В курсовой работе для интеллектуальной информационной системы оценки кредитов была разработана процедура обучения с экспертом для отнесения кредитов к классу хорошего (одобрение) кредита, либо к классу плохого (отказ) кредита.
Для демонстрации результатов решения задачи классификации возьмем из базы данных о клиентах заемщика, со следующими данными:
1 20 4 0 2235 1 3 4 4 3 2 2 33 1 1 2 3 1 1
Данный клиент зарекомендовал себя плохим заемщиком.
Листинг программы решения задачи классификации, реализующий вычислительную процедуру обучения с экспертом представлен ниже:
function res = training(Z,A1,A2,D)=[1 1 8 4 0 3398 1 4 1 3 1 4 1 39 3 2 2 2 1 1];=[1 4 18 4 3 1098 1 1 4 2 1 4 3 65 3 2 2 1 1 1
2 24 2 3 3758 3 1 1 2 1 4 4 23 3 1 1 1 1 1
1 11 4 0 3905 1 3 2 3 1 2 1 36 3 1 2 3 2 1
1 12 2 3 674 2 4 4 4 1 1 2 20 3 2 1 3 1 1
1 6 4 3 1957 1 4 1 2 1 4 3 31 3 2 1 3 1 1];=[ 0 1 20 4 0 2235 1 3 4 4 3 2 2 33 1 1 2 3 1 1
1 12 4 0 2171 1 3 4 3 1 4 2 38 1 2 2 2 1 1
1 10 4 0 2241 1 2 1 3 1 3 1 48 3 1 2 2 2 1
1 8 4 0 3398 1 4 1 3 1 4 1 39 3 2 2 2 1 1
1 6 4 0 1361 1 2 2 3 1 4 1 40 3 2 1 2 2 1];
[U1,S1,V1]=svd(A1);
[U2,S2,V2]=svd(A2);=[];=[]k=1:5;=Z*1/S1(k,k)*V1(:,k);=Z*1/S2(k,k)*V2(:,k)