Bilingual conversation (english, vietnamese):

Hi, so recently I sent you a paper on confidence estimation for ASR and I find this paper quite interesting because they give some ground for the user to look at on whether to trust the model or not. So I would be open to any discussion points that you have. Cảm ơn tụi anh vì đã gửi anh paper. Anh cũng thấy paper này cũng rất là thú vị. Vì anh đã từng làm SA một thời gian trước thì anh thấy là mô hình sequence to sequence đa phần hoạt động cũng rất là tốt. Tốt hơn các mô hình conventional ASR rất là nhiều. Thì thoảng thì tất nhiên mô hình nào cũng có lỗi của nó Tuy nhiên với mô hình sequence to sequence thì nhiều lúc anh thấy nó trả ra một số kết quả lỗi nhưng mà cái cái log likelihood của nó vẫn rất là cao Tức là nó vẫn rất là tự tin vào từ đấy Vậy thì anh nghĩ là việc có một mô hình mà có thể đánh giá được, xem là mô hình đang có overconfidence vào những cái từ sai hay không thì cũng rất là tốt vì anh cũng rất là muốn thảo luận với tú anh về paper này. Okay. So you said that the sequence-to-sequence models performs well compared to the traditional conventional ASR models. So do you think for the conventional ASR model, the log probability kind of works better compared to the sequence-to-sequence model? Because I think they also mentioned it in the paper that for those conventional model, it's straightforward to get the confidence score. Dạ, anh cũng nghĩ là như vậy. Vì trong mô hình ngày xưa thì huấn luyện chủ yếu dựa trên frame by frame. Thì anh nghĩ là cái điểm mà cái log softmax của từng frame nó sẽ không phụ thuộc vào cái từ phía trước. Nó sẽ là độc lập giữa các frame. Đúng. Còn với mô hình sequence-to-sequence thì nó là auto-aggressive thì nó sẽ phụ thuộc vào những cái từ, nó sẽ là một dạng conditional language model. Thì anh nghĩ nó sẽ phụ thuộc vào những cái từ phía trước. Thì anh nghĩ là nhiều khi cái language model này nó sẽ overconfidence vào một số từ nào đấy thì có thể hiện tượng Over Confidence sẽ xảy ra nhiều hơn so với mô hình Hybrid. Anh trả lời còn đúng ý hỏi của em không? Yes, indeed it answered my question because I don't work with ASR, so I actually don't have background knowledge on the conventional ASR models, but your answer helps a lot. The idea of this paper is that the log probability coming from the model itself is overconfidence. they try to train a separate head in order to predict the confidence score independently of the log probability. And they generate the target for this by just aligning the transcript by the model to the goal transcript by the human. to get the errors from the transcript itself. So do you have any comment on the approach? Anh nghĩ đấy là một ý hay, tức là họ đang cố tạo ra những cái transcript bị lỗi để họ huấn luyện mô hình confidence measurement model. Nhưng mà anh đang thắc mắc là với một mô hình MT... thì họ sẽ làm như thế nào? Bởi vì cách họ làm này đang dựa vào khoảng cách Levanstein giữa 2 transcript mà trong MT thì anh nghĩ không thể dùng được cái alignment đấy nữa. Yes, indeed you're right. I mean, I also work on quality estimation for machine translation and indeed it is much more difficult to get the gold transcript on the token level. So I guess one way of doing it is that, well, recently there is some shared task on quality estimation. the translation that is given from a dataset. So I mentioned that there is some dataset out there where they manually label on the translation on each token whether the token is correct or not. and they release some test data where they have human labels on each token of the mt output to see whether this token is correct or not and they do that kind of labeling on the translation output of the model so i was thinking maybe we can somehow make use of that data and in this case we can maybe do force decoding on those translation and then we will have the labels on each token from those kind of data set but however we would have to do force decoding which Force Decoding em nói là anh cũng chưa hiểu lắm, nó giống như Teacher Forcing which means that translation did not come from our model itself, but just come from some other model used in those shared tasks. So I'm also not sure if that is the optimal way of doing it. Yes, well teacher forcing and force decoding I guess is kind of similar but it's just that people use the term teacher forcing during training and then give the model the perfect translation from the data. But here by force decoding, I mean we would try to make the model output exactly So I was thinking that maybe we can use our model, do force decoding to make our model generate that translation and then we will be able to make use of that okay or bad labels on each token on those labels? Ok, anh cũng hiểu được phần nào. Ok, anh thấy là trong MT thì để huấn luyện mô hình này chắc là rất là phức tạp hơn rất là nhiều. Anh có một câu hỏi là, anh có một ý là liệu cái mô hình này ngoài việc đánh giá chất lượng của output ra thì thì nó có giúp cải thiện mô hình không? Như kiểu, ví dụ như là anh thấy là có vẻ như là trong lúc, trong tiếng nói này thì trong lúc mình decode thì mình có thể kết hợp Fusion giữa 2 mô hình với nhau bởi vì 2 cái đểu trả về 1 cái dạng probability của tất nhiên là 2 distribution khác nhau, 1 cái là binary, 1 cái là là class distribution thì nó vẫn là khác nhau nhưng mà anh thắc mắc là Liệu em đã có ai từng dùng mô hình này để cải tiến kết quả decode hoặc là để giúp huấn luyện tốt hơn không? Yes, I think that's a very good idea. I have seen people doing it for machine translation, where they usually when doing beam search, they only look at the probability of the translation. But I also see people trying to incorporate quality estimation scores into the decoding process, and it did help with improving the translation quality. The only thing is that for MT, if we use an external model to do quality estimation, then it takes longer to do decoding. because we have to run an external model at every step rather than just taking the log probability that we already have from the model. But that's for machine translation. For this case, I guess that every time we do one forward pass, we already have both the log probability and also the confidence score. So maybe it doesn't cost that much. to incorporate both of them into the decoding process. So my intuition is that yes, it will work, but how much it will improve the performance, then I'm afraid it's too difficult to tell without doing actual experiments. I also looked into this paper to see if they have that kind of experiment trying to incorporate the confidence score into decoding, but I don't think they do such experiment. which I find is a bit unfortunate because I think it would be relatively straightforward to do. But yes, I think it's a good idea. Yeah, anh cũng nghĩ cái đấy cũng khá là thực tế bởi vì mình đánh giá được cái độ Overconfidence Model thì mình có thể sửa được nó. Ví dụ như là anh nghĩ một trường hợp như rất là hay như kiểu mình phát âm sai chẳng hạn Mình phát âm, ví dụ mình không phải là người bản xứ nhưng mình phát âm sai Nhưng mà có thể mô hình nó vẫn như diện đúng bởi vì mô hình tiếng nói, bởi vì nó vẫn hiểu được cái language model ấy như thế nào thì trong trường hợp đấy thì nó nên overconfident hay là nó nên là less confident Tức là underconfident bởi vì... Anh ấy thắc mắc là acoustic trên cái tiếng nói mình nói phát âm sai đúng không? Nhưng mà thực tế thì cái output này nó vẫn đúng. Thì anh đang nghĩ trong trường hợp ấy thì nên mô hình sẽ hoạt động tốt hơn nếu họ overconfident từ đấy hay là underconfident Yes, that's indeed a very interesting use case. I mean, personally, I am not sure if my answer is going to be correct, but personally, I think it would be better if the model is more confident on those cases, because it means that the model has learned to recognize voices with different accents well, it shouldn't be lower confidence just because the person is speaking with a different accent. So intuitively, yes, I think, I think it makes sense to have high confidence on that. But I guess it would be an interesting experiment as well. They don't have it in the paper, but I guess it makes sense because I can imagine that it would be quite difficult to conduct such experiments because you would need people speaking different accents and then you have to compare those people to the people who speak native language and then see how the model performs differently. So maybe that kind of experiment is a bit more complicated to conduct. Maybe they cannot find native speaking along with accent people speaking. So yeah, it's a very interesting use case, but it's too bad it's not discussed in the paper. Cảm ơn Tú Anh. Anh thấy cũng khá là thú vị với chủ đề này. Anh thắc mắc là ở trong MT thì việc đánh giá confidence rất là quan trọng. Nhưng mà anh thắc mắc là thường họ dùng những mô hình này ngoài việc đánh giá confidence ra thì liệu còn mục đích nào khác không? Hay là họ còn... What do you mean by using this kind of models? Do you mean like by concatenating an extra head? What is the use case of concatenating an extra head into the translation model? Is that what you mean? Anh cũng nghĩ là, anh muốn nói là dùng mô hình này để đánh giá chất lượng. Thì ví dụ như là mình... Mình có thể dùng mô hình này để mình hướng dẫn, mình guide cho một... mình hướng dẫn một mô hình để huấn luyện một mô hình MT được không? Okay, I guess I understand what you mean. So you mean to guide the training process? Yes, I guess that would be interesting. I think there is this concept of doing curriculum learning, probably you know about it already. But it's about teaching the model step by step, like training it on easy examples first, and then slowly sampling more example from the training set to continue training the model. And I guess in that case, it makes sense if we try to select the examples where the model doesn't perform very well to continue training it. In that sense, then yes, we can use this kind of model to look at how confident the model is. And we will try to select the samples where the model is unconfident and then continue training on those samples to make the model more and more robust over time. So yes, I think that is a very nice use case. Thế việc ngoài confidence measure ra thì em còn một topic nữa là quality estimation, hai cái có khác gì nhau không? Yes, I've been asking myself that as well because I guess when I read the literature, I don't think it's defined exactly what's the difference between confidence and quality estimation. It's just my observation that sometimes when people say confidence, they expect the model to be able to provide the confidence itself. But for quality estimation, it's a bit more broad. It's not restricted anymore. So for example, in MT, people would train like a separate module to provide the quality score. So it has nothing to do with the original model that we use to do translation. But we would have a second model where that model just take the translation from the first model and then give a score. But for confidence, I guess they expect the translation model itself to provide a confidence score. But that's just my understanding because I didn't see it specified anywhere. Anh nghĩ anh cũng hiểu phần nào giải thích của tụi anh tức là quality, tức là mình đánh giá chung cho cả cái chất lượng transcript này Còn confidence, có thể là mình đánh giá độ confidence cho từng token trong trong transcript hay là trong confidence model trong cả câu, trong cả transcript đúng không? Not sure if that's what I meant. I think what I meant is more like confidence is provided by the translation model itself, but quality can be provided either by the translation model itself or by some external model. So I guess that's more what I was saying. Whether it is on the token level or on the sentence level, I think it's applicable to both confidence estimation and quality estimation. Ok. Em có muốn thảo luận hay là hỏi gì về paper hoặc là chủ đề này không? Yes, I will quickly look. I guess this one discussion points that you also mentioned before that is there any other way to make the model create wrong token so that we have more negative samples for training the confidence head. So you said that maybe we can use sampling. different sampling method for it can you elaborate more do you mean like increase the temperature or use greedy instead of beam search or what was your idea Tôi nghĩ là mình thay đổi temperature cũng là một ý hay, tức là để sao cho các properties của các token nó không quá cách xa nhau thì lúc sampling thì có thể mình sẽ sample được các mình sẽ sample được cái nhiều đa dạng các loại token hơn không phải nếu tiết là là một token ra trả về kết quả tốt nhất thì bởi vì anh trong beam search thì thì đúng ra là mỗi step mình sẽ chọn n best token tốt nhất đúng không? nhưng có thể mình sampling n lần thì chọn ra token tốt nhất Okay. Nếu thay đổi temperature thì mình sẽ chọn n-token này đa dạng hơn n-best bình thường. Okay, so I guess in that sense it would be more diverse and we would be able to get more balancing between negative sample and positive sample. So yes, it's really interesting. Thank you. No.