2009-03-18 45 views
20

Ho bisogno di un semplice generatore di frasi inglese casuale. Ho bisogno di popolarlo con le mie parole, ma deve essere in grado di formulare frasi più lunghe che almeno seguono le regole dell'inglese, anche se non hanno senso.Semplice generatore di frasi inglesi casuali

Mi aspetto che ci siano milioni là fuori, quindi piuttosto che re-inventare la ruota, spero che tu sappia una fonte per uno, o una risorsa che mi darà abbastanza informazioni che non ho per dare la caccia alle mie arrugginite abilità inglesi.

risposta

4

Potrebbe essere possibile utilizzare/modificare parte di CS Paper Generator.

+0

Mi sono divertito molto con questo, funziona più o meno come PolyGen –

4

So che questa è una vecchia questione, ma come ho scoperto tramite Google penso che valga la pena menzionare qualcosa come Context Free Grammars oltre alle catene di Markov.

La mia comprensione delle catene di Markov è che creano il "prossimo" elemento in modo probabilistico solo in base a ciò che è l'elemento "corrente". Forse mi sbaglio, ma non vedo come ciò assicurerebbe che il risultato segua le regole grammaticali.

Per esempio, di solito vedo le catene di Markov suggerite come un modo di creare parole "suono inglese". Se crei una catena di Markov usando lettere da un set di dati di parole inglesi, l'output sarebbe una parola che suona inglese, ma non sarebbe necessariamente una parola reale. Credo che lo stesso valga per le frasi: puoi generare qualcosa che può sembrare ok, ma potrebbe non essere una frase grammaticalmente corretta.

Le grammatiche libere di contesto (o forse anche grammatiche regolari?) Potrebbero essere un candidato migliore, poiché generano frasi in base a un set di regole definito. E sarebbe facile popolarlo con le tue parole, come richiede la domanda originale. Il rovescio della medaglia è che è necessario definire queste regole da soli, piuttosto che fare affidamento su un set di dati. È passato molto tempo da quando ho usato una grammatica per generare una frase inglese, quindi non ricordo quanto fosse difficile ottenere risposte buone/varie.