Domanda

Sto cercando di trovare un modo per passare attraverso un milione di documenti che sono documenti formali (per l'amor di argomenti, sono documenti di tesi). Non sono tutti standardizzati ma abbastanza vicini. Sono titoli, sezioni, paragrafi ecc. Esistono sottili differenze che potrebbero sorgere come in inglese, chiamiamo un titolo "titolo" ma in francese è "Titolo".

Quindi nella mia mente il modo migliore per farlo sarebbe quello di creare un EBNF con tutte le possibili combinazioni del titolo: = Titolo | Titolo per esempio.

Non sono troppo preoccupato di elaborare l'EBNF. La mia preoccupazione principale è come raggiungere l'analisi. Ho guardato Antlr, Oslo, ironia e una serie di altri, ma non ho la competenza in loro per giudicare se sarebbero stati perfetti per il mio compito.

Quindi, la mia domanda per il dotto tra di voi è

  1. Quale strumento DSL consiglieresti di analisi di documenti su questa scala?
  2. Quale strumento DSL è il più preciso nell'analisi ma perdonando la corrispondenza (cioè dobbiamo definire le regole per maiuscole e minuscole, che dire dei numeri contro i numeri romani e la lingua straniera (francese).
  3. Esiste un processo/algoritmo che non ho considerato che consiglieresti come alternativa a DSL? (La riscrittura da zero è un'opzione ma vorrei far funzionare qualcosa rapidamente).
  4. Qualcuno ha tentato di aggiungere apprendimento e intelligenza agli algoritmi per l'analisi attraverso DSL (pensa algoritmi genetici e reti neurali)?
  5. Utilizzeresti questi strumenti DSL in un ambiente di produzione?

La mia piattaforma di sviluppo preferita è C#. Lo parlo perché idealmente vorrei integrare lo strumento DSL nel codice in modo che possiamo lavorarci dalle app esistenti.

È stato utile?

Soluzione

Mi sono imbattuto in uno strumento chiamato Tinypg. Non è completamente ciò di cui avevo bisogno, ma avere il codice sorgente da guardare mi permetterà di generare ciò di cui ho bisogno.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top