Neue Algorithmen für relationales Lernen: Was Deep Learning nicht beherrscht
Seite 4: Mit Feature Learning zum Durchbruch
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.
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.
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.
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)