While comparing the accuracy of floating point vs fixed point implementation
of pocketsphinx, the fixed point accuracy to be much lesser than the floating
point.
I observed that in my system #FIXED16 and #DEFAULT_RADIX were left undefined
when in FIXED POIINT mode. Could this be the reason for comparatively poor
performance. I am unable to figure out what is the default radix point in
Pocketsphinx and what is the significance of FIXED16.
Regards
Pankaj
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
While comparing the accuracy of floating point vs fixed point implementation
of pocketsphinx, the fixed point accuracy to be much lesser than the floating
point.
You probably didn't test it throughtly. You need to provide accuracy numbers
and testing matherial otherwise it's hard to believe in this statement
I observed that in my system #FIXED16 and #DEFAULT_RADIX were left undefined
when in FIXED POIINT mode. Could this be the reason for comparatively poor
performance. I am unable to figure out what is the default radix point in
Pocketsphinx and what is the significance of FIXED16.
Those options are not related to your problem I think.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I am sorry, it was my mistake. By mistake I had not kept the acoustic models
same. After using the same acoustic models the accuracies are almost the same
for both floating point as well as fixed point.
But I am still wondering what are the options #FIXED16 and #DEFAULT_RADIX
meant for.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Makes decoder use 16-bit integers during MFCC computation. Doesn't affect
gaussian scoring. This option makes decoder a bit faster since in MFCC
precision is not critical but also less accurate
DEFAULT_RADIX
Radix for fixed-point float computation emulation. Small radix allows you to
store large numbers but also makes computation unprecise since rounding takes
too much from float. Large radix doesn't allow you to store a big number but
gives you more precise computation. Also, some platform (StrongARM) could take
advantage of certain radix value to speedup calculations.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
While comparing the accuracy of floating point vs fixed point implementation
of pocketsphinx, the fixed point accuracy to be much lesser than the floating
point.
I observed that in my system #FIXED16 and #DEFAULT_RADIX were left undefined
when in FIXED POIINT mode. Could this be the reason for comparatively poor
performance. I am unable to figure out what is the default radix point in
Pocketsphinx and what is the significance of FIXED16.
Regards
Pankaj
You probably didn't test it throughtly. You need to provide accuracy numbers
and testing matherial otherwise it's hard to believe in this statement
Those options are not related to your problem I think.
I am sorry, it was my mistake. By mistake I had not kept the acoustic models
same. After using the same acoustic models the accuracies are almost the same
for both floating point as well as fixed point.
But I am still wondering what are the options #FIXED16 and #DEFAULT_RADIX
meant for.
Makes decoder use 16-bit integers during MFCC computation. Doesn't affect
gaussian scoring. This option makes decoder a bit faster since in MFCC
precision is not critical but also less accurate
Radix for fixed-point float computation emulation. Small radix allows you to
store large numbers but also makes computation unprecise since rounding takes
too much from float. Large radix doesn't allow you to store a big number but
gives you more precise computation. Also, some platform (StrongARM) could take
advantage of certain radix value to speedup calculations.
Thanks nshmyrev,
One more small question, what is the default radix used in pocketsphinx.
Regards
ifndef DEFAULT_RADIX