عند حل المهام المتعلقة بالتعرف على الكلام (تحويل الكلام إلى نص) وتوليد (تحويل النص إلى كلام) ، من المهم أن يتطابق النص مع ما قاله المتحدث - أي اللغة المنطوقة الحقيقية . هذا يعني أنه قبل أن يصبح الخطاب المكتوب نصنا ، يجب تطبيعه .
بمعنى آخر ، يجب أن يتم النص من خلال عدة خطوات:
- استبدال الرقم بالكلمات:
1984 -> ألف وتسعمائة واربعة وثمانين سنة ؛ - شرح الاختصارات:
2 . -> دقيقتان من الكراهية ؛ - النسخ اللاتيني:
Orwell-> إلخ.

في هذه المقالة ، سأتحدث بإيجاز عن كيفية تطبيع التطبيع في مجموعة بيانات اللغة الروسية Open_STT ، وما هي الأدوات التي تم استخدامها وحول نهجنا للمهمة.
مثل الكرز على الكعكة ، قررنا وضع جهاز التطبيع الخاص بنا استنادًا إلى seq2seq في المجال العام: رابط إلى github . إنه بسيط قدر الإمكان للاستخدام ويطلق عليه طريقة واحدة:
norm = Normalizer()
result = norm.norm_text(' 9 11 whiskas')
>>> ' '
المزيد عن المهمة
, , ? , . , .
, , :
2 — (), . 2 — ;2 — , 2 — ;2 — , 2 — ;= 2/5 — , . 2/5 — — .
: - ( — ) ( — ?). , , . .
. - . , , ~20% , ~80% .
Open_STT : — . STT , - 2020 , .
. 2020 . "" — .
Sequence to Sequence
- , sequence-to-sequence (seq2seq) . , seq2seq , "" , :

attention "5 ". , "" "5", "".
seq2seq PyTorch . — . + + + , — + .
— , . ( , ) .
, :
TorchScript
, , Torchscript.
TorchScript — PyTorch, Python C++.
, PyTorch :
- , TorchScript , ;
torch.jit.script ( torch.jit.trace), .
, , , , . , : , .. .
, . , .
norm.norm_string(" — — 27 38 %.")
' — — .'
norm.norm_string(" 22 1939 ")
' '
norm.norm_string(" «The Crying Game»")
' « »'
norm.norm_string(" XVIII ")
' '
norm.norm_string(" 2012 6,6 ")