Fast Corpus Search Engine สร้างขึ้นมาเพื่อคลังภาษา Tatar ที่เป็นลายลักษณ์อักษร
คุณสามารถลองได้ที่นี่
ซอร์สโค้ดสามารถดูได้ที่ https://github.com/mansayk/fastmorph
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.
คุณสามารถลองได้ที่นี่ มีตัวอย่างการค้นหาที่แตกต่างกันในคู่มือคลังข้อมูลของเรา หากคุณมีคำถามใด ๆ เกี่ยวกับการใช้ FastMorph ในโครงการของคุณโปรดติดต่อเราโดย [email protected]
นอกจากนี้เราขอให้คุณแจ้งให้เราทราบว่าใช้เครื่องมือค้นหานี้ที่ไหนและหากคุณไม่รังเกียจเราจะเผยแพร่ลิงก์ที่นี่ไปยังโครงการเหล่านั้น
ซอฟต์แวร์นี้มีการแจกจ่ายภายใต้ใบอนุญาตสาธารณะ GNU ทั่วไป v3.0
ค้นหาคำค้นหา:
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" - จำนวนประโยคสูงสุดที่จะส่งคืน
"last_pos" - "0" สำหรับการสืบค้นแรกหรือเพียงแค่ส่งคืนสตริงนี้เพื่อรับรายการประโยคถัดไป
คำเตือน! คุณควรทำให้เป็นมาตรฐานและตรวจสอบข้อมูลอินพุตก่อนที่จะส่งไปยัง FastMorph:
{
"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
}
อย่างที่คุณเห็นคำแต่ละคำที่ตรงกับคำค้นหาจะถูกส่งคืนในแท็ก HTML ต่อไปนี้:
<span id='found_word_0' class='found_word' title='(LEMMA) <TAG1><TAG2>'>FOUND_WORD</span>
ตัวอย่างเช่นคุณสามารถใช้ CSS เพื่อเน้น
คุณสามารถค้นหาสร้างตัวอย่างตารางได้ที่นี่
MySQL> เลือก * จาก MORPH6_MAIN_APERTIUM LIMIT 10;
| รหัสประจำตัว | รวมกัน | ประโยค | แหล่งที่มา |
|---|---|---|---|
| 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> เลือก * จาก morph6_united_apertium โดยที่ id> = 100 ขีด จำกัด 10;
| รหัสประจำตัว | ความพร้อม | Word_case | คำ | บทแทรก | แท็ก |
|---|---|---|---|---|---|
| 100 | 1 | 10,00084 | 599888 | 429156 | 2 |
| 101 | 60 | 10,00085 | 599890 | 429158 | 2 |
| 102 | 5 | 10,00086 | 599891 | 429159 | 2 |
| 103 | 2 | 10,00087 | 599892 | 429160 | 2 |
| 104 | 1 | 10,00088 | 599893 | 429161 | 2 |
| 105 | 10 | 10,00089 | 599894 | 429162 | 2 |
| 106 | 1 | 10,0008 | 218906 | 119768 | 2 |
| 107 | 1 | 10,00090 | 599895 | 429163 | 2 |
| 108 | 5 | 10,00091 | 599899 | 429167 | 2 |
| 109 | 1 | 10,00092 | 599901 | 429169 | 2 |
mysql> เลือก * จาก morph6_words_case_apertium โดยที่ id> 200000 ขีด จำกัด 10;
| รหัสประจำตัว | ความพร้อม | Word_case |
|---|---|---|
| 200001 | 4 | иарәсенәге |
| 200002 | 1 | иарәсенәме |
| 200003 | 3 | идарәсене |
| 200004 | 290 | идарәсенең |
| 200005 | 14 | идарәсеннәнә |
| 200006 | 1 | идарәсеның |
| 200007 | 79 | идарәсенә |
| 200008 | 1 | идарәснең |
| 200009 | 1 | иарәсәнең |
| 200010 | 1 | идарәханә |
mysql> เลือก * จาก morph6_words_apertium โดยที่ id> 100000 ขีด จำกัด 10;
| รหัสประจำตัว | ความพร้อม | คำ |
|---|---|---|
| 10,00011 | 975 | артистларны |
| 10,000002 | 7 | артистларныына |
| 10,000003 | 74 | артистларныа |
| 10,000004 | 1 | артистларныкы |
| 10,000005 | 1 | артистларныкыай |
| 10,00066 | 8 | артистларныкынан |
| 10,00077 | 1 | артистларныкынана |
| 10,0008 | 1 | артистларныкыча |
| 10,000009 | 1408 | артистларның |
| 100010 | 3 | артистларныңыңна |
mysql> เลือก * จาก morph6_lemmas_apertium โดยที่ ID> 300000 ขีด จำกัด 10;
| รหัสประจำตัว | ความพร้อม | บทแทรก |
|---|---|---|
| 300001 | 1 | иярчекек |
| 300002 | 130 | иярчеәр |
| 300003 | 8 | иярчеәргә |
| 300004 | 2 | иярчеәрәә |
| 300005 | 3 | иярчеәрән |
| 300006 | 9 | иярчеәре |
| 300007 | 2 | иярчеәрегез |
| 300008 | 2 | иярчеәрен |
| 300009 | 1 | иярчеәренең |
| 300010 | 12 | иярчеәрне |
mysql> เลือก * จาก morph6_tags_apertium โดยที่ ID> 11100 ขีด จำกัด 10;
| รหัสประจำตัว | ความพร้อม | การรวมกัน |
|---|---|---|
| 11101 | 4 | <ant>, <dat>, <f>, <frm>, <np>, <px2sg> |
| 11102 | 17141 | <ant>, <dat>, <f>, <np> |
| 11103 | 387 | <tain>, <dat>, <f>, <np>, <d> |
| 11104 | 1 | <tain>, <dat>, <f>, <np>, <pl>, <px1pl> |
| 11105 | 1 | <ant>, <dat>, <f>, <np>, <f>, <px1sg> |
| 11106 | 12 | <tain>, <dat>, <f>, <np>, <pl>, <px3sp> |
| 11107 | 1 | <tain>, <dat>, <f>, <np>, <pl>, <px> |
| 11108 | 40 | <ant>, <dat>, <f>, <np>, <px1pl> |
| 11109 | 101 | <ant>, <dat>, <f>, <np>, <px1sg> |
| 11110 | 41 | <tain>, <dat>, <f>, <np>, <px2sg> |
mysql> เลือก * จากแหล่งที่ Col1> 300 ขีด จำกัด 3;
| Col1 | COL2 | COL3 |
|---|---|---|
| 301 | "miras.belem.ru" (web -сайт) | miras.belem.ru |
| 302 | ааалиш кршеәр | หนังสือ |
| 303 | әәтхакимиятеәмҗирлеидарәорганарынанананыңныңныңныңныңныңмәмәм | tatarstan.ru |
หากคุณใช้แท็กเทียมของ Apertium ในการใส่คำอธิบายประกอบทางสัณฐานวิทยาของคลังข้อมูลคุณสามารถใช้สคริปต์ Python ของเราเพื่อสร้างตารางจากเอาต์พุตของ Apertium
ในการใช้ตัวแปลงนี้คุณควร:
cat bigfile.txt | apertium -n -d . tat-tagger | cg-proc dev/mansur.bin > bigfile_tagged.txt
ที่ Mansur.bin เป็นเพียงไฟล์ที่มีกฎเพิ่มเติมบางอย่าง คุณสามารถค้นหาได้ที่นี่
ด้วยเหตุนี้คุณควรได้รับไฟล์ที่มีประโยคที่มีคำอธิบายประกอบ:
^Мин/Мин<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>$
| รหัสประโยค | รหัสแหล่งที่มา |
|---|---|
| 1 | 1 |
| 2 | 1 |
| 3 | 1 |
| 4 | 1 |
| 5 | 1 |
| 6 | 1 |
| 7 | 1 |
| 8 | 1 |
| 9 | 1 |
| 10 | 1 |
และวางไว้ในไดเรกทอรีเดียวกันกับสคริปต์
3) เรียกใช้สคริปต์ Python ด้วยวิธีนี้:
./tat-tagger_to_ntables_v6.24.py tatcorpus2.sentences.apertium.tagged.txt
จะใช้เวลาค่อนข้างมากตามขนาดของคลังข้อมูลของคุณ
4) หากทุกอย่างเป็นไปด้วยดีคุณควรได้รับรายการไฟล์ใหม่ที่คุณต้องนำเข้าไปยังฐานข้อมูล MySQL:
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 - เครื่องมือค้นหา Fastmorph Corpus รุ่นที่ 5 ได้รับการปล่อยตัว ตอนนี้มันใช้หน่วยความจำน้อยลงประมาณ 2,5 เท่า (RAM)
18.11.2016 - เวอร์ชัน 4 ของ Fastmorph Corpus Search Engine เปิดตัว รายการการเปลี่ยนแปลง:
19.07.2016 - การปรับปรุงบางอย่างในเครื่องมือค้นหาทางสัณฐานวิทยาที่ซับซ้อน "Fastmorph":
13.06.2016 - ค้นหาส่วนตรงกลางของฟังก์ชันการทำงานของคำในโมดูล Fastmorph ตัวอย่างเช่นถ้าคุณพิมพ์ *әме *, คำเช่นярәменә, әйрәмен, үткәрәмен, өйәмеจะพบ ...
21.04.2016 - เนื่องจากการใช้งานในโมดูล "FastMorph" โมดูลการเพิ่มประสิทธิภาพโปรเซสเซอร์และการสนับสนุนแบบมัลติเธรดเราได้รับการค้นหาทางสัณฐานวิทยาที่ซับซ้อนในขณะนี้ทำงานได้เร็วขึ้นถึงห้าเท่า
03.04.2016 - คุณสมบัติของระบบการค้นหาทางสัณฐานวิทยาที่ซับซ้อนได้ขยายออกไปอย่างมีนัยสำคัญ คุณสามารถรับข้อมูลเพิ่มเติมเกี่ยวกับพวกเขาในคู่มือที่อัปเดตสูงสุด 3.0 และสูงกว่า
22.02.2016 - ฟังก์ชั่นการค้นหาทางสัณฐานวิทยาที่ซับซ้อนปรากฏในคลังข้อมูลของ Tatar ที่เป็นลายลักษณ์อักษรซึ่งคุณสามารถใช้ชุดค่าผสมที่แตกต่างกันของพารามิเตอร์เช่น WordForm, Lemma, Tags ไวยากรณ์, จุดเริ่มต้นและจุดสิ้นสุดของคำ, ระยะทางระหว่างพวกเขา ข้อมูลทางเทคนิค: เวอร์ชัน 1 ใช้ RAM ประมาณ 6 GB สำหรับคลังข้อมูลประกอบด้วยคำ 116 mln เกิดขึ้น ความเร็วค่อนข้างสูง