Neue Algorithmen für relationales Lernen: Was Deep Learning nicht beherrscht

Seite 4: Mit Feature Learning zum Durchbruch

Inhaltsverzeichnis

Die Data Scientists des Kreditinstituts können mithilfe der Pipeline schließlich die Kreditausfallwahrscheinlichkeit potenzieller Kreditnehmer auf Basis der Transaktionshistorie einzelner Kunden berechnen. Hierfür müssen sie lediglich neue Daten an predict übergeben. Das Besondere: Die Data Scientists müssen selbst keine Transformationen an den Daten vornehmen, kein Feature manuell erstellen, keine Zeile SQL schreiben. Sie müssen lediglich die Rohdaten und die verfügbaren Metainformationen – Datenmodell und Annotationen – an die API übergeben. Eine typische Anforderung in der Praxis ist die Möglichkeit, die gelernte Logik hinter einem Feature zu untersuchen.

Code-Demo

Das vorgestellte Beispiel sowie über zwanzig weitere Beispiele sind in getMLs Demo-Repository auf Github verfügbar. Die getML-Engine steht als Free Trial auf der Website von getML zum Download bereit. Auf Try GetML lassen sich alle Beispiel-Notebooks interaktiv in einer JupyterLab-Umgebung im Browser ausführen.

Dadurch ist es möglich, die Geschäftslogik eines Features zu validieren. Das getML-Framework bietet die Möglichkeit, Features, aber auch ganze Pipelines, in verschiedene SQL-Dialekte zu transpilieren und beispielsweise auf einem Spark-Cluster auszuführen. Listing 6 zeigt exemplarisch die transpilierte Logik eines von Multirel auf Basis der Beziehung zwischen population und trans gelernten Features: Das Minimum des Kontostandes unter Berücksichtigung bestimmter Transaktionsarten und -zeitpunkte.

CREATE TABLE feature_1_61 AS
SELECT MIN(trans.balance) AS feature_1_61
FROM population
INNER JOIN trans ON population.account_id = trans.account_id
WHERE (trans.date <= population.date_loan)
  AND (((trans.operation NOT IN ('VYBER')
         OR trans.operation IS NULL)
        AND (trans.amount > 18278.000000))
       OR ((trans.operation IN ('VYBER'))
           AND (population.date_loan - trans.date > 7557120.000000)
           AND (trans.balance > 28786.000000))
       OR ((trans.operation IN ('VYBER'))
           AND (population.date_loan - trans.date > 7557120.000000)
           AND (trans.balance <= 28786.000000
                OR trans.balance IS NULL)
           AND (trans.balance <= 1681.000000))
       OR ((trans.operation IN ('VYBER'))
           AND (population.date_loan - trans.date <= 7557120.000000)))
GROUP BY population.account_id;

Listing 6: Ein von Multirel gelerntes Feature als SQL-Query – "VYBER" klassifiziert Bargeldabhebungen

Das Beispiel zeigt einen typischen Anwendungsfall des relationalen Lernens – die Kreditvergabeentscheidung einer Bank – in einer vereinfachten Form. Data Scientists haben die Möglichkeit Feature-Learning-Algorithmen zur Entwicklung von beliebigen Prognosemodellen auf relationalen Daten oder Zeitreihen einzusetzen – unabhängig von der Industrie oder dem Anwendungsfall. Feature Learning birgt das Potenzial, durch eine algorithmische Ende-zu-Ende-Automatisierung eine zentrale Rolle innerhalb unternehmerischer ML-Anwendungen einzunehmen.

Young Professionals schreiben für Young Professionals – die Autoren:
Alexander Uhlig, getML

Alexander Uhlig

ist einer der Gründer von getML. Er studierte Physik (M.Sc.) in Leipzig und arbeitete nach seinem Studium in dem VW Data:Lab, einer KI-Abteilung innerhalb der Volkswagen AG. Seit 2017 entwickelt er mit seinem Team das Machine-Learning-Framework getML und brachte es in zahlreichen Kundenprojekten erfolgreich zur Anwendung.

Co-Autor
Sören Nikolaus, getML

Sören Nikolaus

arbeitet seit 2020 als Data Scientist Developer Advocate und Entwickler bei getML. Er vermittelt zwischen Kunden, Nutzern und getMLs Entwicklungsteam. Er studierte Volkswirtschaftslehre (M.Sc.) in Leipzig.

(sih)