Для явного изменения веса паттерна используется паттерн $weight
.
Паттерн $weight<>
можно использовать следующими способами:
$weight<a>
$weight<a+b>
$weight<a-b>
$weight<+b>
$weight<-b>
Вес, задаваемый в паттерне $weight
, добавляется к весу паттерна следующим образом:
<katex-block>S = S \cdot a + b</katex-block>
где:
<katex>\small{S}</katex>
— вес паттерна;<katex>\small{a}</katex>
— произвольное вещественное число, заданное в$weight
. Оно изменяет значение веса линейно, то есть "увеличивает в\small{a}
раз";<katex>\small{b}</katex>
— произвольное вещественное число, заданное в$weight
. Оно сдвигает значение веса на константное значение, то есть "увеличивает на<katex>\small{b}</katex>
".
Заранее сложно предсказать все варианты использования данного правила. Такая форма с двумя параметрами позволяет выбрать подходящий способ в зависимости от задачи.
Пример
theme: /
init:
bind("postProcess", function(c) {
$reactions.answer(JSON.stringify(c.nBest[0].score));
});
state: Test1
q!: test1
state: Test2
q!: test2 $weight<1.001>
state: Test3
q!: test3 $weight<0.9+0.05>
state: Test4
q!: test4 $weight<+0.3>
state: Test5
q!: test5 $weight<-0.2>