Описание и примеры можно найти в IEEE Std 1800-2012 & sect; 11.5.1 «Выделение векторного бита и выбор адреса». Первое появление IEEE - IEEE 1364-2001 (Verilog) & sect; 4.2.1 «Идентификация векторного бита и выбора части». Вот прямой пример из LRM:
blockquote>logic [31: 0] a_vect; logic [0 :31] b_vect; logic [63: 0] dword; integer sel; a_vect[ 0 +: 8] // == a_vect[ 7 : 0] a_vect[15 -: 8] // == a_vect[15 : 8] b_vect[ 0 +: 8] // == b_vect[0 : 7] b_vect[15 -: 8] // == b_vect[8 :15] dword[8*sel +: 8] // variable part-select with fixed width
Если
sel
равно 0, тогдаdword[8*(0) +: 8] == dword[7:0]
Еслиsel
равно 7, тогдаdword[8*(7) +: 8] == dword[63:56]
Значение слева всегда является начальным индексом. Число справа - это ширина и должна быть положительной константой.
+
и-
указывают на выбор битов более высокого или более низкого значения индекса, а затем начального индекса.Предполагая, что
address
находится в формате little endian ([msb: lsb]), тогдаif(address[2*pointer+:2])
является эквивалентомif({address[2*pointer+1],address[2*pointer]})
Вы можете получить квадратное значение R или метрик производительности , используя реализацию sklearn.
Но другие вещи, такие как co-eff, не имеют отношения к модели Xgboost
, потому что это нелинейная модель. Следовательно, вы не можете назначить один коэффициент для каждой функции в соответствии с моделью Xgboost
.
Есть лучшие способы понять интерпретируемость модели, один из методов, который я бы предложил, - [SHAP Tree explainers][2]
.
Блог , чтобы понять работу Shap.