def compressed_matmul_keras(self, inputs, training=False):
    """Matmul with a convex combination of original and compressed weights."""
    if training:
      compressed_mat = self.alpha * self.a_matrix_tfvar + (
          1 - self.alpha) * tf.matmul(self.b_matrix_tfvar, self.c_matrix_tfvar)
      return tf.matmul(inputs, compressed_mat)
    else:
      # This prevents the TFLite converter from constant-folding the product of
      # B & C matrices.
      intermediate = tf.matmul(inputs, self.b_matrix_tfvar)
      return tf.matmul(intermediate, self.c_matrix_tfvar)