Zephyrnet-Logo

Wie CCC Intelligent Solutions einen benutzerdefinierten Ansatz zum Hosten komplexer KI-Modelle mit Amazon SageMaker entwickelt hat

Datum:

Dieser Beitrag wurde gemeinsam von Christopher Diaz, Sam Kinard, Jaime Hidalgo und Daniel Suarez von CCC Intelligent Solutions verfasst.

In diesem Beitrag besprechen wir, wie Intelligente CCC-Lösungen (CCC) kombiniert Amazon Sage Maker mit anderen AWS-Services, um eine benutzerdefinierte Lösung zu erstellen, die in der Lage ist, die Arten von komplexen Modellen der künstlichen Intelligenz (KI) zu hosten, die ins Auge gefasst werden. CCC ist eine führende Software-as-a-Service (SaaS)-Plattform für die Multi-Billionen-Dollar-Sach- und Unfallversicherungswirtschaft, die den Betrieb von Versicherern, Werkstätten, Autoherstellern, Teilelieferanten, Kreditgebern und mehr unterstützt. Die Cloud-Technologie von CCC verbindet mehr als 30,000 Unternehmen, die geschäftskritische Workflows, Handel und Kundenerlebnisse digitalisieren. Als vertrauenswürdiger Marktführer in den Bereichen KI, Internet der Dinge (IoT), Kundenerlebnis sowie Netzwerk- und Workflow-Management liefert CCC Innovationen, die das Leben der Menschen vorantreiben, wenn es darauf ankommt.

Die Herausforderung

CCC verarbeitet jährlich Schadenstransaktionen im Wert von mehr als 1 Billion US-Dollar. Da sich das Unternehmen weiter entwickelt, um KI in seinen bestehenden und neuen Produktkatalog zu integrieren, erfordert dies ausgeklügelte Ansätze zum Trainieren und Bereitstellen von Ensemblemodellen für multimodales maschinelles Lernen (ML) zur Lösung komplexer Geschäftsanforderungen. Hierbei handelt es sich um eine Klasse von Modellen, die proprietäre Algorithmen und Fachkenntnisse enthalten, die CCC im Laufe der Jahre verfeinert hat. Diese Modelle sollten in der Lage sein, neue Ebenen nuancierter Daten und Kundenregeln aufzunehmen, um einzelne Vorhersageergebnisse zu erstellen. In diesem Blogbeitrag erfahren wir, wie CCC Amazon SageMaker-Hosting und andere AWS-Services nutzt, um mehrere multimodale Modelle in einer Ensemble-Inferenz-Pipeline bereitzustellen oder zu hosten.

Wie im folgenden Diagramm dargestellt, ist ein Ensemble eine Sammlung von zwei oder mehr Modellen, die so orchestriert werden, dass sie auf lineare oder nichtlineare Weise ausgeführt werden, um eine einzelne Vorhersage zu erstellen. Bei linearer Stapelung können die einzelnen Modelle eines Ensembles direkt für Vorhersagen aufgerufen und später zur Vereinheitlichung konsolidiert werden. Manchmal können Ensemble-Modelle auch als serielle Inferenzpipeline implementiert werden.

Für unseren Anwendungsfall ist die Ensemble-Pipeline streng nichtlinear, wie im folgenden Diagramm dargestellt. Nichtlineare Ensemble-Pipelines sind theoretisch direkt azyklische Graphen (DAGs). Für unseren Anwendungsfall hatte diese DAG-Pipeline sowohl unabhängige Modelle, die parallel ausgeführt werden (Dienste B, C), als auch andere Modelle, die Vorhersagen aus vorherigen Schritten verwenden (Dienst D).

Eine Praxis, die aus der forschungsorientierten Kultur bei CCC hervorgeht, ist die kontinuierliche Überprüfung von Technologien, die genutzt werden können, um den Kunden einen Mehrwert zu bieten. Als sich CCC dieser Ensemble-Herausforderung stellte, startete die Führung eine Proof-of-Concept (POC)-Initiative, um die Angebote von AWS gründlich zu bewerten, um insbesondere herauszufinden, ob Amazon SageMaker und andere AWS-Tools das Hosting einzelner KI-Modelle in komplexen, nichtlinearen Systemen verwalten könnten Ensembles.

Ensemble erklärt: In diesem Zusammenhang ist ein Ensemble eine Gruppe von 2 oder mehr KI-Modellen, die zusammenarbeiten, um 1 Gesamtvorhersage zu erstellen.

Fragen, die die Forschung antreiben

Kann Amazon SageMaker verwendet werden, um komplexe Ensembles von KI-Modellen zu hosten, die zusammenarbeiten, um eine Gesamtvorhersage zu liefern? Wenn ja, kann SageMaker sofort weitere Vorteile bieten, wie z. B. erhöhte Automatisierung, Zuverlässigkeit, Überwachung, automatische Skalierung und Maßnahmen zur Kosteneinsparung?

Die Suche nach alternativen Wegen zur Bereitstellung der KI-Modelle von CCC unter Nutzung der technologischen Fortschritte von Cloud-Anbietern wird es CCC ermöglichen, KI-Lösungen schneller als die Konkurrenz auf den Markt zu bringen. Darüber hinaus bietet mehr als eine Bereitstellungsarchitektur Flexibilität beim Finden des Gleichgewichts zwischen Kosten und Leistung basierend auf Geschäftsprioritäten.

Basierend auf unseren Anforderungen haben wir die folgende Liste von Funktionen als Checkliste für eine produktionstaugliche Bereitstellungsarchitektur fertiggestellt:

  • Unterstützung für komplexe Ensembles
  • Garantierte Betriebszeit für alle Komponenten
  • Anpassbare automatische Skalierung für bereitgestellte KI-Modelle
  • Erhaltung der Ein- und Ausgabe von KI-Modellen
  • Nutzungsmetriken und Protokolle für alle Komponenten
  • Kostensparende Mechanismen

Da ein Großteil der KI-Lösungen von CCC auf Computer-Vision-Modellen basiert, war eine neue Architektur erforderlich, um Bild- und Videodateien mit immer höherer Auflösung zu unterstützen. Es bestand ein starker Bedarf, diese Architektur als asynchrones Modell zu entwerfen und zu implementieren.

Nach Zyklen von Recherchen und anfänglichen Benchmarking-Bemühungen stellte CCC fest, dass SageMaker perfekt geeignet war, um einen Großteil ihrer Produktionsanforderungen zu erfüllen, insbesondere die garantierte Betriebszeit, die SageMaker für die meisten seiner Inferenzkomponenten bietet. Die Standardfunktion von Amazon SageMaker Asynchronous Inference-Endpunkten zum Speichern von Eingaben/Ausgaben in Amazon S3 vereinfacht die Aufgabe, aus komplexen Ensembles generierte Daten aufzubewahren. Da außerdem jedes KI-Modell von einem eigenen Endpunkt gehostet wird, wird die Verwaltung von automatischen Skalierungsrichtlinien auf Modell- oder Endpunktebene einfacher. Durch die Vereinfachung der Verwaltung besteht ein potenzieller kostensparender Vorteil darin, dass Entwicklungsteams mehr Zeit für die Feinabstimmung von Skalierungsrichtlinien aufwenden können, um eine Überbereitstellung von Rechenressourcen zu minimieren.

Nachdem wir uns entschieden hatten, SageMaker als zentrale Komponente der Architektur zu verwenden, erkannten wir auch, dass SageMaker Teil einer noch größeren Architektur sein kann, ergänzt durch viele andere serverlose AWS-verwaltete Dienste. Diese Wahl war notwendig, um die Orchestrierungs- und Beobachtbarkeitsanforderungen höherer Ordnung dieser komplexen Architektur zu erleichtern.

Erstens hat CCC eine Architektur implementiert, die Vorhersagen asynchron ausführt, um Beschränkungen der Nutzlastgröße zu beseitigen und das Timeout-Risiko in Szenarien mit hohem Datenverkehr erheblich zu reduzieren Endpunkte für asynchrone SageMaker-Inferenz gekoppelt mit anderen von AWS verwalteten Services als Kernbausteine. Darüber hinaus folgt die Benutzeroberfläche für das System dem Fire-and-Forget-Designmuster. Mit anderen Worten, sobald ein Benutzer seine Eingaben in das System hochgeladen hat, muss nichts weiter getan werden. Sie werden benachrichtigt, wenn die Vorhersage verfügbar ist. Die folgende Abbildung zeigt einen allgemeinen Überblick über unsere asynchrone ereignisgesteuerte Architektur. Lassen Sie uns im nächsten Abschnitt einen tiefen Einblick in den Ausführungsablauf der entworfenen Architektur geben.

Schritt-für-Schritt Lösung

Schritt 1

Ein Client stellt eine Anfrage an die AWS-API-Gateway Endpunkt. Der Inhalt der Anfrage enthält den Namen des KI-Dienstes, von dem sie eine Vorhersage benötigen, und die gewünschte Benachrichtigungsmethode.

Diese Anfrage wird an a weitergeleitet Lambda Funktion aufgerufen Neue Vorhersage, dessen Hauptaufgaben sind:

  • Überprüfen Sie, ob der vom Client angeforderte Dienst verfügbar ist.
  • Weisen Sie der Anfrage eine eindeutige Vorhersage-ID zu. Diese Vorhersage-ID kann vom Benutzer verwendet werden, um den Status der Vorhersage während des gesamten Prozesses zu überprüfen.
  • Generiere eine Amazon S3 vorsignierte URL, die der Benutzer im nächsten Schritt verwenden muss, um den Eingabeinhalt der Vorhersageanfrage hochzuladen.
  • Erstellen Sie einen Eintrag in Amazon DynamoDB mit den Informationen der erhaltenen Anfrage.

Die Lambda-Funktion gibt dann eine Antwort über den API Gateway-Endpunkt mit einer Nachricht zurück, die die der Anfrage zugewiesene Vorhersage-ID und die vorsignierte Amazon S3-URL enthält.

Schritt 2

Der Client lädt den Inhalt der Vorhersageeingabe mithilfe der im vorherigen Schritt generierten vorsignierten URL sicher in einen S3-Bucket hoch. Eingabeinhalte hängen vom KI-Dienst ab und können aus Bildern, tabellarischen Daten oder einer Kombination aus beidem bestehen.

Schritt 3

Der S3-Bucket ist so konfiguriert, dass er ein Ereignis auslöst, wenn der Benutzer den Eingabeinhalt hochlädt. Diese Benachrichtigung wird an eine Amazon SQS-Warteschlange gesendet und von einer aufgerufenen Lambda-Funktion verarbeitet Eingabe verarbeitendem „Vermischten Geschmack“. Seine Eingabe verarbeiten Lambda erhält die Informationen zu dieser Vorhersage-ID von DynamoDB, um den Namen des Dienstes zu erhalten, an den die Anfrage gestellt werden soll.

Dieser Dienst kann entweder ein einzelnes KI-Modell sein, in diesem Fall das Eingabe verarbeiten Lambda stellt eine Anfrage an den SageMaker-Endpunkt, der dieses Modell hostet (Schritt 3-A), oder es kann sich um einen Ensemble-KI-Dienst handeln, in welchem ​​Fall die Eingabe verarbeiten Lambda stellt eine Anfrage an die Zustandsmaschine der Schrittfunktionen, die die Ensemble-Logik hostet (Schritt 3-B).

Bei beiden Optionen (einzelnes KI-Modell oder Ensemble-KI-Dienst) wird die endgültige Vorhersage, wenn sie fertig ist, im entsprechenden S3-Bucket gespeichert, und der Anrufer wird über die in Schritt 1 angegebene Methode benachrichtigt (weitere Einzelheiten zu Benachrichtigungen in Schritt 4).

Schritt 3-A

Wenn die Vorhersage-ID einem einzelnen KI-Modell zugeordnet ist, wird die Eingabe verarbeiten Lambda stellt eine Anfrage an den SageMaker-Endpunkt, der das Modell bereitstellt. In diesem System werden zwei Arten von SageMaker-Endpunkten unterstützt:

  • asynchrone: Das Eingabe verarbeiten Lambda stellt die Anfrage an den asynchronen SageMaker-Endpunkt. Die unmittelbare Antwort enthält den S3-Speicherort, an dem SageMaker die Vorhersageausgabe speichert. Diese Anfrage ist asynchron, folgt dem Fire-and-Forget-Muster und blockiert nicht den Ausführungsablauf der Lambda-Funktion.
  • Synchrone: Das Eingabe verarbeiten Lambda stellt die Anfrage an den synchronen SageMaker-Endpunkt. Da es sich um eine synchrone Anforderung handelt, wartet Process Input auf die Antwort und speichert sie nach Erhalt in S3 auf eine analoge Weise, wie dies bei asynchronen SageMaker-Endpunkten der Fall wäre.

In beiden Fällen (synchrone oder asynchrone Endpunkte) wird die Vorhersage auf äquivalente Weise verarbeitet, wobei die Ausgabe in einem S3-Bucket gespeichert wird. Wenn der asynchrone SageMaker-Endpunkt eine Vorhersage abschließt, wird ein Amazon SNS-Ereignis ausgelöst. Dieses Verhalten wird auch für synchrone Endpunkte mit zusätzlicher Logik in der Lambda-Funktion repliziert.

Schritt 3-B

Wenn die Vorhersage-ID einem KI-Ensemble zugeordnet ist, wird die Eingabe verarbeiten Lambda stellt die Anfrage an die Schrittfunktion, die diesem KI-Ensemble zugeordnet ist. Wie oben erwähnt, ist ein KI-Ensemble eine Architektur, die auf einer Gruppe von KI-Modellen basiert, die zusammenarbeiten, um eine einzige Gesamtvorhersage zu generieren. Die Orchestrierung eines KI-Ensembles erfolgt über eine Step-Funktion.

Die Schrittfunktion hat einen Schritt pro AI-Dienst, der das Ensemble umfasst. Jeder Schritt ruft eine Lambda-Funktion auf, die die Eingabe des entsprechenden KI-Dienstes unter Verwendung verschiedener Kombinationen des Ausgabeinhalts aus vorherigen KI-Dienstaufrufen vorheriger Schritte vorbereitet. Es ruft dann jeden KI-Dienst an, der in diesem Zusammenhang ein einzelnes KI-Modell oder ein anderes KI-Ensemble sein kann.

Dieselbe Lambda-Funktion, aufgerufen GetTransformCall verwendet, um die Zwischenvorhersagen eines KI-Ensembles zu handhaben, wird während der gesamten Schrittfunktion verwendet, jedoch mit unterschiedlichen Eingabeparametern für jeden Schritt. Diese Eingabe enthält den Namen des aufzurufenden KI-Dienstes. Es enthält auch die Mapping-Definition zum Erstellen der Eingabe für den angegebenen KI-Dienst. Dies erfolgt mithilfe einer benutzerdefinierten Syntax, die Lambda decodieren kann, die zusammenfassend ein JSON-Wörterbuch ist, in dem die Werte durch den Inhalt der vorherigen KI-Vorhersagen ersetzt werden sollten. Lambda lädt diese vorherigen Vorhersagen von Amazon S3 herunter.

In jedem Schritt wird die GetTransformCall Lambda liest aus Amazon S3 die vorherigen Ausgaben, die zum Erstellen der Eingabe des angegebenen KI-Dienstes erforderlich sind. Es ruft dann die auf Neue Vorhersage Lambda-Code, der zuvor in Schritt 1 verwendet wurde, und stellt den Dienstnamen, die Rückrufmethode („Schrittfunktion“) und das für den Rückruf erforderliche Token in der Anforderungsnutzlast bereit, die dann in DynamoDB als neuer Vorhersagedatensatz gespeichert wird. Lambda speichert auch die erstellte Eingabe dieser Phase in einem S3-Bucket. Abhängig davon, ob es sich bei dieser Stufe um ein einzelnes KI-Modell oder ein KI-Ensemble handelt, stellt Lambda eine Anfrage an einen SageMaker-Endpunkt oder eine andere Schrittfunktion, die ein KI-Ensemble verwaltet, das eine Abhängigkeit des übergeordneten Ensembles ist.

Sobald die Anforderung erfolgt ist, tritt die Schrittfunktion in einen anstehenden Zustand ein, bis sie das Rückruf-Token empfängt, das anzeigt, dass sie zur nächsten Stufe übergehen kann. Die Aktion des Sendens eines Callback-Tokens wird von einer aufgerufenen Lambda-Funktion ausgeführt Benachrichtigungen (weitere Einzelheiten in Schritt 4), wenn die Zwischenvorhersage fertig ist. Dieser Vorgang wird für jede in der Schrittfunktion definierte Stufe wiederholt, bis die endgültige Vorhersage fertig ist.

Schritt 4

Wenn eine Vorhersage bereit und im S3-Bucket gespeichert ist, wird eine SNS-Benachrichtigung ausgelöst. Dieses Ereignis kann je nach Flow auf unterschiedliche Weise ausgelöst werden:

  1. Automatisch, wenn ein asynchroner SageMaker-Endpunkt eine Vorhersage abschließt.
  2. Als allerletzter Schritt der Schrittfunktion.
  3. By Eingabe verarbeiten or GetTransformCall Lambda, wenn ein synchroner SageMaker-Endpunkt eine Vorhersage zurückgegeben hat.

Für B und C erstellen wir eine SNS-Nachricht ähnlich der, die A automatisch sendet.

Eine Lambda-Funktion namens Notifications ist für dieses SNS-Thema abonniert. Die Benachrichtigungen Lambda ruft die Informationen zur Vorhersage-ID von DynamoDB ab, aktualisiert den Eintrag mit dem Statuswert auf „abgeschlossen“ oder „Fehler“ und führt die erforderliche Aktion abhängig vom im Datenbankeintrag gespeicherten Rückrufmodus aus.

Wenn diese Vorhersage eine Zwischenvorhersage eines KI-Ensembles ist, wie in Schritt 3-B beschrieben, ist der dieser Vorhersage zugeordnete Rückrufmodus „Schrittfunktion“, und der Datenbankdatensatz weist ein Rückruf-Token auf, das dem spezifischen Schritt in dem zugeordnet ist Stufenfunktion. Die Benachrichtigungen Lambda ruft die AWS Step Functions-API mit der Methode „SendTaskSuccess“ oder „SendTaskFailure“ auf. Dadurch kann die Schrittfunktion mit dem nächsten Schritt fortfahren oder den Vorgang beenden.

Wenn die Vorhersage die endgültige Ausgabe der Schrittfunktion ist und der Rückrufmodus „Webhook“ [oder E-Mail, Nachrichtenbroker (Kafka) usw.] ist, benachrichtigt Lambda den Client auf die angegebene Weise. Der Benutzer kann jederzeit den Status seiner Vorhersage abfragen. Die Anfrage muss die Vorhersage-ID enthalten, die in Schritt 1 zugewiesen wurde, und auf die richtige URL in API Gateway verweisen, um die Anfrage an die aufgerufene Lambda-Funktion weiterzuleiten Ergebnisse.

Die Ergebnisse Lambda stellt eine Anfrage an DynamoDB, ruft den Status der Anfrage ab und gibt die Informationen an den Benutzer zurück. Wenn der Status der Vorhersage ist Fehler, dann werden die relevanten Details zum Fehler in die Antwort aufgenommen. Wenn der Vorhersagestatus ist Erfolg, wird eine vorsignierte S3-URL zurückgegeben, damit der Benutzer den Vorhersageinhalt herunterladen kann.

Outcomes

Die Ergebnisse der vorläufigen Leistungstests sind vielversprechend und sprechen dafür, dass CCC die Implementierung dieser neuen Bereitstellungsarchitektur erweitert.

Bemerkenswerte Beobachtungen:

  • Tests zeigen Stärke bei der Verarbeitung von Batch- oder gleichzeitigen Anfragen mit hohem Durchsatz und einer Fehlerrate von 0 Prozent in Szenarien mit hohem Datenverkehr.
  • Nachrichtenwarteschlangen bieten Stabilität innerhalb des Systems bei plötzlichen Anfragen, bis Skalierungsauslöser zusätzliche Rechenressourcen bereitstellen können. Bei einer Erhöhung des Datenverkehrs um das Dreifache stieg die durchschnittliche Anfragelatenz nur um 3 Prozent.
  • Der Preis der Stabilität ist eine erhöhte Latenz aufgrund des Kommunikationsaufwands zwischen den verschiedenen Systemkomponenten. Wenn der Benutzerdatenverkehr über dem Basisschwellenwert liegt, kann die zusätzliche Latenz teilweise durch die Bereitstellung von mehr Rechenressourcen gemildert werden, wenn die Leistung eine höhere Priorität als die Kosten hat.
  • Die asynchronen Inferenzendpunkte von SageMaker ermöglichen die Skalierung der Instanzanzahl auf null, während der Endpunkt für den Empfang von Anforderungen aktiv bleibt. Diese Funktionalität ermöglicht es, Bereitstellungen ohne Rechenkosten weiter auszuführen und bei Bedarf in zwei Szenarien von Null aus zu skalieren: Dienstbereitstellungen, die in niedrigeren Testumgebungen verwendet werden, und solche mit minimalem Datenverkehr, ohne dass eine sofortige Verarbeitung erforderlich ist.

Zusammenfassung

Wie während des POC-Prozesses beobachtet wurde, bietet das innovative Design, das gemeinsam von CCC und AWS entwickelt wurde, eine solide Grundlage für die Verwendung von Amazon SageMaker mit anderen verwalteten AWS-Services, um komplexe multimodale KI-Ensembles zu hosten und Inferenz-Pipelines effektiv und nahtlos zu orchestrieren. Durch die Nutzung der sofort einsatzbereiten Funktionen von Amazon SageMaker wie asynchrone Inferenz hat CCC mehr Möglichkeiten, sich auf spezialisierte geschäftskritische Aufgaben zu konzentrieren. Im Geiste der forschungsorientierten Kultur von CCC wird sich diese neuartige Architektur weiterentwickeln, da CCC neben AWS bei der Einführung leistungsstarker neuer KI-Lösungen für Kunden führend ist.

Ausführliche Schritte zum Erstellen, Aufrufen und Überwachen asynchroner Inferenzendpunkte finden Sie in der Dokumentation, die auch eine enthält Beispiel Notizbuch um Ihnen den Einstieg zu erleichtern. Preisinformationen finden Sie unter Amazon SageMaker Preise.

Beispiele zur Verwendung asynchroner Inferenz mit unstrukturierten Daten wie Computer Vision und Natural Language Processing (NLP) finden Sie unter Führen Sie Computer Vision-Inferenz für große Videos mit asynchronen Amazon SageMaker-Endpunkten aus und Verbessern Sie hochwertige Forschung mit Hugging Face und asynchronen Inferenzendpunkten von Amazon SageMaker, Bzw.


Über die Autoren

Christoph Diaz ist leitender F&E-Ingenieur bei CCC Intelligent Solutions. Als Mitglied des F&E-Teams hat er an einer Vielzahl von Projekten gearbeitet, die von ETL-Tooling, Backend-Webentwicklung, Zusammenarbeit mit Forschern zum Trainieren von KI-Modellen auf verteilten Systemen bis hin zur Erleichterung der Bereitstellung neuer KI-Dienste zwischen Forschungs- und Betriebsteams reichen. In letzter Zeit konzentrierte er sich auf die Erforschung von Cloud-Tooling-Lösungen, um verschiedene Aspekte des Lebenszyklus der KI-Modellentwicklung des Unternehmens zu verbessern. In seiner Freizeit probiert er gerne neue Restaurants in seiner Heimatstadt Chicago aus und sammelt so viele LEGO-Sets, wie in sein Zuhause passen. Christopher erwarb seinen Bachelor of Science in Informatik an der Northeastern Illinois University.

Emmy-Preisträger Sam Kinard ist Senior Manager für Softwareentwicklung bei CCC Intelligent Solutions. Mit Sitz in Austin, Texas, leitet er das KI-Laufzeitteam, das dafür verantwortlich ist, die KI-Produkte von CCC mit hoher Verfügbarkeit und in großem Umfang bereitzustellen. In seiner Freizeit genießt Sam es, wegen seiner zwei wunderbaren Kinder nicht schlafen zu können. Sam hat einen Bachelor of Science in Informatik und einen Bachelor of Science in Mathematik von der University of Texas at Austin.

Jaime Hidalgo ist Senior Systems Engineer bei CCC Intelligent Solutions. Bevor er dem KI-Forschungsteam beitrat, leitete er die globale Migration des Unternehmens zur Microservices-Architektur und entwarf, baute und automatisierte die Infrastruktur in AWS, um die Bereitstellung von Cloud-Produkten und -Diensten zu unterstützen. Derzeit baut und unterstützt er einen lokalen Rechenzentrumscluster, der für KI-Schulungen entwickelt wurde, und entwirft und erstellt auch Cloud-Lösungen für die Zukunft des Unternehmens in der KI-Forschung und -Bereitstellung.

Daniel Suarez ist Data Science Engineer bei CCC Intelligent Solutions. Als Mitglied des KI-Engineering-Teams arbeitet er an der Automatisierung und Vorbereitung von KI-Modellen bei der Erstellung, Auswertung und Überwachung von Metriken und anderen Aspekten von ML-Operationen. Daniel hat einen Master-Abschluss in Informatik vom Illinois Institute of Technology und einen Master- und Bachelor-Abschluss in Telekommunikationstechnik von der Universidad Politecnica de Madrid.

Arunprasath Shankar ist Senior AI/ML Specialist Solutions Architect bei AWS und unterstützt globale Kunden dabei, ihre KI-Lösungen effektiv und effizient in der Cloud zu skalieren. In seiner Freizeit schaut Arun gerne Science-Fiction-Filme und hört klassische Musik.

Justin McWhirter ist Solutions Architect Manager bei AWS. Er arbeitet mit einem Team hervorragender Lösungsarchitekten zusammen, die Kunden dabei helfen, eine positive Erfahrung bei der Einführung der AWS-Plattform zu machen. Wenn er nicht bei der Arbeit ist, spielt Justin gerne Videospiele mit seinen beiden Jungs, Eishockey und Offroad-Touren in seinem Jeep.

spot_img

VC-Café

VC-Café

Neueste Intelligenz

spot_img