We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Data Mining in astronomischen Surveydaten variabler Sterne mit Python

00:00

Formale Metadaten

Titel
Data Mining in astronomischen Surveydaten variabler Sterne mit Python
Serientitel
Anzahl der Teile
84
Autor
Lizenz
CC-Namensnennung 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
Knowledge Discovery und speziell maschinelles Lernen sind sehr nützliche Werkzeuge für die automatisierte Datenanalyse. Die Anwendung des maschinellen Lernens hat in den vergangenen Jahren stark an Bedeutung gewonnen und sich als Lösung für Klassifikationsprobleme etabliert. In Astronomie und Astrophysik treten große Datenmengen insbesondere in Surveys auf, beispielhaft sei hier das Weltraumteleskop Kepler genannt, welches für die Suche nach Exoplaneten konzipiert wurde. In der Domäne der Photometrie ist hier die Analyse von Helligkeitsänderungen in den Lichtkurven von Sternen eine zentrale Aufgabe, beispielsweise von sich gegenseitig bedeckenden Sternen.
16
Vorschaubild
41:34
27
Vorschaubild
08:57
36
Vorschaubild
48:55
56
58
Vorschaubild
1:02:53
67
Vorschaubild
45:41
68
69
Vorschaubild
37:44
Wort <Informatik>Maschinelles LernenPhysikalische EigenschaftPhysikXMLUMLVorlesung/Konferenz
Objekt <Kategorie>FeuchteleitungAllgemeine RelativitätstheorieMechanismus-Design-TheorieSoundverarbeitungZusammenhang <Mathematik>EinflussgrößeVorlesung/Konferenz
ImplementierungDatenanalyseWEBSoftwareLösung <Mathematik>Ende <Graphentheorie>EinflussgrößeGrößenordnungKomponente <Software>iPhoneDatensatzPhysikOpen SourceDatenbankComputeranimation
Objekt <Kategorie>FaktorisierungSoftwareSkalierbarkeitEnde <Graphentheorie>BenutzerführungData MiningWissenschaftliches RechnenSondierungVorlesung/Konferenz
Wissenschaftliches RechnenMatrizenringFunktion <Mathematik>Ende <Graphentheorie>LaufzeitSimulationFORTRANParametersystemC++GRADEDatenanalyseFaktorisierungXML
KoordinatenStatistikerFunktion <Mathematik>UmrechnungKeller <Informatik>Vorlesung/Konferenz
BetafunktionDatentypSystemplattformDarstellung <Mathematik>Version <Informatik>DimensionGravitationswelleAlgorithmusZeitreihenanalyseKeller <Informatik>ProgrammcodeIDLData MiningSuperLearnXML
SoundverarbeitungBalkenVorlesung/Konferenz
Klasse <Mathematik>KurveComputeranimationVorlesung/Konferenz
AlgorithmusPhasendiagrammModulEnde <Graphentheorie>KraftCodeFrequenzProgramm/QuellcodeXML
MaximumParametersystemART-NetzPhysikFunktion <Mathematik>OptimierungReiheModulKurvenanpassungZeitreiheData MiningBeamerVorlesung/KonferenzComputeranimation
ParametersystemKeller <Informatik>DatensatzStatistikAlgorithmusEnde <Graphentheorie>InformationInformationsmodellierungImplementierungPhasendiagrammHistogrammFrequenzFaktorisierungSoundverarbeitungData MiningReiheAutomatKomponente <Software>WahrscheinlichkeitsverteilungChipkarteVorlesung/KonferenzProgramm/QuellcodeXML
FrequenzQuick-SortUnüberwachtes LernenHistogrammVorlesung/Konferenz
Neuronales NetzSoundverarbeitungAlgorithmusAchse <Mathematik>ParametersystemDrehungDatensatzHauptkomponentenanalyseInformationHitzeVarianzKlasse <Mathematik>Ende <Graphentheorie>KoordinatenKarhunen-Loève-TransformationMathematikObjekt <Kategorie>XML
ZahlenbereichInformationKomponente <Software>Vorlesung/KonferenzXML
QuantenzustandKlasse <Mathematik>InformationEnde <Graphentheorie>RichtungVorlesung/Konferenz
AlgorithmusHistogrammZahlenbereichComputeranimationVorlesung/Konferenz
Klasse <Mathematik>PrognoseModulComputeranimation
SoundverarbeitungKlasse <Mathematik>ART-NetzKarhunen-Loève-TransformationÜbergangVorlesung/Konferenz
DatensatzPhysikQuick-SortZahlenbereichEntscheidungsbaumObjekt <Kategorie>AlgorithmusEnde <Graphentheorie>Klasse <Mathematik>EntscheidungsmodellComputeranimationFlussdiagramm
Ende <Graphentheorie>AlgorithmusEntscheidungsmodellBaum <Mathematik>ParametersystemWald <Graphentheorie>Vorlesung/Konferenz
Neuronales NetzEnde <Graphentheorie>TeilmengeWald <Graphentheorie>Baum <Mathematik>EntscheidungstheorieAlgorithmusComputeranimation
Klassifikator <Informatik>Baum <Mathematik>Wald <Graphentheorie>Ende <Graphentheorie>PREDICT <Programm>AlgorithmusVorlesung/Konferenz
ParametersystemSoftwareentwicklerGrößenordnungMaschinelles LernenAlgorithmusEinflussgrößeZeitraumStreuungOpen SourceHistogrammEnde <Graphentheorie>ImplementierungSystemidentifikationReiheKoordinatenDatenkompressionAnalysisSoftwareProzess <Physik>ARCHIVE <Programm>Computeranimation
SystemplattformEinflussgrößeStatistikerRechnenHauptspeicherPhysikalische GrößeMessfehlerAlgorithmusParametersystemEnde <Graphentheorie>Objekt <Kategorie>Virtuelle MaschineFORTRANAchse <Mathematik>RuhmasseNetzwerk <Graphentheorie>ZeitraumKlasse <Mathematik>PhysikSondierungServerWissenschaftliches RechnenC++Data MiningStatistikVorlesung/Konferenz
Computeranimation
Transkript: Deutsch(automatisch erzeugt)
Herzlich willkommen zu meinem Vortrag. Vielen Dank für die nette Einführung. Zunächst ein paar kurze Worte zu mir, bevor ich mit dem eigentlichen Inhalt beginne. Also, wie schon erwähnt, ich habe an der Uni Marburg Physik studiert, mich dort mit Astronomie und Astrophysik beschäftigt.
Mein Forschungsthema sind dort variable Sterne gewesen. Was das ist, werde ich gleich noch kurz einführen. Also ich gehe jetzt hier nicht davon aus, dass Sie Großahnung von Physik haben. Nebenbei bin ich seit 2011 Fedora-Entwickler, da auch in den Special Interest Groups, die im entsprechenden wissenschaftlichen Bereich tätig.
Also wir haben da einmal spezielle Astronomies, Special Interest Group, dann zu Python. Da kümmert man sich dann um die elegante Paketierung von Python-Software. Für Machine Learning haben wir eine Interest Group und Science und Technology. Und jetzt mit Fedora 24 neu von mir initiiert, ist da noch der Fedora Astronomy Spin dazu gekommen,
wo man diese ganzen schönen Python-Pakete eben auch finden kann. Gut, zu viel dazu. Zunächst ein bisschen physikalischen Hintergrund. Was sind variable Sterne? Variable Sterne sind Sterne, die in irgendeiner Art ihre physikalischen Eigenschaften verändern.
Das kann einmal der Stern selber sein oder das kann sich irgendwie in den Beobachtungsdaten äußern. Jetzt habe ich hier ein Beispiel. Das ist ein Doppelsternsystem in dem Fall. Das ist ein sogenannter extrinsischer Variablerstern. Da drehen sich zwei Sterne um einander. Also man hat hier in der Mitte diesen hellen blauen Stern
und man hat dann diesen etwas dunkleren, gelb-rötlichen Stern und die umkreisen sich. Und wenn die sich jetzt gegenseitig bedecken, dann nimmt man hier auf der Erde dann im Teleskop so eine Helligkeitsänderung wahr. Also das ist hier die sogenannte Lichtkurve, die hier unten dargestellt ist.
Nach oben geht die Helligkeit, die Lichtintensität. Nach da geht die Zeit. Und wenn die Sterne sich bedecken, dann geht die Helligkeit eben runter. Wenn der Dunklere vorne ist und wenn der Dunklere hinter dem anderen ist, dann ist von der Gesamthelligkeit auch ein bisschen was weg. Dann leuchtet im Prinzip nur der Hellere. Dann geht auch so ein bisschen was weg. Also so kann man diese Änderungen in den Lichtkurven sehen.
Was daran jetzt interessant ist, die Lichtkurven für solche Objekte sehen immer relativ ähnlich aus. Also jetzt Doppelsternsysteme sehen zum Beispiel meistens irgendwie grob so aus. Dann gibt es andere variable Sterne, zum Beispiel Cepheiden. Die machen physikalischen Ionisationsmechanismus. Das sieht dann auch wieder sehr charakteristisch aus.
Die sind physikalisch sehr relevant. Vor allem war mal ein Zusammenhang zwischen der Helligkeit und der Periode. Was das ist, werde ich gleich auch noch erwähnen erkennen können. Das hat Edwin Hubble benutzt, um die Distanz zur Andromeda-Galaxie zu bestimmen. Also da hat man dann in den 20er Jahren, ich glaube es war in 1923 oder 1924, das erste Mal gemerkt,
es gibt Objekte, die sehr, sehr viel weiter weg sind als Sterne in unserer Milchstraße. Gut, ich habe Sterne vom Ogle-Projekt analysiert. Ogle ist das Optical Gravitational Lensing Experiment.
Die suchen nach Mikro-Linseneffekten. Das ist für uns jetzt nicht weiter interessant. Es ist ein Effekt, der von der allgemeinen Relativitätstheorie vorhergesagt wurde. Und die haben eben fotometrische Messungen. Also Fotometrie ist die Messung der Helligkeit. Also man guckt, wie hell ist der Stern, den man da gerade sieht. Die haben eben fotometrische Messungen in den Magellanschen Wolken.
Das sind zwei Begleitgalaxien von der Milchstraße. Oft kann man von der Südhalbkugel gut sehen. Kann man das eben erkennen. Und da hat Ogle dann Messungen gemacht. Und die haben dann irgendwann den Ogle Free Catalog of Variable Stars veröffentlicht. Also das ist die Datenbasis, die ich benutzt habe.
Die ist auch im Web frei zugänglich. Also da kann man dann so ein SQL-Interface ansteuern, sozusagen kann sich die Daten da direkt ruhen. Gut, das sind dann mehrere hunderttausend Sterne. Das klingt jetzt zunächst mal viel, ist aber eigentlich noch relativ wenig. Also so eine Galaxie hat Größenordnung vielleicht 10 Milliarden Sterne oder so was.
Teilweise auch 100, wenn es eine große Galaxie ist. Und der Ogle Free Catalog of Variable Stars hat ungefähr 400.000 variable Sterne, mit denen ich mich da befasst habe. Gut, was war meine Zielsetzung? Also ich bin jetzt natürlich nicht der erste Physiker, der irgendwie damit anfängt, sich mit variablen Sternen zu beschäftigen.
Ich habe gemerkt, dass das Thema, dass viele Softwarekomponenten, die man so für die Analyse von Lichtkurven und so was braucht, dass die teilweise geschlossen sind oder proprietary Lösungen wie zum Beispiel IDL benötigen. Und ich als open source geneigter Mensch wollte das gerne in freier Form haben.
Nebenbei bemüht sich das AstroPy Projekt, was ich gleich noch kurz vorstellen möchte. Es ist auch seit 2011 darum, Python als Standardsprache in der Astronomie und Astrophysik für Datenanalysen zu etablieren. Und letzten Endes möchte ich Ogle 3, das ist ein sehr umfangreich analysierter Datensatz,
einfach als Teststein für die eigenen Implementierungen von Python benutzen. Also man kann dann sozusagen damit die Qualität messen. Wenn wir mit der Python Implementierung das Gleiche rauskriegen, dann funktioniert sie ganz gut. Gut, das war dann auch entsprechend meine Worldmap. Also erst einmal überhaupt ein gescheites Software Setup zu finden.
Dann das Ganze halbwegs modular zu implementieren. Hat sich dann letzten Endes herausgestellt, dass das gar nicht mehr so wirklich nötig war, weil auch andere Arbeitsgruppen daran gearbeitet haben und in den letzten ein bis zwei Jahren Python-Module dazu veröffentlicht haben. Gut, dann habe ich es wie gesagt verifiziert.
Und was jetzt noch aussteht, ist die Veröffentlichung in dokumentierter Form. Das soll natürlich auch für jeden dann einfach nutzbar sein auf GitHub oder GitLab. Gut, was sind dann so die Kriterien gewesen, die ich mir da angeschaut habe? Zunächst einmal muss die Software natürlich robust und zuverlässig sein. Das ist das K.o.-Kriterium.
Wenn da Mist rauskommt, dann kann man die Software nicht gebrauchen. Dann Performance und Skalierbarkeit können wichtige Faktoren sein, weil wir sind jetzt hier bei 400.000 Sternen. Das lässt sich noch ganz gut handhaben. Aber wenn man jetzt mal tiefergehend des Surveys, also Survey ist, man richtet den Teleskop immer wieder an verschiedene Stellen im Himmel
und guckt sich die Änderungen der Sterne an. Das macht man zum Beispiel, um Exoplaneten zu finden. Und wenn man dann so etwas wie Kepler hat, dann hat man da nicht 400.000 Objekte, sondern Millionen, und wenn man Pech hat, vielleicht sogar Milliarden von Objekten. Und da ist natürlich dann die Skalierbarkeit und die Performance auch ein wichtiger Faktor.
Und letzten Endes soll alles frei zugänglich und veränderbar sein. Gut, was gibt es da im Open-Source-Bereich? Das ist jetzt ein bisschen die Bestandsaufnahme. Für CEC++ gibt es die Knus Scientific Library fürs wissenschaftliche Rechnen. Die kann fast alles, was man da so braucht.
Für das Data Mining gibt es die Bibliothek Chogun, die mittlerweile auch, glaube ich, 15, 16 Jahre lang schon in Entwicklung ist. Dann im Bereich der Datenanalyse, speziell der statistischen Datenanalyse, ist R in Kombination mit dem Add-On-Repository-Gran relativ verbreitet.
Und in den letzten Jahren immer weiter verbreitet ist Python mit dem SciPy-Stack, den ich jetzt vorstellen möchte. Gut, also das ist jetzt die Liste von Paketen, die ich insgesamt genutzt habe. Ich gehe jetzt auf die einzelnen ein. Also der SciPy-Stack mit den Kernmodulen NumPy und SciPy stellt Funktionen für das wissenschaftliche Rechnen mit Python bereit.
Das Problem, was man mit Python, wenn man es für sich nackt nimmt, ist nämlich, dass die Performance nicht so wirklich ideal ist. Python ist eine interpretierte Scriptsprache. Das führt dann dazu, dass zur Laufzeit irgendeine Typ-Ellaboration und so Geschichten gemacht werden müssen. Und das ist, wenn es zur Laufzeit passiert, eben relativ langsam.
Ein schönes Beispiel sind zum Beispiel Schleifen. Also wenn man eine Schleife da in Python implementiert und das auf eine Matrix drauf herrscht, dann dauert das sehr lang, weil der das zur Laufzeit alles evaluieren muss. Wenn man das Ganze in C mit einer Schleife macht und dann kompiliert, dann geht das deutlich schneller. Und der Trick, den SciPy da letzten Endes anwendet,
ist, dass unter der Haube C und Fortran, Fortran ist auch im wissenschaftlichen Bereich eine sehr verbreitete Sprache, dass man das eben unter der Haube nimmt und oben hat man ein schönes, angenehm zu bedienendes Python-Interface. Python hat nämlich auch den Vorteil, man kann damit interaktiv arbeiten. Das ist gerade bei der Datenanalyse,
ich will da jetzt mal gerade an einem Parameter schrauben, ein nicht zuverdenkender Faktor, weil wenn man jetzt das Ganze in C++ machen würde zum Beispiel, müssen wir jedes Mal entweder das Ganze ein bisschen komplexer machen und mit Konfigurationsdateien arbeiten, wenn das geht. Oder eben direkt jedes Mal neu kompilieren, das ist der Worst Case,
der aber bei physikalischen Simulationen durchaus häufig auftritt. Und das kann man eben mit dem interaktiven Arbeiten mit Python umgehen. Gut, um den SciPy Stack herum gibt es sehr viele verschiedene Python-Pakete für viele verschiedene Zwecke, also gibt es weitere Mathe-Pakete, Statistik-Pakete.
Für Astronomie und Astrophysik wird da seit 2011 das AstroPy-Paket entwickelt vom AstroPy-Projekt. Das baut auf dem SciPy Stack auf, bietet zentrale astronomiebezogene Funktionen, das könnten so Sachen wie Koordinatenumrechnungen und so was sein,
aber auch astronomiestatistische Geschichten. Und auf AstroPy aufgebaut gibt es dann eben für die speziellen Zwecke, zum Beispiel die Spektroskopie oder auch die Photometrie-Spezialmodule, die dann für diese eine Aufgabe sehr gut optimiert sind. Und das Ziel vom AstroPy-Projekt ist Python zum Standardwerkzeug in Astronomie und Astrophysik zu machen.
Also dass man wirklich eine offene Plattform hat, mit der man sich wissenschaftlich austauschen kann oder nicht irgendwann immer so der Lizenzhammer kommt, wir haben keine IDL oder können uns die neue Version nicht leisten, das habe ich leider wirklich erlebt, das gibt es dann eben nicht mehr. Gut, ebenfalls auf dem SciPy Stack basierend gibt es das Paket SciKit Learn.
Das deckt in meiner Arbeit den Machine Learning und Data Mining part ab. Und das Projekt entwickelt eine Vielzahl von Machine Learning-Algorithmen. Also da gibt es so Cluster-Algorithmen, werde ich gleich noch kurz vorstellen. Dann gibt es da so Dimensionsreduktionen, PCA-Projektionsmethoden,
im Prinzip alles was in dem Bereich so benutzt wird. Und dadurch, dass es ebenfalls auf dem SciPy Stack aufbaut, also als Basis-Datentyp die NumPy-Arrays benutzt, integriert es sich automatisch auch gut zum Beispiel mit AstroPy. Also die Grenzen zwischen diesen einzelnen verschiedenen Paketen, obwohl es völlig getrennte Projekte sind,
die sind sehr gering durch die gemeinsamen SciPy- und NumPy-Basis. Gut, dann gibt es das Projekt AstroML, wo mein Programmcode dann auch hoffentlich final irgendwann landen wird. Das basiert auf AstroPy und Scikit-Learn und das ist schon ein erster Versuch,
diese Welten sozusagen ein bisschen zu verheiraten und die Anwendungen in der Astronomie zu zeigen. Also es enthält auch relativ viele schöne Beispiele. Ein anderes schönes Beispiel, das ist die Analyse von LIGO-Daten. Das wird wahrscheinlich jeder im Anfang Februar das mitbekommen haben. LIGO hat Gravitationswellen entdeckt und auch solche Sachen werden da exemplarisch analysiert.
Und an AstroML angeschlossen gibt es noch diverse Hilfspakete. Zum Beispiel Gatspy, das habe ich halt für die Zeitreihenanalyse benutzt. Gut, kommen wir zu den variablen Sternen zurück. Was man hier jetzt sieht sind zwei Lichtkurven.
Genaugenommen ist es eine Lichtkurve jeweils mit dem gleichen Stern in zwei verschiedenen Darstellungen. Wenn ein Teleskop misst, bekommt man zunächst mal sowas hier raus. Das ist einfach aufgetragen wieder. Hier ist die Zeit, hier ist die Helligkeit. Und da kann man jetzt schon so ein bisschen Struktur erkennen.
Das sind nämlich so vertikale Balken. Die Balken kommen einfach dadurch zustande, dass es Sommersternbilder und Wintersternbilder und sowas gibt. Und dass man die Sterne dann im Sommer zum Beispiel nicht messen kann. Also das sind so saisonale Effekte und so Geschichten. Das hat natürlich nichts mit dem Stern zu tun, sondern mit den Zeitpunkten,
wann wir das Ganze beobachtet haben. Jetzt sind sehr viele variable Sterne periodisch variabel. Das heißt, die Art, wie sie ihre Helligkeit ändern, die tritt immer und immer und immer wieder auf. Und was man da dann macht, man kann zum Beispiel mit einer Foyer-Analyse die Periodizität bestimmen. Weil zum Beispiel der Stern ist alle zwei Tage hell und dann wieder dunkel.
Dann kann man dann die Periode bestimmen und das Ganze in eine Kurve sozusagen reinfalten. Und das ist das sogenannte Phasenprogramm. Und das sieht dann für die einzelnen Klassen von variable Sternen schon ziemlich charakteristisch aus. Zum Beispiel sowas hier. Zum Beispiel die meisten Cepheiden sehen dieser Kurve hier relativ ähnlich.
Wie bitte? Also auf der y-Achse ist es wieder die Helligkeit. An der y-Achse hat sich überhaupt nichts geändert. Und auf der x-Achse sind die Werte, die sich nach der Formel hier berechnen. Also das ist im Prinzip, man rechnet diesen, im Prinzip rechnet man den Punkt einer Messung aus
in dieser ersten Phase, wenn man das alles zusammenklappt. Das ist das Zusammenklappen sozusagen. Gut, wenn man das Ganze dann machen will. Also ich habe jetzt, das sieht man leider nicht ganz so gut.
Also wenn man die Perioden bestimmen will, kann man das mit Gatsby zum Beispiel sehr schnell machen. Damit will ich jetzt zeigen, wie einfach das mittlerweile geht. Also man lädt sich einfach letzten Endes das Modul rein, liest mit NumPy die Messdatei ein und schickt hier diesen Lombs-Kagel-Algorithmus. Das ist ein FOE-basierter Algorithmus zur Bestimmung der Periode.
Die Details sind jetzt nicht wirklich relevant. Da kann man die Periode eben ausrechnen und ich sehe gerade, also der Code wird jetzt so nicht funktionieren. Die Einrückung ist mir irgendwie beim übertragenen Tech-Flöten gegangen. Also das müsste man erst wieder ordentlich einrücken.
Gut, das Phasendiagramm, da definiert man sich letzten Endes einfach diese Formel. Die erkennt man vielleicht hier wieder. Also hier T ist hier darin verborgen. T0 ist irgendwann ein Bezugzeitpunkt, zum Beispiel Maximum. Und gut, man faltet das dann einfach um. Das ist einfach Umrechnerei. Also man sieht hier diese Schnipsel, diese Kurzschnipsel sind alle relativ kurz.
Gut, dann will man damit aber Data-Mining machen. Das heißt, man muss sich irgendwelche Parameter schaffen, die man für die verschiedenen Arten von Variablensternen auch vergleichen kann. Im Fall von periodischen Angelegenheiten oder Zeitreihen fallen dem Physiker immer als erstes die Foyergeschichten ein.
Das ist einfach so, das muss man hinnehmen. Das lernt man im ersten Semester. Entsprechend fitted man dann eine Foyerreihe einfach an die Messdaten an und guckt sich dann an, wie stark ist zum Beispiel die Grundschwingung, wie stark ist die Oberschwingung von dem Stern. Gut, das zeige ich jetzt aber auch nur um ein plastisches Beispiel zu haben.
Gut, das Fitten würde man dann so machen. Also da gibt es dann, der Beamer schneidet doch ein bisschen was ab, in SciPy. SciPy stellt eben im Optimize Modul verschiedene Optimierungsfunktionen vor. Da gibt es die Funktion Curve Fit, mit der man eben genau diese Parameter dann ausrechnen kann.
Und das ist hier auch wieder ein relativ kompakter Grotschnipsel. Also man kann mit dem SciPy Stack relativ kompakte und wenig komplizierte Sachen machen. Gut, dann habe ich mir angeschaut, wie passt das zu den Daten, die Ogle selber angibt.
Also ich wollte ja meine Ergebnisse mit denen von Ogle vergleichen, um zu zeigen, das Ganze funktioniert auch gut. Also die Perioden haben immer bis auf ein Tausendstel Tag übereingestimmt. Das ist entweder im Sekunden, das müsste im Sekundenbereich sein, ja. Oder vielleicht im Minutenbereich. Ich habe es jetzt leider gerade nicht im Kopf.
Ja, so ungefähr. Und wenn man dann noch bedenkt, es gibt da noch andere Faktoren, die da reinspielen können, also wie gut der Algorithmus jetzt wirklich mit, also Lücken in Daten umgehen kann und so Geschichten, ist das eigentlich schon ziemlich gut. Und es gibt andere Implementierungen mittlerweile, das ist, seit ich das ausprobiert habe,
schon wieder ein bisschen verbessert worden. Da kommt man auf ein Zehntausendstel Tag mittlerweile. Und die Foyerkomponenten, die man dann ausgerechnet hat, gut, das ist jetzt, Werte, die kann man schlecht einordnen, wie ich die hier gerade hingeschrieben habe, das ist ein marginaler Unterschied.
Also es hat sich gezeigt, dass das in der Tat den Ogledaten sehr gut übereinstimmt. Gut, damit kann man die Daten dann vergleichbar machen und die Data-Mining-Algorithmen da draufjagen. Also die Foyerkomponenten kann man dann direkt vergleichen. Also ist der Stern in der Grundschwingung oder in der Oberschwingung. Dann gibt es so Faktoren wie die Farbe und die Amplitude.
Farbe ist hier fast wörtlich zu verstehen. Also, obwohl uns die Sterne nachts am Himmel fast gleich erscheinen immer, so haben die doch letztendlich eine Farbe, wie unsere Sonne uns immer ein bisschen gelblich erscheint. Aber das kann man halt nachts nicht so gut wahrnehmen, außer man hat ein Teleskop. Und die Amplitude, also wie stark der Mariapelstern schwankt,
das kann man auch direkt miteinander vergleichen. Das hängt damit zusammen, dass wir eine logarithmische Helligkeitsskala in der Astronomie verwenden. Gut, die andere Möglichkeit ist, die Messkurve direkt zu interpolieren und zu normieren. Das habe ich hier jetzt gemacht. Was man sich da letzten Endes vorstellen muss, ist, man nimmt die Messkurve.
Das ist jetzt hier dieses Phasendiagramm. Gut, das staucht das dann letzten Endes hinterher auf so einem Bereich zwischen 0 und 1 zusammen. Also man normiert das Ganze. Was man hier jetzt auch noch schön sieht, ist, es gibt da noch so skurrile Effekte. Jetzt zum Beispiel, der Stern hat so komische Lücken. Das heißt nicht, dass der Stern da irgendwie ausgegangen ist,
sondern das ist ein Stern, der hat eine Periode von ziemlich genau einen Tag. Das hängt mit der Erdrotation tatsächlich zusammen. Man kann diesen Stern, also man kann nicht alle Phasenteile von diesem Stern tatsächlich sehen, weil es ist halt an dem Teleskopstandort, naja, man kriegt das halt nie mit.
Und das kann man im Pfeifen, da habe ich jetzt leider kein Kotbeispiel, sehr schönen Kennzeichen. Also man kann dann gucken, ist da irgendwie ein Datenpunkt und kann das mit dem sogenannten Fancy Indexing übergibt man im Array. Also wenn man so einen Array hat und die Arrays dann die Indizes angibt,
kann man statt den Indizes selber so eine bullische Bedingung angeben. Zum Beispiel gibt man nur die Werte, die größer 0 sind oder sowas und kann das dann eben sehr, sehr einfach maskieren. Gut, kommen wir jetzt zum Data Mining Teil. Das war dann der größere Teil meiner Masterarbeit. Das sind im Wesentlichen statistische Methoden zum Finden von Informationen in Datensätzen.
Ein ganz einfaches Beispiel ist die Verteilungsanalyse. Das einfachste Beispiel hierfür wiederum ist das Histogramm. Und andere Sachen sind dann eben Modelle zur Beschreibung von Daten. Das foyerbasierte Modell, also die Foyerkomponentenanalyse,
das ist schon so ein Modell, dass man für so Geschichten verwenden kann. Und schließlich Methoden, um auch wirklich Wissen da rausschöpfen zu können. Gut, wie sieht das Ganze dann aus? Ich habe das jetzt mal hier für die Array-Sterne gezeigt. Das sind variable Sterne, die eben so einen sogenannten Kappa-Mechanismus machen.
Das ist auch wieder so ein Ionisationsmechanismus. Im Prinzip muss man sich das so vorstellen. Die Kernfusion heizt den Stern von innen an. Dann hat man da so eine dünne Schicht. Das könnte irgendwas Metallisches zum Beispiel sein. Also Metall für einen Astronomen ist alles etwas schwerer als Wasserstoff ist oder als Helium ist.
Helium nennt man auch noch extra. Im Prinzip ist das die Durchlässigkeit für die Photonen von dem Stern. So kann man sich das vereinfacht vorstellen. Und bei diesen Sternen, das kann dann in Schwingungen kommen, da gibt es zwei Schwingungszustände. Und ich habe mir jetzt einfach nur die Perioden, die ich vorhin mit dem Gats-Pi ausgerechnet habe,
die habe ich mir in ein Histogramm geplottet, dann sieht man sofort. Okay, hier gibt es irgendwie so zwei Huppel hier drin. Das sind genau die zwei Schwingungszustände von den Er-Lyrae-Sternen. Also man sieht hier auch, hier die bewegen sich irgendwie zwischen 0,2 und 0,4 und die hier zwischen 0,4 und 0,8.
Das ist Unter- und Oberschwingung bei diesen Sternen. Und was man jetzt machen will, ist, man will das Ganze klassifizieren. Also wir erkennen hier mit dem Auge sofort, okay, da gibt es irgendwie scheinbar zwei Sorten. Und zum Klassifizieren, da gibt es jetzt verschiedene Möglichkeiten.
Also da gibt es einmal das supervised learning und dann das unsupervised learning. Supervised learning heißt, wir wollen zum Beispiel, wie erkläre ich das jetzt am besten? Also wir wissen nicht genau, wo nach wir suchen und wollen einfach nur unsere Messobjekte in Klassen einteilen.
Das kann man hier mit zum Beispiel jetzt machen, so ein Cluster-Algorithmus da draufschmeißen. Und supervised learning würde heißen, wir wissen schon, wie das aussieht, was wir haben wollen, schicken dem Algorithmus das erstmal rein. Das ist dann meistens irgendwie so ein neuronales Netz oder sowas, das errechnet sich dann Parameter daraus.
Also hat sozusagen einen Lerndatensatz, errechnet sich dadurch die Entscheidungsrätterien und kann dann Objekte klassifizieren. Beim unsupervised learning macht man das eben nicht. Gut, bevor man das Ganze machen kann, bietet es sich meistens an, die Daten noch ein bisschen zu transformieren. Da gibt es einmal die Hauptkomponentenanalyse PCA.
Die macht letzten Endes nichts anderes als die Daten sozusagen zu drehen. Das kann man sich fast genauso vorstellen. Mathematisch ist es auch eine Drehung. Und man dreht die Daten so, dass die Achsen maximaler Information, also maximaler Varianz, sozusagen immer in Achsenrichtung zeigen.
Das heißt, man hat im Prinzip immer die signifikantesten Achsen, das beste Koordinatensystem. Was für einen Effekt das hat, das wird man dann gleich sehen. Also wenn man das mit Scikit-Line machen will, gut, man importiert einfach das PCA-Modul, die PCA-Funktion
und kann letztendlich die PCA einfach, also man liest die Daten ein, da habe ich jetzt hier mit Pandas gemacht, instanziert die PCA, fiertet das Modell an, also rechnet sozusagen diese Transformation aus und führt die Transformation danach durch. Also es sind hier im Prinzip wieder nur ein paar Codezeilen, die man da in Python machen muss.
Wenn man das dann gemacht hat, sieht man, wenn man sich diese Komponente anschaut, also jetzt hier die erste Hauptkomponente, die mit der meisten Information drin sozusagen, sieht man hier schon so ein bisschen eine Cluster-Struktur, aber die täuscht, weil letzten Endes die Aufteilung nicht in der y-Achse, sondern in der x-Achse zu sehen ist.
Also im Wesentlichen zieht das hier die Periode von den beiden Zuständen auseinander. Wenn man dann sich die erste gegen die zweite Hauptkomponente anschaut, also die erst signifikanteste gegen die zweitsignifikanteste, dann hat man hier eine Trennung in x-Richtung, also hier ist irgendwie was dazwischen,
und auch eine in y-Richtung. Also man hat das jetzt hier mit der PCA sogar schon getrennt. Was man hier dann machen kann, das bietet sich ja schon fast mit dem Auge an, ein Cluster-Algorithmus da drauf werfen. Da gibt es zum Beispiel den K-Means-Algorithmus, der einfach nur,
der setzt im Prinzip, ich sage ihm, wie viele Cluster habe ich oder wie viele Cluster erwarte ich, das kriege ich aus dem Histogramm raus, ich habe da zwei Hubbel gehabt, dann sage ich dem Algorithmus, okay, rechne mir zwei Cluster aus, der setzt dann willkürlich zwei Startpunkte hier rein und rechnet die Clusterzentren,
also den geometrischen Mittelpunkt hiervon aus, und macht das solange immer und immer und immer wieder, bis das Ganze sich nicht mehr ändert, also sozusagen konvergiert. Genau. Wenn man das dann gemacht hat, das ist auch wieder mit Scikit-Learn eine sehr kurze Angelegenheit.
Also man muss wieder nur, da gibt es das Modul Scikit, also Scikit-Learn-Cluster, holt man sich das K-Means raus und fitet einfach das Modell an die Daten an und trifft dann die Vorhersage, die Vorhersage sagt, ist der Punkt da jetzt in Cluster 1 oder ist der Punkt da jetzt in Cluster 2,
und man bekommt da dann eben die Klassifikation raus. Wenn man sich das anschaut, okay, ich habe das jetzt hier in den beiden Farben dargestellt, dann hat er das im Wesentlichen schon erkannt, also hat jetzt hier diesen großen Hubbel in Blau und diesen kleinen Hubbel im Wesentlichen in Rot,
aber hier unten ist immer noch so ein bisschen Verschmutzung drin, und das ist jetzt hier ein Effekt, weil ich hier auf diese Daten keine PCA angewendet habe, also das sind jetzt die noch nicht rotierten Daten. Wenn ich die PCA jetzt anwende, also die Daten optimal rotiere,
dann ist dieser Schmutzeffekt hier in einem deutlich kleineren Bereich, also der ist nicht Null, der kann auch physikalisch nicht Null werden, weil das zwei Sternenklassen sind, also das sind zwei verschiedene Arten von R-Alyr, die einander übergehen können, das heißt da ist ein natürlicher Übergang zwischen diesen Arten von variablen Sternen eben vorhanden,
aber die Trennung ist hier deutlich klarer geworden. Wenn man das dann mit Orgel vergleicht, dann sieht das quasi gleich aus. Gut, jetzt ist jetzt nur Grafik, aber das Ganze noch in Zahlen machen, wo habe ich die Zahlen hingemacht? Also ich habe das dann auch in Zahlen verglichen, also die Übereinstimmung liegt bei 99,4% ungefähr.
Gut, wenn man Supervised Learning machen will, also wenn man feststellen will, wie gut, also wenn man einen Lerndatensatz hat, also vorklassifizierte Objekte hat, in der Physik ist das häufig, also bei variablen Sternen ist das der Fall,
man hat die verschiedenen Klassen von variablen Sternen, die man kennt, bekommt jetzt einen unbekannten Datensatz und will seine Daten nach diesem Muster klassifizieren. Dann macht man das mit Supervised Learning, also man lässt den Algorithmus das anlernen und eine Methode hierfür sind die Entscheidungsbäume, also das ist jetzt hier ein Beispiel zum Iris-Datensatz,
das sind so Blumen, das ist so ein Standardbeispiel aus dem Feld, die man in verschiedenen Längen ausgemessen hat, da gibt es dann irgendwie mehrere Sorten von diesen Blumen, und was der Entscheidungsbaum letzten Endes macht, also man gibt die Blume sozusagen oben rein, mit ihren Ausmaßen, also wie groß ist die Blattlänge,
wie groß ist die Blütenlänge und so Schichten und der Baum hat dann jeweils hier ein Entscheidungskriterium drinstehen, wie zum Beispiel hier die Petal-Length muss kleiner als 2,45 cm sein, wenn das der Fall ist, dann ist das auf jeden Fall eine Iris-Pflanze der Untersorte Cetosa,
das ist diese orange, diese orange fällt hier, wenn das nicht der Fall ist, dann prüfe ich die Breite von diesen Klettern, ist die kleiner als 1,75, dann gehe ich hier runter, ansonsten gehe ich hier runter und so geht man eben durch diesen Baum durch, bis man letzten Endes bei der Klassifikation, also hier unten beim eindeutigen Kriterium angekommen ist.
Gut, die Bäume haben den Vorteil sehr schnell zu sein, das sind einfach bulge Bedingungen, die in den verschiedenen Stufen jeweils geprüft werden müssen und weil natürlich immer Fehlentscheidungen passieren können, einfach weil teilweise die Parameter unscharf sind oder weil der Algorithmus nicht ganz optimal angelernt worden ist,
geht man zu Wäldern über, ein Wald ist eine Ansammlung von Bäumen, entsprechend ist auch hier ein Forest im Sinne von einem Supervised Learning Algorithmus eine Ansammlung von Entscheidungsbäumen und man lässt dann letzten Endes die Mehrheit entscheiden, also man hat irgendwie nicht einen Baum, sondern 20 und die Mehrheit, die dann sagt, okay, das ist jetzt eine Blume der Art Cetosa,
wenn das die Mehrheit sagt, dann wird der ebenso klassifiziert. Und jeder Baum, also es nimmt nur eine Untermenge der Variablen, das hat einfach den Grund, wenn ich jeden Baum mit exakt den gleichen Daten initiieren würde, hätte ich im schlimmsten Fall einfach 20 mal den gleichen Baum,
da kann ich gleich nur einen Baum nehmen. Deswegen nimmt man jeweils nur eine Untermenge der Variablen und in der Regel werden die zufällig gewählt, deswegen heißt es ganz auch Random Forest und lässt das dann mit einem neuronalen Netz erst anlernen und danach dann klassifizieren. Ein anderer Vorteil von den Waldalgorithmen ist,
dass sie sehr leicht parallelisierbar sind. Jeder Baum ist unabhängig vom anderen Baum, das heißt, wenn man jetzt 32 CPU-Kerne hat, dann kann man im Prinzip auf 32 Bäume nehmen und jeder Baum hat seinen eigenen CPU-Kern. Also sie lassen sich sehr leicht parallelisieren,
das heißt, sie sind sehr schnell. Und das hat jetzt vielleicht ein bisschen kompliziert geklungen mit Zufall, rein rechnen, Variablen aussuchen. Auch das ist in Scikit-Learn natürlich schon implementiert. Die Waldalgorithmen nennt man auch Ensemble Classifier,
Ensemble, weil Ansemmelung von Klassifikatoren und da ist eben der Random Forest einer davon und da muss man letzten Endes genau wie beim K-Means vorhin schon einfach nur erst mal den instanzieren. Okay, ich sage ihm jetzt hier, wie viele Bäume ich haben will, muss das Modell anfitten. Im Unterschied zum K-Means muss ich ihm jetzt hier natürlich
meine Trainingsdaten rein geben, das heißt, meine Vorklassifikation rein geben und danach sagt man auch wieder Predict und er spuckt das Ergebnis letzten Endes aus. Das habe ich dann auch mit den Erlöre-Daten wieder gemacht und hier hat die Übereinstimmung zwischen der
an Supervised gefundenen Klassifikation von K-Means und Random Forest, die war bei 96,41%, das die nicht bei 100% liegen kann, das lässt sich in dem Histogramm hier sehen, das liegt einfach an diesem natürlichen Überlap in den Daten. Das heißt, die 100% zu erreichen wegen diesem Überlap,
das geht einfach nicht. Gut, und mit Orgel war die Übereinstimmung in einem sehr ähnlichen Bereich und die Fehlentscheidungen, die waren auch ausnahmslos hier in diesem Überlap-Bereich. Also er hat nicht hier hinten irgendwo fehlentschieden, das ist fehlentschieden in Anführungszeichen, sondern es war immer hier in diesem kleinen Bereich.
Gut, dann noch ein kleiner Ausblick, was wir jetzt noch so vorhaben mit diesen ganzen Geschichten, weswegen ich mal angefangen habe mich da zu beschäftigen. Es gibt die Sternwarte in Sonneberg, das ist in Thüringen. Die haben eines der größten Foto-Platten-Archive der Welt, also für Astro-Foto-Platten, das sind ungefähr 300.000 Stück.
Und die haben ja über einen Zeitraum von über 70 Jahren immer und immer und immer wieder aufgenommen, haben auch mittlerweile sich die Mühe gemacht, diese Platten einzuscannen. Das heißt, man bekommt da im Prinzip Bilder wie von einer Digitalkamera fast. Man muss sie nur noch entsprechen, weil sich Foto-Platten ein bisschen anders verhalten, noch ein bisschen transformieren.
Und kann anhand dieser Daten dann auch Studien über Langzeitvariabilität durchführen. Weil die CCD-Daten, also Ogle jetzt zum Beispiel, das läuft seit den frühen 90ern, das sind jetzt gut 20 Jahre und 70 Jahre, das ist halt dann doch noch ein Äckchen mehr. Und es gibt physikalische Prozesse, die sich genau in der Größenordnung bewegen.
Und auch das wird letzten Endes mit Python passieren. Kollegen von uns aus Potsdam glaube ich, Potsdam, Heidelberg und Bamberg, entwickeln das sogenannte PiPlate-Projekt, das diese Foto-Platten sozusagen vorverarbeitet und dass man danach das Data-Mining,
wie ich es hier vorgestellt habe, draufschicken kann. Und das ist auch fast ausschließlich auf Python basiert. Bis auf das Bestimmen von Koordinatensystemen, da gibt es ein sehr effizientes Programmchen, das jetzt nochmal in mühelsiniger Kleinarbeit neu zu implementieren irgendwie mit SciPy. Das wäre einfach ein größerer Zeitverlust,
also das Programm ist StormyTree, das ist auch freie Software, von daher spricht da jetzt nichts dafür, sich die Mühe einfach nochmal zu machen. Gut, Sonneberg, die Daten haben jetzt die Eigenschaft gehabt, dass sie ein bisschen stärker streuen. Also aus Foto-Platten kriegt man die Werte einfach nicht so genau raus. Das liegt dran, dass sich die Sterne,
zum Beispiel wenn sie ein bisschen überbelichtet sind, dass sie sich ein bisschen flatschen reinlaufen. Das war ja früher so eine Filmemulsion, so eine chemische Emulsion. Wenn man da ordentlich Licht drauf gebrutzelt hat, dann ist das einfach so auseinandergelaufen. Und da hat sich dann ergeben mit den Werten, die ich da aus manuellen Analysen übernommen habe,
dass auch das mit den Machine Learning Algorithmen kein Problem sein wird, weil sich die Streuung von den Parametern in einem sehr ähnlichen Rahmen bewegt. Also ich hoffe, dass wir in den nächsten Jahren dann Studien in Langzeitvariabilitätpfeifen machen können. Gut, ich will das dann zeitnah auch veröffentlichen,
natürlich als freie Software. Ich habe die BSD-Lizenz gewählt. Das ist mehr oder weniger USUS in der AstroPie-Community. Und längerfristig soll das Ganze, weil auch AstroML den Beispiel-Charakter hat, in AstroML eingearbeitet werden. Gut, was ist das Fazit?
Also man kann eine vollständige Implementierung der Lichtkurvenanalyse auf Pifen machen. Das ist das, was ich hier gezeigt habe. Man kann sogar noch weitergehen. Also es gibt auch für die Datenreduktion, also jetzt wenn man zum Beispiel Daten von der ESO bekommt, europäischen Südsternwarte,
da gibt es dann in AstroPie auch Pakete, um diese Daten einzulesen. Man kann die photometrischen Messungen selber mit Pifen machen. Also man kann von der Messaufnahme ausgehend bis zum fertigen publikationsreifen Bild komplett mit Pifen arbeiten mittlerweile. Das ging vor wenigen Jahren noch nicht. Das AstroPie-Projekt hat sich da sehr, sehr verdient gemacht.
Und auch die SciPie-Community allgemein, dass das eben sehr, sehr stark gefördert wird. Und gerade in Astronomie und Astrophysik ist die Community-Zusammenarbeit zwischen Wissenschaftlern und Software-Programmierern auch relativ gut. Also die meisten, zum Beispiel von den SciPie-Entwicklern, viele kommen auch aus dem universitären Umfeld.
Also das ist auch professionell entwickelt. Und es wird in den nächsten Jahren dann noch sicher sehr interessante weitere Entwicklungen geben. Gut, damit bin ich am Ende eines Vortrags angelangt. Ich bin auch ganz gut in der Zeit geblieben, wie ich gerade sehe. Und freue mich auf Ihre Fragen.
Die zwei Parameter, die auf den beiden Achsen anlösen. Ja. Aber die Periode und die Farbe. Genau.
Ach so, das habe ich jetzt vergessen. Also die Frage ist gewesen, hat hier vorher eine Darstellung, was da die Parameter auf den Achsen waren. Das waren Periode und Farbe. Das sind eben zwei für Variable-Sterne sehr charakteristische Größen. Oder generell für Sterne. Das Herzsprung-Rassel-Diagramm,
was die Sternentwicklung sozusagen zeigt, das zeigt ja auch die Farbe im Wesentlichen bzw. die Temperatur. Ja. Ich finde das sehr interessant, dass Sie ja da diese Probeplatten, die Sie hier haben,
auch diese Propellene, das haben bestimmte Sterne von bestimmten Obachtungspositionen außerhalb der Durchgängung sozusagen herangespielt. Obachtungspositionen, die da wirklich in den Datenwätzen bestehen, wie wir da auch umgehen können. Jetzt meine Frage ist,
wie ist sozusagen, wie hat die Technologie der Sprung ins All? Das war die Album-Farbe-Teleskop-Lehrung. Das klingt jetzt ein bisschen glatt und langzeitig, aber gibt es da Bestätigung? Wie machen Sie denn da auch in der Kommune?
Zunächst mal die Frage wiederholen. Also die Frage war jetzt, wie fasse ich denn die jetzt am besten zusammen? Also, die Fotoplatten haben gewisse Qualitätsprobleme und die Frage ist jetzt, wie sich das in der Zukunft entwickeln wird, weil man eben mit Hubble
vielleicht dauerhaft draufhalten kann und dann eben keine Beobachtungslücken mehr hat. Na klar, also die CCD-Fotografie oder auch die Weltraummission, das wird sich jetzt natürlich im Zeitraum auch immer weiter ausweiten. Das war auch da irgendwann die 70 Jahre erreichen. Aber zumindest Hubble ist ein Teleskop, was immer sehr genau
auf eine Stelle guckt. Also während wir bei Ogle oder bei Sonnenberg mehr oder weniger immer einen großen Teil des Himmels angeschaut haben und somit sehr viele Sterne haben, sehr gut Statistik machen können, guckt Hubble eben auf eine Stelle, wo man schon weiß, die ist sehr interessant drauf und misst das dann. Aber was man zum Beispiel jetzt auch hat, ist das Weltraumteleskop Kepler,
das man benutzt, um Exoplaneten zu finden. Also da muss man dann auch Schwankungen in der Helligkeit schauen, weil wenn der Planet gerade vom Stern lang wandert, dann wird es einen kleinen Ticken dunkler. Und Kepler hat auch so ein Survey gemacht, also das ist ein Weltraumteleskop, das hat in gewissen Bereichen der Milchstraße die Daten immer abgerastet. Und das sind
Daten, also da träumt man fast von, die haben kaum Messfehler. Also das ist... Es gibt da teilweise mittlerweile Kurven, da sind keine Fehlerbalken mehr drin, da wird man als Physiker erst mal skeptisch, wenn die fehlen. Aber tatsächlich werden die Fehler da so klein, dass man sie kaum reinzeichnen könnte, ohne sie zu
übertreiben. Also das wird sich schon in Zukunft ändern. Daneben gibt es noch andere Bestrebungen, um diese Lücken zu eliminieren, dass man einfach auch weltumspannende Netzwerke von Teleskopen hat. Also was weiß ich, zum Beispiel bei der Europäischen Südsternwarte in Chile welche hinstellt, in Australien
welche hinstellt, um einfach auch kontinuierlich messen zu können. Aber letzten Endes werden da in den nächsten Jahren immer mehr und mehr Daten erscheinen. Auch das LSST wird das Large Synoptical Telescope in Betrieb gehen, was auf jeden Bust an Daten liefern wird.
Und dankenswerterweise, das liegt auch daran, weil die Projekte ja von öffentlichen Geldern größtenteils finanziert werden, wandern die Daten auch in der Regel ins Netz. Also zum Beispiel auch die Ogle-Daten, die kann man aus dem Netz abrufen, die Kepler-Daten kann man über das Netz bekommen. Also im Prinzip kann jeder, der Freude am Datamining hat, sich da drauf stürzen, sich die Daten holen und ein bisschen
Forschung damit betreiben. Und das ist auch sehr schön, also ich fand das sehr schön für meine Masterarbeit, dass man dann auch als kleiner Student sozusagen sich nicht selber mit dem Teleskop da in die Gegend stellen muss, das haben wir am Anfang in Marburg auch gemacht, sondern dass man auch wirklich mit professionell aufgenommenen Survey-Daten
auch arbeiten kann. Also es ist schon sehr schön, dass die Daten da offen liegen, ja. Also für den Random Forest, das Anlernen, das war auf meinem Desktop-Rechner, das ist
ein Cortoduo der letzten Generation, ungefähr eine dreiviertel Stunde. Das Klassifizieren danach von glaube 40.000 Testobjekten, das ging in ein paar Minuten durch, also das läuft sehr, sehr schnell mittlerweile. Also das größere Problem bei meinem Desktop-Rechner war eher der Arbeitsspeicher, also manche Sachen
dann doch im Arbeitsspeicher so groß sind, dass die acht Gigabyte nicht gereicht haben. Da müssten wir dann doch vielleicht eher auf ein Rechencluster oder sowas professionelleres gehen, aber das meiste konnte man, also ich habe fast meine ganzen Masterdaten tatsächlich auf meinem Desktop-Rechner durchnudeln können. Nur für eine Sache, da wollte ich in einem anderen Machine-Learning-Algorithmus
den db-scan-Algorithmus zur Klassifikation testen, das habe ich dann bei Amazon gemacht, die bieten ja auch so virtuelle Maschinen zum wissenschaftlichen Rechnen an, weil das hat einfach der Rechner nicht hergegeben. Aber es hält sich für sowas wie Ogle mit zigtausend, also zigtausend bis hunderttausend Sternen
noch in Grenzen. Wenn man jetzt irgendeinen Server hat mit, was weiß ich, 50 Millionen Sternen, da mag das schon anders aussehen. Aber es zeigt eben schon, dass Python hier auch keine allzu große Performance-Bremse ist. Das haben ja am Anfang manche noch befürchtet, dass man da dann
doch irgendwie C oder Fortran oder sowas nehmen muss, aber dadurch, dass SciPy da sehr geschickt eben C, C++, ich glaube nicht C++ nicht, und Fortran unter der Haube und ein angenehmes Python-Interface oben, dass das tatsächlich gut funktioniert.
Das kommt drauf an, was man sich genau anschaut.
Also bei Survey-Daten, wo Millionen von Objekten drin sind, da ist genug drin, um Statistik zu machen können. Aber es gibt dann andere Messungen, zum Beispiel gab es vor zwei, drei Jahren so eine Gas-Work, die ins schwarze Loch im Zentrum von unserer Milchstraße reingezogen ist und da hat man dann natürlich nur die wenigen Messungen von den Tagen, wo man genau drauf geguckt hat.
Und dann hat man mehrere Gruppen, die diese Daten analysiert haben, aber es waren letzten Endes alles die gleichen Daten. Also wenn man so sehr spezielle Objekte hat, dann kann das schon sehr knapp sein mit den Daten. Unsere Wolke, die zieht halt einmal da rein und dann ist sie weg.
Wie bitte? Ja, das leider hatte Herr Einstein recht und das ist da drin verschwunden. Oder zum Glück, sonst hätten wir Physiker ein anderes Problem, wenn das nicht stimmen würde.
Wir sind ja sowieso noch nicht am Ende. Sind wir hier bei Knuh Hurt?