Anzeige
System erzeugt regulären Ausdruck aus natürlicher Sprache.
System erzeugt regulären Ausdruck aus natürlicher Sprache. (Bild: MIT)

MIT Programmieren mit natürlicher Sprache

Forscher am MIT haben zwei unterschiedliche Ansätze entwickelt, die es erlauben, in natürlicher Sprache zu programmieren. Nicht jede Art von Code lässt sich so schreiben, bei manchen Aufgaben funktioniert das System aber besser als ein Saal voller Informatiker.

Anzeige

Einige spezifische Programmieraufgaben lassen sich gut mit natürlicher Sprache abwickeln, das zeigen Forscher des Computer Science and Artificial Intelligence Laboratory am Massachusetts Institute of Technology (MIT). Ihre Arbeit könnte Programmierer bei der Arbeit unterstützen, aber auch Nichtprogrammierern Dinge ermöglichen, für die man bisher zumindest ein bisschen programmieren lernen musste. Die Forscher um Professor Regina Barzilay nutzen dabei zwei grundlegend unterschiedliche Ansätze.

Reguläre Ausdrücke

Beim ersten geht es darum, reguläre Ausdrücke mit natürlicher Sprache zu beschreiben. Da aufgrund der Syntax eine einfache Abbildung der natürlichen Sprache in Form eines regulären Ausdrucks nicht möglich ist, greifen Nate Kushman und Barzilay auf bereits existierende Übersetzungen zurück, die sich im Internet finden lassen.

Dabei fiel auf, dass praktisch jeder reguläre Ausdruck ein Äquivalent hat, das sich leicht in natürliche Sprache übersetzen lässt. Über einen Graph lassen sich alle Äquivalente eines regulären Ausdrucks gleichzeitig darstellen. So muss der Übersetzungsalgorithmus letztendlich die natürliche Sprache nur auf Symbole zurückführen und anschließend über den Graph eine kompaktere Version des regulären Ausdrucks finden.

Bei der Vorstellung ihrer Forschungsergebnisse bat Kushman die im Raum anwesenden Informatiker, einen regulären Ausdruck für eine recht einfache Textsuche aufzuschreiben. Nur ein kleiner Teil fand die korrekte Lösung. Den anderen hätte die automatische Übersetzung geholfen.

Computer schreibt Parser anhand der Spezifikation selbst

Zusammen mit Tao Lei, Professor Martin Rinard und Fan Long hat Regina Barzilay noch einen zweiten Ansatz entwickelt, nicht für reguläre Ausdrücke, sondern für Input-Parser, die Struktur von Dateiformaten erkennen. Mit dem von den MIT-Forschern entwickelten System lassen sich solche Input-Parser automatisch aus der jeweiligen Spezifikation des Dateiformats erzeugen.

Getestet wurde das Ganze mit mehr als 100 Beispielen. Dabei griffen die Forscher auf Aufgaben aus dem Programmierwettbewerb der Association for Computing Machinery's International Collegiate zurück. Für rund 80 Prozent der Aufgaben lieferte das System funktionierende Input-Parser, bei den restlichen 20 Prozent genügte es meist, ein oder zwei Wörter in der Spezifikation zu ändern, damit das System einen funktionieren Parser erzeugte.

Dabei kennt das System nur eine kleine Anzahl an Begriffen, die immer für die gleichen Datentypen verwendet werden, beispielsweise "Integer", und weiß zudem, dass die Spezifikation wahrscheinlich ineinander verschachtelte Datenstrukturen beschreibt. Damit ausgestattet, testet das System viele unterschiedliche Interpretationen der Spezifikation mit Beispieldateien aus. Funktioniert der Parser mit der Datei nicht, wird die Interpretation minimal verändert und erneut getestet, bis eine funktionierende Version gefunden ist.

Dabei lernt das System, wie Parser im Allgemeinen aufgebaut sind und wird mit der Zeit besser. Bei den Experimenten der Forscher dauerte es nur 10 Minuten, um 100 Parser zu erzeugen.


eye home zur Startseite
Ry 23. Jul 2013

da musst du das Dokument wohl noch mal lesen zusammen mit 2119

YoungManKlaus 23. Jul 2013

du meinst wohl http://xkcd.com/323/

azeu 22. Jul 2013

aber, es ist ja auch nicht so, dass in der Webentwicklung täglich das Rad neu erfunden...

monettenom 22. Jul 2013

Beim Erstellen von Regulären Ausdrücken und Parsen von Input-Daten von "Programmieren" zu...

Beazy 22. Jul 2013

Euere Diskussion geht am Thema vorbei. Ich stelle mir die Vorgehensweise eher so vor: Du...

Kommentieren



Anzeige

Stellenmarkt
  1. Robert Bosch GmbH, Stuttgart-Vaihingen
  2. Kommunale Informationsverarbeitung Baden-Franken, Freiburg, Heilbronn, Heidelberg
  3. IVU Traffic Technologies AG, Berlin, Aachen
  4. CLARIANT SE, Sulzbach/Taunus bei Frankfurt am Main


Anzeige
Spiele-Angebote
  1. 99,99€
  2. 2,49€

Folgen Sie uns
       


  1. Linux-Distribution

    Ubuntu diskutiert Ende der 32-Bit-Unterstützung

  2. Anrufweiterschaltung

    Bundesnetzagentur schaltet falsche Ortsnetznummern ab

  3. Radeon RX 480 im Test

    Eine bessere Grafikkarte gibt es für den Preis nicht

  4. Overwatch

    Ranglistenspiele mit kleinen Hindernissen

  5. Fraunhofer SIT

    Volksverschlüsselung startet ohne Quellcode

  6. Axon 7 im Hands on

    Oneplus bekommt starke Konkurrenz

  7. Brexit

    Vodafone prüft Umzug des Konzernsitzes aus UK

  8. Patent

    Apple will Konzertaufnahmen verhindern

  9. id Software

    Doom bekommt die Waffen mittig

  10. Onlinehandel

    Amazon droht nach vier Rücksendungen mit Kontensperrung



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Zelda Breath of the Wild angespielt: Das Versprechen von 1986 wird eingelöst
Zelda Breath of the Wild angespielt
Das Versprechen von 1986 wird eingelöst

Wireless-HDMI im Test: Achtung Signalstörung!
Wireless-HDMI im Test
Achtung Signalstörung!
  1. Die Woche im Video E3, Oneplus Three und Apple ohne X

Rust: Ist die neue Programmiersprache besser?
Rust
Ist die neue Programmiersprache besser?
  1. Microsoft Plattformübergreifendes .Net Core erscheint in Version 1.0
  2. Oracle-Anwältin nach Niederlage "Google hat die GPL getötet"
  3. Java-Rechtsstreit Oracle verliert gegen Google

  1. Re: EU Austritt aber im EWR bleiben?

    choquecroute | 16:18

  2. Re: Es ist nur ein Patent mit potentiell üblen...

    AllDayPiano | 16:17

  3. Re: Jetzt erst?

    nicoledos | 16:16

  4. Re: Was für ein Quatsch

    ThaKilla | 16:16

  5. Re: Einfachere Lösung

    Cok3.Zer0 | 16:15


  1. 16:05

  2. 15:12

  3. 15:00

  4. 14:45

  5. 14:18

  6. 12:11

  7. 12:06

  8. 11:50


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel