Jak rozpoznać zdanie pytające?

Zaczęty przez michal, Czerwiec 16, 2016, 19:07:06

Poprzedni wątek - Następny wątek

michal

Takie pytanie mogłoby paść na lekcji języka polskiego w szkole podstawowej. Ale za moich czasów nie padło, stąd też mam pewne zaległości...
Zupełnie poważnie - muszę napisać algorytm, który rozpozna tryb podanego zdania i wcale nie mam pewności, że na jego końcu pojawi się pytajnik.

Póki co, mam następujące reguły dla zdania pytającego


  • W pierwszej części zdania pojawia się zaimek pytajny (Czego się spodziewałeś)
  • Na końcu zdania występuje pytajnik (Widziałeś jak grali?)
  • występuje czasownik + "może" (Wiesz może coś na temat kontuzji Szczęsnego)
  • występuje czasownik + negacja na końcu zdania (Masz mnie za półgłówka, nie)


Proszę o pomoc w temacie.
  •  

Towarzysz Mauzer

Ej, ale to dosyć poważne zadanie z programowania języka naturalnego, więc warto się zastanowić. No więc problemem jest tu, że w polskim - i w sumie w mnóstwie innych języków - możliwe są pytania zaznaczane tylko intonacją. Na piśmie jedyną szansą dla ich rozpoznania jest wtedy tylko pytajnik.

Można byłoby szukać szerokich, dyskursywnych/tekstologicznych kontekstów (dialogi, pytania retoryczne w początkach przemówień, wywiady, FAQs itd.), gdzie pojawiają się pytania. Pewnie trzeba by tu użyć metod uczenia się komputerowego, ale pytanie jak przygotować dane do nauki, żeby było to skuteczne.

A, no i  z banałów dodam tylko, że mamy nie tylko pytajne zaimki, ale i partykuły (czy!) ;)
Skrzydła miłości, mocy, o wielki, Twardy Jerze,
Rozpostrzyj ponad nami, ogrzej i przyjmij nas. -Mrkalj, Palinodia o twardym jerze
***
VIVAT CAROLVS GVSTAVVS REX POLONIÆ
  •  

Obcy

TM ma całkowitą rację. Nie może istnieć algorytm rozpoznający na 100% zdania pytającego. Poza tym algorytm jeszcze musi być odporny na pomyłkę ze zdaniem podrzędnym z zaimkiem względnym, o co będzie tu bez kontekstu trochę ciężko. Jedynie co nie co mógłby pomóc "uczący się" algorytm, ale dalej nie gwarantuje to, że program "złapie" tyle zdań pytających, ile faktycznie jest (czyli ani za mało, ani za dużo).
  •  

michal

#3
Cytat: Towarzysz Mauzer w Czerwiec 16, 2016, 20:13:40

A, no i  z banałów dodam tylko, że mamy nie tylko pytajne zaimki, ale i partykuły (czy!) ;)

O, widzisz. Zapomniałbym o partykułach pytajnych, dzięki :)

Cytat: Obcy w Czerwiec 16, 2016, 20:19:20
TM ma całkowitą rację. Nie może istnieć algorytm rozpoznający na 100% zdania pytającego.

Uczenie maszynowe nie wchodzi w grę. Potrzebuję tu sztywnych rozwiązań i jestem świadomy, że nie osiągnę 100% skuteczności, ale muszę mieć jakiś fundament, punkt wyjścia :)

PS. TO nie jest  "zadania domowe" , one skończyły się u mnie jakieś 8 lat temu. To element mojego autorskiego projektu
  •  

Wedyowisz

#4
Polski ma też tendencję do inwersji w pewnych sytuacjach (ma ktoś? vs ktoś ma, są tu? vs tu są).

Można by szukać zdań stojących przed zdaniami zaczynającymi się od tak/nie/owszem/może... względnie par zdań z powtarzającym się czasownikiem w odpowiedniej osobie (masz? mam.) choć wyeliminować fałszywie pozytywne i negatywne wyniki na pewno nie byłoby łatwo.
стань — обернися, глянь — задивися
  •  

Obcy

#5
Cytat: Wedyowisz w Czerwiec 16, 2016, 20:28:27
choć wyeliminować fałszywie pozytywne i negatywne wyniki na pewno nie byłoby łatwo.

No właśnie o tym mówię, a pewnie autorowi chodzi o uniknięcie pomyłek. Zwłaszcza byłby problem z pytaniami retorycznymi – bo tutaj po odpowiedzi nie znajdziemy rozwiązania, a prędzej po czasownikach wprowadzających typu: spytał się, ale znowu tu uwaga na pomyłki ze zdaniami względnymi, np. Spytał się: Gdzie jest moja miłość? vs Spytał się, gdzie jest jego miłość.. Tutaj zdania poza interpunkcją różnią się tylko zaimkiem dzierżawczym. Inny przykład: Tam, gdzie jest wolność vs Gdzie jest wolność – tylko brak słowa "tam" sygnalizuje zdanie pytające. Co do są tu to niestety może też chodzić o sens: są tu, czyli nie w innym miejscu.
  •