docstr: Larger-scale overdetermined case with easily predicted model output.
  
  Each block contributes its own id worth of loss,
  so tower of all block 1 should be best.
docstr_tok: ["Larger-scale","overdetermined","case","with","easily","predicted","model","output",".","Each","block","contributes","its","own","id","worth","of","loss",",","so","tower","of","all","block","1","should","be","best","."]
code: def test_loss_equals_id(self):
      """Larger-scale overdetermined case with easily predicted model output.
  
      Each block contributes its own id worth of loss,
      so tower of all block 1 should be best.
      """
      nblocks = 4
      blocks_to_use = np.arange(1, nblocks + 1)
      depth = 9
      ntrials = 10 * nblocks * depth
      np.random.seed(0)
      architectures = np.random.randint(
          1, nblocks + 1, size=(ntrials, depth)
      )
      losses = np.sum(architectures, axis=1)
      best = _get_suggestion(architectures, blocks_to_use, losses)
      self.assertEqual(list(best), [1] * depth)
  
imports: from absl.testing import parameterized
  import mock
  from model_search import block_builder
  from model_search import hparam
  from model_search.metadata import trial
  from model_search.proto import phoenix_spec_pb2
  from model_search.search import linear_model
  from model_search.search import test_utils
  import numpy
  import tensorflow.compat.v2
label_desc: Use image node_id 4 for calling the LinearModelTest obj's underlying member method code with example usage: obj.test_loss_equals_id() without return types