def recoded_features(self, inputs, layer=-1, inverse_fn=ielu):
hidden = self.get_hidden_values(inputs, store=True, layer=layer).eval()
bench = self.get_reconstructed_input(np.zeros_like(hidden),
layer=layer).eval().squeeze()
if inverse_fn: ibench = inverse_fn(bench)
results = []
for h in range(hidden.shape[-1]):
hidden_h = np.zeros_like(hidden)
hidden_h[..., h] = hidden[..., h]
feature = self.get_reconstructed_input(hidden_h, layer=layer).eval().squeeze()
if inverse_fn:
iresult = inverse_fn(feature) - ibench
results.append(self.coders[0].coding(iresult).eval())
else:
results.append(feature - bench)
return np.array(results), bench
评论列表
文章目录