h1. Wyznaczanie cech z tekstu (Fextor2)
Narzędzie wyznaczające wektor opisujący dany dokument, na podstawie wybranych cech tekstu. Wartościami poszczególnych wymiarów wektora są częstości wystąpień w dokumencie wybranych cech
Wejście - pliki w formacie "ccl":http://nlp.pwr.wroc.pl/redmine/projects/nlpservices-api/wiki/Ccl (w zależności od typu wywołania można podać nazwę katalogu lub nazwę pliku zip), uzyskane w wyniku przetworzenia tekstu przez "wcrft2":http://nlp.pwr.wroc.pl/redmine/projects/nlprest2/wiki/wcrft2 i (opcjonalnie) "liner2":http://www.nlp.pwr.wroc.pl/narzedzia-i-zasoby/narzedzia/liner2
Wyjście - pliki w formacie ccl wygenerowane dla poszczególnych analizowanych dokumentów. Pliki zawierają dane w notacji JSON, np.:
{"base": {"filologia": 1, "filozofia": 1, "utwór": 1, "idea": 1, "wszyscy": 1, "zapraszać": 1, "sesja": 1, "teoria": 1, "dzieło": 1, "zbadanie": 1, "przy": 1, "udział": 1, "to": 2, "jak": 3, ...}}
Wywołanie usługi
W wersji podstawowej (i przeważnie wystarczającej) usługę wywołujemy podając listę cech tekstu, które mają zostać uwzględnione w zestawieniu:
fextor({"features":"base orth subst_count"})
Wersja rozbudowana wywołania usługi pozwala na wskazanie filtrów, czyli list słów, które mają zostać pominięte w zestawieniu lub przeciwnie, słów, które mają zostać wyłącznie uwzględnione w zestawieniu, np.:
fextor({"features":"base orth subst_count", "filters": {"subst_count": {"type": "lemma_stoplist", "args": {"stoplist": "@plik", "excluding": true}}}})
Składnia:
sekcja filters służy do przekazania usłudze filtrów zliczanych cech. W powyższym przykładzie filtrowane będą wyłącznie rzeczowniki (subst_count), z wyłączeniem (filtrowanie negatywne) dowolnych form gramatycznych lematów (form podstawowych) podanych w postaci listy w pliku @plik.
Dla każdej zliczanej cechy można zdefiniować osobną listę filtrów:
..., "filters": {"subst_count": {"type": "lemma_stoplist", "args": {"stoplist": "lista wartości do odfiltrowania lub nazwa pliku, zawierającego te wartości", "excluding": true}}, "orth": {"type":"orth_stoplist", "args": {"stoplist": "@plik", "excluding": false}}})
Składnia opcji filters:
** excluding - przyjmuje wartości określające zakres filtrowania:
*** "false" - filtr dopuszcza do zliczania wyłącznie cechy zgodne ze stoplistą
*** "true" - filtr dopuszcza do zliczania wyłącznie cechy spoza stoplisty
Cechy tekstów do wyznaczenia wektora - są to cechy (klasy fleksyjne) generowane przez "wcrft2":http://nlp.pwr.wroc.pl/redmine/projects/nlprest2/wiki/wcrft2, zgodne z notacją NKJP ("zestaw znaczników NKJP":http://nkjp.pl/poliqarp/help/plse2.html#x3-30002.1).
Lista najważniejszych cech, które rozpoznaje fextor:
(pełna lista tagów NKJP dostępna jest tu: "pełna lista":http://nlp.pwr.wroc.pl/redmine/projects/nlprest2/wiki/tagi_NKJP)
Cechy gramatyczne:
base - liczba wystąpień poszczególnych lematów w dokumencie
orth - liczba wystąpień poszczególnych słów w dokumencie (każda forma gramatyczna słowa zliczana jest osobno, tworząc niezależną cechę)
W przypadku wątpliwości - bardziej miarodajne rezultaty (np. przy grupowaniu tekstów) otrzymujemy na podstawie cech base.
verb_count - liczba wystąpień czasowników w dokumencie (uwzględnianie są wszystkie formy, w jakich może w tekście wystąpić czasownik: fin, aglt, praet, impt, imps, inf, pcon, pant, ger, pact, ppas; +: winien; bedzie)
verb12 - liczba wystąpień poszczególnych czasowników w pierwszej lub drugiej osobie w dokumencie
subst_count - liczba wystąpień rzeczowników w dokumencie
noun_count - liczba wystąpień rzeczowników w dokumencie (uwzględnione są wszystkie formy rzeczownikowe z tagsetu NKJP: subst, depr, ppron12, ppron3)
adj_count - liczba wystąpień przymiotników w dokumencie
all_adj_count - liczba wystąpień przymiotników w dokumencie (uwzględnione są wszystkie formy przymiotnikowe z tagsetu NKJP: adj, adja, adjp, adjc)
adv_count - liczba wystąpień przysłówków w dokumencie
ppron12_count - liczba wystąpień zaimków osobowych dla 1 i 2 (ja, tobie, my, wy) osoby w dokumencie
ppron3_count - liczba wystąpień zaimków osobowych dla 3 osoby w dokumencie
bigrams - liczba wystąpień bigramów (ciągi dwóch klas fleksyjnych, np.: subst_conj, ger_subst, qub_subst) w dokumencie
trigrams - liczba wystąpień trigramów (ciągi trzech klas fleksyjnych, np.: pred_fin_qub, pred_subst_adj, subst_prep_adj) w dokumencie
Nazwy własne:
Cechy statystyczne:
Cechy dodatkowe - istnieje możliwość wprowadzenia własnych zestawów cech, które mają zostać wyodrębnione, należy w tym celu skontaktować się z: webserwisy ( at ) clarin-pl.eu - operację taką warto podjąć, jeśli nie uda się odpowiednio skonstruować polecenia uruchomienia usługi w wersji rozbudowanej oraz jeśli zestaw nietypowych cech będzie wykorzystywany stosunkowo często. Generalnie opcja filters jest bardziej elastyczna i daje większe możliwości konfiguracji wyznaczania cech.
Obecnie dostępny jest jeden zestaw nietypowych cech do wyodrębnienia: