Saturday, February 17, 2007

Автоматичен преводач 2

Вчера, докато стоях на една доста скучновата конференция - две бяха единствените смислени неща, които се казаха като информация - започнах да си драскам. После се сетих, че така или иначе смятам да се позанимая с изучаването и евентуално създаване на автоматичен преводач, та реших да направя един brainstorming по темата. Още не съм имал време да се запозная като хората с важните неща в областта - например с базите данни и онтологии (като WordNet), разработени за английския език (разбира се, идеята е да се използват готови бази данни и онтологии за всички езици - първо, защото аз и хората, които може би ще въвлека, са мързеливи, и второ, защото изграждането на подобни лексикални бази данни и онтологии е свързано с немалко трудности).
Ще се опитам да разбия задачата за създаване на Автоматичен преводач до няколко по-малки задачи. Като за начало:
Първо (и най-важно, както и най-сложно): Намиране на подходяща метрика за съответния език. "Метрика" тук се употребява условно - има се предвид реалнозначна функция, която да задава "смислово разстояние" между две думи. Предвид спецификата на всеки език, е логично да се предположи, че за различните езици тази метрика ще бъде различна.
Второ: Определяне на влиянието на контекстуалната рамка върху метриката. Също много сложна задача - най-малкото едно изречение може да бъде разгледано в контекста на съседните пет (предшестващи и следващи изречения) или на съседните десет. Как да се определи минималната контекстуална рамка за всяко едно изречение? И още по-сложния проблем: как да определим промяната в метриката, индуцирана от съответната контекстуална рамка за въпросното изречение?
Да обобщим:
1) Трябва да се създаде подходящо пространство (векторно) от всички думи в даден език и да се избере подходяща метрика за него.
2) Определяне на контекстуална рамка за подтекст на даден текст. Определяне на промяната в метриката за съответния подтекст.


No comments: