Menu

#FIXED16 and #DEFAULT_RADIX

Help
Pankaj
2010-05-31
2012-09-22
  • Pankaj

    Pankaj - 2010-05-31

    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

     
  • Nickolay V. Shmyrev

    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.

     
  • Pankaj

    Pankaj - 2010-05-31

    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.

     
  • Nickolay V. Shmyrev

    FIXED16

    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.

     
  • Pankaj

    Pankaj - 2010-06-01

    Thanks nshmyrev,

    One more small question, what is the default radix used in pocketsphinx.

    Regards

     
  • Nickolay V. Shmyrev

    ifndef DEFAULT_RADIX

    #define DEFAULT_RADIX 12
    #endif
    
     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.