Fast Corpus -Suchmaschine, die ursprünglich für den Korpus der schriftlichen tatarischen Sprache hergestellt wurde.
Sie können es hier versuchen.
Der Quellcode ist unter https://github.com/mansayk/fastmorph verfügbar.
Query:
Word 1: китап
Number of occurences: 32209
Query processing time: 0,4 sec.
Query:
Word 1 (case sensitive, distance to the next word up to 3 words): Китап
Word 2 (if in brackets, then it is lemma): (бир)
Number of occurences: 15
Query processing time: 0,4 sec.
Quite heavy query:
Word 1 (word begins with "б" letter, distance range to the next word is from 1 to 10): б*
Word 2 (pronoun, word ends with "ң", distance range to the next word is from 1 to 10): <prn>*ң
Word 3 (lemma "кил", word ends with "р"): (кил)*р
Number of occurences: 135210
Query processing time: 0,8 sec.
Very heavy query:
Word 1 (word ends with "ы", distance range to the next word is from 1 to 100): *ы
Word 2 (word ends with "а", distance range to the next word is from 1 to 100): *а
Word 3 (word ends with "м", distance range to the next word is from 1 to 100): *м
Word 4 (word ends with "с", distance range to the next word is from 1 to 100): *с
Word 5 (word ends with "ь", distance range to the next word is from 1 to 100): *ь
Word 6 (word ends with "е"): *е
Number of occurences: 135210
Query processing time: 1,4 sec.
Sie können es hier versuchen. In unserem Korpushandbuch gibt es verschiedene Suchbeispiele. Wenn Sie Fragen zur Verwendung von Fastmorph in Ihren Projekten haben, kontaktieren Sie uns bitte unter [email protected].
Wir bitten Sie auch, uns mitzuteilen, wo diese Suchmaschine verwendet wird, und wenn Sie nichts dagegen haben, werden wir hier Links zu diesen Projekten veröffentlichen.
Diese Software wird unter GNU General Public Lizenz v3.0 verteilt.
Suchanfrage:
Schematical view: {<adj>}(0) 1-5 {ке*<n>}(1) 1-1 {(кил)}(0) 1-1 {}(0) 1-1 {}(0) 1-1 {}(0)
Detailed:
Word 1 (distance range to the next word is from 1 to 5, adjective): <adj>
Word 2 (case sensitive, begins with "ке", noun): ке*<n>
Word 3: (lemma "кил"):(кил)
Word 4:
Word 5:
Word 6:
{
"word": [
"",
"",
"",
"",
"",
""
],
"lemma": [
"",
"",
"кил",
"",
"",
""
],
"tags": [
"<adj>",
"<n>",
"",
"",
"",
""
],
"wildmatch": [
"",
"ке*",
"",
"",
"",
""
],
"case": [
0,
1,
0,
0,
0,
0
],
"dist_from": [
1,
1,
1,
1,
1
],
"dist_to": [
5,
1,
1,
1,
1
],
"return": 100,
"last_pos": "0"
}
"Return" - Höchste Anzahl von Sätzen zur Rückgabe.
"Last_pos" - "0" für die erste Abfrage oder zurück zurückgegeben, um diese Zeichenfolge zurückzugeben, um die nächste Liste der Sätze zu erhalten.
Warnung! Sie sollten die Eingabedaten normalisieren und überprüfen, bevor Sie sie an Fastmorph weitergeben:
{
"example": [
{
"id": 15853,
"source": ""2013 Универсиадасы блогы" (web-сайт)",
"source_type": "kazan2013.ru",
"sentence": "Универсиада кебек зур проектның бер өлеше булу өчен, Казанга Россиянең төрле
төбәкләреннән һәм Дөньяның
<span id='found_word_0' class='found_word' title='(төрле) <adj>'>төрле</span>
илләреннән бик күп
<span id='found_word_1' class='found_word' title='(кеше) <n>,<nom>,<sg>'>кеше</span>
<span id='found_word_2' class='found_word' title='(кил) <ifi>,<iv>,<p3>,<sg>,<v>'>килде</span>."
},
{
"id": -1
}
],
"last_pos": "892447x39311905x75980782x114356633",
"found_all": 1359
}
Wie Sie sehen können, wird jedes Wort, das mit der Suchabfrage übereinstimmt, in den folgenden HTML -Tags zurückgegeben:
<span id='found_word_0' class='found_word' title='(LEMMA) <TAG1><TAG2>'>FOUND_WORD</span>
So können Sie beispielsweise CSS verwenden, um sie hervorzuheben.
Hier finden Sie Tabellenbeispiele erstellen.
MySQL> Wählen Sie * aus Morph6_main_apertium limit 10;
| Ausweis | vereinigt | Satz | Quelle |
|---|---|---|---|
| 0 | 1594501 | 1 | 1 |
| 1 | 761564 | 1 | 1 |
| 2 | 787834 | 1 | 1 |
| 3 | 1505641 | 1 | 1 |
| 4 | 420024 | 1 | 1 |
| 5 | 764201 | 1 | 1 |
| 6 | 1003674 | 1 | 1 |
| 7 | 1003851 | 1 | 1 |
| 8 | 764201 | 1 | 1 |
| 9 | 1057551 | 1 | 1 |
MySQL> SELECT * von Morph6_united_apertium wobei ID> = 100 Limit 10;
| Ausweis | Freq | Word_Case | Wort | Lemma | Tags |
|---|---|---|---|---|---|
| 100 | 1 | 1000084 | 599888 | 429156 | 2 |
| 101 | 60 | 1000085 | 599890 | 429158 | 2 |
| 102 | 5 | 1000086 | 599891 | 429159 | 2 |
| 103 | 2 | 1000087 | 599892 | 429160 | 2 |
| 104 | 1 | 1000088 | 599893 | 429161 | 2 |
| 105 | 10 | 1000089 | 599894 | 429162 | 2 |
| 106 | 1 | 100008 | 164606 | 119768 | 2 |
| 107 | 1 | 1000090 | 599895 | 429163 | 2 |
| 108 | 5 | 1000091 | 599899 | 429167 | 2 |
| 109 | 1 | 1000092 | 599901 | 429169 | 2 |
MySQL> Select * aus Morph6_words_case_apertium wobei ID> 200000 Limit 10;
| Ausweis | Freq | Word_Case |
|---|---|---|
| 200001 | 4 | Assiziges |
| 200002 | 1 | Assizig |
| 200003 | 3 | Assi |
| 200004 | 290 | Assin |
| 200005 | 14 | Идарә еннән |
| 200006 | 1 | Идарәсеның |
| 200007 | 79 | Идарәсенә |
| 200008 | 1 | Идарә нkunft ң |
| 200009 | 1 | Идарәәәнең |
| 200010 | 1 | Идарәханә |
MySQL> Select * aus Morph6_Words_apertium wobei ID> 100000 Limit 10;
| Ausweis | Freq | Wort |
|---|---|---|
| 100001 | 975 | артистларны |
| 100002 | 7 | артистларны ынына |
| 100003 | 74 | артистларны да |
| 100004 | 1 | артистларныкы |
| 100005 | 1 | артисsprechen |
| 100006 | 8 | артистларныкыннан |
| 100007 | 1 | артистларныкыннан да |
| 100008 | 1 | аwor |
| 100009 | 1408 | артистларның |
| 100010 | 3 | артистларның ынына |
MySQL> SELECT * Aus Morph6_Lemmas_apertium wobei ID> 300000 Limit 10;
| Ausweis | Freq | Lemma |
|---|---|---|
| 300001 | 1 | assi |
| 300002 | 130 | assine |
| 300003 | 8 | assi ияч челәwor ә |
| 300004 | 2 | assi ияч челәрдә |
| 300005 | 3 | assi ияч челәрдән |
| 300006 | 9 | assine |
| 300007 | 2 | assine assifelte |
| 300008 | 2 | assi |
| 300009 | 1 | assine иячеләренең |
| 300010 | 12 | assine |
MySQL> SELECT * aus Morph6_Tags_apertium wobei ID> 11100 Limit 10;
| Ausweis | Freq | Kombinationen |
|---|---|---|
| 11101 | 4 | <ANT>, <DAT>, <f>, <Frm>, <np>, <px2sg> |
| 11102 | 17141 | <ANT>, <DAT>, <f>, <np> |
| 11103 | 387 | <ANT>, <DAT>, <f>, <np>, <pl> |
| 11104 | 1 | <ANT>, <DAT>, <f>, <np>, <pl>, <px1pl> |
| 11105 | 1 | <ANT>, <DAT>, <f>, <np>, <pl>, <px1sg> |
| 11106 | 12 | <ANT>, <DAT>, <f>, <np>, <pl>, <px3sp> |
| 11107 | 1 | <ANT>, <DAT>, <f>, <np>, <pl>, <px> |
| 11108 | 40 | <ANT>, <DAT>, <f>, <np>, <px1pl> |
| 11109 | 101 | <ANT>, <DAT>, <f>, <np>, <px1sg> |
| 11110 | 41 | <ANT>, <DAT>, <f>, <np>, <px2sg> |
MySQL> Auswählen * aus Quellen, wobei COL1> 300 Limit 3;
| col1 | col2 | col3 |
|---|---|---|
| 301 | "Miras.belem.ru" (Web-сайй) | Miras.belem.ru |
| 302 | Адула алиш. Кршеләр | Buch |
| 303 | " | Tatarstan.ru |
Wenn Sie Apertiums Tagger verwenden, um den Korpus morphologisch zu kommentieren, können Sie unser Python -Skript verwenden, um Tabellen aus der Ausgabe von Apertium zu generieren.
Um diesen Konverter zu verwenden, sollten Sie:
cat bigfile.txt | apertium -n -d . tat-tagger | cg-proc dev/mansur.bin > bigfile_tagged.txt
Wo Mansur.bin nur eine Datei mit einigen zusätzlichen Regeln ist. Sie können es hier finden.
Im Ergebnis sollten Sie Datei erhalten, die kommentierte Sätze enthalten:
^Мин/Мин<prn><pers><p1><sg><nom>$ ^үземне/үз<prn><ref><px1sg><acc>$ ^белә/бел<v><tv><prc_impf>$ ^башлаганнан/башла<vaux><ger_past><abl>$ ^бирле/бирле<post>$ ^түбән/түбән<adj>$ ^очка/оч<n><sg><dat>$ – ^ерак/ерак<adj>$ ^бабакайларга/бабакай<n><pl><dat>$ ^төшәргә/төш<v><iv><inf>$ ^ярата/ярат<v><tv><pres><p3><sg>$ ^идем/и<cop><ifi><p1><sg>$^./.<sent>$
| Satz id | Quell -ID |
|---|---|
| 1 | 1 |
| 2 | 1 |
| 3 | 1 |
| 4 | 1 |
| 5 | 1 |
| 6 | 1 |
| 7 | 1 |
| 8 | 1 |
| 9 | 1 |
| 10 | 1 |
Und legen Sie es mit Skript in das gleiche Verzeichnis.
3) Führen Sie das Python -Skript auf diese Weise aus:
./tat-tagger_to_ntables_v6.24.py tatcorpus2.sentences.apertium.tagged.txt
Nach der Größe Ihres Korpus wird es ziemlich viel Zeit dauern.
4) Wenn alles gut lief, sollten Sie eine Liste neuer Dateien erhalten, die Sie in die MySQL -Datenbank importieren müssen:
tatcorpus2.sentences.apertium.tagged.txt.lemmas.output.txt
tatcorpus2.sentences.apertium.tagged.txt.main.output.txt
tatcorpus2.sentences.apertium.tagged.txt.tags-uniq.output.txt.sorted.txt
tatcorpus2.sentences.apertium.tagged.txt.tags.output.txt
tatcorpus2.sentences.apertium.tagged.txt.united.output.txt
tatcorpus2.sentences.apertium.tagged.txt.words.output.txt
tatcorpus2.sentences.apertium.tagged.txt.words_case.output.txt
27.02.2017 - Die 5. Version der Fastmorph Corpus -Suchmaschine wird veröffentlicht. Jetzt konsumiert es etwa das 2,5 -mal weniger Speicher (RAM).
18.11.2016 - Die 4. Version der Fastmorph Corpus -Suchmaschine wird veröffentlicht. Liste der Änderungen:
19.07.2016 - Einige Verbesserungen der komplexen morphologischen Suchmaschine "Fastmorph":
13.06.2016 - Die Suche nach dem mittleren Teil einer Wortfunktionalität wurde im Fastmorph -Modul hinzugefügt. Wenn Sie beispielsweise *ә daher *eingeben, wie яwor wie я я & әkunft, әйрәә & ү үтәрәә & өй өйдәә & өйә & өйә өйә & өйә wird gefunden ...
21.04.2016 - Aufgrund der Implementierung im "Fastmorph" -Modul einige Prozessoroptimierungen und Multithreading -Unterstützung haben wir erreicht, dass eine komplexe morphologische Suche jetzt bis zu fünfmal schneller funktioniert.
03.04.2016 - Die Merkmale des komplexen morphologischen Suchsystems wurden erheblich erweitert. Sie können weitere Informationen dazu in den Leitfäden erhalten, die bis zu 3.0 und höhere Version aktualisiert werden.
22.02.2016 - Die komplexe morphologische Suchfunktion erschien im Korpus von geschriebenem Tatar, in dem Sie verschiedene Kombinationen von Parametern wie Wortform, Lemma, grammatikalische Tags, Beginn und Ende der Wörter, Entfernungen, Distanzen verwenden können. Technische Info: Version 1 verbraucht etwa 6 GB RAM für den Korpus, bestehend aus 116 MLN -Wörtern. Seine Geschwindigkeit ist ziemlich hoch.