Künstliche Neuronale Netzwerke

Was sind künstliche Neuronale Netzwerke einfach erklärt?

Die Bedeutung von künstlichen neuronalen Netzen für Deep Learning und mehr

In der heutigen schnelllebigen Welt der Technologie haben künstliche neuronale Netze (KNN) eine zentrale Rolle in der Entwicklung intelligenter Systeme eingenommen. Diese Netzwerke, inspiriert durch die Funktionsweise des menschlichen Gehirns, bilden das Rückgrat des Deep Learning – eines Teilgebiets des maschinellen Lernens, das sich durch die Fähigkeit auszeichnet, große Datenmengen automatisch zu analysieren und daraus zu lernen.

Durch die Nachahmung der Art und Weise, wie Neuronen im Gehirn Signale verarbeiten und übertragen, ermöglichen künstliche neuronale Netze beeindruckende Fortschritte in verschiedenen Bereichen wie Spracherkennung, Bildverarbeitung und sogar in der Entwicklung autonomer Fahrzeuge. Ihre Bedeutung erstreckt sich jedoch weit über diese Anwendungen hinaus.

Sie eröffnen neue Horizonte in der Forschung, der Medizin und in wirtschaftlichen Anwendungen, indem sie komplexe Probleme lösen, die für traditionelle algorithmische Ansätze unzugänglich sind. In diesem Kontext sind künstliche neuronale Netze nicht nur ein Werkzeug des Fortschritts, sondern ein fundamentaler Baustein für die Zukunft der Technologie. 

Was sind neuronale Netze und wie funktionieren sie?

Neuronale Netze stellen eine zentrale Technologie im Bereich des maschinellen Lernens, insbesondere beim Deep Learning, dar. Im Kern handelt es sich bei neuronalen Netzen um künstliche Systeme, die an die Funktionsweise des menschlichen Gehirns angelehnt sind. Genau wie die biologischen Neuronen in unserem Gehirn verarbeiten die „künstlichen Neuronen“ in einem neuronalen Netz Eingangsinformationen und geben ein entsprechendes Signal an die nächste Schicht weiter.

Die Architektur eines neuronalen Netzwerks besteht aus verschiedenen Schichten. Jedes künstliche Neuron – auch Knoten genannt – verarbeitet Eingangsinformationen, multipliziert diese mit gewichteten Faktoren und gibt das Ergebnis an das nächste Neuron weiter. Dabei spielen Rückkopplungsschleifen und Aktivierungsfunktionen eine entscheidende Rolle, um das Verhalten der neuronalen Netze zu modellieren und zu steuern.

Ziel des neuronalen Netzes ist es, komplexe Muster und Zusammenhänge in den Daten zu erkennen und zu lernen. Diese Fähigkeit macht sie für eine Vielzahl von Anwendungen in der künstlichen Intelligenz und im Deep Learning interessant.

Grundlegende Architektur künstlicher neuronaler Netze

Die Architektur künstlicher neuronaler Netze ist eine Verkörperung der inspirierenden Idee, menschliches Bewusstsein und Lernen zu emulieren. Diese Modelle der künstlichen Intelligenz bestehen aus verbundenen Neuronen – den grundlegenden Verarbeitungseinheiten, die wir analog als künstliche Neuronen bezeichnen.

Jedes Neuron ist einfach gestrickt: Es empfängt Eingaben, verarbeitet sie und gibt das Ergebnis an andere Neuronen weiter. Interessanterweise ist diese Struktur in ihren unterschiedlichen Formen flexibel genug, um eine Vielzahl von realen Szenarien und Problemen angemessen darzustellen und zu lösen.

Neuronale Netze sind der Kern verschiedener Algorithmen im Bereich des Machine Learning und besonders im Deep Learning. Dabei gibt es unterschiedliche Typen von Neuronen und Architekturen.

Zum Beispiel nutzen Convolutional Neural Networks, die häufig in der Bildverarbeitung eingesetzt werden, eine spezifische Art von künstlichem Neuron. Diese Modifikation ermöglicht es ihnen, lokale Muster in Daten zu erkennen und zu lernen, was sie ausgezeichnet für Aufgaben wie die Bilderkennung und -analyse qualifiziert.

Funktionsweise und Anwendung von Aktivierungsfunktionen

Aktivierungsfunktionen spielen eine entscheidende Rolle in Künstlicher Intelligenz (KI) und neuronalen Netzwerken. Sie sind dafür verantwortlich, die gewichteten Inputs aus der Eingabeschicht und den Bias zu einer verständlichen Ausgabe zu transformieren, die anschließend von der Ausgabeschicht des neuronalen Netzwerks weiterverarbeitet wird.

Die Aktivierungsfunktion beschließt, ob ein Neuron aktiviert werden soll oder nicht, indem es die Summe der Eingabe gewichtigt, also eine Schwellenwertfunktion ausführt.

Im Bereich der Anwendung sind Aktivierungsfunktionen wiederum maßgeblich beteiligt, da sie die Intensität der Ausgabe bestimmen, also die Stärke der „Feuer“ eines Neurons ausdrücken. Sie sind das Herzstück von KNNs und geben Aufschluss darüber, wie gut ein neuronales Netzwerk bestimmte Aufgaben lösen kann. In Kombination mit der richtigen Gewichtung können sie beeinflussen, wie gut das neuronale Netzwerk komplexe Muster und Zusammenhänge lernt und erkennt.

Die Rolle der Gewichte und Ausgabeschicht in neuronalen Netzen

In der Architektur neuronaler Netze spielen Gewichte eine entscheidende Rolle. Sie stellen die Stärke der Verbindung zwischen künstlichen Neuronen dar und bestimmen, wie stark das Signal des einen Neurons das andere beeinflusst. Jedes Neuron im Netz besteht aus mehreren Eingängen, die jeweils mit einem Gewicht versehen sind. Mit diesen Gewichten arbeiten die Algorithmen, die zum Training des Netzes verwendet werden.

Die Ausgabeschicht eines neuronalen Netzes, oft auch als Output Layer bezeichnet, ist die finale Schicht, in der die Ergebnisse des Netzwerks präsentiert werden. Sie nimmt den Output der vorherigen Schicht, wendet eine Aktivierungsfunktion an und präsentiert den finalen Output des Netzwerks.

In Anwendungen wie der Spracherkennung beispielsweise, wäre dies die Schicht, die die letztendliche Entscheidung trifft, welches Wort oder welcher Satz gesprochen wurde. Ein effektives Training der Gewichte sowie die adäquate Nutzung der Ausgabeschicht sind also essenziell für die optimale Leistung eines neuronalen Netzes.

Die verschiedenen Arten von neuronalen Netzen und ihre Eigenschaften

Neuronale Netze sind strukturell vielfältig, mit jeder Art, die speziell entwickelt wurde, um optimale Lösungen für spezifische Probleme zu bieten. Um den Prozess der Informationsverarbeitung im menschlichen Gehirn nachzuempfinden, haben wir fehlertolerante Systeme wie die arten von neuronalen Netzen entwickelt.

Dabei haben einige Netze, wie die rekurrenten neuronalen Netze, Schleifen in ihren Strukturen, die ihnen ermöglichen, Informationen über die Zeit hinweg zu speichern und zu verarbeiten. Solche Netze sind besonders nützlich für Aufgaben, die Sequenzen von Daten, wie Spracherkennung, involvieren.

In Bezug auf die Funktionsweise werden Aktivierungsfunktionen in jedem Neuron angewendet, um die Summe ihrer Eingangsdaten zu transformieren. Das Resultat, bekannt als der Output, wird für die weitere Berechnung an andere Neuronen weitergeleitet.

Im Bereich der Bilderkennung haben Convolutional Neural Networks (CNNs) eine besondere Bedeutung, da sie durch die Anwendung einer Reihe von Filtern auf das Eingangsbild tiefe Strukturen und Muster erkennen können. Jedes Neuron in diesen Netzen ist dafür verantwortlich, eine spezifische Funktion oder ein Merkmal im Bild zu identifizieren.

Unterschiede zwischen feed forward neural networks und rekurrenten Netzen

Im Bereich der Informatik und Künstlichen Intelligenz spielen neuronale Netzwerke eine zentrale Rolle. Besonders hervorzuheben sind hierbei die sogenannten Feed-Forward Neural Networks und die Rekurrenten Neuronalen Netze. Feed-Forward Netzwerke sind darauf optimiert, Daten geradlinig von der Eingangs- zur Ausgangsschicht zu verarbeiten.

Trainingsdaten werden sequenziell durch jedes Neuron der jeweiligen Schicht geleitet und dann an die nächste Schicht weitergegeben. Diese Netzwerke sind insbesondere für klar strukturierte, unidirektionale Anwendungsfälle geeignet.

Im Gegensatz dazu sind rekurrente neuronale Netzwerke in der Lage, vorausgehenden Input zu berücksichtigen und somit von Kontext und zeitlichen Abhängigkeiten zu lernen. Sie sind besonders effektiv, wenn es darum geht, Muster in sequenziellen Daten zu erkennen oder Vorhersagen zu treffen. Sie haben eine versteckte („hidden“) Schicht von Neuronen, die nicht nur Verbindungen zur nächsten Schicht herstellen, sondern auch Rückverbindungen zu sich selbst oder zu Neuronen der gleichen Schicht aufweisen.

Rekurrente Netzwerke sind somit für komplexere Anwendungsfälle geeignet, bei denen Daten in Relation zueinander stehen und nicht unabhängig voneinander betrachtet werden können.
Die Unterschiede zwischen Feed-Forward und Rekurrenten Neuronalen Netzwerken können in verschiedenen Aspekten zusammengefasst werden:

Struktur:
– Feed-Forward Netzwerke haben eine geradlinige, unidirektionale Struktur. Sie leiten Informationen von der Eingangs- zur Ausgangsschicht weiter.
– Rekurrente Netze hingegen weisen Rückverbindungen auf, wodurch sie vorausgehenden Input berücksichtigen können.

Datenverarbeitung:
– In Feed-Forward Netzwerken werden Trainingsdaten sequenziell durch jedes Neuron der jeweiligen Schicht geleitet und dann an die nächste Schicht weitergegeben.
– Rekurrente Netze sind in der Lage, zeitliche Abhängigkeiten zu lernen und Muster in sequenziellen Daten zu erkennen.

Anwendungsfälle:
– Feed-Forward Netzwerke eignen sich besonders für klar strukturierte Anwendungsfälle.
– Im Gegensatz dazu sind rekurrente neuronale Netzwerke für komplexere Aufgaben geeignet, bei denen Daten in Relation zueinander stehen.

Es ist wichtig zu beachten, dass sowohl Feed Forward als auch rekurrente neuronale Netzwerke ihre spezifischen Stärken haben und je nach Art des Problems angewendet werden sollten. Es gibt keine allgemeine Regel dafür, welches Modell besser ist – es hängt immer vom konkreten Einsatzfall ab.

Convolutional Neural Networks (CNNs) und ihre Bedeutung für die Bilderkennung

Convolutional Neural Networks (CNNs) haben eine fundamentale Bedeutung in der mustererkennung, insbesondere in Bezug auf die Bilderkennung. Sie sind eine Art von künstlichem neuronalen Netz, dessen Architektur speziell dafür ausgelegt ist, visuelle Muster direkt aus Pixelbildern mit minimaler Vorverarbeitung zu erkennen.

Diese Modelle sind in der Regel aus drei Schichten aufgebaut, die jeweils mit der nächsten Schicht verbunden sind. Die Schichten sind so konfiguriert, dass sie bestimmte Merkmale des Bildes wie Ränder, Texturen und Farben erfassen und klassifizieren können.

CNNs spielen eine zentrale Rolle beim maschinellem Lernen, indem sie in der Lage sind, eine große Menge an visuellen Informationen zu verarbeiten und zu modellieren. Darüber hinaus können sie eigenständig lernen, relevante Merkmale aus Bildern zu extrahieren und somit die Notwendigkeit für manuell eingestellte Merkmale eliminieren.

Dieses Vermögen, komplexe Muster autonom zu lernen und zu verstehen, hat sie zu einem wichtigen Hilfsmittel in verschiedenen Anwendungsgebieten gemacht, von der Gesichtserkennung bis zur medizinischen Bildanalyse.

Wie rekurrente neuronale Netze (RNNs) Sequenzen verarbeiten

In der Welt der künstlichen neuronalen Netzwerke spielen rekurrente neuronale Netze (RNNs) eine entscheidende Rolle bei der Verarbeitung von Sequenzen und zeitlich abhängigen Daten. Anders als andere Typen neuronaler Netze, wie zum Beispiel Feed Forward Neural Networks, haben RNNs die einzigartige Fähigkeit, eine „Erinnerung“ der vorhergehenden Eingaben durch die Implementierung von Schleifen in ihrem Netzwerk aufzubewahren.

Diese besondere Eigenschaft verdanken sie ihrer Architektur, die eine Form von Rückkopplung ermöglicht und sie in der Lage macht, temporale Dynamiken und zeitliche Abhängigkeiten in den Daten zu erfassen.

Die Funktionsweise der RNNs lässt sich einfach erklärt mit einer Analogie zum menschlichen Gehirn darstellen. Ähnlich wie das menschliche Gehirn Sequenzen von Informationen in Form von Erinnerungen verarbeitet, tun dies auch RNNs.

Sie nutzen ihre „Erinnerung“ der vorhergehenden Eingaben, um den Kontext bei der Verarbeitung der aktuellen Eingabe zu berücksichtigen. Diese bemerkenswerte Eigenschaft unterscheidet RNNs von anderen Arten von neuronalen Netzen und macht sie ideal für Aufgaben, die zeitliche Abhängigkeiten enthalten, wie die Verarbeitung von Sprach- und Audiodaten.

Die bedeutende Rolle von neuronalen Netzwerken im Deep Learning

Die Bedeutung der neuronalen Netzwerke im Bereich des Deep Learning kann nicht überbewertet werden. Im Besonderen haben tiefe neuronale Netzwerke die Fähigkeiten des maschinellen Lernens komplett revolutioniert.

Durch die Fähigkeit, eine große Anzahl von Schichten zu haben und eine enorme Menge von Gewichten zu nutzen, können tiefe neuronale Netzwerke komplexe Muster in den Eingangsdatensätzen lernen und erkennen. Sie basieren auf der Art und Weise, wie neuronale Netze funktionieren, und sie erweitern diese Funktionalität in signifikanter Weise.

Die verschiedenen Arten von künstlichen neuronalen Netzen, wie rekurrente neuronale Netze oder rekurrente Netze, spielen ebenfalls eine bedeutende Rolle in der Deep Learning Landschaft. Sie nutzten die Rückkopplung, was sie zur Verarbeitung von sequenziellen Daten befähigt.

Dabei wird nicht nur die Eingangs- und Ausgangsschicht des Modells betrachtet, sondern auch die interne Struktur, die es dem Modell ermöglicht, Informationen über die Zeit zu behalten. Genau diese Fähigkeit macht rekurrente Netze so wertvoll für Aufgaben wie die Textanalyse, in der die Reihenfolge der Daten eine entscheidende Rolle spielt.

Was unterscheidet Deep Learning von traditionellem Machine Learning?

Bei der Untersuchung der Unterschiede zwischen traditionellem Machine Learning und Deep Learning ist die Implementierung von neuronalen Netzen ein wesentlicher Aspekt. Traditionelles Machine Learning setzt auf manuell erstellte Algorithmen und Funktionen, um Muster in Daten zu erkennen und Vorhersagen zu treffen. Deep Learning dagegen nutzt neuronale Netze, die auf komplexe Art und Weise Inputs verknüpfen und transformieren, um Muster zu identifizieren.

Die neuronale Netze lassen das System aufgrund ihrer strukturellen Flexibilität in der Lage, detaillierte Patterns und Zusammenhänge zu erlernen, die in den Daten verborgen sind. Außerdem, wurde ein neuronales Netz trainiert, benötigt es kaum noch menschliches Eingreifen, was es für eine Vielzahl von Anwendungsfällen attraktiv macht.

Deep Learning nutzt in bestimmten Anwendungsfällen spezielle Arten von neuronalen Netzen. Insbesondere in der Computer Vision werden häufig faltende neuronale Netze (Convolutional Neural Networks, CNNs) eingesetzt, um Bilder zu analysieren. Diese Netze sind in der Lage, lokalisierte Muster wie Konturen und Texturen zu erkennen und auf das gesamte Bild zu generalisieren.

Im Gegensatz dazu stellt das traditionelle Machine Learning solche Zusammenhänge in der Regel nicht selbstständig her. Des Weiteren, beim Deep Learning, werden dank neuronale Netz Feedback, Lernprozesse mit hohem Grad an Komplexität möglich. Dies ermöglicht den Systemen, Fähigkeiten wie das Erkennen von menschlicher Sprache und das Verstehen natürlicher Sprache zu erlernen und zu perfektionieren.

Beispiele für Deep Learning Anwendungen im Alltag

In der Welt um uns herum setzen viele Technologieunternehmen das einfachste neuronale Netz ein, um ihre Produkte und Dienstleistungen zu verbessern. Deep Learning und künstliche Intelligenz sind Schlüsselelemente, die in vielen Bereichen, von bildbasierten Anwendungen wie Gesichtserkennung und -verifizierung über die Verarbeitung natürlicher Sprache für Chatbots bis hin zur Analyse von Finanzdaten und Zeitreihen, zum Tragen kommen.

Insbesondere im Bereich der Datenanalyse zeichnen sich neuronale Netze durch ihre Fähigkeit aus, Ausreißer zu identifizieren und Vorhersagen auf der Grundlage von historischen Daten zu treffen.

Unternehmen nutzen neuronale Netze, bestehend aus mindestens drei Schichten – einer Eingangsschicht, einer oder mehreren versteckten Schichten und einer Ausgabeschicht – zur Modellierung komplexer Muster und Beziehungen in ihren Daten.

Begriffe wie Deep Learning und künstliche Intelligenz werden oft synonym verwendet, weil sie auf die gleiche grundlegende Idee verweisen; die Verwendung von umfangreichen Datenmengen und leistungsfähigen Algorithmen, um Maschinen dazu zu befähigen, von den Daten zu lernen und verbesserte Entscheidungen oder Vorhersagen zu treffen.

Warum tiefe neuronale Netzwerke das Lernen komplexer Muster ermöglichen

Tiefe neuronale Netzwerke, die eine große Anzahl von Schichten in ihrer Architektur aufweisen, sind in der Lage, komplexe Muster zu erlernen, indem sie auf die Muster in den Daten reagieren. Diese Fähigkeit ähnelt dem menschlichen Gehirn, das auch in der Lage ist, Informationen und Muster aus der Umwelt aufzunehmen und zu verarbeiten.

Mithilfe von künstlichen neuronalen Netzen können Algorithmen für maschinelles Lernen, wie supervised learning, trainiert werden, um auf neue Daten oder mehr Daten zu reagieren, indem sie die Muster und Zusammenhänge in den Daten erkennen und auf dieser Grundlage Vorhersagen oder Entscheidungen treffen.

Die verschiedenen Typen von neuronalen Netzwerken, wie feed-forward oder rekurrente Netzwerke, ermöglichen es den Algorithmen, komplizierte nichtlineare Muster in Daten zu erkennen. Beispielsweise können sie bei der Bild- oder Spracherkennung eingesetzt werden. Im überwachten Lernen werden sie durch das Training anhand von gelabelten Daten bestärkt, sodass sie in der Lage sind, ähnliche Muster in neuen, ungesehenen Daten zu erkennen.

Durch den Einsatz von tiefen neuronalen Netzwerken können maschinelle Lernsysteme also sehr komplexe Muster lernen, was sie zu einem Schlüsselwerkzeug in vielen Anwendungsbereichen macht.

Anwendungsgebiete künstlicher neuronaler Netze

Die Fähigkeit neuronaler Netze, Werten zwischen 0 und 1 gerecht zuzuordnen, macht sie zu einem wesentlichen Bestandteil bei der Lösung einer Vielzahl komplexer Aufgaben. Diese Aufgaben stammen oft aus den Bereichen Statistik, Maschinenlernen und sogar künstlicher Intelligenz. Es handelt sich hierbei um ein hochflexibles Verfahren, dass trotz hoher Komplexität in der Anwendung und Ausführung, die gewünschten Ergebnisse mit bemerkenswerter Präzision liefert.

Auf einer grundlegenderen Ebene, nehmen neurale Netze Informationen von anderen Neuronen oder von außen auf und verarbeiten diese in der verborgenen Schicht. Diese Art von Datenfluss ermöglicht es neuronale Netze einzigartig, da sie sich an die sich stetig ändernden Anforderungen anpassen und optimieren können.

Es ist diese Fähigkeit zur Anpassung und Optimierung, gepaart mit der zunehmenden Verbreitung von Computern, die neuronale Netze zur zentralen Säule der digitalen Datenverarbeitung gemacht hat. Computerbasiert lassen sich damit diverse Problemstellungen in nahezu jeder Branche lösen.

Überblick über vielfältige Einsatzmöglichkeiten von KNN in der Industrie

In der Industrie finden künstliche neuronale Netze (KNN) vielfältige Anwendungen, vor allem da sie potenzielle Muster in Daten erkennen und ihre Leistung im Laufe der Zeit zu verbessern können. Diese Fortschritte spiegeln sich in ihren komplexen Strukturen wider, die weit über die ersten Modelle neuronaler Netze hinausgehen, die nur aus zwei oder drei Schichten bestanden.

Die Pioniere dieser Technologie, Warren McCulloch und Walter Pitts, legten den Grundstein für die heutige Nutzung KNN in der Industrie durch ihre bahnbrechenden Arbeiten wie „A Logical Calculus of the Ideas Immanent in Nervous Activity“.

In diesem „Logical Calculus of the Ideas Immanent in Nervous Activity“ entwickelten McCulloch und Pitts das Konzept neuronaler Netze als Versuch, das Funktionieren des menschlichen Gehirns mathematisch zu modellieren. Fortschritte in der Technologie und Datenverarbeitung haben es seither ermöglicht, diese Modelle auf eine breite Palette industrieller Anwendungen auszuweiten.

Von der Optimierung von Produktionsprozessen bis zur Vorhersage von Markttrends, die Vielseitigkeit und Leistungsfähigkeit von KNN führen dazu, dass sie in der Industrie immer mehr an Bedeutung gewinnen.

Revolution der Spracherkennung und Computer Vision durch KNN

In den letzten Jahren hat die Methode der künstlichen Intelligenz, insbesondere die Verwendung von Künstlichen Neuronalen Netzen (KNN), die Bereiche der Spracherkennung und Computer Vision revolutioniert. Diese fortschrittlichen Systeme haben es ermöglicht, komplexe Probleme zu lösen, die früher unmöglich waren.

In der Spracherkennung haben sie die Fähigkeit, nicht nur Worte, sondern auch den Kontext und die Emotionen, die in menschlicher Sprache vermittelt werden, zu entschlüsseln. Sie haben auch die robotergestützte Spracherkennung verbessert, was zu verbesserter Benutzerinteraktion und Erlebnissen führt.

In Bezug auf die Computer Vision haben KNN bemerkenswerte Fähigkeiten gezeigt, um Bilder und Videos zu interpretieren und zu verstehen. Zum Beispiel können sie Bilder von Äpfeln und Birnen effektiv unterscheiden und kategorisieren, was früheren Technologien schwer fällt.

Sie können sogar die feinsten Details in den Bildern erkennen, wie z.B. die Textur, Form und Farbe der Äpfel und Birnen. Diese Fortschritte haben weitreichende Anwendungen in verschiedenen Branchen, einschließlich Medizin, Sicherheit und Einzelhandel, und versprechen, den Weg für noch raffiniertere und effektive Systeme in der Zukunft zu ebnen.

Fazit

Künstliche Neuronale Netzwerke (KNN), die dem menschlichen Gehirn nachempfunden sind, revolutionieren die Welt der Technologie, indem sie komplexe Probleme in KI, Machine Learning (ML) und Deep Learning mit beispielloser Effizienz lösen. Ihre Fähigkeit, Muster zu erkennen und aus Erfahrungen zu „lernen“, macht sie unentbehrlich für Anwendungen, die von Spracherkennung bis hin zu komplexer Bilderkennung reichen.

Durch den Einsatz verschiedener Arten von neuronalen Netzen, wie rekurrenten und Faltenden Neuronalen Netzen, bieten sie eine flexible Architektur, die für eine Vielzahl von Anwendungen maßgeschneidert werden kann.

Ihre Rolle bei der Gestaltung der Zukunft der künstlichen Intelligenz kann nicht hoch genug eingeschätzt werden, da sie die Tür zu neuen Möglichkeiten in fast jedem Bereich des menschlichen Wissens und darüber hinaus öffnen. KNNs sind mehr als nur eine technologische Innovation; sie sind ein Sprungbrett in eine Zukunft, in der KI die Welt verändert. 

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}