mirror of
https://github.com/explosion/spaCy.git
synced 2025-01-12 18:26:30 +03:00
Refactored language data structure
This commit is contained in:
parent
366b3f8685
commit
6add156075
|
@ -1,6 +1,6 @@
|
|||
from __future__ import unicode_literals, print_function
|
||||
|
||||
from . import language_data
|
||||
from .language_data import *
|
||||
from ..attrs import LANG
|
||||
from ..language import Language
|
||||
|
||||
|
@ -9,16 +9,14 @@ class Hungarian(Language):
|
|||
lang = 'hu'
|
||||
|
||||
class Defaults(Language.Defaults):
|
||||
tokenizer_exceptions = dict(language_data.TOKENIZER_EXCEPTIONS)
|
||||
tokenizer_exceptions = dict(TOKENIZER_EXCEPTIONS)
|
||||
lex_attr_getters = dict(Language.Defaults.lex_attr_getters)
|
||||
lex_attr_getters[LANG] = lambda text: 'hu'
|
||||
|
||||
prefixes = tuple(language_data.TOKENIZER_PREFIXES)
|
||||
prefixes = tuple(TOKENIZER_PREFIXES)
|
||||
|
||||
suffixes = tuple(language_data.TOKENIZER_SUFFIXES)
|
||||
suffixes = tuple(TOKENIZER_SUFFIXES)
|
||||
|
||||
infixes = tuple(language_data.TOKENIZER_INFIXES)
|
||||
infixes = tuple(TOKENIZER_INFIXES)
|
||||
|
||||
tag_map = dict(language_data.TAG_MAP)
|
||||
|
||||
stop_words = set(language_data.STOP_WORDS)
|
||||
stop_words = set(STOP_WORDS)
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,225 +0,0 @@
|
|||
dj.
|
||||
co.
|
||||
ltd.
|
||||
corp.
|
||||
plc.
|
||||
inc.
|
||||
cos.
|
||||
a.
|
||||
an.
|
||||
á.
|
||||
ált.
|
||||
ápr.
|
||||
aug.
|
||||
b.
|
||||
Be.
|
||||
BE.
|
||||
bek.
|
||||
Bek.
|
||||
BEK.
|
||||
bp.
|
||||
br.
|
||||
bt.
|
||||
btk.
|
||||
Btk.
|
||||
BTK.
|
||||
ca.
|
||||
cs.
|
||||
csüt.
|
||||
ctv.
|
||||
d.
|
||||
de.
|
||||
dec.
|
||||
dk.
|
||||
dny.
|
||||
dr.
|
||||
du.
|
||||
dzs.
|
||||
e.
|
||||
é.
|
||||
ék.
|
||||
em.
|
||||
ény.
|
||||
érk.
|
||||
ev.
|
||||
évf.
|
||||
f.
|
||||
febr.
|
||||
fej.
|
||||
felv.
|
||||
ford.
|
||||
fszla.
|
||||
fszt.
|
||||
g.
|
||||
gimn.
|
||||
gr.
|
||||
gy.
|
||||
h.
|
||||
hg.
|
||||
hiv.
|
||||
honv.
|
||||
hrsz.
|
||||
hsz.
|
||||
htb.
|
||||
í.
|
||||
i.e.
|
||||
i.sz.
|
||||
id.
|
||||
ifj.
|
||||
ig.
|
||||
igh.
|
||||
ill.
|
||||
ind.
|
||||
isk.
|
||||
izr.
|
||||
j.
|
||||
jan.
|
||||
jegyz.
|
||||
júl.
|
||||
jún.
|
||||
k.
|
||||
kb.
|
||||
ker.
|
||||
Ker.
|
||||
KER.
|
||||
KFT.
|
||||
Kft.
|
||||
kft.
|
||||
kht.
|
||||
kk.
|
||||
kkt.
|
||||
köv.
|
||||
kp.
|
||||
Kr.
|
||||
Kr.e.
|
||||
Kr.u.
|
||||
krt.
|
||||
Krt.
|
||||
KRT.
|
||||
l.
|
||||
luth.
|
||||
m.
|
||||
máj.
|
||||
márc.
|
||||
mb.
|
||||
megh.
|
||||
min.
|
||||
mlle.
|
||||
mme.
|
||||
mr.
|
||||
mrs.
|
||||
ms.
|
||||
n.
|
||||
nb.
|
||||
nov.
|
||||
ny.
|
||||
nyrt.
|
||||
nyug.
|
||||
o.
|
||||
ó.
|
||||
okl.
|
||||
okt.
|
||||
olv.
|
||||
ov.
|
||||
ovh.
|
||||
ö.
|
||||
ő.
|
||||
özv.
|
||||
p.
|
||||
pf.
|
||||
pl.
|
||||
pp.
|
||||
ptk.
|
||||
pu.
|
||||
q.
|
||||
r.
|
||||
ref.
|
||||
rkp.
|
||||
röv.
|
||||
rt.
|
||||
s.
|
||||
sgt.
|
||||
st.
|
||||
stb.
|
||||
sz.
|
||||
szept.
|
||||
szerk.
|
||||
szjt.
|
||||
szt.
|
||||
szolg.
|
||||
Szolg.
|
||||
SZOLG.
|
||||
szül.
|
||||
t.
|
||||
tel.
|
||||
Tel.
|
||||
TEL.
|
||||
tc.
|
||||
ti.
|
||||
tkp.
|
||||
törv.
|
||||
tvr.
|
||||
ty.
|
||||
u.
|
||||
ú.
|
||||
ua.
|
||||
ui.
|
||||
úm.
|
||||
ún.
|
||||
uo.
|
||||
ü.
|
||||
ű.
|
||||
vö.
|
||||
vsz.
|
||||
w.
|
||||
y.
|
||||
z.
|
||||
zrt.
|
||||
zs.
|
||||
|
||||
dr.
|
||||
Dr.
|
||||
DR.
|
||||
csc.
|
||||
CSC.
|
||||
Csc.
|
||||
PHD.
|
||||
phd.
|
||||
PhD.
|
||||
PH.D.
|
||||
ph.d.
|
||||
Ph.D
|
||||
ph.d
|
||||
m.sc.
|
||||
M.Sc.
|
||||
M.SC.
|
||||
MSC.
|
||||
msc.
|
||||
MSc.
|
||||
m.a.
|
||||
M.A.
|
||||
MA.
|
||||
ma.
|
||||
m.s.
|
||||
M.S.
|
||||
b.a.
|
||||
B.Sc.
|
||||
B.CS.
|
||||
b.sc.
|
||||
bsc.
|
||||
BSC.
|
||||
BSc.
|
||||
b.s.
|
||||
B.S.
|
||||
s.b.
|
||||
S.B.
|
||||
rer.
|
||||
Rer.
|
||||
nat.
|
||||
Nat.
|
||||
Dipl.
|
||||
dipl.
|
||||
Inform.
|
||||
inform.
|
||||
Proc.
|
||||
proc.
|
|
@ -1,158 +0,0 @@
|
|||
# Ez a huntoken eredeti roviditeses fajlja, utf8-ban (M.I.)
|
||||
|
||||
# Az sbdabbrev adatállománya, amely fordítás során kerül feldolgozásra
|
||||
# tartalma a gyakoribb rövidítések, amelyek pontra végzõdnek
|
||||
# (pont nélkül is megadhatunk ,,rövidítéseket'', pl. a ,,PhotoMaxGO!''
|
||||
# beírásával a PhotoMaxGO! nem lesz mondatzáró, még ha utána szóközzel,
|
||||
# vagy újsorral elválasztva nagybetûs szó következik.)
|
||||
#
|
||||
# A kisbetûvel kezdõdõ rövidítések nagy kezdõbetûvel is felismerésre kerülnek.
|
||||
#
|
||||
# L. még A magyar helyesírás szabályai 282. pontja
|
||||
#
|
||||
# Amelyek gyakrabban mondatzárók, mint pl. a ,,stb.'', nem kerülnek befordításra
|
||||
# stb.
|
||||
# fej.
|
||||
# De.
|
||||
a.
|
||||
c.
|
||||
á. é.
|
||||
f. é.
|
||||
m. é.
|
||||
# áll.
|
||||
ált.
|
||||
m.
|
||||
a. m.
|
||||
i. m.
|
||||
ápr.
|
||||
aug.
|
||||
bek.
|
||||
Bp.
|
||||
br.
|
||||
bt.
|
||||
B. ú. é. k.
|
||||
Btk.
|
||||
Ctv.
|
||||
csüt.
|
||||
dec.
|
||||
dk.
|
||||
dny.
|
||||
# de.
|
||||
dr.
|
||||
du.
|
||||
ék.
|
||||
em.
|
||||
ény.
|
||||
érk.
|
||||
ev.
|
||||
évf.
|
||||
f.
|
||||
febr.
|
||||
felv.
|
||||
ford.
|
||||
fszla.
|
||||
fszt.
|
||||
gimn.
|
||||
gr.
|
||||
h.
|
||||
hg.
|
||||
hiv.
|
||||
honv.
|
||||
id.
|
||||
ifj.
|
||||
ig.
|
||||
igh.
|
||||
ill.
|
||||
ind.
|
||||
isk.
|
||||
i. sz.
|
||||
izr.
|
||||
jan.
|
||||
jegyz.
|
||||
júl.
|
||||
jún.
|
||||
kb.
|
||||
ker.
|
||||
kft.
|
||||
kk.
|
||||
K. m. f.
|
||||
i. sz.
|
||||
Kr. e.
|
||||
Kr. u.
|
||||
i. e.
|
||||
köv.
|
||||
Kr.
|
||||
krt.
|
||||
# máj.
|
||||
márc.
|
||||
mb.
|
||||
megh.
|
||||
Mlle.
|
||||
Mme.
|
||||
Mr.
|
||||
Mrs.
|
||||
Ms.
|
||||
NB.
|
||||
nov.
|
||||
ny.
|
||||
nyug.
|
||||
o.
|
||||
okl.
|
||||
okt.
|
||||
olv.
|
||||
özv.
|
||||
p.
|
||||
pl.
|
||||
Ptk.
|
||||
pu.
|
||||
ref.
|
||||
rkp.
|
||||
r. k.
|
||||
s. k.
|
||||
sz.
|
||||
szerk.
|
||||
rt.
|
||||
sgt.
|
||||
St.
|
||||
szept.
|
||||
szerk.
|
||||
Szt.
|
||||
# szül.
|
||||
t.
|
||||
tc.
|
||||
törv.
|
||||
tvr.
|
||||
u.
|
||||
ua.
|
||||
ui.
|
||||
úm.
|
||||
ún.
|
||||
uo.
|
||||
v.
|
||||
vö.
|
||||
vsz.
|
||||
Cs.
|
||||
Dzs.
|
||||
Gy.
|
||||
Ny.
|
||||
Sz.
|
||||
Ty.
|
||||
Zs.
|
||||
Szjt.
|
||||
pf.
|
||||
Pp.
|
||||
kht.
|
||||
kkt.
|
||||
cca.
|
||||
gr.
|
||||
hsz.
|
||||
htb.
|
||||
luth.
|
||||
megh.
|
||||
ov.
|
||||
ovh.
|
||||
röv.
|
||||
tc.
|
||||
tkp.
|
||||
hrsz.
|
||||
kp.
|
|
@ -1,253 +1,24 @@
|
|||
# encoding: utf8
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import os
|
||||
import re
|
||||
|
||||
import six
|
||||
|
||||
from spacy.language_data import strings_to_exc, update_exc
|
||||
from .punctuations import *
|
||||
from .stop_words import STOP_WORDS
|
||||
from .tokenizer_exceptions import ABBREVIATIONS
|
||||
from .tokenizer_exceptions import OTHER_EXC
|
||||
from .. import language_data as base
|
||||
|
||||
def _load_txt_data(*file_paths):
|
||||
for path in file_paths:
|
||||
with open(path) as f:
|
||||
for line in f.readlines():
|
||||
if not line.strip().startswith("#"):
|
||||
yield line.strip()
|
||||
|
||||
|
||||
_MODULE_PATH = os.path.dirname(__file__)
|
||||
_ABBREVIATIONS_ORIG_PATH = _MODULE_PATH + "/data/tokenizer/abbreviations_orig-hu.txt"
|
||||
_ABBREVIATIONS_NYTUD_PATH = _MODULE_PATH + "/data/tokenizer/abbreviations_nytud-hu.txt"
|
||||
_STOPWORDS_PATH = _MODULE_PATH + "/data/stopwords.txt"
|
||||
|
||||
STOP_WORDS = set(_load_txt_data(_STOPWORDS_PATH))
|
||||
STOP_WORDS = set(STOP_WORDS)
|
||||
TOKENIZER_EXCEPTIONS = strings_to_exc(base.EMOTICONS)
|
||||
TOKENIZER_PREFIXES = base.TOKENIZER_PREFIXES + TOKENIZER_PREFIXES
|
||||
TOKENIZER_SUFFIXES = TOKENIZER_SUFFIXES
|
||||
TOKENIZER_INFIXES = TOKENIZER_INFIXES
|
||||
|
||||
HYPHENS = [six.unichr(cp) for cp in [173, 8211, 8212, 8213, 8722, 9472]]
|
||||
|
||||
TOKENIZER_PREFIXES = r'''+ , " ( [ { * < $ £ “ ' `` ` # US$ C$ A$ a- ‘ .... ...'''.split()
|
||||
update_exc(TOKENIZER_EXCEPTIONS, strings_to_exc(OTHER_EXC))
|
||||
update_exc(TOKENIZER_EXCEPTIONS, strings_to_exc(ABBREVIATIONS))
|
||||
|
||||
TOKENIZER_SUFFIXES = r'''
|
||||
,
|
||||
\"
|
||||
\)
|
||||
\]
|
||||
\}
|
||||
\*
|
||||
\!
|
||||
\?
|
||||
%
|
||||
\$
|
||||
>
|
||||
:
|
||||
;
|
||||
'
|
||||
”
|
||||
“
|
||||
«
|
||||
_
|
||||
''
|
||||
’
|
||||
‘
|
||||
°
|
||||
€
|
||||
\.\.
|
||||
\.\.\.
|
||||
\.\.\.\.
|
||||
(?<=[a-züóőúéáűí)\]"'´«‘’%\)²“”+-])\.
|
||||
(?<=[a-züóőúéáűí)])-e
|
||||
\-\-
|
||||
´
|
||||
(?<=[0-9])\.
|
||||
(?<=[0-9])km²
|
||||
(?<=[0-9])m²
|
||||
(?<=[0-9])cm²
|
||||
(?<=[0-9])mm²
|
||||
(?<=[0-9])km³
|
||||
(?<=[0-9])m³
|
||||
(?<=[0-9])cm³
|
||||
(?<=[0-9])mm³
|
||||
(?<=[0-9])ha
|
||||
(?<=[0-9])km
|
||||
(?<=[0-9])m
|
||||
(?<=[0-9])cm
|
||||
(?<=[0-9])mm
|
||||
(?<=[0-9])µm
|
||||
(?<=[0-9])nm
|
||||
(?<=[0-9])yd
|
||||
(?<=[0-9])in
|
||||
(?<=[0-9])ft
|
||||
(?<=[0-9])kg
|
||||
(?<=[0-9])g
|
||||
(?<=[0-9])mg
|
||||
(?<=[0-9])µg
|
||||
(?<=[0-9])t
|
||||
(?<=[0-9])lb
|
||||
(?<=[0-9])oz
|
||||
(?<=[0-9])m/s
|
||||
(?<=[0-9])km/h
|
||||
(?<=[0-9])mph
|
||||
(?<=[0-9])°C
|
||||
(?<=[0-9])°K
|
||||
(?<=[0-9])°F
|
||||
(?<=[0-9])hPa
|
||||
(?<=[0-9])Pa
|
||||
(?<=[0-9])mbar
|
||||
(?<=[0-9])mb
|
||||
(?<=[0-9])T
|
||||
(?<=[0-9])G
|
||||
(?<=[0-9])M
|
||||
(?<=[0-9])K
|
||||
(?<=[0-9])kb
|
||||
(?<=[0-9])\+
|
||||
'''.strip().split('\n')
|
||||
|
||||
TOKENIZER_INFIXES = (r'''\.\.+ (?<=[a-züóőúéáűí])\.(?=[A-ZÜÓŐÚÉÁŰÍ]) (?<=[a-zA-ZüóőúéáűíÜÓŐÚÉÁŰÍ0-9])"(?=[\-a-zA-ZüóőúéáűíÜÓŐÚÉÁŰÍ]) '''
|
||||
r'''(?<=[a-zA-ZüóőúéáűíÜÓŐÚÉÁŰÍ])--(?=[a-zA-ZüóőúéáűíÜÓŐÚÉÁŰÍ]) (?<=[0-9])[+\-\*/^](?=[0-9]) '''
|
||||
r'''(?<=[a-zA-ZüóőúéáűíÜÓŐÚÉÁŰÍ]),(?=[a-zA-ZüóőúéáűíÜÓŐÚÉÁŰÍ])''').split()
|
||||
|
||||
ABBREVIATIONS = {abbrev: [{"ORTH": abbrev}] for abbrev in
|
||||
_load_txt_data(_ABBREVIATIONS_ORIG_PATH, _ABBREVIATIONS_NYTUD_PATH)}
|
||||
|
||||
TOKENIZER_EXCEPTIONS = {
|
||||
"-e": [{"F": "-e"}],
|
||||
|
||||
"vs.": [{"F": "vs."}],
|
||||
|
||||
"''": [{"F": "''"}],
|
||||
"—": [{"F": "—", "L": "--", "pos": "$,"}],
|
||||
|
||||
":)": [{"F": ":)"}],
|
||||
"<3": [{"F": "<3"}],
|
||||
";)": [{"F": ";)"}],
|
||||
"(:": [{"F": "(:"}],
|
||||
":(": [{"F": ":("}],
|
||||
"-_-": [{"F": "-_-"}],
|
||||
"=)": [{"F": "=)"}],
|
||||
":/": [{"F": ":/"}],
|
||||
":>": [{"F": ":>"}],
|
||||
";-)": [{"F": ";-)"}],
|
||||
":Y": [{"F": ":Y"}],
|
||||
":P": [{"F": ":P"}],
|
||||
":-P": [{"F": ":-P"}],
|
||||
":3": [{"F": ":3"}],
|
||||
"=3": [{"F": "=3"}],
|
||||
"xD": [{"F": "xD"}],
|
||||
"^_^": [{"F": "^_^"}],
|
||||
"=]": [{"F": "=]"}],
|
||||
"=D": [{"F": "=D"}],
|
||||
"<333": [{"F": "<333"}],
|
||||
":))": [{"F": ":))"}],
|
||||
":0": [{"F": ":0"}],
|
||||
"-__-": [{"F": "-__-"}],
|
||||
"xDD": [{"F": "xDD"}],
|
||||
"o_o": [{"F": "o_o"}],
|
||||
"o_O": [{"F": "o_O"}],
|
||||
"V_V": [{"F": "V_V"}],
|
||||
"=[[": [{"F": "=[["}],
|
||||
"<33": [{"F": "<33"}],
|
||||
";p": [{"F": ";p"}],
|
||||
";D": [{"F": ";D"}],
|
||||
";-p": [{"F": ";-p"}],
|
||||
";(": [{"F": ";("}],
|
||||
":p": [{"F": ":p"}],
|
||||
":]": [{"F": ":]"}],
|
||||
":O": [{"F": ":O"}],
|
||||
":-/": [{"F": ":-/"}],
|
||||
":-)": [{"F": ":-)"}],
|
||||
":(((": [{"F": ":((("}],
|
||||
":((": [{"F": ":(("}],
|
||||
":')": [{"F": ":')"}],
|
||||
"(^_^)": [{"F": "(^_^)"}],
|
||||
"(=": [{"F": "(="}],
|
||||
"o.O": [{"F": "o.O"}],
|
||||
"\")": [{"F": "\")"}],
|
||||
|
||||
"a.": [{"F": "a."}],
|
||||
"b.": [{"F": "b."}],
|
||||
"c.": [{"F": "c."}],
|
||||
"d.": [{"F": "d."}],
|
||||
"e.": [{"F": "e."}],
|
||||
"f.": [{"F": "f."}],
|
||||
"g.": [{"F": "g."}],
|
||||
"h.": [{"F": "h."}],
|
||||
"i.": [{"F": "i."}],
|
||||
"j.": [{"F": "j."}],
|
||||
"k.": [{"F": "k."}],
|
||||
"l.": [{"F": "l."}],
|
||||
"m.": [{"F": "m."}],
|
||||
"n.": [{"F": "n."}],
|
||||
"o.": [{"F": "o."}],
|
||||
"p.": [{"F": "p."}],
|
||||
"q.": [{"F": "q."}],
|
||||
"r.": [{"F": "r."}],
|
||||
"s.": [{"F": "s."}],
|
||||
"t.": [{"F": "t."}],
|
||||
"u.": [{"F": "u."}],
|
||||
"v.": [{"F": "v."}],
|
||||
"w.": [{"F": "w."}],
|
||||
"x.": [{"F": "x."}],
|
||||
"y.": [{"F": "y."}],
|
||||
"z.": [{"F": "z."}],
|
||||
}
|
||||
|
||||
TOKENIZER_EXCEPTIONS.update(ABBREVIATIONS)
|
||||
|
||||
TAG_MAP = {
|
||||
"$(": {"pos": "PUNCT", "PunctType": "Brck"},
|
||||
"$,": {"pos": "PUNCT", "PunctType": "Comm"},
|
||||
"$.": {"pos": "PUNCT", "PunctType": "Peri"},
|
||||
"ADJA": {"pos": "ADJ"},
|
||||
"ADJD": {"pos": "ADJ", "Variant": "Short"},
|
||||
"ADV": {"pos": "ADV"},
|
||||
"APPO": {"pos": "ADP", "AdpType": "Post"},
|
||||
"APPR": {"pos": "ADP", "AdpType": "Prep"},
|
||||
"APPRART": {"pos": "ADP", "AdpType": "Prep", "PronType": "Art"},
|
||||
"APZR": {"pos": "ADP", "AdpType": "Circ"},
|
||||
"ART": {"pos": "DET", "PronType": "Art"},
|
||||
"CARD": {"pos": "NUM", "NumType": "Card"},
|
||||
"FM": {"pos": "X", "Foreign": "Yes"},
|
||||
"ITJ": {"pos": "INTJ"},
|
||||
"KOKOM": {"pos": "CONJ", "ConjType": "Comp"},
|
||||
"KON": {"pos": "CONJ"},
|
||||
"KOUI": {"pos": "SCONJ"},
|
||||
"KOUS": {"pos": "SCONJ"},
|
||||
"NE": {"pos": "PROPN"},
|
||||
"NNE": {"pos": "PROPN"},
|
||||
"NN": {"pos": "NOUN"},
|
||||
"PAV": {"pos": "ADV", "PronType": "Dem"},
|
||||
"PROAV": {"pos": "ADV", "PronType": "Dem"},
|
||||
"PDAT": {"pos": "DET", "PronType": "Dem"},
|
||||
"PDS": {"pos": "PRON", "PronType": "Dem"},
|
||||
"PIAT": {"pos": "DET", "PronType": "Ind,Neg,Tot"},
|
||||
"PIDAT": {"pos": "DET", "AdjType": "Pdt", "PronType": "Ind,Neg,Tot"},
|
||||
"PIS": {"pos": "PRON", "PronType": "Ind,Neg,Tot"},
|
||||
"PPER": {"pos": "PRON", "PronType": "Prs"},
|
||||
"PPOSAT": {"pos": "DET", "Poss": "Yes", "PronType": "Prs"},
|
||||
"PPOSS": {"pos": "PRON", "Poss": "Yes", "PronType": "Prs"},
|
||||
"PRELAT": {"pos": "DET", "PronType": "Rel"},
|
||||
"PRELS": {"pos": "PRON", "PronType": "Rel"},
|
||||
"PRF": {"pos": "PRON", "PronType": "Prs", "Reflex": "Yes"},
|
||||
"PTKA": {"pos": "PART"},
|
||||
"PTKANT": {"pos": "PART", "PartType": "Res"},
|
||||
"PTKNEG": {"pos": "PART", "Negative": "Neg"},
|
||||
"PTKVZ": {"pos": "PART", "PartType": "Vbp"},
|
||||
"PTKZU": {"pos": "PART", "PartType": "Inf"},
|
||||
"PWAT": {"pos": "DET", "PronType": "Int"},
|
||||
"PWAV": {"pos": "ADV", "PronType": "Int"},
|
||||
"PWS": {"pos": "PRON", "PronType": "Int"},
|
||||
"TRUNC": {"pos": "X", "Hyph": "Yes"},
|
||||
"VAFIN": {"pos": "AUX", "Mood": "Ind", "VerbForm": "Fin"},
|
||||
"VAIMP": {"pos": "AUX", "Mood": "Imp", "VerbForm": "Fin"},
|
||||
"VAINF": {"pos": "AUX", "VerbForm": "Inf"},
|
||||
"VAPP": {"pos": "AUX", "Aspect": "Perf", "VerbForm": "Part"},
|
||||
"VMFIN": {"pos": "VERB", "Mood": "Ind", "VerbForm": "Fin", "VerbType": "Mod"},
|
||||
"VMINF": {"pos": "VERB", "VerbForm": "Inf", "VerbType": "Mod"},
|
||||
"VMPP": {"pos": "VERB", "Aspect": "Perf", "VerbForm": "Part", "VerbType": "Mod"},
|
||||
"VVFIN": {"pos": "VERB", "Mood": "Ind", "VerbForm": "Fin"},
|
||||
"VVIMP": {"pos": "VERB", "Mood": "Imp", "VerbForm": "Fin"},
|
||||
"VVINF": {"pos": "VERB", "VerbForm": "Inf"},
|
||||
"VVIZU": {"pos": "VERB", "VerbForm": "Inf"},
|
||||
"VVPP": {"pos": "VERB", "Aspect": "Perf", "VerbForm": "Part"},
|
||||
"XY": {"pos": "X"},
|
||||
"SP": {"pos": "SPACE"}
|
||||
}
|
||||
__all__ = ["TOKENIZER_EXCEPTIONS", "STOP_WORDS", "TOKENIZER_PREFIXES", "TOKENIZER_SUFFIXES", "TOKENIZER_INFIXES"]
|
||||
|
|
91
spacy/hu/punctuations.py
Normal file
91
spacy/hu/punctuations.py
Normal file
|
@ -0,0 +1,91 @@
|
|||
TOKENIZER_PREFIXES = r'''
|
||||
+
|
||||
'''.strip().split('\n')
|
||||
|
||||
TOKENIZER_SUFFIXES = r'''
|
||||
,
|
||||
\"
|
||||
\)
|
||||
\]
|
||||
\}
|
||||
\*
|
||||
\!
|
||||
\?
|
||||
%
|
||||
\$
|
||||
>
|
||||
:
|
||||
;
|
||||
'
|
||||
”
|
||||
“
|
||||
«
|
||||
_
|
||||
''
|
||||
’
|
||||
‘
|
||||
°
|
||||
€
|
||||
\.\.
|
||||
\.\.\.
|
||||
\.\.\.\.
|
||||
(?<=[a-züóőúéáűí)\]"'´«‘’%\)²“”+-])\.
|
||||
(?<=[a-züóőúéáűí)])-e
|
||||
\-\-
|
||||
´
|
||||
(?<=[0-9])\+
|
||||
(?<=[a-z0-9)\]”"'%\)])\.
|
||||
(?<=[0-9])\.
|
||||
(?<=[0-9])km²
|
||||
(?<=[0-9])m²
|
||||
(?<=[0-9])cm²
|
||||
(?<=[0-9])mm²
|
||||
(?<=[0-9])km³
|
||||
(?<=[0-9])m³
|
||||
(?<=[0-9])cm³
|
||||
(?<=[0-9])mm³
|
||||
(?<=[0-9])ha
|
||||
(?<=[0-9])km
|
||||
(?<=[0-9])m
|
||||
(?<=[0-9])cm
|
||||
(?<=[0-9])mm
|
||||
(?<=[0-9])µm
|
||||
(?<=[0-9])nm
|
||||
(?<=[0-9])yd
|
||||
(?<=[0-9])in
|
||||
(?<=[0-9])ft
|
||||
(?<=[0-9])kg
|
||||
(?<=[0-9])g
|
||||
(?<=[0-9])mg
|
||||
(?<=[0-9])µg
|
||||
(?<=[0-9])t
|
||||
(?<=[0-9])lb
|
||||
(?<=[0-9])oz
|
||||
(?<=[0-9])m/s
|
||||
(?<=[0-9])km/h
|
||||
(?<=[0-9])mph
|
||||
(?<=[0-9])°C
|
||||
(?<=[0-9])°K
|
||||
(?<=[0-9])°F
|
||||
(?<=[0-9])hPa
|
||||
(?<=[0-9])Pa
|
||||
(?<=[0-9])mbar
|
||||
(?<=[0-9])mb
|
||||
(?<=[0-9])T
|
||||
(?<=[0-9])G
|
||||
(?<=[0-9])M
|
||||
(?<=[0-9])K
|
||||
(?<=[0-9])kb
|
||||
'''.strip().split('\n')
|
||||
|
||||
TOKENIZER_INFIXES = r'''
|
||||
…
|
||||
\.\.+
|
||||
(?<=[a-züóőúéáűí])\.(?=[A-ZÜÓŐÚÉÁŰÍ])
|
||||
(?<=[a-zA-ZüóőúéáűíÜÓŐÚÉÁŰÍ0-9])"(?=[\-a-zA-ZüóőúéáűíÜÓŐÚÉÁŰÍ])
|
||||
(?<=[a-zA-ZüóőúéáűíÜÓŐÚÉÁŰÍ])--(?=[a-zA-ZüóőúéáűíÜÓŐÚÉÁŰÍ])
|
||||
(?<=[0-9])[+\-\*/^](?=[0-9])
|
||||
(?<=[a-zA-ZüóőúéáűíÜÓŐÚÉÁŰÍ]),(?=[a-zA-ZüóőúéáűíÜÓŐÚÉÁŰÍ])
|
||||
'''.strip().split('\n')
|
||||
|
||||
__all__ = ["TOKENIZER_PREFIXES", "TOKENIZER_SUFFIXES", "TOKENIZER_INFIXES"]
|
|
@ -1,4 +1,9 @@
|
|||
a
|
||||
# encoding: utf8
|
||||
from __future__ import unicode_literals
|
||||
|
||||
|
||||
STOP_WORDS = set("""
|
||||
a
|
||||
abban
|
||||
ahhoz
|
||||
ahogy
|
||||
|
@ -217,3 +222,4 @@ voltunk
|
|||
újra
|
||||
ő
|
||||
őket
|
||||
""".split())
|
|
@ -1,64 +1,160 @@
|
|||
# nytudos, roviditeseket tartalmazo fajl utf8-ra konvertalva (M.I.)
|
||||
from __future__ import unicode_literals
|
||||
|
||||
Mlle.
|
||||
Mme.
|
||||
Ms.
|
||||
a.
|
||||
ac.
|
||||
a.C.
|
||||
adj.
|
||||
adm.
|
||||
á. é.
|
||||
ag.
|
||||
agit.
|
||||
ABBREVIATIONS = """
|
||||
AkH.
|
||||
alez.
|
||||
alk.
|
||||
ált.
|
||||
altbgy.
|
||||
a. m.
|
||||
ang.
|
||||
Aö.
|
||||
ápr.
|
||||
arch.
|
||||
ásv.
|
||||
at.
|
||||
aug.
|
||||
b.
|
||||
B.CS.
|
||||
B.S.
|
||||
B.Sc.
|
||||
B.ú.é.k.
|
||||
BE.
|
||||
BEK.
|
||||
BSC.
|
||||
BSc.
|
||||
BTK.
|
||||
Be.
|
||||
bek.
|
||||
belker.
|
||||
berend.
|
||||
Bek.
|
||||
Bfok.
|
||||
biz.
|
||||
bizt.
|
||||
Bk.
|
||||
bo.
|
||||
Bp.
|
||||
br.
|
||||
bt.
|
||||
Btét.
|
||||
Btk.
|
||||
Btke.
|
||||
B. ú. é. k.
|
||||
B.ú.é.k.
|
||||
c.
|
||||
Btét.
|
||||
CSC.
|
||||
Cal.
|
||||
cc.
|
||||
cca.
|
||||
cf.
|
||||
cif.
|
||||
Co.
|
||||
Colo.
|
||||
Comp.
|
||||
Copr.
|
||||
Ctv.
|
||||
cs.
|
||||
Cs.
|
||||
Csc.
|
||||
Csop.
|
||||
cső.
|
||||
csüt.
|
||||
Ctv.
|
||||
D.
|
||||
DR.
|
||||
Dipl.
|
||||
Dr.
|
||||
Dsz.
|
||||
Dzs.
|
||||
Fla.
|
||||
Főszerk.
|
||||
GM.
|
||||
Gy.
|
||||
HKsz.
|
||||
Hmvh.
|
||||
Inform.
|
||||
K.m.f.
|
||||
KER.
|
||||
KFT.
|
||||
KRT.
|
||||
Ker.
|
||||
Kft.
|
||||
Kong.
|
||||
Korm.
|
||||
Kr.
|
||||
Kr.e.
|
||||
Kr.u.
|
||||
Krt.
|
||||
M.A.
|
||||
M.S.
|
||||
M.SC.
|
||||
M.Sc.
|
||||
MA.
|
||||
MSC.
|
||||
MSc.
|
||||
Mass.
|
||||
Mlle.
|
||||
Mme.
|
||||
Mo.
|
||||
Mr.
|
||||
Mrs.
|
||||
Ms.
|
||||
Mt.
|
||||
N.N.
|
||||
NB.
|
||||
NBr.
|
||||
Nat.
|
||||
Nr.
|
||||
Ny.
|
||||
Nyh.
|
||||
Nyr.
|
||||
Op.
|
||||
P.H.
|
||||
P.S.
|
||||
PH.D.
|
||||
PHD.
|
||||
PROF.
|
||||
Ph.D
|
||||
PhD.
|
||||
Pp.
|
||||
Proc.
|
||||
Prof.
|
||||
Ptk.
|
||||
Rer.
|
||||
S.B.
|
||||
SZOLG.
|
||||
Salg.
|
||||
St.
|
||||
Sz.
|
||||
Szfv.
|
||||
Szjt.
|
||||
Szolg.
|
||||
Szt.
|
||||
Sztv.
|
||||
TEL.
|
||||
Tel.
|
||||
Ty.
|
||||
Tyr.
|
||||
Ui.
|
||||
Vcs.
|
||||
Vhr.
|
||||
X.Y.
|
||||
Zs.
|
||||
a.
|
||||
a.C.
|
||||
ac.
|
||||
adj.
|
||||
adm.
|
||||
ag.
|
||||
agit.
|
||||
alez.
|
||||
alk.
|
||||
altbgy.
|
||||
an.
|
||||
ang.
|
||||
arch.
|
||||
at.
|
||||
aug.
|
||||
b.
|
||||
b.a.
|
||||
b.s.
|
||||
b.sc.
|
||||
bek.
|
||||
belker.
|
||||
berend.
|
||||
biz.
|
||||
bizt.
|
||||
bo.
|
||||
bp.
|
||||
br.
|
||||
bsc.
|
||||
bt.
|
||||
btk.
|
||||
c.
|
||||
ca.
|
||||
cc.
|
||||
cca.
|
||||
cf.
|
||||
cif.
|
||||
co.
|
||||
corp.
|
||||
cos.
|
||||
cs.
|
||||
csc.
|
||||
csüt.
|
||||
cső.
|
||||
ctv.
|
||||
d.
|
||||
dbj.
|
||||
dd.
|
||||
ddr.
|
||||
|
@ -66,58 +162,45 @@ de.
|
|||
dec.
|
||||
dikt.
|
||||
dipl.
|
||||
dj.
|
||||
dk.
|
||||
dny.
|
||||
dolg.
|
||||
dr.
|
||||
Dr.
|
||||
DR.
|
||||
Dsz.
|
||||
du.
|
||||
Dzs.
|
||||
é.
|
||||
dzs.
|
||||
e.
|
||||
ea.
|
||||
ed.
|
||||
eff.
|
||||
egyh.
|
||||
ék.
|
||||
ell.
|
||||
elv.
|
||||
elvt.
|
||||
em.
|
||||
eng.
|
||||
eny.
|
||||
ény.
|
||||
érk.
|
||||
Ész.
|
||||
et.
|
||||
etc.
|
||||
eü.
|
||||
ev.
|
||||
évf.
|
||||
ezr.
|
||||
eü.
|
||||
f.
|
||||
fam.
|
||||
f. é.
|
||||
f.h.
|
||||
f.é.
|
||||
fam.
|
||||
febr.
|
||||
felügy.
|
||||
fej.
|
||||
felv.
|
||||
felügy.
|
||||
ff.
|
||||
ffi.
|
||||
f.h.
|
||||
fhdgy.
|
||||
fil.
|
||||
fiz.
|
||||
Fla.
|
||||
fm.
|
||||
foglalk.
|
||||
ford.
|
||||
főig.
|
||||
főisk.
|
||||
Főszerk.
|
||||
főtörm.
|
||||
főv.
|
||||
fp.
|
||||
fr.
|
||||
frsz.
|
||||
|
@ -125,19 +208,22 @@ fszla.
|
|||
fszt.
|
||||
ft.
|
||||
fuv.
|
||||
főig.
|
||||
főisk.
|
||||
főtörm.
|
||||
főv.
|
||||
g.
|
||||
gazd.
|
||||
gimn.
|
||||
gk.
|
||||
gkv.
|
||||
GM.
|
||||
gondn.
|
||||
gör.
|
||||
gr.
|
||||
grav.
|
||||
gy.
|
||||
Gy.
|
||||
gyak.
|
||||
gyártm.
|
||||
gör.
|
||||
h.
|
||||
hads.
|
||||
hallg.
|
||||
|
@ -147,12 +233,9 @@ hds.
|
|||
hg.
|
||||
hiv.
|
||||
hk.
|
||||
HKsz.
|
||||
hm.
|
||||
Hmvh.
|
||||
ho.
|
||||
honv.
|
||||
hőm.
|
||||
hp.
|
||||
hr.
|
||||
hrsz.
|
||||
|
@ -160,17 +243,18 @@ hsz.
|
|||
ht.
|
||||
htb.
|
||||
hv.
|
||||
iá.
|
||||
id.
|
||||
i. e.
|
||||
hőm.
|
||||
i.e.
|
||||
i.sz.
|
||||
id.
|
||||
ifj.
|
||||
ig.
|
||||
igh.
|
||||
ill.
|
||||
i. m.
|
||||
imp.
|
||||
inc.
|
||||
ind.
|
||||
inform.
|
||||
inic.
|
||||
int.
|
||||
io.
|
||||
|
@ -179,9 +263,8 @@ ir.
|
|||
irod.
|
||||
isk.
|
||||
ism.
|
||||
i. sz.
|
||||
i.sz.
|
||||
izr.
|
||||
iá.
|
||||
j.
|
||||
jan.
|
||||
jav.
|
||||
|
@ -191,32 +274,35 @@ jkv.
|
|||
jogh.
|
||||
jogt.
|
||||
jr.
|
||||
jvb.
|
||||
júl.
|
||||
jún.
|
||||
jvb.
|
||||
k.
|
||||
karb.
|
||||
kat.
|
||||
kb.
|
||||
kcs.
|
||||
kd.
|
||||
képv.
|
||||
ker.
|
||||
kf.
|
||||
kft.
|
||||
kht.
|
||||
kir.
|
||||
kirend.
|
||||
kísérl.
|
||||
kisip.
|
||||
kiv.
|
||||
kk.
|
||||
kkt.
|
||||
klin.
|
||||
K. m. f.
|
||||
K.m.f.
|
||||
Kong.
|
||||
Korm.
|
||||
kp.
|
||||
krt.
|
||||
kt.
|
||||
ktsg.
|
||||
kult.
|
||||
kv.
|
||||
kve.
|
||||
képv.
|
||||
kísérl.
|
||||
kóth.
|
||||
könyvt.
|
||||
körz.
|
||||
|
@ -225,19 +311,7 @@ közj.
|
|||
közl.
|
||||
közp.
|
||||
közt.
|
||||
kp.
|
||||
Kr.
|
||||
Kr. e.
|
||||
Kr.e.
|
||||
krt.
|
||||
Kr. u.
|
||||
Kr.u.
|
||||
kt.
|
||||
ktsg.
|
||||
kult.
|
||||
kü.
|
||||
kv.
|
||||
kve.
|
||||
l.
|
||||
lat.
|
||||
ld.
|
||||
|
@ -246,32 +320,39 @@ lg.
|
|||
lgv.
|
||||
loc.
|
||||
lt.
|
||||
ltd.
|
||||
ltp.
|
||||
luth.
|
||||
m.
|
||||
má.
|
||||
márc.
|
||||
Mass.
|
||||
m.a.
|
||||
m.s.
|
||||
m.sc.
|
||||
ma.
|
||||
mat.
|
||||
mb.
|
||||
m. é.
|
||||
mé.
|
||||
med.
|
||||
megh.
|
||||
mélt.
|
||||
met.
|
||||
mf.
|
||||
mfszt.
|
||||
min.
|
||||
miss.
|
||||
mjr.
|
||||
mjv.
|
||||
mk.
|
||||
mlle.
|
||||
mme.
|
||||
mn.
|
||||
Mo.
|
||||
mozg.
|
||||
Mr.
|
||||
Mrs.
|
||||
Mt.
|
||||
mr.
|
||||
mrs.
|
||||
ms.
|
||||
msc.
|
||||
má.
|
||||
máj.
|
||||
márc.
|
||||
mé.
|
||||
mélt.
|
||||
mü.
|
||||
műh.
|
||||
műsz.
|
||||
|
@ -280,87 +361,76 @@ művez.
|
|||
n.
|
||||
nagyker.
|
||||
nagys.
|
||||
NB.
|
||||
NBr.
|
||||
nat.
|
||||
nb.
|
||||
neg.
|
||||
nk.
|
||||
N.N.
|
||||
nov.
|
||||
Nr.
|
||||
nu.
|
||||
ny.
|
||||
Ny.
|
||||
Nyh.
|
||||
nyilv.
|
||||
Nyr.
|
||||
nyrt.
|
||||
nyug.
|
||||
o.
|
||||
obj.
|
||||
okl.
|
||||
okt.
|
||||
olv.
|
||||
Op.
|
||||
orsz.
|
||||
ort.
|
||||
ov.
|
||||
ovh.
|
||||
őrgy.
|
||||
őrpk.
|
||||
őrv.
|
||||
össz.
|
||||
ötk.
|
||||
özv.
|
||||
p.
|
||||
pf.
|
||||
pg.
|
||||
P.H.
|
||||
ph.d
|
||||
ph.d.
|
||||
phd.
|
||||
pk.
|
||||
pl.
|
||||
plb.
|
||||
plc.
|
||||
pld.
|
||||
plur.
|
||||
pol.
|
||||
polg.
|
||||
poz.
|
||||
pp.
|
||||
Pp.
|
||||
proc.
|
||||
prof.
|
||||
Prof.
|
||||
PROF.
|
||||
prot.
|
||||
P.S.
|
||||
pság.
|
||||
Ptk.
|
||||
ptk.
|
||||
pu.
|
||||
pü.
|
||||
q.
|
||||
r.
|
||||
r.k.
|
||||
rac.
|
||||
rad.
|
||||
red.
|
||||
ref.
|
||||
reg.
|
||||
rer.
|
||||
rev.
|
||||
rf.
|
||||
r. k.
|
||||
r.k.
|
||||
rkp.
|
||||
rkt.
|
||||
röv.
|
||||
rt.
|
||||
rtg.
|
||||
röv.
|
||||
s.
|
||||
s.b.
|
||||
s.k.
|
||||
sa.
|
||||
Salg.
|
||||
sel.
|
||||
sgt.
|
||||
s. k.
|
||||
s.k.
|
||||
sm.
|
||||
st.
|
||||
St.
|
||||
stat.
|
||||
stb.
|
||||
strat.
|
||||
sz.
|
||||
Sz.
|
||||
szakm.
|
||||
szaksz.
|
||||
szakszerv.
|
||||
|
@ -369,17 +439,16 @@ szds.
|
|||
szept.
|
||||
szerk.
|
||||
szf.
|
||||
Szfv.
|
||||
szimf.
|
||||
Szjt.
|
||||
szjt.
|
||||
szkv.
|
||||
szla.
|
||||
szn.
|
||||
szolg.
|
||||
szöv.
|
||||
Szt.
|
||||
Sztv.
|
||||
szt.
|
||||
szubj.
|
||||
szöv.
|
||||
szül.
|
||||
t.
|
||||
tanm.
|
||||
tb.
|
||||
|
@ -387,36 +456,78 @@ tbk.
|
|||
tc.
|
||||
techn.
|
||||
tek.
|
||||
tel.
|
||||
tf.
|
||||
tgk.
|
||||
ti.
|
||||
tip.
|
||||
tisztv.
|
||||
titks.
|
||||
tk.
|
||||
tkp.
|
||||
tny.
|
||||
törv.
|
||||
tp.
|
||||
tszf.
|
||||
tszk.
|
||||
tszkv.
|
||||
tü.
|
||||
tv.
|
||||
tvr.
|
||||
Ty.
|
||||
Tyr.
|
||||
ty.
|
||||
törv.
|
||||
tü.
|
||||
u.
|
||||
ua.
|
||||
ui.
|
||||
Ui.
|
||||
Új-Z.
|
||||
ÚjZ.
|
||||
úm.
|
||||
ún.
|
||||
unit.
|
||||
uo.
|
||||
út.
|
||||
uv.
|
||||
v.
|
||||
vas.
|
||||
vb.
|
||||
vegy.
|
||||
vh.
|
||||
vhol.
|
||||
vill.
|
||||
vizsg.
|
||||
vk.
|
||||
vkf.
|
||||
vkny.
|
||||
vm.
|
||||
vol.
|
||||
vs.
|
||||
vsz.
|
||||
vv.
|
||||
vál.
|
||||
vízv.
|
||||
vö.
|
||||
w.
|
||||
y.
|
||||
z.
|
||||
zrt.
|
||||
zs.
|
||||
Ész.
|
||||
Új-Z.
|
||||
ÚjZ.
|
||||
á.
|
||||
ált.
|
||||
ápr.
|
||||
ásv.
|
||||
é.
|
||||
ék.
|
||||
ény.
|
||||
érk.
|
||||
évf.
|
||||
í.
|
||||
ó.
|
||||
ö.
|
||||
össz.
|
||||
ötk.
|
||||
özv.
|
||||
ú.
|
||||
úm.
|
||||
ún.
|
||||
út.
|
||||
ü.
|
||||
üag.
|
||||
üd.
|
||||
üdv.
|
||||
|
@ -424,26 +535,14 @@ uv.
|
|||
ümk.
|
||||
ütk.
|
||||
üv.
|
||||
v.
|
||||
vál.
|
||||
vas.
|
||||
vb.
|
||||
Vcs.
|
||||
vegy.
|
||||
vh.
|
||||
vhol.
|
||||
Vhr.
|
||||
vill.
|
||||
vízv.
|
||||
vizsg.
|
||||
vk.
|
||||
vkf.
|
||||
vkny.
|
||||
vm.
|
||||
vol.
|
||||
vö.
|
||||
vs.
|
||||
vsz.
|
||||
vv.
|
||||
X.Y.
|
||||
Zs.
|
||||
ő.
|
||||
ű.
|
||||
őrgy.
|
||||
őrpk.
|
||||
őrv.
|
||||
""".strip().split()
|
||||
|
||||
OTHER_EXC = """
|
||||
''
|
||||
-e
|
||||
""".strip().split()
|
|
@ -67,8 +67,9 @@ OUT: <s><w>Ez</w><ws> </ws><c>(</c><w>lakik</w><c>)</c><w>-e</w><c>?</c></s>
|
|||
OUT: <s><w>A</w><ws> </ws><w>macska-</w><c>/</c><w>kutyavilag</w><ws> </ws><w>van</w><c>.</c></s>
|
||||
|
||||
%-, §-
|
||||
IN : A §-sal.
|
||||
OUT: <s><w>A</w><ws> </ws><w>§-sal</w><c>.</c></s>
|
||||
# TODO: spaCy cannot handle such cases
|
||||
# IN : A §-sal.
|
||||
# OUT: <s><w>A</w><ws> </ws><w>§-sal</w><c>.</c></s>
|
||||
IN : A %-sal.
|
||||
OUT: <s><w>A</w><ws> </ws><w>%-sal</w><c>.</c></s>
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user