rutokenizer - ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΡΠΎΠΊΠ΅Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΡΡΠΊΠΎΡΠ·ΡΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ° Ρ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡΠΈΠ±ΠΎΠΊ
ΠΠ°ΠΊΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π½Π°Π±ΠΎΡ ΠΊΠ»Π°ΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΌΠ΅ΡΡ Π²ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ· ΡΠ΅ΠΊΡΡΠ° (ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ) ΠΈ ΡΠ°Π·Π±ΠΈΠ²Π°ΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΠ»ΠΎΠ²Π° (ΡΠΎΠΊΠ΅Π½ΠΈΠ·Π°ΡΠΈΡ) Ρ ΡΡΠ΅ΡΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎΡΠ»ΠΎΠ²Π½ΡΡ Π΅Π΄ΠΈΠ½ΠΈΡ ΡΠ΅ΠΊΡΡΠ° ΡΠΈΠΏΠ° "ΠΈΠ·-Π·Π°" ΠΈΠ»ΠΈ "ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ".
ΠΠΎΠ΄ ΡΠ°ΡΡΡΠΈΡΠ°Π½ Π½Π° Π±ΡΡΡΡΠΎΠ΅ ΠΏΡΠΎΡΠΎΡΠΈΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ NLP ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π΄ΠΎΠΏΡΡΠΊΠ°Ρ ΠΏΡΠΎΡΡΡΡ ΠΊΠ°ΡΡΠΎΠΌΠΈΠ·Π°ΡΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΡΠΎΠΊΠ΅Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°. Π Π°Π·ΡΠΌΠ΅Π΅ΡΡΡ, ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠΊΠ΅Π½ΠΈΠ·Π°ΡΠΎΡΠ° ΠΌΠ΅Π½ΡΡΠ΅, ΡΠ΅ΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π½Π° C++.
ΠΠΎΠ΄ Π½Π°ΠΏΠΈΡΠ°Π½ Π΄Π»Ρ ΠΠΈΡΠΎΠ½Π° 2ΠΉ ΠΈ 3ΠΉ Π²Π΅ΡΠΊΠΈ, ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Windows ΠΈ Linux.
ΠΠ°Π±Π΅ΡΠΈΡΠ΅ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ sudo:
pip install git+https://github.com/Koziev/rutokenizer
Π ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ Π²Ρ ΠΎΠ΄ΡΡ "Π±Π°ΡΠ°ΡΠ΅ΠΉΠΊΠΈ" - ΡΠ°ΠΉΠ»Ρ Π΄Π°Π½Π½ΡΡ Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΎΡΠ»ΠΎΠ²Π½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΡΡ ΠΈΠ· ΠΡΠ°ΠΌΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π‘Π»ΠΎΠ²Π°ΡΡ.
ΠΠ»Ρ ΡΠΎΠΊΠ΅Π½ΠΈΠ·Π°ΡΠΈΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° rutokenizer.Tokenizer, Π²ΡΠ·Π²Π°ΡΡ Ρ Π½Π΅Π³ΠΎ ΠΌΠ΅ΡΠΎΠ΄ load() Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ»ΠΎΠ²Π°ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠΉ Π΄Π»Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Ρ ΠΌΠ½ΠΎΠ³ΠΎΡΠ»ΠΎΠ²Π½ΡΠΌΠΈ Π΅Π΄ΠΈΠ½ΠΈΡΠ°ΠΌΠΈ. ΠΠ°Π»Π΅Π΅ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ tokenize, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Ρ Π΅ΠΌΡ ΡΠ½ΠΈΠΊΠΎΠ΄Π½ΡΡ ΡΡΡΠΎΠΊΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Ρ ΡΠΏΠΈΡΠΎΠΊ ΡΠ»ΠΎΠ².
ΠΡΠ»ΠΈ ΠΊΡΠΎΠΌΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΡΠ»ΠΎΠ² Π½ΡΠΆΠ½Ρ ΠΈΡ ΠΏΠΎΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅, ΡΠΎ Π½Π°Π΄ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ tokenize2. ΠΠ½ Π²Π΅ΡΠ½Π΅Ρ ΠΊΠΎΡΡΠ΅ΠΆΠΈ (ΡΠ»ΠΎΠ²ΠΎ, ΠΏΠΎΠ·ΠΈΡΠΈΡ_Π½Π°ΡΠ°Π»Π°, ΠΏΠΎΠ·ΠΈΡΠΈΡ_ΠΊΠΎΠ½ΡΠ°+1).
Π’ΠΎΠΊΠ΅Π½ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ:
import rutokenizer
t = rutokenizer.Tokenizer()
t.load()
t.tokenize(u'Π―-ΡΠΎ ΠΈΠ·-Π·Π° ΡΠ³Π»Π° Π²ΡΡΠ΅Π».')
for t in t.tokenize(u'Π―-ΡΠΎ ΠΈΠ·-Π·Π° ΡΠ³Π»Π° Π²ΡΡΠ΅Π».'):
print(u'{}'.format(t)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΡ:
Π―
-
ΡΠΎ
ΠΈΠ·-Π·Π°
ΡΠ³Π»Π°
Π²ΡΡΠ΅Π»
.