feat(classify): super-linear positive weighting by hit count
正向改为按命中次数 n(require_title + reaction + charge + weak)做平方加权,使多信号同现的真 reaction 不被单个负向词打穿(1+1>2、1+1+1>5);标题不含 require_title 直接 0 分。库内 796 条有效视频复测:线以下误伤由 47 降至 14。
This commit is contained in:
1 parent
742c67a1c3
commit
337e379514
4 files changed
+78
-75
No files matched your search
@@ -47,7 +47,7 @@ def write_config(tmp, **discover):
|
||||
"date_negative": True,
|
||||
"duration_boost": {"gt_30min": 1, "gt_60min": 2},
|
||||
},
|
||||
"notify": {"min_score": 3, "max_items_per_message": 10},
|
||||
"notify": {"min_score": 4, "max_items_per_message": 10},
|
||||
}
|
||||
path = Path(tmp) / "config.json"
|
||||
path.write_text(json.dumps(data, ensure_ascii=False), encoding="utf-8")
|
||||
@@ -130,7 +130,7 @@ def test_filters_and_scoring():
|
||||
assert summary.blacklisted == 1
|
||||
assert summary.candidates == 1 # aid 6
|
||||
assert summary.notified == 0
|
||||
assert repo.get_candidate(6)["score"] == 0
|
||||
assert repo.get_candidate(6)["score"] == 1
|
||||
assert repo.get_candidate(2) is None
|
||||
assert repo.get_candidate(4) is None
|
||||
assert repo.get_candidate(5) is None
|
||||
|
||||
Reference in new issue
Block a user