Auriau, Vincent, Ali Aouad, Antoine Désir und Emmanuel Malherbe. „Choice-Learn: Groß angelegte Entscheidungsmodellierung für operative Kontexte unter dem Gesichtspunkt des maschinellen Lernens.“ Journal of Open Source Software 9, Nr. 101 (2024): 6899.
Einleitung
Diskrete Wahlmodelle zielen darauf ab, die Entscheidungen von Individuen aus einer Auswahl von Alternativen, dem sogenannten Sortiment, vorherzusagen. Zu den bekannten Anwendungsfällen gehören die Vorhersage der Wahl des Verkehrsmittels durch einen Pendler oder der Kaufentscheidungen eines Kunden. Wahlmodelle sind in der Lage, Variationen im Sortiment zu berücksichtigen, wenn bestimmte Alternativen nicht mehr verfügbar sind oder sich ihre Eigenschaften in unterschiedlichen Kontexten ändern. Dank dieser Anpassungsfähigkeit an verschiedene Szenarien können diese Modelle als Eingaben für Optimierungsprobleme verwendet werden, darunter Sortimentsplanung oder Preisgestaltung.
Choice-Learn bietet eine modulare Suite von Werkzeugen zur Entscheidungsmodellierung für Praktiker und Wissenschaftler, mit denen sie data verarbeiten und anschließend Entscheidungsmodelle formulieren, schätzen und operationalisieren können. Die Bibliothek ist in zwei Anwendungsebenen gegliedert, wie in Abbildung 1 dargestellt. Die übergeordnete Ebene ist auf eine schnelle und einfache Implementierung ausgelegt, während die untergeordnete Ebene komplexere Parametrisierungen ermöglicht. Diese Struktur, die von den verschiedenen Endpunkten von Keras inspiriert ist (Chollet et al., 2015), ermöglicht eine benutzerfreundliche Oberfläche. Choice-Learn wurde mit den folgenden Zielen entwickelt:
Die wichtigsten Ergebnisse sind in den Tabellen 1 und 2 zusammengefasst.



Bedarfsnachweis
Skalierbarkeit von Data Modellen
data von Choice-Learn basiert auf NumPy (Harris et al., 2020) mit dem Ziel, den Speicherbedarf zu begrenzen. Sie minimiert die Wiederholung von Artikeln oder Kundenmerkmalen und verschiebt die Verknüpfung der vollständigen data bis zur Verarbeitung von databatches. Das Paket führt das in Abbildung 2 dargestellte FeaturesStorage-Objekt ein, das es ermöglicht, Merkmalswerte ausschließlich über ihre ID zu referenzieren. Diese Werte werden im Batch-Prozess spontan in den ID-Platzhalter eingesetzt. Beispielsweise sind Merkmale von Supermärkten wie Fläche oder Lage oft unveränderlich. Daher können sie in einer data gespeichert werden, und im Hauptdatensatz wird die Filiale, in der die Wahl erfasst wurde, nur über ihre ID referenziert.
Das Paket basiert auf TensorFlow (Abadi et al., 2015) für die Modellschätzung und bietet die Möglichkeit, schnelle Quasi-Newton-Optimierungsalgorithmen wie L-BFGS (Nocedal & Wright, 2006) sowie verschiedene Gradientenabstiegs-Optimierer (Kingma & Ba, 2017; Tieleman & Hinton, 2012) zu verwenden, die auf die Verarbeitung von data spezialisiert sind. Auch die Nutzung von GPUs ist möglich, was sich als zeitsparend erweisen kann. Schließlich gewährleistet das TensorFlow-Backbone durch Deployment- und Serving-Tools wie TFLite und TFServing einen effizienten Einsatz in einer Produktionsumgebung, beispielsweise innerhalb einer Sortimentsempfehlungssoftware.

Vielseitige Einsatzmöglichkeiten: Von der Standardausführung bis hin zu kundenspezifischen Ausführungen
Wahlmodelle, die dem Prinzip der zufälligen Nutzenmaximierung (Random Utility Maximization) folgen (McFadden & Train, 2000), definieren den Nutzen einer Alternative 𝑖 ∈ 𝒜 als die Summe aus einem deterministischen Teil 𝑈 (𝑖) und einem zufälligen Fehler 𝜖𝑖. Wenn angenommen wird, dass die Terme (𝜖𝑖)𝑖∈𝒜 unabhängig sind und einer Gumbel-Verteilung folgen, lässt sich die Wahrscheinlichkeit, die Alternative 𝑖 zu wählen, als Softmax-Normalisierung über die verfügbaren Alternativen 𝑗 ∈ 𝒜 schreiben:

Die Aufgabe des Choice-Modellierers besteht darin, je nach Kontext eine geeignete Nutzenfunktion 𝑈 (.) zu formulieren. In Choice-Learn kann der Benutzer vordefinierte Modelle parametrisieren oder eine benutzerdefinierte Nutzenfunktion frei festlegen. Um ein benutzerdefiniertes Modell zu definieren, muss man die Klasse „ChoiceModel“ erben und die Methode „compute_batch_utility“ überschreiben, wie in der Dokumentation beschrieben.
Sammlung traditioneller Zufallsnutzungsmodelle und auf maschinellem Lernen basierender Modelle
Herkömmliche parametrische Entscheidungsmodelle, darunter das Conditional-Logit-Modell (Train et al., 1987), legen die Nutzenfunktion häufig in linearer Form fest. Dies liefert zwar interpretierbare Koeffizienten, schränkt jedoch die Vorhersagekraft des Modells ein. Neuere Arbeiten schlagen die Schätzung komplexerer Modelle vor, unter Verwendung von neuronalen Netzwerken (Aouad & Désir, 2022; Han et al., 2022) und baumbasierten Modellen (Aouad et al., 2023; Salvadé & Hillel, 2024). Während bestehende Wahlbibliotheken (Bierlaire, 2023; Brathwaite & Walker, 2018; Du et al., 2023) oft nicht darauf ausgelegt sind, solche auf maschinellem Lernen basierenden Ansätze zu integrieren, schlägt Choice-Learn eine Sammlung vor, die beide Arten von Modellen umfasst.
Nachgelagerte Prozesse: Sortiments- und Preisoptimierung
Choice-Learn bietet zusätzliche Werkzeuge für nachgelagerte Prozesse, die in Bibliotheken zur Wahlmodellierung normalerweise nicht integriert sind. Insbesondere die Sortimentsoptimierung ist ein häufiger Anwendungsfall, bei dem ein Wahlmodell genutzt wird, um die optimale Teilmenge von Alternativen zu ermitteln, die den Kunden angeboten werden soll, um ein bestimmtes Ziel zu maximieren, wie beispielsweise den erwarteten Umsatz, die Konversionsrate oder die gesellschaftliche Wohlfahrt. Dieses Framework deckt eine Vielzahl von Anwendungen ab, darunter Sortimentsplanung, Optimierung der Regalplatzierung und Preisgestaltung. Wir bieten Implementierungen auf Basis der in (Méndez-Díaz et al., 2014) beschriebenen Formulierung der gemischt-ganzzahligen Programmierung an, mit der Option, zwischen den Solvern Gurobi (Gurobi Optimization, LLC, 2023) und OR-Tools (Perron & Furnon, 2024) zu wählen.
Speicherverbrauch: eine Fallstudie
In Abbildung 3 (a) zeigen wir numerische Beispiele zur Speicherauslastung, um die Effizienz von FeaturesStorage zu veranschaulichen. Wir betrachten ein in einem Datensatz wiederkehrendes Merkmal, beispielsweise eine One-Hot-Kodierung für Standorte, dargestellt durch eine Matrix der Form (#locations, #locations), wobei jede Zeile sich auf
einen Standort bezieht.
Wir vergleichen vier Methoden data am Expedia-Datensatz (Ben Hamner et al., 2013): pandas.DataFrames (The pandas development team, 2020) im langen und breiten Format, die beide in Paketen zur Wahlmodellierung verwendet werden, Torch-Choice und Choice-Learn. Abbildung 3 (b) zeigt die
Ergebnisse für verschiedene Stichprobengrößen.
Schließlich beobachten wir in Abbildung 3 (c) und (d) Speicherplatzgewinne bei einem proprietären Datensatz aus dem stationären Einzelhandel, der aus der Aggregation von mehr als 4 Milliarden Einkäufen in Konzum-Supermärkten in Kroatien besteht. Mit Fokus auf die Unterkategorie Kaffee gibt der Datensatz für jeden Einkauf an, welche Produkte verfügbar waren, ihre Preise sowie eine One-Hot-Darstellung des Supermarkts.


BLOG





