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.
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)
Künstliche Intelligenz
Nvidia: GeForce GTX 1000 und 900 gehören ab Oktober zum alten Eisen
Nvidia reduziert den Treiber-Support für die beiden Grafikkartengenerationen Maxwell (GTX 900 und teilweise GTX 700) und Pascal (GTX 1000) auf ein Minimum. Im Oktober erscheint der letzte sogenannte Game-Ready-Treiber mit Optimierungen für neue Spiele.
Für drei weitere Jahre, also bis zum Oktober 2028, folgen quartalsweise kleine Treiber-Updates, die etwaige Sicherheitslücken schließen. Spieloptimierungen oder andere Neuerungen sollen diese Versionen hingegen nicht mehr enthalten.
9 bis 11 Jahre Treiber-Support
Nvidia macht auf das Alter seiner Maxwell-Grafikkarten aufmerksam, die jetzt deutlich länger neue Treiber erhalten hätten, als es in der Branche üblich ist. Der Hersteller läutete die Serie ursprünglich im Februar 2014 mit der GeForce GTX 750 (Ti) als Testballons ein. Die neuen Topmodelle in Form der GeForce GTX 980 und GeForce GTX 970 folgten ein halbes Jahr später. Insbesondere letztere Grafikkarte erforderte viel Treiberliebe aufgrund ihres untypisch kastrierten Speicher-Interfaces.
Die Pascal-Generation startete im Mai 2016 mit der GeForce GTX 1080. Das entspricht immerhin neun Jahren Support.
AMD unterstützt abseits von seltenen Sicherheits-Updates nur noch Modelle mit Navi-Architektur ab der Radeon-Reihe RX 5000. Den Support für Vega- und Polaris-basierte Modelle stellte AMD 2023 ein – nach sechs Jahren.
Auch Windows-10-Ende absehbar
Nvidia gibt derweil auch einen Ausblick auf den endenden Windows-10-Support: Nur noch bis Oktober 2026 kommen Game-Ready-Treiber für alle GeForce-RTX-Grafikkarten ab der 2000er-Serie. Dort endet das sogenannte ESU-Programm (Extended Security Updates) für Privatnutzer. Allerspätestens zu dem Zeitpunkt sind Privatnutzer zu einem Wechsel auf ein neueres Betriebssystem angehalten.
(mma)
Künstliche Intelligenz
Dobrindt-Gesetzentwurf: Bundespolizei soll Handys und Rechner hacken dürfen
Bundesinnenminister Alexander Dobrindt (CSU) macht einen neuen Anlauf, um der Bundespolizei den Einsatz von Staatstrojanern zu erlauben und damit auch Unverdächtige präventiv überwachen zu können. Das geht aus dem Referentenentwurf des Innenressorts zur Modernisierung und kompletten Neufassung des Bundespolizeigesetzes hervor. Die Bundespolizei soll demnach digitale Kommunikation belauschen dürfen, etwa über verschlüsselte Messenger wie WhatsApp, Signal oder Threema sowie Internet-Telefonate und Video-Calls. Der vom Bundesverfassungsgericht verlangte Schutz des Kernbereichs der privaten Lebensgestaltung sei dabei aber zu wahren.
Vorgesehen ist dafür laut dem Entwurf, den Netzpolitik.org veröffentlicht hat, eine Lizenz zur „Quellen-TKÜ“ (Telekommunikationsüberwachung). Bundespolizisten sollen also Endgeräte wie Smartphones oder Computer heimlich hacken, einen Bundestrojaner aufspielen und so laufende Gespräche vor einer Ver- oder nach einer Entschlüsselung mitschneiden dürfen. Eine Kompetenz für noch weitergehende heimliche Online-Durchsuchungen von IT-Systemen ist nicht geplant. Dafür sollen die Strafverfolger auch auf einschlägigen Geräten „gespeicherte Inhalte und Umstände der Kommunikation“ überwachen und aufzeichnen dürfen, wenn sie ab dem Zeitpunkt der nötigen Richteranordnung „auch während des laufenden Übertragungsvorgangs im öffentlichen Telekommunikationsnetz in verschlüsselter Form hätten überwacht und aufgezeichnet werden können“.
Das grenzt an die besonders umstrittene und vom Bundesverfassungsgericht noch geprüfte „Quellen-TKÜ plus“, mit der die Geheimdienste von Bund und Ländern schon zusätzlich auf gespeicherte Chats und Mails zugreifen dürfen. „Bereits vor der Anordnung abgelegte Kommunikationsinhalte“ oder ganz andere Dateien sollen laut der Begründung zu dem entscheidenden Paragrafen 40 für die Bundespolizei aber nicht erreichbar sein. Schwarz-Rot hat im Koalitionsvertrag vereinbart: „Im Rahmen ihrer begrenzten Zuständigkeit ermöglichen wir der Bundespolizei zur Bekämpfung schwerer Straftaten die Quellen-TKÜ ohne Zugriff auf retrograd gespeicherte Daten.“
Überwachung auch mit Drohnen, stillen SMS etc.
Zulässig wird eine solch weitgehende präventive Überwachung der Initiative zufolge zur Abwehr dringender und schwerwiegender Gefahren sowie bei begründeten Tatsachen und der konkreten Wahrscheinlichkeit, dass eine Person lebensgefährdende Schleusungen vornimmt oder eine Straftat plant, die gegen die Sicherheit der Anlagen oder des Betriebes des Luft-, See- oder Bahnverkehrs gerichtet ist. Erfasst werden dürften auch Kommunikationspartner und Kontaktpersonen. „Täter kommunizieren verschlüsselt und nutzen Cloud- und Onlinedienste“, begründet das Innenministerium den Vorstoß. Die präventive Telekommunikationsüberwachung solle hier „eine Erkenntnislücke der Bundespolizei schließen“.
„Auch der Einsatz von Drohnen als Sensorträger ist aufgrund der gewandelten technischen Möglichkeiten unabdingbar“, heißt es in dem Papier. Paragraf 38 soll regeln: Die Bundespolizei kann bei öffentlichen Veranstaltungen oder Ansammlungen, beim Einsatz selbsttätiger Bildaufnahme- und Aufzeichnungsgeräte und zur Observation mit „besonderen Mitteln zur Datenerhebung“ solche unbemannten Fluggeräte als Plattform verwenden. Teils sei dabei „die Offenheit der Maßnahme“ zu wahren.
Weitere enthaltene Befugnisse sind etwa das Erheben von Fluggastdaten durch Luftfahrtunternehmen nun auch ohne Anordnung, die Bestandsdatenauskunft, eine anlassbezogene automatische Kennzeichenerfassung, der Einsatz technischer Mittel gegen unbemannte Fahrzeugsysteme sowie die Identifizierung und Lokalisierung von Mobilfunkkarten und -endgeräten vor allem durch den Versand sogenannter „stiller SMS“. Ermittlungsdateien sollen ohne Anordnung errichtet werden können. Erstmals sind erweitere Kontroll- und Anordnungsrechte der Bundesdatenschutzbeauftragten geplant, die EU-rechtlich aber längst Pflicht sind. Die große Koalition hatte sich 2020 schon einmal auf eine vergleichbare Novelle geeinigt, die im Bundesrat aber durchfiel. Die Ampel wollte der Bundespolizei keine Lizenz zur Quellen-TKÜ geben.
(nen)
Künstliche Intelligenz
1&1 muss Pornhub und YouPorn sperren, sagt auch das Oberverwaltungsgericht
Die Rechtsprechung rund um die umstrittenen Websperren gegen Erotikportale festigt sich. Nun hat auch das Oberverwaltungsgericht (OVG) Rheinland-Pfalz in einem Eilrechtsschutzverfahren entschieden, dass der Zugriff auf die zwei deutschsprachigen Portale von Pornhub und YouPorn über den Provider 1&1 vorerst weiterhin gesperrt bleibt (Az.: 2 B 10575/25.OVG und 2 B 10576/25.OVG). Die Koblenzer Richter wiesen damit Eilanträge des auf Zypern sitzenden Plattformbetreibers Aylo, die DNS-Blockaden vorläufig außer Kraft zu setzen, zurück. Sie begründeten das hauptsächlich damit, dass der Antragstellerin das Rechtsschutzbedürfnis fehle.
Die Sperre ordnete die Medienanstalt Rheinland-Pfalz 2024 gegenüber dem in Montabaur ansässigen Zugangsanbieter auf Basis des Jugendmedienschutz-Staatsvertrags an. Hintergrund ist eine bereits im Juni 2020 von der Landesanstalt für Medien Nordrhein-Westfalen (LfM) erlassene und vollziehbare Unterlassungsverfügung gegen Aylo, um den Jugendschutz insbesondere mit schärferen Alterskontrollen sicherzustellen. Das OVG sah im Urteil den Portalbetreiber bereits durch frühere gerichtliche Entscheidungen und Zwangsgelder verpflichtet, diese Grundverfügung umzusetzen. Es wertete die Haltung der Firma, sich über bestehende gerichtliche Entscheidungen hinwegzusetzen, als nicht mit dem Verwaltungsprozessrecht vereinbar.
Tenor: Aylo soll normgerechte Altersverifikation einführen
Die Berufungsinstanz kam auch zu dem Schluss, dass die Aufhebung der Sperrverfügung die Lage von Aylo nicht verbessern würde. Da das Unternehmen jegliche vorgeschlagene Änderungen an seinen Telemedienangeboten ablehne, gebe es keine praktische Möglichkeit, die Sperrverfügung zu umgehen. Die Antragstellerin könnte ihr Ziel, die Blockadeanordnung aufzuheben, auf einem viel einfacheren Weg erreichen: indem sie sich an die Grundverfügung halte. Die Medienanstalt habe mehrfach klargestellt, betonen die Koblenzer Richter, dass die Sperre dann obsolet werde.
Die OVG-Beschlüsse decken sich mit einschlägigen Entscheidungen von Verwaltungsgerichten auch in anderen Bundesländern. Zuletzt hatte das Verwaltungsgericht München im Juni vergleichbare Anträge Aylos abgelehnt. Dabei ging es um die Sperrauflage für Telefónica. Die von der Antragstellerin in der Hauptsache erhobene Klage ist noch beim Oberverwaltungsgericht Nordrhein-Westfalen anhängig. Die betroffenen Provider, zu denen auch die Deutsche Telekom und Vodafone gehören, wehren sich ihrerseits gegen die Anordnungen.
(nen)
-
Datenschutz & Sicherheitvor 2 Monaten
Geschichten aus dem DSC-Beirat: Einreisebeschränkungen und Zugriffsschranken
-
Online Marketing & SEOvor 2 Monaten
TikTok trackt CO₂ von Ads – und Mitarbeitende intern mit Ratings
-
Apps & Mobile Entwicklungvor 2 Monaten
Metal Gear Solid Δ: Snake Eater: Ein Multiplayer-Modus für Fans von Versteckenspielen
-
UX/UI & Webdesignvor 2 Monaten
Philip Bürli › PAGE online
-
Digital Business & Startupsvor 1 Monat
80 % günstiger dank KI – Startup vereinfacht Klinikstudien: Pitchdeck hier
-
Apps & Mobile Entwicklungvor 1 Monat
Patentstreit: Western Digital muss 1 US-Dollar Schadenersatz zahlen
-
Social Mediavor 2 Monaten
LinkedIn Feature-Update 2025: Aktuelle Neuigkeiten
-
Social Mediavor 2 Monaten
Aktuelle Trends, Studien und Statistiken