Wie würde man das Ergebnis eines neuronalen Netzwerks debuggen, verstehen oder korrigieren?


8

Es scheint ziemlich unumstritten zu sein, zu sagen, dass NN-basierte Ansätze in vielen KI-Bereichen zu ziemlich leistungsfähigen Werkzeugen werden - sei es das Erkennen und Zerlegen von Bildern (Gesichter an einer Grenze, Straßenszenen in Automobilen, Entscheidungsfindung in unsicheren / komplexen Situationen oder mit Teildaten). Fast zwangsläufig werden sich einige dieser Anwendungen zu Situationen entwickeln, in denen NN-basierte KI einen Teil oder die gesamte menschliche Belastung übernimmt und dies im Allgemeinen besser macht als Menschen im Allgemeinen.

Beispiele könnten NN sein, die hypothetisch als Schritte in selbstfahrenden Autos verwendet werden, medizinische Diagnose, Überprüfung von Mensch / Identität, Überprüfung von Schaltung / Design, zweifelhafte Transaktionswarnung. Wahrscheinlich viele Felder im nächsten Jahrzehnt oder so.

Angenommen, dies geschieht und wird im Allgemeinen als erfolgreich angesehen (z. B. werden die Diagnosen zu 80% auf 65% der menschlichen Ärzte oder so richtig gestellt, oder Autos mit KI, die einen Absturz der NN-Komponente enthalten, 8% weniger als Autos oder Alternativen mit menschlichem Antrieb). oder Wasauchimmer).

Nehmen wir nun an, einer von ihnen macht in einem Fall etwas sehr Falsches und Ernsthaftes. Wie kann man es angehen? Mit formalen Logikschritten kann man einen formalen Entscheidungsprozess verfolgen, aber mit NN gibt es möglicherweise keine formale Logik, insbesondere wenn sie komplex genug wird (etwa in ein paar Jahrzehnten), gibt es nur 20 Milliarden neuronale Prozessoren und ihre E / A-Gewichtungen und Verbindungen ist es möglicherweise nicht möglich festzustellen, was einen Vorfall verursacht hat, selbst wenn Leben verloren gingen. Es ist möglicherweise auch nicht möglich, mehr zu sagen, als die Systeme ständig lernen, und solche Vorfälle sind selten.

Ich habe auch keine sinnvolle Möglichkeit gehört, eine "Black Box" oder ein Flugschreiber-Äquivalent für NNs zu erstellen (auch wenn ich keinen lebenskritischen Fall verwende), die es uns ermöglichen würden, eine schlechte Entscheidung zu verstehen und zu vermeiden. Im Gegensatz zu anderen Reaktionen auf Produktfehler bietet ein NN, der nach dem Ereignis geschult werden könnte, um einen solchen Fall zu beheben, nicht eindeutig die Gewissheit, dass das neue NN-Setup das Problem behoben oder das Problem nicht verringert hat Risiko und Gleichgewicht anderer Probleme dabei. Es ist nur sehr undurchsichtig. Und doch ist es als KI-Ansatz meistens sehr wertvoll.

In 20 Jahren, wenn NN eine (als sicher und erfolgreich anerkannte) Komponente in einem Flugzeugflug oder Flugzeugdesign ist oder in ein Krankenhaussystem eingebaut ist, um auf Notfälle zu achten oder Betrug bei einer Bank zu erkennen, und wie üblich alle behördlichen und behördlichen Vorschriften erfüllt hat Marktanforderungen können auf dem allgemeinen Markt jahrelang bestehen und mit einer guten Bilanz durchgeführt werden, und in einem Fall wirkt sich ein solches System einige Zeit später bei einer Gelegenheit eindeutig falsch aus - es interpretiert die Straße gefährlich falsch, empfiehlt lebensschädliche Medikamente oder offensichtliche Fehldiagnosen oder löscht eine offensichtliche betrügerische Transaktion über 200 Mio. GBP bei einer Clearingbank, die nur zufällig gefangen wird, bevor das Geld gesendet wird.

Was kann der Hersteller tun, um Bedenken der Öffentlichkeit oder des Marktes auszuräumen oder den Vorfall zu erklären? Was macht das Tech-Team, wenn das Board sagt: "Wie ist das passiert und verdammt sicher, dass es behoben ist?" Welche aussagekräftigen Protokolle können usw. geführt werden? Müsste die Gesellschaft einfach akzeptieren, dass Unsicherheit und gelegentliches verrücktes Verhalten inhärent sein könnten (viel Glück mit der überzeugenden Gesellschaft davon!)? Oder gibt es einen besseren Weg, um die für NNs besser geeignete Protokollierungs- / Debugging- / Entscheidungsaktivität anzugehen?

Antworten:


7

Wenn die Beobachtung, dass das neuronale Netzwerk gesehen hat, aufgezeichnet wurde, kann die Vorhersage ja erklärt werden.

Zu diesem Thema wurde vor kurzem ein Artikel mit dem Titel "Warum sollte ich Ihnen vertrauen?" Geschrieben : Erklären der Vorhersagen eines Klassifikators (2016). In diesem Artikel beschrieb der Autor einen Algorithmus namens LIME, der in der Lage ist, Vorhersagen von Modellen für maschinelles Lernen zu erklären. Es kann verwendet werden, um festzustellen, warum ein Modell für maschinelles Lernen eine Vorhersage erstellt hat, um einem Datenwissenschaftler beim Debuggen eines Modells zu helfen und um einem Datenwissenschaftler zu helfen, die Genauigkeit eines bestimmten Modells zu verbessern. LIME kann verwendet werden, um die Vorhersagen eines neuronalen Netzwerks einschließlich CNNs, RNNs und DNNs zu erklären.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.