Wo kann man gute Datensätze / Testprobleme zum Testen von Algorithmen / Routinen erhalten?


41

Bei der Bewertung der Qualität einer Software, die Sie verwenden möchten (unabhängig davon, ob es sich um eine von Ihnen geschriebene Software oder um ein in Dosen gepacktes Paket handelt), ist es häufig eine gute Idee, zu überprüfen, wie gut sie mit Standarddatensätzen oder -problemen funktioniert. Wo kann man diese Tests zur Überprüfung von Rechenroutinen erhalten?

(Eine Website / ein Buch pro Antwort, bitte.)


Ich wollte, dass dies ein Community-Wiki-Beitrag ist, und habe ihn daher für die Konvertierung markiert.
JM

3
Ist diese Frage nicht zu weit gefasst, dh hängt sie von den Algorithmen / der Art des Problems ab, für dessen Lösung diese Software verwendet wird?
Andre Holzner

Ich wollte wirklich, dass diese Frage das Community- Wiki @Andre ist (als "große Liste" von Ressourcen). Ich hatte es zur Konvertierung vorgemerkt, aber ich weiß nicht, warum es nicht konvertiert wurde.
JM

@JM Ich habe es konvertiert.
David Ketcheson

Antworten:



13

Die Methode der hergestellten Lösungen ist ein Standard zum Testen von PDEs und anderen Lösungsmitteln. Die meisten symbolischen Algebrasysteme verfügen über Funktionen zum Generieren von Code. Dies ist nützlich, um hergestellte Lösungen zu erstellen. SymPy und Maple haben dazu unter anderem die Funktion ccode.




8

Beim rechnergestützten Elektromagnetismus gibt es eine Reihe bekannter (oder wegen einiger Schwierigkeiten berüchtigter) Testprobleme: das Testen elektromagnetischer Analysemethoden (TEAM) .

Einige von ihnen benötigen wirklich hochmoderne numerische Techniken, um die korrekten Simulationsergebnisse mit den experimentellen Daten in Einklang zu bringen. Zum Beispiel das Leiter-Spulen-Problem .

Ein weiterer Satz von Testproblemen für Maxwell-Gleichungen wird von Dauge: Benchmark-Berechnungen für Maxwell-Gleichungen zur Approximation hoch singulärer Lösungen zusammengestellt . Der im berühmten (oder berüchtigten) Fichera-Würfel:

Fichera

ϕH1+ϵE=ϕ

Δu=0,where u=rαsin(αθ).

7

Wenn Sie an Benchmarking-Algorithmen für molekulare Strukturen interessiert sind, enthält die Pubchem-Datenbank eine große Sammlung überwiegend organischer Moleküle. Dies kann nützlich sein, um Vorhersagen molekularer Eigenschaften zu vergleichen, die mit verschiedenen Modellen / Programmen erhalten wurden. Die Site bietet mehrere Möglichkeiten zum Herunterladen großer Mengen von Molekülen, die einige vordefinierte Kriterien erfüllen (z. B. chemische Zusammensetzung).



7

Die CUTEr -Website aktualisiert den auf der Arnold Neumaier-Website erwähnten CUTE- Testsatz mit einigen zusätzlichen Problemen für die Optimierung und für lineare Löser. Darüber hinaus werden Softwaretools zum Testen und Aktualisieren von linearen Algebra- und Optimierungslösern bereitgestellt.







3

Alan Genz schlug im Artikel Testen mehrdimensionaler Integrationsroutinen eine Testsuite von Funktionen vor . Ich kann keine Online-Version dieses Papiers finden, aber Verweise darauf finden sich in den Papieren über die CUBA-Bibliothek .


3

Hier finden Sie eine Sammlung von Referenz-Optimierungsproblemen mit PDE-Einschränkungen, die Roland Herzog von der TU-Chemnitz gepflegt hat .



2

Wenn Sie nach großen Grafiken oder Netzwerkdaten zum Testen suchen. Das Stanford Network Analysis Project (SNAP) verfügt über viele große Diagrammdatensätze in der Regel in Form einer anonymisierten Adjazenzliste. Einige ihrer Optionen umfassen:

Daten

Eigenschaften von Daten

  • Anzahl der Kanten: von ~ 10 bis ~ 400 Millionen
  • Anzahl der Knoten: von ~ 10 bis ~ 100 Millionen
  • Kantentypen: gerichtet, ungerichtet, gewichtet, ungewichtet, signiert und nicht signiert.
  • Netzwerktypen: gerichtet, ungerichtet, zweiteilig, multigraphisch, zeitlich, beschriftet.

Grundwahrheitsstatistiken für die Datensätze:

Werkzeuge


@JM kein Problem! Ich habe vor einiger Zeit einige ihrer Social-Net-Datensätze für ein Projekt verwendet und bin dann auf diesen Stapelaustausch gestoßen und dachte, dass er hier hilfreich sein könnte.
Ryan

-3

Daten sind einfach; Die API, um es zu bekommen, kann schwierig sein. Ich empfehle Quandl . Diese Site verfügt über mehr als 10 Millionen öffentlich verfügbare Datensätze, auf die über eine einfache, REST-vollständige API zugegriffen werden kann. Alle Daten werden entweder in CSV oder JSON zurückgegeben. Wenn die Programmierung nicht zu Ihren Stärken gehört, können Sie die Daten auf einfache Weise in Excel übertragen. R-, Python- und Ruby-Programmierer sind mit nativen Bibliotheken genau richtig.


1
Willkommen bei Scicomp! Ich glaube nicht, dass dies die Art von Daten ist, um die es in der Frage geht. Zum Testen von Algorithmen benötigen Sie nicht nur einen Datensatz, sondern auch ein entsprechendes bekanntes Ergebnis (abhängig vom Problem / Algorithmus), mit dem Sie Ihre Ergebnisse vergleichen können.
Christian Clason

Vielen Dank, @ChristianClason. Ich verstehe was du meinst. Wenn es sich bei der Software beispielsweise um eine lineare Regression handelt, ist der Autor an den Datensätzen sowie an einer Reihe überprüfter Analyseergebnisse interessiert, um zu testen, ob das Paket für die lineare Regression ordnungsgemäß funktioniert.
Brian Risk
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.