Machine Learning: PyTorch 1.11 bringt Empfehlungsdienste in die Open-Source-Welt

Das Machine-Learning-Framework erhebt seine neue Domänenbibliothek TorchRec in den Beta-Status. Auch die Libraries TorchData und functorch liegen als Beta vor.

In Pocket speichern vorlesen Druckansicht 8 Kommentare lesen

(Bild: Chiociolla/Shutterstock.com)

Lesezeit: 3 Min.
Von
  • Maika Möbus

Das erste PyTorch-Release des Jahres ist erschienen: Version 1.11 des quelloffenen Machine-Learning-Frameworks setzt 3300 Commits um. Mit an Bord sind neue Funktionen für Computervision, Textgenerierung, Daten-Pipelines und mehr. Die Domänenbibliothek für Empfehlungsdienste TorchRec erreicht nur wenige Wochen nach ihrer ersten Ankündigung die Beta-Version 0.1.

Breaking Changes sind im neuen PyTorch-Release ebenfalls enthalten: So soll etwa in der Python-API deepcopy, auf einem Tensor angewendet, nun alle Attribute anstatt nur der Tensor-Eigenschaften kopieren, und das steps-Argument in torch.linspace und torch.logspace ist nicht mehr optional.

PyTorch 1.11 aktualisiert die Domänenbibliothek TorchRec auf Version 0.1, die somit nun Beta-Status aufweist. Die neue Library für Empfehlungsdienste (Recommendation Systems, kurz RecSys) soll dazu dienen, im Open-Source-Ökosystem von PyTorch State-of-the-Art-Personalisierungsmodelle zu erstellen und ihr Deployment in der Produktion zu ermöglichen. Bisher findet laut PyTorch-Team die Entwicklung von Empfehlungsdiensten vorrangig hinter verschlossenen Unternehmenstüren statt, wenngleich sie einen großen Teil der Künstlichen Intelligenz (KI) in Produktion ausmachen.

Zu den Bestandteilen von TorchRec zählen Modellierungsprimitive, GPU-Inferenz-Support und gängige Module für Empfehlungsdienste, darunter Modelle und öffentliche Datensätze. Als Installationsvoraussetzung muss Python in der Mindestversion 3.7 vorhanden sein. Zudem wird eine Installation von CUDA ab Version 11.0 aus Performance-Gründen dringend empfohlen, ist jedoch nicht zwingend nötig.

Zwei weitere PyTorch-Bibliotheken haben mit Version 1.11 den Sprung zur Beta geschafft: TorchData und functorch. Letztere ist stark von Google JAX inspiriert, einem erweiterbaren System für das Transformieren numerischer Funktionen, und soll eine ähnliche Funktionsweise besitzen. Ihre vmap- und grad-Berechnungen sollen sich mit PyTorch-Modulen und PyTorch Autograd einsetzen lassen.

Bei TorchData handelt es sich um eine Library, die mithilfe gängiger modularer Data-Loading-Primitive dem einfachen Erstellen flexibler und performanter Data Pipelines dienen soll. Dazu soll sie Bausteine namens DataPipes bereitstellen, die sich in DataLoader nutzen lassen. Diese sollen Funktionen zum Reproduzieren vieler verschiedener Datensätze in der Computervisionsbibliothek TorchVision und der Natural-Language-Bibliothek TorchText bieten. TorchData setzt Python in Version 3.7 bis einschließlich 3.10 voraus. Weitere Informationen zur Bibliothek lassen sich dem GitHub-Repository entnehmen.

Im PyTorch-Blog finden sich anlässlich der Veröffentlichung von Version 1.11 weitere Informationen zu den Domänenbibliotheken wie TorchRec sowie zu den Bibliotheken TorchData und functorch.

(mai)