Problem solving: CNN's learning too much emphasis on invariance (invariant) characteristics of the study, data enhancement also serve this purpose. And to do so, in fact, ignoring the fact that a real world:
An object can be seen as a result of interrelated set of components according to geometric combination thereof. With this geometry to reconstruct the target system should be robust to changes in the viewpoint, because the geometric relationship should not alter its nature as an observed change in the viewing angle which occurs
The proposed method:
In this paper, the researchers describe an unsupervised capsules network. Wherein the composition of the target was observed in all neural encoder member is used to infer the presence and posture of the target capsule. Backpropagation training encoder via the decoder method.
Researchers at the SVHN and MNIST data sets obtained the best results of the current unsupervised classification, the accuracy rate was 55% and 98.5%, respectively.
Reproduction paper
Environment to build:
conda create -n StaCap python=3.6
Installation pip3
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
Stack Capsule create the required environment
pip install -r requirements.txt
The use of remote connectivity environment Pycharm
https://juejin.im/post/5a21433751882512a8611d36
运行Train.py,报错:
absl.flags._exceptions.IllegalFlagValueError: flag --pipeline_config_path=None: Flag --pipeline_config_path must have a value other than None
Solution:
flag is not none, increase the parameter
# flags.DEFINE_string('name', None, '')
flags.DEFINE_string('name', 'mnist','')
Setting other corresponding parameters, the tag successfully reproduced
References:
stacked_capsule_autoencoders
Hinton Father CapsNet upgrade, combined with unsupervised, close to the current best results
Interpretation -Stacked Capsule AutoEncoder- stacked capsules from the encoder
Stacking the capsule from the encoder Stacked Capsule Autoencoders