11

Czy istnieje sposób, aby znaleźć wszystkie zdania podrzędne zdania, które są nadal znaczące i zawierać co najmniej jeden temat, czasownik i predykat/obiekt?Znajdowanie znaczących zdań podrzędnych od zdania

Na przykład, jeśli mamy zdanie typu "Mam zamiar zrobić seminarium na temat NLP na SXSW w Austin w przyszłym miesiącu". Możemy wydobyć następujące znaczące podpunkty tego zdania: "Zrobię seminarium", "Zorganizuję seminarium na temat NLP", "Zorganizuję seminarium na temat NLP na SXSW", " Mam zamiar zrobić seminarium na SXSW "," Mam zamiar zrobić seminarium w Austin "," Mam zamiar zrobić seminarium na temat NLP w przyszłym miesiącu ", itp.

Należy pamiętać, że nie ma wydedukowane zdania tutaj (np. "W przyszłym miesiącu odbędzie się seminarium NLP na SXSW". Chociaż to prawda, nie potrzebujemy tego jako części tego problemu.). Wszystkie generowane zdania są ściśle częścią danego zdania.

Jak możemy podejść do rozwiązania tego problemu? Myślałem o stworzeniu adnotowanych danych treningowych, które mają zestaw legalnych pod zdań dla każdego zdania w zbiorze danych treningowych. A następnie napisz kilka nadzorowanych algorytmów uczenia się, aby wygenerować model.

Jestem całkiem nowy w NLP i uczeniu maszynowym, więc byłoby wspaniale, gdybyście mogli zaproponować kilka sposobów rozwiązania tego problemu.

+0

w przykładzie, czy też chcą trywialne subsentences jak "jadę" i "jestem"? A może "Jadę do Austin w przyszłym miesiącu"? –

+0

@Adrian McCarthy: "Jadę do Austin w przyszłym miesiącu" wpadnie w "wyrok wydany", jak opisano w pytaniu.Nie są one tutaj pożądane, ponieważ implikują semantyczne potraktowanie zdania wejściowego, zgodnie z którym, jak rozumiem, chodzi o uwzględnienie/wykluczenie różnych kombinacji kwalifikowanych zdań przyimkowych z oryginalnego tekstu. – mjv

+1

@Adrian McCarthy: podniosłeś fajny punkt. Podtytuł "Jadę do Austin" pada nieco na granicy między wydedukowanym zdaniem a "surowym" podpunktem. Ale ponieważ wymóg jest tylko do podsekcji, które są ściśle określone w zdaniu, pomijamy to zdanie. –

Odpowiedz

6

Istnieje artykuł zatytułowany "Using Discourse Commitments to Recognize Textual Entailment" autorstwa Hickla i wsp., Który omawia ekstrakcję zobowiązań dyskursu (pod zdań). Artykuł zawiera opis algorytmu, który na pewnym poziomie działa na regułach. Wykorzystali go do RTE, a na wyjściu mogą być minimalne poziomy dedukcji. Uproszczenie tekstu może być pokrewnym obszarem do obejrzenia.

+0

Dzięki za link do papieru. Wydaje się to interesujące i związane z pytaniem, które zadałem. –

2

Jednym z podejść byłoby narzędzie do analizowania składni, takie jak PCFG. Próbowanie po prostu wytrenowania modelu wykrywającego "podświadomość" może cierpieć z powodu niespójności danych. Ponadto mam wątpliwość, czy można napisać naprawdę czystą i jednoznaczną definicję subsentencji, a jeśli nie można jej zdefiniować, nie można uzyskać adnotacji, aby ją opatrzyć komentarzem.

10

Można użyć parsera zależności dostarczonego przez Stanford CoreNLP. Zwinięte wyjście twojego zdania będzie wyglądało jak poniżej.

nsubj(going-3, I-1) 
xsubj(do-5, I-1) 
aux(going-3, am-2) 
root(ROOT-0, going-3) 
aux(do-5, to-4) 
xcomp(going-3, do-5) 
det(seminar-7, a-6) 
dobj(do-5, seminar-7) 
prep_on(seminar-7, NLP-9) 
prep_at(do-5, -11) 
prep_in(do-5, Austin-13) 
amod(month-15, next-14) 
tmod(do-5, month-15) 

Ostatnie 5 wyników zdania jest opcjonalne. Możesz usunąć jedną lub więcej części, które nie są niezbędne dla twojego zdania.
Większość tych opcjonalnych części należy do przyimków i modyfikatorów np. prep_in, prep_do, advmod, tmod, itp.. Zobacz Stanford Dependency Manual.

Na przykład, jeśli usunąć wszystkie modyfikator z wyjścia, dostaniesz

mam zamiar zrobić seminarium na temat NLP na SXSW w Austin.

+0

Ale to nie daje mi listy * wszystkich * możliwych zdań. Mam na myśli to, że może być ukryty w tym wyniku zależności, ale potrzebuję systematycznego sposobu na wyodrębnienie tych zdań. –

+3

Oczywiście, że nie. Ale możesz wyodrębnić wszystkie możliwe zdania. Zacznij od listowania ** wszystkie opcjonalne części **. Następnie spróbuj wszystkich kombinacji, aby usunąć te opcjonalne części. – Khairul

+0

Czy istnieje gwarancja, że ​​* zawsze * generuje zdania składniowe i semantyczne? –