2020-12-08 19:54

# Normalize path_score as confidence score for utterance?

How can I normalize a `path_score` (like in `Pocketsphinx::Decoder::Hypothesis`) of an utterance to a relative confidence probability?

• 点赞
• 写回答
• 关注问题
• 收藏
• 复制链接分享
• 邀请回答

#### 4条回答

• You can not do that. Confidence is available in C api with `ps_get_prob` call which is not used in bindings.

点赞 评论 复制链接分享
• I've made it possible to get at this value using `Pocketsphinx::Decoder::Hypothesis#posterior_prob`. Does this help? Is there some additional normalization calculation that would be worth adding to the hypothesis?

Does calling `ps_get_prob` every time I call `ps_get_hyp` have any negative performance implications?

点赞 评论 复制链接分享
• IMO a step in the right direction, but the posterior probability is logarithmic and needs to be converted to a decimal probability in order to get to a more meaningful confidence score, e.g. `.81` = 81% confidence, etc. According to my investigation, I think an approach worth investigating is the following:

`````` ruby
...
typedef :pointer, :logmath
attach_function :ps_get_logmath, [:decoder], :logmath
attach_function :logmath_get_base, [:logmath], FFI::NativeType::FLOAT64
attach_function :logmath_exp, [:logmath, :int], FFI::NativeType::FLOAT64
...
# Pocketsphinx::Decoder
logmath = ps_api.ps_get_logmath(ps_decoder)
logbase = ps_api.logmath_get_base(logmath)
log_prob = ps_api.ps_get_prob(ps_decoder) # -> -9834
dec_prob = ps_api.logmath_exp(logmath, log_prob) # => 0.83111
``````

Something similar needs to happen per word within an utterance:

`````` ruby
# Inside Pocketsphinx::Decoder
def words
...
acoustic_score = FFI::MemoryPointer.new(:int32, 1)
language_score = FFI::MemoryPointer.new(:int32, 1)
language_backoff = FFI::MemoryPointer.new(:int32, 1)

ps_api.ps_seg_prob(seg_iter, acoustic_score, language_score, language_backoff)
...
``````

Again, these scores are logarithmic and need to be converted before they are meaningful.

点赞 评论 复制链接分享
• Sorry for the delay! Please let me know if my commit resolves these issues.

点赞 评论 复制链接分享