Создание матрицы путаницы с помощью HResults HTK Tool для распознавания рукописного ввода Пример ICFHR

Я изучаю, как HTK Tools работает с распознаванием рукописного ввода. Следуя РУКОВОДСТВУ ICFHR–2010, я выполняю примеры для "испанский- Numbers" и получили результирующие HMM (файлы хранятся в папке hmm и перечислены в HMMsList), а res32.mlf с результатами распознавания, полученными с HVite. Также у меня есть файл мастер-этикетки SamplesRef.mlf. А теперь хочу посмотреть статистику результатов распознавания, т.е. изучения HResults инструмента.

Когда я запускаю HResults как

 HResults -I SamplesRef.mlf HMMsList res32.mlf

я понимаю

====================== HTK Results Analysis =======================
  Date: Tue Mar 31 15:21:11 2015
  Ref : SamplesRef.mlf
  Rec : res32.mlf
------------------------ Overall Results --------------------------
 SENT: %Correct=0.00 [H=0, S=2, N=2]
 WORD: %Corr=77.78, Acc=77.78 [H=7, D=0, S=2, I=0, N=9]
===================================================================

Но если я добавлю опцию -p, чтобы иметь матрицу путаницы, я увижу следующее сообщение об ошибке:

~/icfhr$ HResults -p -I SamplesRef.mlf HMMsList res32.mlf
 ERROR [+3331]  Index: Label millones not in list[0 of 19]
FATAL ERROR - Terminating program HResults

Я понимаю, что это сообщение означает, что нет HMM с именем «millones», и я обнаружил, что в моих res32.mlf образцах это выглядит так:

"’*’/210341.rec"
mil
seiscientos
cincuenta
y
siete
millones
.

Если я изменю res32.mlf в текстовом редакторе на res33.mlf с таким содержимым:

"’*’/210341.rec"
m
i
l
s
e
i
s
c
i

... и так далее.

И используйте samples.mlf (вместо SamplesRef.mlf), который внутри выглядит так:

"*/210341.lab"
m
i
l
@
q
u
i
n
i
e
n
t
o
s
@
c

... и так далее.

У меня есть желаемый результат:

~/icfhr$ HResults -p -I samples.mlf HMMsList res33.mlf
====================== HTK Results Analysis =======================
  Date: Tue Mar 31 15:35:42 2015
  Ref : samples.mlf
  Rec : res33.mlf
------------------------ Overall Results --------------------------
SENT: %Correct=0.00 [H=0, S=2, N=2]
WORD: %Corr=79.63, Acc=77.78 [H=43, D=5, S=6, I=1, N=54]
------------------------ Confusion Matrix -------------------------
       a   c   d   e   i   l   m   n   o   s   t   u   v   y  Del [ %c / %e]
   @   0   0   0   0   0   1   1   0   0   0   0   0   0   0    5 [ 0.0/3.7]
   a   2   0   0   0   0   0   0   0   0   0   0   0   0   0    0
   c   0   2   0   0   0   0   0   0   0   0   0   0   0   0    0
   d   0   0   1   0   0   0   0   0   0   0   0   0   0   0    0
   e   0   0   0   6   0   0   0   0   0   0   0   0   0   0    0
   i   0   0   0   0   6   0   0   0   0   0   0   0   0   0    0
   l   0   0   0   0   0   3   0   0   0   0   0   0   0   0    0
   m   0   0   0   0   0   0   2   0   0   0   0   0   0   0    0
   n   0   1   0   0   0   0   0   6   0   0   0   0   0   0    0 [85.7/1.9]
   o   0   0   0   0   0   0   0   0   4   0   0   0   0   0    0
   q   0   0   0   0   0   0   0   0   0   1   0   0   0   0    0 [ 0.0/1.9]
   s   0   0   0   0   0   0   0   0   0   4   0   0   0   0    0
   t   0   0   0   0   0   0   0   0   0   0   4   0   0   0    0
   u   0   0   0   1   0   0   0   0   0   0   0   1   0   0    0 [50.0/1.9]
   v   0   0   0   0   0   0   0   0   0   0   0   0   1   0    0
   y   0   0   0   0   1   0   0   0   0   0   0   0   0   1    0 [50.0/1.9]
Ins    0   0   0   0   0   0   0   0   0   1   0   0   0   0
===================================================================

Итак, главный вопрос:

Как проще всего (без текстового редактора) сделать mlf-файлы адаптированными для построения матрицы путаницы?

(Полагаю, я пропустил какую-то опцию какого-то инструмента HTK… но какой инструмент и какую опцию?)

Любые полезные идеи будут высоко оценены.


htk
person VolAnd    schedule 01.04.2015    source источник


Ответы (1)


Чтобы использовать параметр -p, вам необходимо предоставить список меток классов, а не ваших HMM (т. е. если вы пытаетесь распознать слова «Да», «Нет», «Никогда»), тогда ваш файл «HMMsList» должен быть записан как :

Yes
No
Never

Независимо от HMM, которые на самом деле составляют слова. Ваш файл «HMMsList» должен быть «LabelsList».

person Asmaa Rabie    schedule 20.08.2016