Реализация распознавания специализированной лексики (медицинской, юридической, технической)

Проектируем и внедряем системы искусственного интеллекта: от прототипа до production-ready решения. Наша команда объединяет экспертизу в машинном обучении, дата-инжиниринге и MLOps, чтобы AI работал не в лаборатории, а в реальном бизнесе.
Показано 1 из 1 услугВсе 1566 услуг
Реализация распознавания специализированной лексики (медицинской, юридической, технической)
Средняя
от 1 недели до 3 месяцев
Часто задаваемые вопросы
Направления AI-разработки
Этапы разработки AI-решения
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1240
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1167
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    867
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1084
  • image_logo-advance_0.png
    Разработка логотипа компании B2B Advance
    563
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    829

Реализация распознавания специализированной лексики (медицинской, юридической, технической)

Стандартные STT-модели обучены на общем корпусе. Специфические термины — «диоксид кремния», «апелляционное определение», «микроконтроллер STM32F407» — часто распознаются некорректно, что делает транскрипт непригодным без постредактирования.

Методы адаптации

1. Custom Vocabulary / Boosting — самый быстрый подход, не требует переобучения:

# Google STT — адаптивные фразы
from google.cloud import speech

speech_context = speech.SpeechContext(
    phrases=[
        "мерцательная аритмия",
        "фибрилляция желудочков",
        "атриовентрикулярная блокада",
        "ЭКГ",
        "QRS-комплекс"
    ],
    boost=15.0  # от 1 до 20
)
config = speech.RecognitionConfig(
    speech_contexts=[speech_context],
    language_code="ru-RU"
)

2. Post-correction через словарь — находим фонетически похожие слова и заменяем:

from fuzzywuzzy import fuzz

DOMAIN_TERMS = {
    "дексаметозон": "дексаметазон",
    "миокарда инфаркт": "инфаркт миокарда",
    "гипотиреоз": "гипотиреоз",
}

def correct_medical_terms(text: str, threshold: int = 80) -> str:
    words = text.split()
    for i, word in enumerate(words):
        for wrong, correct in DOMAIN_TERMS.items():
            if fuzz.ratio(word.lower(), wrong) >= threshold:
                words[i] = correct
    return " ".join(words)

3. Fine-tuning Whisper — для серьёзной доменной адаптации (см. сервис дообучения Whisper).

Медицинский домен

Whisper показывает WER ~25% на медицинских диктовках без адаптации. Специализированные решения:

  • AWS Medical Transcribe: WER ~12%, HIPAA-совместимость
  • Nuance DAX: лучшее качество, но только для США
  • Fine-tuned Whisper на медицинских данных: WER 8–15%

Юридический домен

Ключевые задачи: точное воспроизведение имён, дат, номеров дел, юридических формулировок. Рекомендация — словарь из ~2 000 типовых терминов + custom vocabulary в облачном STT.

Сроки: словарный подход — 2–3 дня. Fine-tuning — 2–4 недели с учётом сбора данных.