Thank you for providing this pipeline, blog and collab notebook. I read your blog twice (once during ACL :)) and the associated paper (relevant part) to refresh. I have a few questions:
What happens before and after multi_class=True exactly ?.
So let’s say I trained bert-base-uncased on MNLI. The last linear layer outputs a scaler tensor with three values (one for entailment, contradiction and neutral).


How is the last linear layer being handled since number of candidate_labels are variable and its not being trained?


In the paper its mentioned that once entailment is predicted, we can take it as a prediction and (you specify in the collab notebook) that label applies to the text. I didn’t catch this part properly. Could you please explain ? I’m not sure exactly what happens when entailment is predicted. Do you take standard softmax over all the labels ?


When we pass multi_class=True, do you just output the confidence scores (from linear layer directly) ?


What does hypothesis_template actually does ? Does it help in computing better hidden representation ?