Learning how to explain neural networks: PatternNet and PatternAttribution | Synapse