質問編集履歴

1

誤記

2022/07/05 20:24

投稿

re1313
re1313

スコア2

test CHANGED
File without changes
test CHANGED
@@ -36,6 +36,6 @@
36
36
  - (PyTorchでは未確認)学習がうまく進むと多くのクエリで1位に正解ラベル1の文書を持ってこれるが、クエリの中にはそもそも正解ラベルが0の文書しか持たないクエリもある。このようなクエリを切り捨てたいが、モデルの出力(予測確率など)でカットをかけてもあまり改善しない。ランク学習はクエリ内で文書の順番が正しくなるようにモデルの出力を与えるが、異なるクエリ間でモデルの出力に一貫性はない?(例えばモデルの出力が、クエリ1[文書A:0.9 文書B:0.6 文書C:0.1]), クエリ2[文書D:0.7 文書E:0.3]であったとき、クエリ1の文書Aとクエリ2の文書Dとでは、文書Aのほうがより正解ラベルが1らしいと言えるか?)
37
37
 
38
38
  ### まだ試していないけどアイデア
39
- - ほとんどの文書の正解ラベルが0であるせいで学習が進まない→番号リストFocal Lossのような損失関数を使う。/正解ラベル1の文書の予測確率での損失関数の勾配をモデルのパラメータ更新に使う。
39
+ - ほとんどの文書の正解ラベルが0であるせいで学習が進まない→Focal Lossのような損失関数を使う。/正解ラベル1の文書の予測確率での損失関数の勾配をモデルのパラメータ更新に使う。
40
40
  - 同率1位が邪魔→1位の文書の数を減らすような自作メトリックを考える。/正解ラベル1の文書に対するモデルの出力と、他の文書の中で最も高い出力を持つ文書とを比較して、正解ラベル1の文書が、その他の文書の中での1位より高い出力を得られるような自作メトリックを考える。/これらのメトリックはおそらく離散的で微分不可能なので直接損失関数にはできないが、NDCGの代わりにこれらでクロスエントロピーの微分をスケーリングしたら損失関数に組み込める?
41
41