AntipovSN and MihhaCF


UPD Часть вторая здесь


Часть первая, в которой Граф еще не стал Атосом, не встретил Миледи и все у него хорошо


Вступление от авторов:


Добрый день! Сегодня мы начинаем цикл статей, посвященных скорингу и использованию в оном теории графов (Т.Г.). Надеюсь, нам хватит запала, сил и терпения, т.к. тема достаточно объемная и, на наш взгляд, интересная.


Несмотря на шуточное название, мы постараемся затронуть отнюдь не шуточные темы, которые уже сейчас влияют на жизнь многих из нас, а в ближайшем будущем могут коснуться всех, без исключения.


Все шуточные аллегории, вставки и прочее призваны немного разгрузить повествование и не позволить ему свалиться в нудную лекцию. Всем, кому не зайдет наш юмор, заранее приносим извинения


А теперь к делу.


Цель данной статьи: не более, чем за 30 минут, ввести читателя в проблематику исследования, определить уровень рассмотрения проблемы, описать основную концепцию исследования и познакомить с базовыми терминами.


Термины и определения:


  • Скоринг – система бальной оценки объекта, основанная на численных статистических методах.
  • Граф – способ моделирования связей объектов. Представьте, что Вы с друзьями играете в покер и хотите смоделировать, кто кому сейчас должен. Например, «Д’Артаньян должен Атосу 10 луидоров»


Полный граф может выглядеть следующим образом:

Арамис всегда был хитрож… себе на уме, ему должен даже Атос. Портос, пока не встретил госпожу Кокнар, перевязь не мог себе нормальную купить и умудрился задолжать нищеброду Д’артаньяну, хотя, честно говоря, они всю дорогу что-то мутили вместе…


Графы состоят из узлов и ребер. Узел может быть напрямую соединен с несколькими другими узлами. Эти узлы называются соседями.


  • Взвешенный граф – это граф, у которого каждому ребру присвоен вес. Граф без весов называется невзвешенным.
  • Ориентированный или направленный граф – это граф, ребрам которого присвоено направление
  • Ориентированный ациклический граф – это случай направленного графа, в котором отсутствуют направленные циклы, то есть пути, начинающиеся и кончающиеся в одной и той же вершине.
  • Data Mining — собирательное название, используемое для обозначения совокупности методов обнаружения в данных ранее неизвестных, нетривиальных, практически полезных и доступных интерпретации знаний, необходимых для принятия решений в различных сферах человеческой деятельности
  • Алгоритм поиска в ширину (BFS, Breadth-First Search) – отвечает на два вопроса: существует ли путь от узла А к узлу В и как выглядит кратчайший путь от узла А к узлу В. Обход производится по уровням: сначала проверяются узлы первого уровня, их дочерние узлы добавляются в очередь, и так до конца
  • Алгоритм поиска в глубину (DFS, Depth-first search) — Стратегия поиска в глубину, состоит в том, чтобы идти «вглубь» графа, насколько это возможно. Алгоритм поиска описывается рекурсивно: перебираем все исходящие из рассматриваемой вершины рёбра. Если ребро ведёт в вершину, которая не была рассмотрена ранее, то запускаем алгоритм от этой нерассмотренной вершины, а после возвращаемся и продолжаем перебирать рёбра. Возврат происходит в том случае, если в рассматриваемой вершине не осталось рёбер, которые ведут в нерассмотренную вершину. Если после завершения алгоритма не все вершины были рассмотрены, то необходимо запустить алгоритм от одной из нерассмотренных вершин
  • Алгоритм Дейкстры — Находит кратчайшие пути от одной из вершин графа до всех остальных. Алгоритм работает только для ациклических графов с взвешенными ребрами, без отрицательного веса.

Ну, вроде, с самыми основными понятиями разобрались, можно перейти ближе к делу.


Скоринг может быть использован для оценки практически чего угодно, что можно выразить в статистических показателях. Это и оценка кредитоспособности физического / юридического лица (скоринг заявителя), и оценка вероятности мошенничества (скоринг от мошенничества), и оценка страхователя (страховой скоринг), оценка поставщика/заказчика (скоринг контрагента), оценка поведения потребителей (поведенческий скоринг), социальная оценка («Китайский» скоринг) и пр.


Теория графов, в свою очередь, также универсальный инструмент, который может быть использован в любой сфере деятельности, в которой необходимо обрабатывать большие, многоуровневые объемы данных.


Эти два инструмента созданы друг для друга, как Д’артаньян и Констанция (надо только за Констанцией нормально следить и не пускать всяких Миледей).


О важности и злободневности скоринга ничего писать не будем, ибо достаточно приглядеться вокруг и сразу станет понятно, что мы уже давно явно или не явно подвергаемся скорингу, дальше будет только веселее.


В цикле статей мы постараемся наглядно продемонстрировать, как работает скоринг с использованием теории графов в банковской сфере. То есть, мы будем определять кредитоспособность юридических лиц (может даже и физиков зацепим), исходя из предоставленных ими данных и связей, которые они имеют с другими организациями — так называемый «скоринг заемщика».


Как следует из официального определения, скоринг заемщика призван упразднить субъективизм принятия решения кредитного инспектора, снизить уровень внутреннего мошенничества и увеличить скорость принятия решения по кредиту. Посмотрим так ли это, развернем, так сказать, конфету и посмотрим из чего она сделана.


Банковская сфера выбрана не случайно — банки обладают обширными источниками информации и занимаются скорингом с применением автоматизации, все более и более активно.


Еще чуть ближе к делу. Помните, как Д’артаньян дрался с господином де Жюссаком? Шажок туда, шажок сюда, потом бегали вокруг да около дерева и только потоооом колоть друг друга начали. Мы так тянуть не будем, но и колоть сразу тоже смысла нет – будет непонятно.


Итак! В боевой системе скоринговый бал будет рассчитываться на основании двух групп показателей:


  • Показатели, полученные напрямую от заемщика и гос. органов:
    • налоговая отчетность;
    • паспортные данные владельцев, ген. директора, гл. бухгалтера;
    • выписки ЕГРЮЛ, ЕГРИП;
    • правоустанавливающие документы;
    • данные по задолженностям;
    • данные по судебным делам;
    • и пр.
  • Показатели, полученные с помощью анализа графов и data mining:
    • взаимодействие с гос. органами – подряд/субподряд/поставка;
    • взаимодействие с компаниями из топ-100;
    • наличие в окружении заемщика компаний банкротов, должников, компаний с низким скоринговым балом;
    • участие в благотворительных организациях
    • и пр.

На основании перечисленных показателей выстроится модель: вершинами графа будут все организации, с которыми так или иначе взаимодействовал заемщик, ребра графа будут иметь вес. Вес связи будет задаваться в пределах от 1 до 5, характеризуя степень влияния узлов друг на друга.


К примеру:


  • Заемщик, который, в данном случае, является поставщиком, связан контрактами с Заказчиком на 1 млн руб. Годовой оборот заемщика – 5 млн. Годовой оборот Заказчика 100 млн руб. Наглядно видно, что Поставщик зависит от Заказчика сильнее, чем Заказчик от поставщика. Таким образом, для Поставщика связь будет равна 5 (к примеру), а для Заказчика 1.
    Понятно, что пример чисто умозрительный и в реальной жизни мы будем делать более детальный анализ. Это дело следующих статей и сейчас нет смысла забираться так глубоко.

Степень взаимодействия и сами взаимодействия будут определяться, в том числе, с помощью алгоритмов поиска на графах.


В нашей тестовой системе мы будем использовать всю ту же тему с мушкетерами и их связями. Модель будет максимально приближена к боевой и в достаточной мере демонстрировать нашу идею. К чему мы в конечном итоге придем, как будет выглядеть модель? Не торопитесь говорить: «Каналья!» или «Мне не нужны академии. Любой гасконец с детства академик!». Все будет не так примитивно, как кажется.



Краткое описание: наши мушкетеры решили создать непубличное акционерное общество (НПАО), которое будет заниматься поставками ювелирных изделий и предоставлять охранные услуги, для начала деятельности им нужен кредит. Кредитной организацией выступает ПАО «Король», который и заказал оценку НПАО «Один за всех»


Особенности представленного графа:


  • Граф является неориентированным (двунаправленным) и взвешенным.
  • Каждое ребро имеет вес – степень взаимодействия. На рисунке мы не стали усложнять и делать свою величину связи в каждом направлении от узла к узлу. Ограничились единой агрегированной оценкой связи. Но в алгоритме расчета это будет учтено.
  • Красным отмечены организации, которые противостоят нашей и всячески ей мешают. В реальной жизни это будут конкуренты, компании банкроты, злостные неплательщики, компании, в отношении которых идут судебные разбирательства и т.д.
  • Наверно, уже можно догадаться, что потребуется оценка связей по уровням и направлениям, то есть, нужно будет учитывать не только уровень связи, но и направление. Потребуется учитывать взаимное влияние узлов и еще много чего.

У нас впереди много работы. Ну, а в рамках данной статьи, мы закончили. Заявленные цели статьи, как нам кажется, достигнуты. Надеемся нам удалось Вас заинтересовать, и Вы дочитали до конца.

Комментарии (15)


  1. VolCh
    21.08.2019 05:04

    Почему скорингом считаются только бальные системы оценок?


    Не дано определение пути и кратчацшего пути.


    1. MihhaCF Автор
      21.08.2019 13:53

      Скоринг — общепринятый термин, особенно в банковской сфере. Почему бальные системы оценок — метод считается численным, баллы просто упрощают восприятие всего того, что Вы насчитаете в процессе исследования.
      Скорее всего, мы не будем рассчитывать кратчайший путь. В следующих статьях это будет более понятно.


      1. VolCh
        21.08.2019 17:15

        Почему, например, не считать сразу в деньгах сколько можно дать? Я участвовал в разработке такой системы, мы её называли скорингом, но какждый раз когда рассказывал об этом, мне говорили, что это не скоринг, а туфта какая-то типа системы принятия решений.


        1. MihhaCF Автор
          21.08.2019 17:39

          Да тут не очень важно как ее назвать, важно какой цели она служит))) Скорингом называют, потому что считаются численные показатели, ну, или качественные показатели переводятся в численные. При этом система помогает принять верное решение. Так что никаких противопоказаний.
          Думаю, можно сразу к деньгам привязать, главное правильно данные собрать и чтобы компания, внедряющая процесс скоринга могла выработать рабочие критерии (в банках эта статистика обычно есть). Сейчас уже есть нейросети, которые могут выдать рекомендацию, какую сумму можно выдать заемщику, на основании его внутренних характеристик. В нашем случае мы пойдем чуть дальше, нам нужно будет оценить не только внутренние характеристики заемщика, но и его связи, которые могут влиять на выплату кредита. То есть будет и майнинг и обработка сетью и отдельный алгоритм расчета. Если, конечно, у нас запала хватит на такой альтруизм)))) В следующих статьях будет уже ближе к конкретике


        1. AntipovSN
          21.08.2019 18:46

          Скоринг предназначен для цифровой оценки качества клиента. На основе скорингового бала можно реализовать рекомендательную систему по выбору кредитной программы или программы страхования, или любые другие рекомендации, но это внутренние рабочие процессы конкретных компаний. Сам же скоринговый бал даёт более общее представление о клиенте и его возможностях.


          1. VolCh
            22.08.2019 13:00

            Максимальная сумма кредита, которую можно дать с допустимыми рисками — это же цифровая оценка качества клиента?


            1. AntipovSN
              22.08.2019 13:13

              Нет, это сумма кредита, которую может дать банк не только исходя из оценки качества клиента, он так же и из своих возможностей. Например, если воспользоваться услугами «скорингового агенства», оно не скажет вам, какую сумму кредита именно ваш банк может выдать конкретному клиенту. Так же эта оценка может использоваться и другими организациями для своих нужд, отличных от кредитной деятельности.


              1. MihhaCF Автор
                22.08.2019 13:45
                +1

                Если система пишется для конкретного банка, то в нее, конечно, закладывается специфика банка и на выходе можно получить сумму кредита.


  1. datasanta
    21.08.2019 13:42

    Каким образом описанная система позволяет снизить субъективизм в принятии решения? Да, информация представлена в более удобном для анализа виде — в виде графа. Но анализируют ее все равно вручную, кредитные специалисты?


    1. MihhaCF Автор
      21.08.2019 13:54

      Как раз мы планируем создать систему, которая будет рассчитывать балл без участия человека, ну, или сведет его участие к минимуму. Это будет понятно, когда мы начнем описывать майнинг данных и алгоритм их оценки


    1. AntipovSN
      21.08.2019 19:08

      На "графовых алгоритмах" можно реализовать много разнообразных удачных решений для анализа взаимодействия компаний/людей(в общем случае любых объектов) между собой. Например стабильность компании в виду наличия гос. контрактов и контрактов с крупными компаниями. Наличие гос. задолженности/судов или взаимодействие с компаниями банкротами. Выявлять подставные фирмы, созданные для участия в разных мошеннических действиях. И многое другое. Ну и удобное представление информации для анализа тоже очень важно ))


  1. HelloWord
    21.08.2019 13:54

    Ждёмс продолжения. Интересно по какому алгоритму ставятся веса связи и в симметричной связи и в не симметричной.


    1. MihhaCF Автор
      21.08.2019 13:56

      Да, это будет один из ключевых вопросов. Но к нему нужно еще подойти, это будет в следующих статьях.


  1. nitrosbase
    21.08.2019 23:11

    Сегодня мы начинаем цикл статей, посвященных скорингу и использованию в оном теории графов.

    Вот прямо-таки теории графов? Не графовой модели данных, графовых СУБД, графовых алгоритмов?


    Мне кажется, вы собираетесь описывать то, что называется 360-Degree View. С удовольствием почитаю, всегда хотел узнать об этом больше.


    1. MihhaCF Автор
      22.08.2019 09:06

      Базой для графовых моделей данных, графовых СУБД, графовых алгоритмов служит теория графов))) Мы решили не загонять себя в какие-то рамки, т.к. планируем достаточно широкий охват различной информации, из разных специфических разделов. Куда нас занесет, еще до конца не понятно)))
      Хотя, Вы правы, будут и графовые модели, графовые алгоритмы и пр.