def METHOD_NAME(W_b_input):
    model = get_model(W_b_input)
    nr_batch, nr_out, nr_in = get_shape(W_b_input)
    W, b, input_ = W_b_input
    output, finish_update = model.begin_update(input_)
    seen_keys = set()
    def sgd(key, data, gradient, **kwargs):
        seen_keys.add(key)
        assert data.shape == gradient.shape
        return data, gradient
    grad_BO = numpy.ones((nr_batch, nr_out), dtype="f")
    grad_BI = finish_update(grad_BO)  # noqa: F841
    model.finish_update(sgd)
    for name in model.param_names:
        assert (model.id, name) in seen_keys