Trends Aufgelöst

Trends Aufgelöst
Analyse von Parameterwechselwirkungen in Punktwolken mit
multipler Regression
F. Wirbeleit, M. Hänisch
ZMD Analog Mixed Signal Services GmbH & Co KG
Trendgeraden sind überall da zu finden, wo Messwerte darzustellen und
auszuwerten sind. Auch die statistische Bewertung der Trends mittels
Korrelationskoeffizient und Bestimmtheitsmaß gehört zur täglichen
Praxis. Der klassischen Arbeitsweise sollte jedoch nicht blind vertraut
werden! Schon aus der Anschauung wissen wir, manchmal gibt es
mehrere Trends in Punktwolken, deren Trendgeraden sogar wesentlich
höher als die klassisch berechnete zu bewerten sind. Die hier vorgestellte
neue Methode findet und bewertet muliple Trends in Punktwolken und
erweitert somit die klassische Regression. Es eröffnen sich viele
Anwendungsgebiete,
bis
hin
zu
neuen
Indikatoren
zur
Prozessbeobachtung bei automatic process control (APC).
Den Trend der Abhängigkeit eines Messwertes von einer Einstellgröße kann man im
einfachsten Fall mit einer Regressionsgerade in einem Diagramm beschreiben.
Geeignete Trengeraden werden von der heutigen Software quasi nebenbei berechnet
und deshalb häufig benutzt. Diese befriedigen jedoch nicht immer, wenn z.B die
zugrunde liegenden Messwerte eine Streuung aufweisen. Dann haben Störgrößen oder
weitere Einflussgrößen im Hintergrund gewirkt und die berechnete Trendgerade passt
zu unserer Anschauung, oder auch nicht. Ein deshalb verwendetes „objektives“ Maß
zur Bewertung der Anpassung der Trendgerade an die Punktwolke ist der
Korrelationskoeffizient ρ bzw. dessen Quadrat, das Bestimmheitsmaß B. Dabei ist
gemein hin anerkannt, dass es bei diesen Bewertungsgrößen nicht auf einzelne
Prozente ankommt, jedoch der auf 5 oder 10 Prozent gerundete Wert durchaus
herangezogen werden kann. Das Dilemma ist, dass mit den bisherigen Methoden zur
Bestimmung des Trends am Ende nicht mehrere Trendgeraden zu Auswahl stehen,
deren Bestimmheitsmasse ähnlich sind, sondern es entsteht genau nur jene, welche ein
minimalen Abstand zu allen Messwerten im Sinne der Methode der kleinsten
Fehlerquadrate hat. Mögliche alternative Trends in Messwerteverteilung, mit ähnlich
guten oder sogar besseren Korrelationskoeffizienten aufzuzeigen, ist die Aufgabe der
hier vorgestellten multiplen Regression. Nicht nur der Einfluss von Störgrößen kann
mittels dieser multiplen Regression quantifiziert werden, auch Punktwolken von
Messwerten offenbaren auf diese Weise unterschiedliche Einflussgrößen mit
manchmal überraschend guten Korrelationswerten.
Nicht eine, sondern alle Trendgeraden finden
Ein einfaches Beispiel soll am Beginn stehen: Vier Messwerte liegen in einem
Diagramm und bilden die Eckpunkte z.B. eines etwas gekippten Drachenvierecks, wie
es in Abb. 1 dargestellt ist. Soll etwas über Trends dieser Messwerte ausgesagt
werden, erhält man eine allgemein übliche Trendgerade, die parallel zur längsten
Seite durch den Mittelpunkt der aufgespannten Fläche geht. Ist dies der Trend,
welcher den Werten zugrunde liegt? Lassen wir uns nicht von Computern die Augen
zu halten. Natürlich, es ist ein Trend, aber es ist nicht der einzige und nicht einmal
jener mit der besten Anpassung an die Messwerte. Das mag vielleicht überraschen. Im
angeführten Beispiel ist es offensichtlich, dass mindestens zwei Einflussgrößen auf
die Messwerte gewirkt haben müssen, durch welche die Lage der Punktwolke derart
auseinander gezogen wurde. Hätte eine große Anzahl von Einflussgrößen annähernd
gleich stark auf die Messwerte gewirkt, wären die Messwerte nahezu kreisförmig
verteilt zu erwarten gewesen, mit fast beliebig vielen Trendgeraden. Wie können nun
die linearen Trends dieser Einflussgrößen gefunden und beschrieben werden?
Angenommen, es gibt mindestens zwei unterschiedliche Trends in einer Punktwolke,
handelt es sich bei der Suche danach aus mathematischer Sicht um mehrdeutige
Lösungen, die es iterativ zu finden und zu bewerten gilt. Da die Bewertung der
Trendgeraden (es kann sich auch allgemein um eine allgemeine Trenfunktion
handeln, wie z.B. eine Parabel) allgemein auf der Basis des Korrelationskoeffizienten
erfolgt, soll dieses Kriterium hier auch angewandt und näher beleuchtet werden. In
Abhängigkeit davon, ob es sich um einen fallenden oder steigenden Trend handelt, ist
der Korrelationskoeffizient negativ oder positiv. Betragsmäßig liegt er zwischen 0
und 1, wobei größere Werte gegenüber kleineren Werten eine besser
Übereinstimmung der Trendgeraden mit den Messwerten anzeigen. Da der Betrag des
Korrelationskoeffizienten die eigentliche wichtige Information über die Anpassung
der Trendgeraden zu den Messwerten enthält, wird gern dessen Quadrat, dass
Bestimmtheitsmaß, oft mit dem Symbol B bezeichnet, verwendet.
B x
2
yi
xi
y
x
Einstellwert , y
2
x
y y
2
xi
2
i
Messwert
Schauen wir uns die Berechnung des Korrelationskoeffizienten in obriger Formel
einmal näher an näheres siehe Kasten), fällt auf, dass ebenso wie für die Berechnung
der Trendfunktion auch für die Berechnung des Korrelationskoeffizienten ρ die
Summe der quadratischen Abweichung zwischen Trendgerade und Messwerten
entscheidend ist. Dabei werden beide Abweichungen zwischen Trendgerade und
Einstellwerten sowie Trendgerade und Messwerten gleichwertig berücksichtigt. Dies
hat zur Folge, dass der Korrelationskoeffizient von der Orientierung der Punktwolke
abhängig wird, da Abstände, egal in welche Richtung, quadratisch gewichtet werden
und somit größere Abstände zur Trengerade stärker in den Korrelationskoeffizienten
eingehen als kleinere. Punktwolken in einem Diagramm, die einen nahezu gleichen
Anstieg gegenüber beiden Diagrammachsen haben, werden deshalb mit größeren
Korrelationskoeffizienten bewertet, als wenn die gleiche Punktwolke etwas flacher
oder steiler orientiert ist. Um sich die Richtungsabhängigkeit vorzustellen, braucht
man das Koordinatensystem eines Diagrammes im Ursprung nur zu verdrehen (auf
dem Schnittpunkt der beiden Achsen steht in diesem Fall die Drehachse). Aus
physikalischer Hinsicht hat eine solche Verdrehung des Koordinatensystems keinerlei
Auswirkungen auf den Zusammenhang, den diese Transformation muß abstands- und
winkeltreu sein. Mathematisch werden solche Transformationen als „orthogonale
Transformation“ bezeichnet, wovon z.B. die Givensrotationen eine recht leicht
anwendbare ist (siehe Kasten)1. Die Orientierung einer Punktwolke im
Koordinatensystem ist also willkürlich und wird tatsächlich von den Meßbedingungen
und subjektiven Festlegungen vorgegeben. Da der Korrelationskoeffizient als
1 Aus der Fülle der mathematischen Standardliteratur hierzu sei verwiesen auf : Josef Stoer;
„Numerische Mathematik“ Bd. 1; Springer Verlag; ISBN 3-540-56213-3
Bewertungsmaß des berechneten Trends gegen genau diese Richtungsabhängigkeit
empfindlich ist, werden bei der hier vorgestellten multiplen Regression
Trendfunktionen und Korrelationskoeffizienten für alle Orientierungen einer
Punktwolke in einem Koordinatensystem berechnet, d.h das Koordinatensystem der
Punktwolke wird mittels Givensrotation schrittweise für diese Berechnung von 0 bis
360 Grad gedreht. Aufgrund der Richtungsabhängigkeit des Korrelationskoeffizienten
werden dabei unterschiedliche Korrelationswerte zu erwarten sein (siehe Abb. 2).
Maxima in dieser Abhängigkeit zeigen einzelne Trends in der Punktwolke an. Es
überrascht dabei nicht, das der Korrelationswert des klassischen Trends im
unverdrehten Koordinatensystem (bei einem Winkel von 0 Grad) nur zufällig auf
einem Maximum liegt. Im allgemeinen wird es sich um einen kleineren Wert handeln,
d.h. der optimale Trend wird mit der herkömmlichen Berechnungsmethode nicht
gefunden.
Die Anwendung der mulitplen Korrelation ist sehr vielfältig und sollte überall da
Einzug halten, wo bisher auch Trendfunktionen verwendet wurden. Die Bewertung
der Trendfunktion mittels des orientiertungsabhängigen Korrelationskoeffizienten ist
ebenfalls neu. Um eine Verwechslung mit dem herkömmlichen
Korrelationskoeffizienten zu vermeinden, wird vorgeschlagen, den
Orientierungswinkel, für welchen der jeweilige Korrelationskoeffizient berechnet
worden ist, als Index mit anzugeben. So würde z.B. zwischen dem klassischen
Korrelationskoeffizienten
und dem orientierungsabhängigen
die
Winkel
Beziehung gelten:
.
0°
Multiple Trends zu Prozeßdatenbeobachtung
Mit der Einführung der multiplen Korrelation wurde begonnen, weil Trends in
Messwerten, von denen es ganz offensichtlich mehrere gab, mittels einfacher
Korrelation nicht gefunden werden konnten. Darüber hinaus spiegelte die klassisch
berechnete Trendgerade nur ungenügend das Verhalten der Messwerte wieder,
insbesondere bei gegenläufigen Trends. Ein Beispiel für solche Messwerte ist in
Abb. 3 zu sehen.
Neben der Anwendung der multiplen Korrelation zur Erweiterung bzw. Ergänzung
der klassischen Korrelation besitzt diese neue Methode interessante
Anwendungsgebiete bei der automatischen Überwachung von z.B. Fertigungsdaten,
welche bei einem automatic process control (APC) anfallen.
Wie aus Abb. 3 zu erkennen ist, entgeht man mit multiplen Trendfunktionen der
Täuschung durch eine klassischen Trendfunktion über das reale Fertigungsgeschehen
hinweg dadurch, dass bei der Analyse der Messwerte, das könnte ein
Produktparameters pro Zeitfenster sein, jeweils zwei Trendfunktionen, jene mit dem
größten und dem kleinsten Anstieg, beobachtet werden. Ein „Auseinanderlaufen“ der
Werteverteilung wird somit sicher erkannt und es kann frühzeitig reagiert werden.
Darüber hinaus wird durch die Beobachtung der Anzahl der Trendfunktion das
Auftreten neuer Störgrößen signalisiert. Hierfür ist sowohl die Verringerung als auch
die Erhöhung der Anzahl der Trenfunktion ein guter Indikator.
Ein weiteres Beispiel für die Anwendung der multiplen Regression bei der
Prozeßdatenbeobachtung wird anhand Abb. 4 erläutert. In Abb. 4 a sind die
Ausgangswerte dargestellt. Für diese Untersuchung wurde ein Parameter während
eines Zeitbereiches beobachtet, welcher ab einem bestimmten Zeitpunkt von einer
Störgröße beeinflusst wird und danach einer Drift unterliegt. Für die multiple
Regression wurden Stichproben von jeweils 20 Messwerten herangezogen, wobei
aufeinander folgende Stichproben durch Hinzunahmen jeweils eines neuen Wertes
und Weglassen des ersten Wertes entstanden sind. Als Indikator zur
Prozeßdatenbeobachtung wurde das Bestimmtheitsmaß der multiplen Regression
herangezogen. Ein geringer Wert des Bestimmheitsmaßes bedeutet, dass keine
deutlichen Trends in der Stichprobe in keiner Richtung erkannt wurden. Sobald ein
Trend in der Stichprobe ermittelbar ist, steigt das Bestimmtheitsmaß an, wie dies in
der Abbildung 4b zu sehen ist. Dieser Anstieg des Bestimmtheitsmaßes geschieht mit
einer sehr großen Empfindlichkeit, unabhängig davon, ob der Trend von einer
Störgröße durch ein Aufsplitten der Werte oder durch eine Drift der Werte verursacht
wird. Der bei dieser Anwendung der multiplen Regression zur
Prozeßdatenbeobachtung wesentlich verbesserte Aussagegehalt, rechtfertigt den dafür
nötigen höheren Rechenaufwand auf jeden Fall.
Abbildung 1: Einfache Punktwolke – einfache Korrelation? Die multiple Korrelation
löst einzelne Trends in Punktwolken auf (Punkte = Messwerte, Achse x
=Einstellwert).
Abbildung 2: Der Wert des Bestimmtheitsmaßes (bzw. Korrelationskoeffizienten)
ändert sich in Abhängigkeit der Orientierung der Punktwolke im Koordinatensystem
(Orientierungswinkels phi). Maxima zeigen Trends an. Je Trend gibt es zwei
Richtungen (aufwärts und abwärts entlang der Trenfunktion), also auch zwei Extrema
(Messwerte wie Abb. 1).
a)
b)
Abbildung 3: a) Messwerteverteilung mit mehreren Trends sowie klassische und
multiple Trendgeraden, b) richtungsabhängiges Bestimmheitsmaß. Das klassische
Bestimmtheitsmaß liegt deutlich unter jenen der richtungsabhängigen Regression und
führt leicht zum Unterschätzen von Trends in Punktwolken.
a)
b)
Abbildung 4: a) Serie von Messwerten mit zeitabhängiger Störung und Drift, b)
richtungsabhängiges Bestimmheitsmaß der Messwerte für jeweils Stichproben von 20
Datenpunkten
Kasten: Mathematik der Mulitplen Regression
Der Korrelationskoeffizient ρ wird aus dem Quotienten der Co-Varianz und der
einzelnen Varianzen zwischen zwei Größen (x- und y-Werte) berechnet (Gl. 1).
yi
xi
y
x 2
xi
x
y y
bzw.
2
B
i
2
(1)
Wird der Korrelationskoeffizient zur Bewertung der Anpassung von Messwerten (
y i ) an eine Trendfunktion verwendet, ersetzt man die Werte x i durch die Werte
der Trendfunktion x ' i mit x ' i m x i n .
y y
2
Die Terme
x i x 2 bzw.
in Gl. 1 berücksichtigen wie stark
i
die Einzelwerte von dem Mittelwerten entfernt liegen. Handelt es sich um die
Einzelwerte x ' i einer steilen Trendgerade, würde die Summe der quadratischen
Abstände zu x ' klein sein und der Korrelationskoeffizient ρ automatisch verringert.
Sinngemäß gilt das Gleiche für die Lage der Messwerte einer Punktwolke von
Messwerten y i . Da der Trend den Messwerten folgt, entstehen bei steilen
Anstiegen des Trendes immer kleinere Korrelationskoeffizienten, denn die
quadratische Aufsummation der Abstände im Divisor von Gl. 1 lässt keine
Kompensation von Abständen mit unterschiedlichen Vorzeichen zu, wie dies im
Dividenden von Gl. 1 möglich ist. Aus dem selben Grunde werden auch
Korrelationskoeffizienten bei flachen Trends geringer ausfallen. Hinzu kommt bei
flachen Trends, dass durch das Produkt zweier einzelner kleiner Abstände der
einzelne Summand im Dividenden von Gl. 1 noch wesentlich kleiner ausfällt, als
wenn nur die Summe über alle Abstände berücksichtigt würde (wie im Divisor von
Gl.1). Der Korrelationskoeffizient ist also abhängig vom Anstieg der
Regressionsgeraden.
Für die Maximierung des Korrelationskoeffizienten gibt es eine bevorzugte Richtung,
die es zu finden gilt. Dazu werden Trends und Korrelationskoeffizienten bei
verschiedenen Orientierung des Koordinatensystems berechnet. Eine Drehung
(Rotation) des Koordinatensystems ohne die Abstände und Lage der Messwerte
zueinander zu verändern erreicht man durch sogenannte orthogonale
Transformationen. Die wohl bekannteste und zugleich auch einfachste Rotation ist die
Givensrotation. Für die Umrechnung der unverdrehten Koordinaten x , y in die um
den Winkel
gedrehten Koordinaten x , y verwendet man eine
Transformationsmatrix T entsprechend Gl. 2.
x
y
T
x
y
cos
sin
sin
cos
x
y
!
(2)
"
Aus Gl. 2 erhält man die gedrehten Koordinaten mit x x cos
und
y sin
. Dabei wird das Koordinatensystem im mathematisch
y
x sin
y cos
positiven Sinn gedreht, man kann aber eben so gut sagen, dass die Punktwolke auf
einer Kreisbahn im Uhrzeigersinn um den Ursprung des Koordinatensystems gedreht
wird. Anhand der transformierten Werte x , y kann der richtungsabhängige Trend
z.B. als lineare Funktion y ' m x ' n sowie der Korrelationskoeffizient
!$#
"
% &'% % ()%
*,+
-
und das Bestimmtheitsmaß B berechnet werden.
Um den Trend gemeinsam mit den unverdrehten Messwerten und evtl. auch dem
klassischen Trend angeben zu können, muss die Trendfunktion in das unverdrehte
Koordinatensystem überführt, d.h. um den Winkel
zurückgedreht werden. Dazu
sind wieder die Koordinaten x , y durch x , y entsprechend Gl. 2 zu ersetzen. Im
) erhält
Falle eines linearen Trends ( y ' m x ' n , gedreht um den Winkel
man mit y
und x
:
x sin
y cos
x cos
y sin
.
/ /
0 &'0 0 1)0
.
. 5
.
. 5
.
2 34
2 3!
6
6
m cos 7 8 sin 7
n
y
(3)
cos 7 9 m6 sin 7 x 8 cos 7 9 m6 sin 7
Gl. 3 ist die lineare Trendfunktion der mit dem Winkel . ausgeführten multiplen
Regression in der Darstellung des unverdrehten Koordinatensystems (siehe Abb. 1
und 3). Diese Rücktransformation der Koordinaten kann auch für beliebige andere
Funktionen angegeben werden (Parabel, Exponentialfunktion etc.), worauf aus
Gründen der Übersichtlichkeit aber hier verzichtet wird.
Computer-Testprogramm
Die hier vorgestellte Methode der multiplen Regression lässt sich sehr einfach in eine
bestehende Software wie z.B. Excel integrieren. Für eine erste Anwendung kann
aber auch das Computerprogramm spektren genutzt werden, welches unter http:
//.... im Internet frei verfügbar und unter allen Windows-Betriebssystemen lauffähig
ist. Bei der folgenden Kurzanleitung wird davon ausgegangen, dass sich neben der
Software spektren.exe noch zwei weitere Textdateien d1.txt und d2.txt in einem
gemeinsamen Verzeichnis vorhanden sind. Bei den Textdateien handelt es sich um
reine ASCII-Dateien mit beliebig vielen Zeilen von je zwei durch Leerzeichen oder
Tabulator getrennten Zahlen je Zeile. Derartige Dateien können z.B. aus EXCEL
exportiert oder mit dem Windows-Editor notepad erstellt werden. Nach dem Start
von spektren.exe erscheint eine Begrüßungsmeldung und die
Eingabeaufforderung. Die folgenden Computerbefehle dienen dem Einlesen,
Berechnen und Darstellen der Daten für die multiple Regression mit dieser Software
und können an dieser Eingabeaufforderung nacheinander eingegeben oder als Makro
(ebenfalls eine ASCII-Textdatei) Befehl „load ?“eingelesen werden (dieses Makro
kann an gleicher Stelle wie das Computerprogramm unter dem Namen
multreg.mak. im Internet vorhanden). Zu Beginn werden die Daten aus den
vorhandenen Dateien nacheinander eingelesen, in zwei Spalten sortiert (Schalter /C:2)
und im Speicher des Programms spektren.exe abgelegt:
read d*.txt * /C:2 /K
Sollte als Dezimalzeichen der Zahlen nicht ein Komma, sondern ein Punkt verwendet
worden sein, ist der Schalter /K bei diesem Befehl wegzulassen. Anschliessend
können die eingelesenen Daten (nachfolgend als Arrays bezeichnet) mit dem Befehlt
list
kontrolliert werden. Mit dem Kommando list arrayname wird bei Bedarf der
Inhalt des ausgewählten Arrays ausgegeben (z.B. list d1). Anschließend wird
durch den Befehl
regpoly * /m /S:*korr /A:*reg > out.prn
mit der Angabe des Schalters /m die multiple Regression nacheinander mit allen
eingelesenen Arrays ausgeführt. Dabei werden die Werte des orientierungsabhängigen
Korrelationskoeffizienten jeweils in ein Array mit der Endung „korr“ geschrieben.
Die Werte der einzelnen Regressionsfunktionen befinden sich nach Abarbeitung
dieses Befehls in jeweils einem Array mit der Endung „reg“ (Sie können dies
anschließend mit dem Befehl list kontrollieren). In Abhängigkeit der verwendeten
Daten werden mehrere Bildschirmzeilen Text durch die Funktion regpoly
ausgegeben, welche evtl. den Anzeigeumfang des Bildschirmes überfordern und
daher in die Datei out.prn gesendet werden. Sollte diese Datei bereits bestehen,
werden die Ausgabezeilen an den Inhalt angehangen. Die Abspeicherung aller
vorhandenen Arrays in ASCII-Dateien mit der Endung „dat“ erfolgt mit dem Befehl
write *.dat * /F:S /K /Q
Wobei durch die Schalter /F:S /K /Q auf Sonderzeichen in den Ausgabedateien
verzichtet wurde und ein Komma als Dezimaltrennzeichen dient. Durch dem Befehl
plot *korr
wird das orientierungswinkelabhängige Bestimmheitsmaß der Datensätze graphisch
angezeigt. Mit Hilfe der Maus kann in diese Grafik hineingezoomt werden. Das
Systemmenü des Grafikfensters bietet weitere Optionen, auch das Kopieren der
Grafik in die Zwischenablage wird unterstützt (Ctrl-C). Anstelle des verwendeten
Wildcharts „*“ kann der jeweilige Datei- oder Arrayname bei den vorgestellten
Befehlen auch direkt angegeben werden.
Die Autoren
Dr. Frank Wirbeleit, geb. 1963, studierte an der TU Dresden Halbleitertechnologie
und promovierte an der TU Freiberg in der Fachrichtung Halbleiterphysik. Nach
einem Aufenthalt an der TU Chemnitz arbeitete er im Zentrum Mikroelektronik
Dresden und ist heute in einem führenden Unternehmen dieser Branche in der
Technologieentwicklung tätig.
Dr. Matthias Hänisch, geb. 1953, studierte an der TU Dresden Physik. Von 1975 bis
1987 war er wissenschaftlicher Assistent im dortigen Fachbereich Thermodynamik.
Anschließend war er als Entwicklungsingenieur im Zentrum Mikroelektronik Dresden
(ZMD), Fachbereich physikalische Fehleranalyse, sowie als Projektmitarbeiter in
mehreren Ingenieurbüros tätig. Seit 2000 ist er beim ZMD Beauftragter für die SPCKoordination und Yield-Management.