FickleNet is a method for weakly and semi-supervised semantic image segmentation that generates multiple localization maps from a single image using random combinations of hidden units. It aggregates these maps to discover relationships between object locations. This allows it to expand activated regions beyond just discriminative parts. Experiments on PASCAL VOC 2012 show it achieves state-of-the-art performance in both weakly and semi-supervised settings. Key techniques include feature map expansion for efficient inference and center-preserving dropout to relate kernel centers to other locations.