def METHOD_NAME(self, params):
    paddle.enable_static()
    main_program = paddle.static.Program()
    startup_program = paddle.static.Program()
    with paddle.utils.unique_name.guard():
        with paddle.static.program_guard(main_program, startup_program):
            input = paddle.static.data(
                name="image", shape=[None, 1, 28, 28])
            label = paddle.static.data(
                name="label", shape=[None, 1], dtype="int64")
            model = paddle.vision.models.LeNet()
            out = model(input)
            acc_top1 = paddle.static.accuracy(input=out, label=label, k=1)
    eval_program = main_program.clone(for_test=True)
    place = paddle.CUDAPlace(0)
    scope = paddle.static.global_scope()
    exe = paddle.static.Executor(place)
    exe.run(startup_program)
    val_reader = paddle.batch(self.val_reader, batch_size=128)
    def eval_func(program):
        feeder = paddle.fluid.DataFeeder(
            feed_list=['image', 'label'], place=place, program=program)
        acc_set = []
        for data in val_reader():
            acc_np = exe.run(program=program,
                             feed=feeder.feed(data),
                             fetch_list=[acc_top1])
            acc_set.append(float(acc_np[0]))
        acc_val_mean = np.array(acc_set).mean()
        return acc_val_mean
    for _name, _value in params.items():
        t = scope.find_var(_name).get_tensor()
        t.set(_value, place)
    print(f"static base: {eval_func(eval_program)}")
    criterion = None
    if self._pruner == 'l1norm':
        criterion = 'l1_norm'
    elif self._pruner == 'fpgm':
        criterion = 'geometry_median'
    sen = sensitivity(
        eval_program,
        place,
        self._param_names,
        eval_func,
        sensitivities_file="_".join(
            ["./sensitivities_file", str(time.time())]),
        criterion=criterion)
    return sen