| Lautsprecher |
Transkript |
| James Wisnowski |
Willkommen, Team Discovery. Andrew Carl, Darryl Ahner und ich möchten Ihnen zwei neue Sampling-Techniken vorstellen, adaptive Sampling-Techniken und |
| |
Es wird einigen Praktikern wirklich einen wunderbaren Nutzen bieten, wenn es um die Erweiterung des Versuchsdesigns geht. Und was ich tun möchte, ist, ein paar unserer |
| |
Ich habe hier über Prozesse gesprochen, wie es dazu kam. Aber wenn wir an DOE und die Erweiterung von Designs denken, gibt es in JMP bereits eine robuste Funktion. |
| |
Was wir bei der Arbeit mit einigen sehr groß angelegten Simulationsstudien herausgefunden haben, ist, dass uns hier ein Teil fehlt |
| |
Lückenfüllungsdesigns und adaptives Stichprobendesign. Und die |
| |
der entscheidende Punkt wird sein, dass sich die adaptiven Stichprobenentwürfe auf die Antwort konzentrieren werden. |
| |
Das ist also ganz anders als bei einem Standarddesign, bei dem man erweitert und den Designraum und die X-Matrix betrachtet. Jetzt werden wir die Ziele bzw. die Antworten berücksichtigen. Das Ergebnis ist |
| |
Dies bietet uns völlig neue Möglichkeiten, zusätzliche Proben dort zu testen, wo es spannend ist. Wir möchten uns also in einem Bereich mit hohem Gradienten befinden, ähnlich wie Sie es sich bei der Response-Surface-Methode vorstellen können, und zwar so tief wie der Aufstieg. |
| |
Jetzt werden wir das automatisieren, sodass wir es mit vielen Variablen und Tausenden von Läufen in der Simulation durchführen können. |
| |
Die gute Nachricht ist, dass sich dies auch für den Praktiker mit kleinen Designs ganz gut verkleinern lässt. |
| |
Und ich werde Ihnen kurz unser Add-In vorstellen, das wir Ihnen zeigen werden, und dann wird Andrew ein wenig über die technischen Details sprechen. |
| |
Also, eine Sache, für die ich mich entschuldigen möchte, ist, dass dies eher PowerPoint-zentriert sein wird als JMP-Add-In |
| |
aus zwei Gründen ... ich sollte sagen, eher als JMP-Demo ... aus zwei Gründen, vor allem, weil unsere |
| |
Wir haben viel Material durchzugehen, aber unsere JMP-Auslastung hängt auch vom Algorithmus ab, den wir in diesem adaptiven Sampling erstellen. Also |
| |
Letztendlich ist das Point-and-Click von JMP eine sehr einfache Benutzeroberfläche, die wir entwickelt haben, aber was hinter den Kulissen passiert |
| |
Und der Algorithmus, hier kommt die wahre Stärke von JMP zum Tragen. Das Design zur Lückenfüllung ist also ziemlich klar. Wir sehen hier einige Lücken, vielleicht ist das etwas übertrieben, aber es demonstriert die Technik. |
| |
In Wirklichkeit kann es jedoch sein, dass bei uns eine sehr große Anzahl von Faktoren eine Rolle spielen, bei denen der Fluch der Dimensionalität eine Rolle spielt und es zu diesen Lücken in Ihrem Design kommt. |
| |
Und Sie können sehen, wir könnten es mit diesem raumfüllenden Design ergänzen, das sozusagen das Arbeitspferd ist |
| |
in der Erweiterung für einen Großteil unserer Arbeit, insbesondere im Stimulations-Calling, und es sieht nicht allzu schlecht aus. Wenn wir uns die blauen Punkte ansehen, die die neuen |
| |
Punkte, die Punkte, die wir hinzugefügt haben, es sieht nicht so schlecht aus. Und wenn man dann etwas genauer hinschaut, kann man sehen, dass wir angefangen haben, viele der Punkte zu replizieren |
| |
das haben wir bereits getan und vielleicht haben wir diese Löcher nicht so gut gefüllt, wie wir dachten, besonders wenn wir die blaue Farbe entfernen und sehen, dass |
| |
Es gibt noch eine ganze Reihe von Lücken. Bei der Entwicklung des adaptiven Samplings haben wir erkannt, dass wir einige Lücken schließen müssen. |
| |
in vielen dieser Designs. Und wir haben einen Algorithmus in unserem Tool entwickelt, unserem Add-In namens Boundary Explorer, der genau das macht ... |
| |
Bei jedem Design erfüllt es diese spezielle Funktion, um die Lücken zu füllen, und Sie können sehen, wo dies in vielen verschiedenen Anwendungen sehr nützlich sein kann. |
| |
In dieser Folie bzw. diesem Diagramm können wir sehen, dass die blauen Punkte jetzt möglicherweise stärker auf die Löcher konzentriert sind und einige über den Rest der Region verstreut sind. Aber selbst wenn wir zum ... gehen, |
| |
Sie können eine Farbe verwenden, die viel einheitlicher aussieht. Wir haben diesen Bereich sehr gut ausgefüllt. |
| |
Das war eher ein Dienstprogramm, das wir für unser Gesamtziel, nämlich die aktive Stichprobennahme, benötigten. Und die primäre Anwendung, die wir dafür fanden |
| |
waren autonome Systeme, die für viel Aufsehen gesorgt haben und insbesondere im Verteidigungsministerium in großem Umfang produziert und getestet wurden. |
| |
Bei autonomen Systemen gibt es zwei Hauptaspekte. In autonomen Systemen geht es darum, |
| |
Ein Sensor, der dem System mitteilt, wo es sich befindet. Und dann der Algorithmus oder die Software, die darauf reagiert. Es ist also eine Art Sensor- |
| |
Algorithmus-Software-Integration, auf die wir uns hauptsächlich konzentrieren. Und was das dann antreibt, ist ein sehr komplexes Simulationsmodell, das ehrlich gesagt |
| |
viele, viele tausend Mal ausgeführt. Aber was noch wichtiger ist: Wir haben festgestellt, dass es bei diesen autonomen Systemen Leistungsgrenzen gibt. |
| |
So haben wir zum Beispiel ein Leader-Follower-Beispiel aus der Armee. Dort fuhr ein Soldat einen sehr schwer gepanzerten |
| |
LKW in einem Konvoi und der Rest des Konvois wäre autonom und hätte keine Soldaten an Bord. |
| |
Oder denken Sie an den neuesten Tesla, den Pickup-Truck mit automatischer Navigation, richtig? Die Idee ist, diese Systeme zu testen und wir müssen am Ende eine Menge Tests durchführen. Und was passiert, ist |
| |
Beispielsweise könnte man mit diesem Tesla bei 30 Meilen pro Stunde problemlos einem Hindernis ausweichen. Bei 30,1 Meilen pro Stunde müsste man jedoch ein Ausweichmanöver durchführen, das außerhalb der Algorithmus-Spezifikationen liegt. Also |
| |
Das ist es, was wir meinen, wenn wir sagen, dass diese Grenzen da draußen sind. Sie sind sehr steil |
| |
Änderungen in der Reaktion, Bereiche mit sehr hohem Gradienten. Und darauf wollen wir unsere Aufmerksamkeit richten. |
| |
Uns interessiert nicht so sehr, wo es sich um eine Art flache Oberfläche handelt, sondern wo der interessante Teil ist, dort würden wir es gerne machen. |
| |
Und ehrlich gesagt, wir haben festgestellt, dass unsere Lösung umso besser wird, je öfter wir sie wiederholen. Wir haben |
| |
Ich empfehle, dies als iterativen Prozess durchzuführen. Der adaptive Teil besteht darin, Tests durchzuführen, neue gute Punkte zu generieren, die Reaktionen zu beobachten und die nächsten Durchläufe entsprechend anzupassen. |
| |
Das ist also unsere adaptive Stichprobennahme. |
| |
Die Idee dazu, die Entstehung, entstand aus einer Arbeit, die wir mit Laboren für angewandte Physik an der Johns Hopkins University durchgeführt haben. Sie leisten wirklich gute Arbeit mit dem Militär und |
| |
Als ich es in einem ihrer Zeitschriftenartikel rezensierte, dachte ich mir: „Das ist fantastisch für das, was Sie tun, und wir könnten JMP sogar verwenden, um vielleicht eine Lösung zu finden, die für viele Praktiker leichter zugänglich wäre.“ Denn das Problem mit |
| |
Johns Hopkins ist, dass es sehr spezifisch ist und es ist etwas... zu integrieren, es ist nicht etwas, das sehr |
| |
für kleinere Testteams zugänglich. Wir möchten es also Leuten in die Hand geben, die es sofort nutzen können. |
| |
Dieser Artikel aus dem Journal of Systems and Software ist sozusagen die Quelle unseres Boundary Explorers. Wie sich herausstellte, haben wir viele gute Ideen verwendet, aber wir konnten auch andere Ansätze entwickeln und |
| |
und andere Methoden. Insbesondere die Nutzung nativer Funktionen in JMP Pro sowie einige Entwicklungen, wie das Lückenfülldesign, das wir im Laufe der Zeit erstellt haben. |
| |
Jetzt, |
| |
In Bezug auf dieses Beispielproblem ist es wahrscheinlich am besten, wenn ich es einfach erkläre |
| |
direkt in einer Demo hier. Wenn ich mir also ein Diagramm hier anschaue, kann ich sehen, dass... Ich werde das verwenden... Ich gehe einfach zurück zum Tesla-Beispiel. Nehmen wir also an, ich mache eine Aktivität vom Typ Autonavigation und ich habe zwei Eingabefaktoren und sagen wir vielleicht |
| |
Wir haben Geschwindigkeit und Verkehrsdichte. Wir denken also über diesen Tesla-Algorithmus nach. Er will auf die linke Spur wechseln, also, ich sollte sagen, überholen. Also muss er einfädeln. Einer der Faktoren wäre die Geschwindigkeit des Tesla und der andere könnte die Verkehrsdichte sein. |
| |
Und dann haben wir vielleicht hier unten in diesem Bereich eine niedrigere Zahl. Wir können uns also diese Zahlen von zwei bis zehn vorstellen, wir könnten vielleicht sogar an die Reaktionen denken, vielleicht sogar an die Wahrscheinlichkeit einer Kollision. |
| |
Unten bei niedriger Geschwindigkeit/niedriger Dichte ist die Wahrscheinlichkeit einer Kollision sehr gering, aber hier oben bei hoher Geschwindigkeit/ |
| |
hohe Dichte, dann haben Sie eine sehr hohe Wahrscheinlichkeit. Aber der Punkt ist, was ich hier hervorgehoben und ausgewählt habe, Sie können sehen, dass es sehr steile |
| |
Leistungsunterschiede entlang der Randregion. Daher sollten wir im Laufe der Simulation immer mehr Softwaretests für den Algorithmus durchführen, |
| |
Wir werden feststellen, dass es uns nicht wirklich viel bringt, hier unten mehr Punkte zu holen. Wir wissen, dass wir bei geringer Dichte und niedriger Geschwindigkeit gut abschneiden. Was wir tun wollen, ist, hier im Grenzbereich wirklich zu arbeiten. Das ist also unser Problem. |
| |
Wie kann ich 200 neue Punkte generieren, die meinen Randbedingungen hier wirklich folgen? |
| |
Was ich hier gemacht habe, ist, dass ich wirklich X1 und X2 habe. Denken Sie noch einmal an die Geschwindigkeit und … |
| |
unsere Geschwindigkeit sowie die Dichte. Und dann habe ich hier einfach eine Prädiktorvariable eingefügt, die nichts bedeutet. Und dann gibt es da noch unsere Antwort. Dazu muss ich nur in den Boundary Explorer gehen und unter Adaptive Sampling, |
| |
meine beiden Antworten (und Sie können so viele Antworten haben, wie Sie benötigen) und hier sind meine drei Eingabefaktoren. Und dann habe ich hier ein paar Einstellungen, ob ich das globale Minimum und Maximum anvisieren und die Grenze anzeigen möchte oder nicht. |
| |
Und wir werden Ihnen letztendlich auch zeigen, dass Sie hier eine gewisse Kontrolle haben. Was also in diesem Algorithmus passiert, ist, was wir wirklich suchen: Was machen die nächsten Nachbarn? Wenn alle nächsten Nachbarn die gleiche Antwort haben, also bei Null Wahrscheinlichkeit, |
| |
ein Unfall, das ist kein sehr interessanter Ort. Ich möchte sehen, wo es große Unterschiede gibt. Und dort ist der nächste Nachbar |
| |
ins Spiel kommt. Ich werde das jetzt ausführen. Und was wir dort sehen, ist, dass der Algorithmus die nativen Funktionen von JMP für das Vorhersage-Screening nutzte und |
| |
Glücklicherweise wird keine Normalverteilung verwendet. Sie sehen, dass der Bootstrap-Forest ausgeführt wird. Andrew wird darüber sprechen, wo dieser verwendet wurde. |
| |
Und letztendlich |
| |
Wir werden hier eine ganze Reihe neuer Punkte generieren, die hoffentlich entlang der Grenze liegen. Das hat ungefähr 30 Sekunden gedauert, um diese Punkte zu erstellen. Von hier aus kann ich einfach weitermachen und |
| |
meine neuen Punkte. Sie können also sehen, dass meine neuen Punkte irgendwie entlang dieser Grenzen liegen. Am einfachsten sieht man das wahrscheinlich, wenn ich weitermache und die anderen |
| |
diejenigen. |
| |
Also, genau hier, vielleicht werde ich |
| |
hier mal schnell die Farbe wechseln. |
| |
Und ich werde weitermachen und vielleicht den Mittelpunkt der Störung zeigen. |
| |
Jetzt können wir sehen, wo sich die neuen Punkte befinden. Die schattierten Punkte sind die ursprünglichen Punkte. Jetzt sehen wir alle neuen Punkte, die innerhalb dieser Grenze generiert wurden. |
| |
Die Frage ist natürlich: Wie haben wir das gemacht? |
| |
Ich werde also zu meiner Präsentation zurückkehren. |
| |
Und von dort aus übergebe ich das Wort an Andrew, der uns etwas mehr technische Details dazu geben wird, wie wir diese Grenzpunkte finden, denn es ist nicht so einfach, wie wir dachten. |
| Andrew Karl |
Okay. Danke, Jim. Ich werde zunächst kurz über die Lückenfüllung sprechen, da wir diese zusätzlich zur Integration in das Gesamttool hinzugefügt haben. |
| |
Es handelt sich auch um ein eigenständiges Tool. Es verfügt über eine recht einfache Benutzeroberfläche, in der wir die Spalten auswählen, die den auszufüllenden Bereich definieren. |
| |
Und für kontinuierliche Faktoren liest es die Eigenschaft der Codierungsspalte ein, um die hohen und niedrigen Werte zu erhalten, und es können auch nominale Faktoren übernommen werden. |
| |
Wenn Sie dies außerdem aus einem benutzerdefinierten Design oder einem raumfüllenden Design generiert haben und Kombinationen nicht zulassen, wird das Skript für nicht zulässige Kombinationen eingelesen. |
| |
und füllen Sie Lücken nur innerhalb des zulässigen Bereichs. Der Benutzer gibt also seine Spalten sowie die Anzahl der gewünschten neuen Läufe an. |
| |
Lassen Sie mich ein kurzes Beispiel aus einem höherdimensionalen Raum zeigen. Es handelt sich um einen dreidimensional gestalteten Raum. Wir haben einen Würfel, aus dem wir einen Hohlzylinder herausgenommen und diese Lückenfüllläufe hinzugefügt haben. Wir werden sie gemeinsam aktivieren, um zu sehen, wie sie zusammenpassen. |
| |
Und dann schalten Sie auch die Farbe aus und sehen, was passiert. |
| |
Das ist gut, denn im höherdimensionalen Raum können wir diese Lücken füllen, die wir in den Diagrammen nach Variablen nicht unbedingt sehen konnten. Wie machen wir das? |
| |
Wir nehmen also die ursprünglichen Punkte, die in diesem Fall jetzt rot statt schwarz sind, und wir können sehen, wo diese beiden Lücken waren. |
| |
und wir überlagern einen Kandidatensatz von Läufen aus einem raumfüllenden Design für den gesamten Raum. |
| |
Wir fügen für die verketteten Datentabellen der alten und neuen Kandidatenläufe eine Indikatorspalte hinzu, eine kontinuierliche Indikatorspalte, wir beschriften die alten Punkte mit 1 und die Kandidatenpunkte mit 0. Und in diesen verketteten Raum passen wir nun einen 10-Nächste-Nachbarn- |
| |
Modell in die Indikatorspalte und wir speichern die Vorhersagen daraus. Der Kandidat läuft also mit den kleinsten Vorhersagen, in diesem Fall blau, |
| |
sind die Lückenpunkte, die wir in das Design einfügen möchten. Wenn wir dies in einem einzigen Durchgang tun, werden die größten Lücken tendenziell überbetont. Wir tun dies also in einem |
| |
Zehnfacher Prozess, bei dem wir ein Zehntel unserer neuen Punkte nehmen, sie wie hier gezeigt auswählen, diese dann hinzufügen und dann unseren k-Nearest-Neighbor-Algorithmus erneut ausführen, um einige neue Punkte auszuwählen und alle Räume gleichmäßiger auszufüllen. |
| |
Dies ist also nur eine Option. Das Füllen von Lücken ist eine der im Boundary Explorer verfügbaren Optionen. |
| |
Jim hat also gezeigt, dass wir eine beliebige Anzahl von Antworten und Faktoren verwenden können und dass wir sowohl kontinuierliche als auch nominale Antworten und kontinuierliche und nominale Faktoren haben können. |
| |
Tatsache ist, dass wir die kontinuierlichen Faktoren, die hinter den Kulissen wirken, auf 01 normalisieren werden, um sie auf eine gleichberechtigtere Basis zu stellen. |
| |
Und für die einzelnen Antworten, die hier einfließen, werden wir jede Antwort einzeln durchlaufen, um die Grenzen für jede der Antworten innerhalb des Faktorraums zu finden. |
| |
Und am Ende haben wir ein multivariates Tool, das einen Random Forest verwendet und alle Antworten gleichzeitig berücksichtigt. |
| |
Und so werden wir sehen, wie jede der verschiedenen Optionen, die hier in der GUI, in der Benutzeroberfläche, verfügbar sind, im Algorithmus zum Tragen kommt. |
| |
Nach der Normalisierung für jede dieser kontinuierlichen Spalten besteht der erste Schritt also in der Prädiktorprüfung für alle kontinuierlichen und nominalen Antworten. |
| |
Und das Ziel besteht darin, die Prädiktoren herauszufinden, die für jede einzelne Antwort relevant sind. |
| |
Und wir haben in der Benutzeroberfläche eine Standardeinstellung von 0,05 für den Anteil der erklärten Varianten oder den Anteil des Beitrags jeder Variable. In diesem Fall sehen wir also, dass X1 und X2 für die Antwort Y1 beibehalten werden und X3-Rauschen abgelehnt wird. |
| |
Der nächste Schritt besteht darin, einen Nearest-Neighbor-Algorithmus auszuführen. Wir verwenden den Standardwert 5, aber diese Option kann der Benutzer umschalten. |
| |
Und wir sind nicht so sehr daran interessiert, wie gut dies vorhersagt, sondern wir sind einfach daran interessiert, dies als Methode zu verwenden |
| |
um zu den fünf nächsten Nachbarn zu gelangen. Welche Reihen bilden die fünf Nachbarn und wie weit sind sie voneinander entfernt? Wie groß ist der Abstand zur aktuellen Reihe? |
| |
Und wir werden diese Informationen über die nächsten Nachbarn verwenden, um jeden Punkt zu identifizieren, und die Wahrscheinlichkeit, dass jeder Punkt ein Grenzpunkt ist. |
| |
Wir müssen hier splitten und eine andere Methode für kontinuierliche oder nominale Antworten verwenden. Für die nominalen Antworten verketten wir die Antwort aus der aktuellen Spalte |
| |
zusammen mit den Antworten der fünf nächsten Nachbarn in der Reihenfolge in dieser Spalte „Verketten Sie Nachbarn“. |
| |
Und wir verfügen über eine einfache Heuristik, mit der wir die Randwahrscheinlichkeit basierend auf dieser Concat-Neighbors-Spalte ermitteln. |
| |
Wenn alle Antworten gleich sind, sprechen wir von einer geringen Wahrscheinlichkeit, dass es sich um einen Grenzpunkt handelt. |
| |
Wenn mindestens eine der Antworten unterschiedlich ist, dann sagen wir, dass es sich mit mittlerer Wahrscheinlichkeit um eine Grenze handelt, entschuldigen Sie, einen Grenzpunkt. |
| |
Wenn zwei oder mehr Antworten unterschiedlich sind, handelt es sich höchstwahrscheinlich um einen Grenzpunkt. Wir erfassen auch die verwendete Zeile. In diesem Fall ist das das Grenzpaar. Das ist also der nächste Nachbar, dessen Antwort sich von der aktuellen Zeile unterscheidet. |
| |
Wir können diese Randwahrscheinlichkeiten in unserem ursprünglichen raumfüllenden Design darstellen. |
| |
Wie Jim bereits erwähnt hat, führen wir zunächst ein raumfüllendes Design aus, bevor wir dieses Tool zur Grenzerkundung ausführen, um den Raum zu erkunden und einige Antworten zu erhalten. |
| |
Und jetzt fügen wir das ein und haben die Randwahrscheinlichkeit dafür berechnet. Und wir können sehen, dass unsere Randwahrscheinlichkeiten mit den tatsächlichen Grenzen übereinstimmen. |
| |
Für kontinuierliche Antworten nehmen wir die kontinuierliche Antwort der fünf nächsten Nachbarn, fügen für jeden von ihnen eine Spalte hinzu und nehmen deren Standardabweichung. |
| |
Diejenigen mit den größten Standardabweichungen der Nachbarn sind die Punkte, die in den Bereichen mit dem steilsten Gradienten liegen und bei denen es sich eher um unsere Randpunkte handelt. |
| |
Wir multiplizieren auch die Standardabweichung mit der mittleren Entfernung, um unsere Informationsmetrik zu erhalten. |
| |
Denn dies führt dazu, dass bei zwei Punkten mit gleicher Standardabweichung der Nachbarn der Punkt höher gewichtet wird, der sich in einer spärlicheren Region mit weniger bereits vorhandenen Punkten befindet. |
| |
Wir verfügen nun über diese kontinuierliche Informationsmetrik und müssen herausfinden, wie wir sie für jeden Punkt in hohe, mittlere und niedrige Wahrscheinlichkeiten aufteilen können. |
| |
Wir passen also die Verteilung an. Wir passen die Dreier-Normalverteilung an und verwenden den Mittelwert der größten Verteilung als Grenzwert für die Punkte mit hoher Wahrscheinlichkeit. |
| |
Und wir verwenden den Schnittpunkt der Dichten der größten und der zweitgrößten Normalverteilung als Grenzwert für die mittleren Wahrscheinlichkeitspunkte. |
| |
Nachdem wir diese Grenzwerte ermittelt haben, wenden wir sie an, um unsere Spalte mit der Grenzwahrscheinlichkeit zu bilden. |
| |
Und wir behalten auch die verwendete Zeile bei, die am nächsten liegt. In diesem Fall ist das für die kontinuierlichen Antworten der Nachbar, dessen Antwort sich im absoluten Wert am stärksten von der aktuellen Rolle unterscheidet. |
| |
Somit erhalten wir nun für kontinuierliche und nominale Antworten die gleiche Ausgabe. Wir kennen die Randwahrscheinlichkeit und die verwendete Zeile. Nachdem wir die Randpunkte identifiziert haben, |
| |
wir müssen in der Lage sein, dies zu nutzen, um neue Punkte entlang der Grenze zu generieren. |
| |
Die erste und in gewisser Weise beste Methode |
| |
Zum Anvisieren und Vergrößern der Grenze verwenden wir die sogenannte Mittelpunktmethode. Und was wir für jedes Grenzpaar tun, jede Zeile und ihre Zeilenverwendung, ihren nächsten Nachbarn |
| |
zuvor identifiziert ... Entschuldigung, also nicht der nächste Nachbar, sondern der Nachbar, der entweder hinsichtlich des Unterschieds in der nominalen Reaktion oder hinsichtlich der kontinuierlichen Reaktion am relevantesten ist. |
| |
Für die kontinuierlichen Faktoren nehmen wir den Durchschnitt der Koordinaten für jeden dieser beiden Punkte, um den Mittelpunkt zu bilden. Und das sehen Sie hier in der Grafik. Wir würden also einen Punkt setzen |
| |
am roten Kreis. Für nominale Faktoren nehmen wir für die Grenzpaare die Stufen dieses Faktors |
| |
die in jedem der beiden Punkte vorhanden sind, und wir wählen zufällig einen davon aus. Das Schöne daran ist, dass, wenn beide gleich sind, dies bedeutet, dass auch der Mittelpunkt für diesen nominalen Faktor für diese beiden Punkte auf dem gleichen Niveau liegt. |
| |
Eine zweite Methode, die wir Störungsmethode nennen, besteht darin, jedem der identifizierten Randpunkte einfach eine zufällige Abweichung hinzuzufügen. |
| |
Für die hohen Grenzwerte ... Punkte mit hoher Wahrscheinlichkeit fügen wir also zwei solcher Störungspunkte hinzu, für das Medium fügen wir einen hinzu. |
| |
Und für diesen Faktor fügen wir für die kontinuierlichen Faktoren eine zufällige Abweichung hinzu. Normal bedeutet 0; Standardabweichung .075 im normalisierten Raum, und diese .075 ist etwas, das man skalieren kann |
| |
innerhalb der Benutzeroberfläche, um die Streuung um die Grenze herum zu erhöhen oder zu verringern. |
| |
Und dann wählen wir für die nominalen Faktoren zufällig eine Stufe jedes nominalen Faktors aus. Nun zur hohen Wahrscheinlichkeit ... |
| |
Bei Grenzpunkten mit hoher Wahrscheinlichkeit, die einen zweiten Störungspunkt erhalten, beschränken wir im zweiten Punkt die nominalen Faktoreinstellungen so, dass sie alle denen des ursprünglichen Punkts entsprechen. |
| |
Wir führen also diesen Prozess durch, bei dem wir die Grenze identifizieren und die Mittelpunkte und Störungspunkte für jede der im Boundry Explorer angegebenen Antworten erstellen. |
| |
Sobald wir das getan haben, verknüpfen wir alles miteinander und schauen uns dann alle Mittelpunkte an, die für alle Antworten ermittelt wurden. |
| |
und verwenden nun eine multivariate Technik, um zusätzliche Läufe zu generieren. Da der Benutzer angeben kann, wie viele Läufe er möchte, und diese Mittelpunkt- und Störungsmethoden nur eine feste Anzahl von Läufen generieren und abhängig von der |
| |
die Lage des Landes, könnte man wohl sagen, für die Daten. |
| |
Wir machen also etwas Ähnliches wie beim Lückenfülldesign, bei dem wir alle identifizierten Störungen und Mittelpunkte für alle Antworten nehmen. |
| |
und wir füllen den gesamten Raum mit dem raumfüllenden Muster der Kandidatenpunkte. Wir haben die Kandidatenpunkte in einem kontinuierlichen Indikator mit 0, die Mittelpunkte mit 1 und die Störungspunkte mit 0,01 beschriftet. |
| |
Wir passen einen Random Forest an diesen Indikator an. Und dann schauen wir uns das an. Wir speichern die Vorhersagen für den Kandidatenraum in Punkten |
| |
und dann nehmen wir die Kandidatenläufe mit den größten Vorhersagewerten dieses Grenzindikators. |
| |
Und das sind die, die wir mithilfe der Random-Forest-Methode hinzufügen. Da es sich hierbei um eine multivariate Methode handelt, wird ein Bereich in Ihrem Entwurfsraum, der eine Grenze für mehrere Antworten darstellt, besonders hervorgehoben und in zusätzlichen Durchläufen berücksichtigt. |
| |
Hier werden die drei Punkttypen zusammen angezeigt. |
| |
Um Jims Aussage noch einmal zu unterstreichen: Dies muss in mehreren Iterationen geschehen. Daher würden wir diese Informationen von unserem Boundary Explorer Tool sammeln. |
| |
und fügen Sie es dann wieder in den ursprünglichen Datensatz ein. Und nachdem wir diese Antworten haben, führen Sie den Boundary Explorer erneut aus und er wird |
| |
kontinuierlich über die Iterationen hinweg, zoomen Sie auf die Grenzen und Auswirkungen, finden Sie möglicherweise sogar weitere Grenzen. Daher sind die Störungspunkte am nützlichsten |
| |
Bei frühen Iterationen, wenn Sie noch den Raum erkunden, sind sie stärker verteilt, und die Random-Forest-Methode ist für spätere Iterationen besser, weil |
| |
Es stehen mehr Mittelpunkte zur Verfügung, da nicht nur die aus der aktuellen Iteration, sondern auch die zuvor aufgezeichneten verwendet werden. In der Datentabelle gibt es eine Spalte, die den Typ des hinzugefügten Punkts aufzeichnet. Daher werden auch alle vorherigen Mittelpunkte verwendet. |
| |
Wenn wir also unser Oberflächendiagramm für dieses Beispiel verwenden, das wir uns für eine Stufenfunktion angesehen haben, können wir sehen, dass unsere neuen Punkte, Mittelpunkte und Störungspunkte alle entlang der Klippen verlaufen, die die Grenzen darstellen, und das ist es, was wir sehen wollten. |
| |
Die letzten beiden Optionen dienen der Benutzeroberfläche oder zum Anzeigen dieser Lückenfüllläufe. Außerdem können wir sie auffordern, globale Min-Max- oder Match-Ziele für alle kontinuierlichen Faktoren anzustreben, wenn dies als Spalteneigenschaft festgelegt ist. |
| |
Um hier nur ein letztes Beispiel zu zeigen: Wir haben dieses Beispiel, bei dem wir diese beiden Schluchten durch eine Ebene haben, mit einer Art tiefem Brunnen an deren Schnittpunkt. |
| |
Wir haben die ersten Raumfüllpunkte ausgeführt. Diese Punkte werden angezeigt, um eine Vorstellung von der Reaktion zu bekommen. Wenn wir zwei Iterationen unseres Boundary Explorer-Tools ausführen, |
| |
Hier werden alle neuen Punkte platziert und wir können die Lücken in der Mitte dieser beiden Linien sehen. Was sind das für Lücken? |
| |
Wenn wir uns die Oberflächendarstellung ansehen, stellen diese Lücken den Canyonboden dar, wo es nicht wirklich steil ist. Es ist also flach, sogar lokal über eine kleine Region, |
| |
aber alle diese Punkte, alle diese Mittelpunkte, |
| |
wurden nicht auf den Ebenen, sondern auf den steilen Klippen platziert, genau dort, wo wir es wollten. Und hier schalten wir die Mindestpunkte ein und aus, und Sie können sehen, dass sie dort den Grund des Brunnens erreichen. So konnten wir auch das Minimum anvisieren. |
| |
Unser Tool präsentiert also zwei unterschiedliche, zwei diskrete |
| |
Optionen, ein neues Tool. Wir möchten die Lückenfüllung, die für jede Datentabelle verwendet werden kann, für die Codierungseigenschaften für die kontinuierlichen Faktoren festgelegt sind. |
| |
Und dann das Boundary Explorer-Tool, das zum Hinzufügen verwendet werden kann. Führen Sie Läufe aus, die nicht den Faktorraum allein betrachten, sondern die Antwort, um den hohen Gradienten anzuvisieren ... Bereiche mit hohen Änderungen, um zusätzliche Läufe hinzuzufügen. |