In many real-world scenarios, labeled data for a specific training task is costly to obtain. Semi-supervised methods make use of abundantly available unlabeled data and a smaller number of labeled examples. We propose a new framework for semi-supervised training of deep neural networks that is inspired by learning in humans. "Associations" are made from embeddings of labeled samples to those of unlabeled ones and back. The optimization schedule encourages correct association cycles that end up at the same class where the association was started from and penalizes wrong associations that end at a different class. The implementation is easy to use and can be added to any existing end-to-end training setup. We demonstrate the capabilities of our approach on several data sets and show that it can improve performance on classification tasks up to state of the art, making use of additionally available unlabeled data. We also show how to apply this to the task of domain adaptation, surpassing current state-of-the-art results.