Connect with us

Künstliche Intelligenz

Künstliche Neuronale Netze im Überblick 2: Schichten und Feed-Forward-Netzwerke


Neuronale Netze sind der Motor vieler Anwendungen in Künstlicher Intelligenz (KI) und GenAI. Diese Artikelserie gibt einen Einblick in die einzelnen Elemente. Nach der Vorstellung der Neuronen im ersten Teil widmet sich der zweite Teil den Schichten des Netzwerks.


Michael Stal

Michael Stal

Prof. Dr. Michael Stal arbeitet seit 1991 bei Siemens Technology. Seine Forschungsschwerpunkte umfassen Softwarearchitekturen für große komplexe Systeme (Verteilte Systeme, Cloud Computing, IIoT), Eingebettte Systeme und Künstliche Intelligenz.

Er berät Geschäftsbereiche in Softwarearchitekturfragen und ist für die Architekturausbildung der Senior-Software-Architekten bei Siemens verantwortlich.

Wenn mehrere künstliche Neuronen so gruppiert sind, dass sie alle denselben Satz von Eingaben erhalten und ihre Ausgaben parallel erzeugen, bezeichnen wir diese Sammlung als Schicht. In einer einzelnen Schicht wendet jedes Neuron seinen eigenen Gewichtsvektor und seinen eigenen Bias-Term auf das eingehende Signal an, aber alle Neuronen teilen sich dieselbe Eingabe. Durch die Anordnung von Schichten in einer Reihenfolge erstellen wir ein Netzwerk, das einfache numerische Eingaben in beliebig reichhaltige Darstellungen umwandeln kann.

Mathematisch ausgedrückt: Wenn wir die Aktivierungen der Schicht ℓ−1 durch den Spaltenvektor aℓ−1 und die Gewichte der Schicht ℓ durch eine Matrix Wℓ bezeichnen, deren Zeilen die Gewichtsvektoren der einzelnen Neuronen sind, dann ergibt sich der Präaktivierungsvektor zℓ der Schicht ℓ aus dem Matrix-Vektor-Produkt:

zℓ = Wℓ · aℓ−1 + bℓ

Wobei bℓ der Bias-Vektor für die Schicht ℓ ist. Anschließend wenden wir eine elementweise nicht lineare Aktivierungsfunktion σ an, um die Ausgabe der Schicht zu erhalten:

aℓ = σ(zℓ)

Wenn wir einen Stapel von Eingaben einspeisen, stapeln wir einfach jede Eingabe als Spalte (oder Zeile, je nach Konvention) einer Matrix X und ersetzen die Vektoroperationen durch Matrixmultiplikationen auf dem Stapel, was zu einer hocheffizienten vektorisierten Berechnung führt.

Im Code lassen sich mit PyTorch auf einfache Weise Schichten und ihre Verbindungen ausdrücken. Die integrierte Klasse torch.nn.Linear kapselt sowohl die Gewichtsmatrix als auch den Bias-Vektor und verbindet sie für die automatische Differenziation mit dem Berechnungsgrafen. Nachfolgend finden Sie ein minimales Beispiel für ein kleines Feed-Forward-Netzwerk mit einer versteckten Schicht. Jede Zeile wird ausführlich erklärt.


import torch
import torch.nn as nn

class SimpleMLP(nn.Module):
    def __init__(self, input_dim, hidden_dim, output_dim):
        super(SimpleMLP, self).__init__()
        # Definieren Sie eine vollständig verbundene Schicht, die input_dim auf hidden_dim abbildet
        self.fc1 = nn.Linear(input_dim, hidden_dim)
        
        # Wählen Sie eine nichtlineare Aktivierungsfunktion für die versteckte Schicht
        self.relu = nn.ReLU()
        # Definieren Sie eine zweite vollständig verbundene Schicht, die hidden_dim auf output_dim abbildet
        self.fc2 = nn.Linear(hidden_dim, output_dim)

    def forward(self, x):
        # Wende die erste lineare Transformation an
        x = self.fc1(x)
        # Wende die nichtlineare Aktivierungsfunktion elementweise an
        x = self.relu(x)
        # Wende die zweite lineare Transformation an, um die Ausgabe zu erzeugen
        x = self.fc2(x)
        return x


Die Import-Anweisungen laden torch für Tensoroperationen und torch.nn als Namespace für Bausteine neuronaler Netze. Die Klasse SimpleMLP erbt von nn.Module, der Basisklasse von PyTorch für alle Komponenten neuronaler Netze. Der Aufruf von super(SimpleMLP, self).init()stellt sicher, dass die interne Maschinerie von Module ordnungsgemäß initialisiert wird.

Innerhalb des Konstruktors sind self.fc1 und self.fc2 Instanzen von nn.Linear. Jede Linearschicht weist eine Gewichtungsmatrix der Form (output_features, input_features) und einen Bias-Vektor der Länge output_features zu. Durch das Speichern dieser Schichten als Attribute des Moduls registriert PyTorch automatisch ihre Parameter, sodass wir beim Aufruf von model.parameters() alle Gewichtungs- und Bias-Tensoren in einem einzigen iterierbaren Objekt zurückgeben können.

Die Wahl von ReLU für self.relu spiegelt dessen weitverbreitete Verwendung wider: Die rektifizierte lineare Einheit gibt für jede negative Eingabe Null zurück und für jede nicht negative Eingabe die Eingabe selbst. Diese einfache, nicht lineare Operation führt die Nichtlinearität ein, die das Netzwerk benötigt, um komplexe Funktionen zu approximieren.

Die Vorwärtsmethode definiert die Transformation des Eingabetensors x, während er durch das Netzwerk fließt. Wenn x die Form (batch_size, input_dim) hat, hat er nach self.fc1(x) die Form (batch_size, hidden_dim) und behält nach Anwendung von ReLU die gleiche Form, wobei sich negative Werte auf Null abbilden. Der letzte Aufruf von self.fc2 erzeugt eine Ausgabe der Form (batch_size, output_dim). Durch die Rückgabe von x am Ende von forward ermöglichen wir es, das Netzwerk wie eine Funktion aufzurufen:


model = SimpleMLP(input_dim=10, hidden_dim=50, output_dim=1)
batch_of_inputs = torch.randn(32, 10)
outputs = model(batch_of_inputs)


In diesem Beispiel ist batch_of_inputs ein Tensor der Form (32, 10), der zweiunddreißig Samples mit jeweils zehn Merkmalen darstellt. Der Aufruf model(batch_of_inputs) ruft im Hintergrund forward auf, und outputs hat die Form (32, 1), sodass wir pro Sample eine Vorhersage erhalten.

Im Hintergrund erstellt PyTorch einen Berechnungsgraphen, der jede Operation – Matrixmultiplikationen, Additionen und Nichtlinearitäten – aufzeichnet, sodass bei der Berechnung eines Verlusts auf der Grundlage der Outputs und dem anschließenden Aufruf von loss.backward() sich die Gradienten aller Parameter in fc1 und fc2 automatisch berechnen lassen. Diese Gradienten lassen sich dann von Optimierern verwenden, um die Gewichtungsmatrizen und Bias-Vektoren zu aktualisieren.

Durch das Stapeln weiterer Schichten – beispielsweise durch mehrmaliges Abwechseln von linearen und Aktivierungsschichten – und durch Variieren der versteckten Dimensionen lassen sich tiefere und breitere Netzwerke erstellen, die hochkomplexe Zuordnungen lernen können.

Der nächste Teil der Serie zeigt, wie die gebatchten, vektorisierten Operationen den Vorwärtslauf in seiner Allgemeinheit bilden und wie die Wahl der Aktivierungen mit der Netzwerktiefe zusammenwirkt.


(rme)



Source link

Künstliche Intelligenz

KI: Apple steckt mehr Geld rein – verspricht weiter neue Siri für 2026


Der KI-Hype im Silicon Valley und an der Börse geht munter weiter – doch Apple lässt es weiter langsam angehen. Der Konzern vermarktet nach wie vor weder einen eigenen Chatbot noch Bezahldienste für Apple Intelligence mit mehr Power, setzt hingegen auf lokale Modelle und privatsphärengeschützte Cloud-Services. Auch bei den am Donnerstag bekannt gegebenen Quartalszahlen gab sich Apple im Hinblick auf KI eher schmallippig. Immerhin steigen die Investitionen.

Weiterlesen nach der Anzeige

So steigen die Capital Expenditures (CapEx, Investitionsausgaben) vor allem dank KI auf nun 18,1 bis 18,5 Milliarden Dollar. Laut Finanzchef Kevan Parekh ist das ein signifikanter Zuwachs. Die Betriebsaufwendungen speisen sich demnach vor allem aus Forschung und Entwicklung. „Wir erhöhen unsere Investitionen in KI und investieren gleichzeitig weiter in unsere Produkt-Roadmap.“ Konzernchef Tim Cook betonte, Apple sei nach wie vor offen für Aufkäufe. Auf die Frage, ob das auch für KI-Grundmodelle gilt, sagte er, Apple beobachte den Markt in diesem Hinblick weiter.

„Wir sind offen für Übernahmen, wenn wir glauben, dass dies unsere Roadmap voranbringt.“ Das Problem dabei: Die Preise für Aufkäufe im KI-Markt sind mittlerweile derart hoch, dass dies selbst für Apples tiefe Taschen zum Problem werden könnte. Bislang größte Übernahme des Konzerns war bislang der Audiohersteller und Musikstreaminganbieter Beats im Jahr 2014 – für aus KI-Marktsicht lächerliche drei Milliarden US-Dollar.

Die übliche Frage, wie es denn Apples überarbeiteter Sprachassistentin Siri geht, die das Unternehmen verschieben musste, beantwortete ebenfalls Cook. Laut seiner Aussage sei man weiter „on track“ für eine Veröffentlichung im kommenden Jahr. Derzeit gibt es Hoffnung, dass es Frühjahr werden könnte, allerdings sollen die Teams unlängst intern Bedenken geäußert haben. Apple hat zudem bereits zahlreiche Mitarbeiter aus seiner KI-Abteilung an Konkurrenten verloren.

Cook wollte interessanterweise keine Angaben dazu machen, ob das Suchvolumen auf iPhone und Co. aufgrund von KI abnimmt – hier kassiert Apple mindestens 20 Milliarden Dollar von Google pro Jahr. Das Werbegeschäft, zu dem Apple neben selbst vermarkteter Werbung auch die Suchreklame via Google zählt, sei insgesamt gewachsen, so Cook und habe Rekordzahlen erreicht. Allerdings weigerte er sich, mitzuteilen, wie viel auf welchen Bereich entfällt. „Wir trennen das nicht auf diesem Niveau.“

Weiterlesen nach der Anzeige


(bsc)



Source link

Weiterlesen

Künstliche Intelligenz

Geplant: WhatsApp bekommt Apple-Watch-Anwendung | heise online


Zehneinhalb Jahre ist die Apple Watch bereits auf dem Markt – und gilt als meistverkaufte Smartwatch überhaupt. Dennoch hatte Meta bislang keine Anstalten gemacht, seinen populären Messenger-Dienst WhatsApp auf das Gerät zu holen, nur eine Weitergabe und Anzeige von Nachrichten vom iPhone war möglich. Nun soll es jedoch erstmals einen offiziellen Client für watchOS geben: In dieser Woche startete dazu über Apples Betaplattform TestFlight eine Versuchsphase auch für externe Benutzer, wobei diese wie üblich nur ausgewählten Usern zur Verfügung steht.

Weiterlesen nach der Anzeige

Die App soll alle Grundfunktionen haben, die man auch von der iOS-Version kennt, wenn auch auf den Formfaktor der Uhr angepasst. Man kann WhatsApp-Nachrichten lesen, beantworten, Reaktionen senden, Sprachnachrichten verschicken und einiges mehr – auch wenn die Erfahrung derzeit noch „eingeschränkt“ sei, wie Tester berichten.

Laut WABetaInfo ist die Anwendung mit einer aktuellen WhatsApp-Beta für iOS (25.32.10.71) verknüpft, man muss also Teil auch dieses Betaprogramms sein. Offenbar handelt es sich bei WhatsApp für watchOS nicht um eine ohne iPhone nutzbare Anwendung, selbst wenn die Computeruhr für LTE oder 5G (ab Series 11 / Ultra 3) verfügt. Es gibt eine Chatliste, ein an watchOS angepasstes Interface und einen Synchronisationsbildschirm – geht die Verbindung zum iPhone verloren, bekommt man dies mitgeteilt.

Insgesamt soll die Verwendung angenehmer sein als über die bislang nur möglichen Push-Benachrichtigungen auf der Computeruhr. Lobenswert: Das Setup der watchOS-Version erfolgt automatisch, es ist also nicht notwendig, den nervigen Link-Code zu kennen, wie man das von Mac oder PC kennt. watchOS 10 (aktuell ist watchOS 26) ist Mindestvoraussetzung. Wann die App allgemein freigegeben wird, bleibt abzuwarten – es könnte noch Monate dauern.

Ob Meta eine „echte“ watchOS-App plant, die auch ohne verbundenes iPhone auskommt, ist unklar. Wear OS, wo es schon seit Langem eine WhatsApp-Variante gibt, arbeitet genauso wie die nun freigegebene Beta der Apple-Watch-Variante – auch hier ist ein angebundenes Handy notwendig. Aktuelle Apple-Watch-Modelle sind durchaus in der Lage, komplexe Anwendungen auszuführen. Besonders beim Sport schätzen Nutzer, ihr iPhone dann zuhause lassen zu können.

Weiterlesen nach der Anzeige


(bsc)



Source link

Weiterlesen

Künstliche Intelligenz

#TGIQF: Das Quiz rund um Wikipedia


Die Online-Enzyklopädie Wikipedia ist noch immer eines der zentralen Orte im Netz, wenn es um Wissensbeschaffung geht. Seit fast 25 Jahren lässt sich in dem Mitmach-Projekt auf Millionen von Seiten sowie in Hunderten von Sprachen und Dialekten auch zum randständigen Nerdthema ein Artikel finden, sofern es ein Verfasser für lesenswert genug hielt.

Weiterlesen nach der Anzeige


#TGIQF: Das heise-online-Quiz

#TGIQF: Das heise-online-Quiz

„Thank God It’s Quiz Friday!“ Jeden Freitag gibts ein neues Quiz aus den Themenbereichen IT, Technik, Entertainment oder Nerd-Wissen:

Dabei hat die Wikipedia eine bewegte Zeit hinter sich. Als kompaktes Weltwissen gestartet, wuchs Wikipedia rapide und musste nicht einmal den Vergleich mit dem renommierten Encyclopædia Britannica scheuen, auch wenn die Möglichkeit, dass jedermann einen Artikel bearbeiten konnte, auch schon zu makaberen Studentenscherzen genutzt wurde, als der Erfinder der Eiffel-Programmiersprache einfach mal für tot erklärt wurde.

Nachdem nun Elon Musk ja meint, es sei eine Weltidee, mit etwas KI und gemopsten Inhalten eine eigene Online-Enzyklopädie zu erstellen, wollen wir uns im Freitagsquiz dem Original widmen. Achtung, jetzt kommt ein Karton – Äh… Quiz! In der heiseshow stellte Anna Bicker der Stammcrew Dr. Volker Zota sowie Malte Kirchner drei Fragen vorab: Die wandelnden Offline-Enzyklopädien mussten nicht einmal in den Kopf des Quizmasters gucken, sondern fanden in der Regel die richtige Antwort.

Die Uhr läuft mit und belohnt schnelles Raten in 10 Fragen mit maximal-satten 200 Punkten. Die Punktzahl kann gern im Forum mit anderen Mitspielern verglichen werden. Halten Sie sich dabei aber bitte mit Spoilern zurück, um anderen Teilnehmern nicht die Freude am Quiz zu verhageln. Lob und Kritik ist wie immer gern genommen.

Bleiben Sie zudem auf dem Laufenden und erfahren Sie das Neueste aus der IT-Welt: Folgen Sie uns bei Mastodon, auf Facebook oder Instagram. Und schauen Sie auch gern beim Redaktionsbot Botti vorbei.

Und falls Sie Ideen für eigene Quiz haben, schreiben Sie einfach eine Mail an den Quizmaster aka Herr der fiesen Fragen.

Weiterlesen nach der Anzeige


(mawi)





Source link

Weiterlesen

Beliebt