# A Survey on the Recent Advances of Deep Community Detection
## 3 Deep Community Detection Strategies
### GAN Based Approaches
The CommunityGAN strategy learns network embeddings like AGM (Affiliation Graph Model) through a specifically designed GAN. The affiliation graph model is a framework that can model dense overlapped communities. As in [67], two models are trained: a generator that tries to produce a vertex subset to compose a motif (clique) and a discriminator which tries to deduce if the vertex subset is a real or unreal motif. The two models are combined by participating in a game where the generator tries to fool the discriminator by approximating a conditional probability value (the preference distribution of motifs covering an edge over all the remaining motifs), in order to produce the vertex subsets which are closer to the real motifs covering a specific edge. Accordingly, the discriminator distinguishes the ground-truth motifs from the ones produced by the generator. Given the distribution samples and the samples produced by the generator, the discriminator tries to maximize the probability of correct classification of these samples. The AGM is a non-negative affiliation weight matrix: when a vertex is assigned to a community, there is a non-negative strength value for this assignment. The big strength of CommunityGan is that, by combining the AGM with GAN, it can detect overlapped communities _and_ learn graph representations. Because random walk is involved in the design of the AGM, the overall time complexity is not easy to infer. Although the model is not the fastest, the authors claim that its training is considered acceptable. Another approach for overlapped communities is the Seed Expansion with generative Adversarial Learning (SEAL) [69]. It contains an adversarial network, where the discriminator predicts if a community is real or unreal while the the generator tries to fool the discriminator by generating communities that fit the characteristics of real ones. The generator models seed expansion as a sequential decision process and learns heuristics from data. Another novelty is the use of a locator that forms a closed loop with the generator to get iterative improvements. If a generated community includes irrelevant nodes (free-rider effect), the locator would have difficulties in locating the seed node and returns a low reward, while, for a good community, the generator would receive a high reward as the seed node is easily located. [PERSON] et al. [70] provided GraphGAN, which is also a graph representation learning framework where the generator and the discriminator play a minimax game, and this competition leads to an iterative performance improvement. Moreover, the limitations of the softmax function (does not consider graph structure and proximity information and its computation involves all the graph vertices, which is inefficient and time consuming) are overcome by a new implementation of the generator, the Graph softmax, which defines a new method of computing connectivity distribution. This method satisfies the normalization, graph structure awareness, and computational efficiency. The proposed online generating strategy, which is more computationally efficient and consistent to the definition of graph softmax, employs a random walk from a root node, during which, if the generator decides to visit the currently visited node's \(v\) parent (reverse on the path) for the first time, \(v\) becomes the generated vertex. The complexity of the GraphGan is \(O(V(V+E))\), where \(V\) is the set of nodes, and \(E\) is the set of edges. JANE [71] is a framework that jointly distinguishes the real and fake combinations of the embeddings, topology information, and node features. JANE is composed of pluggable components, Embedding module, Generator module, and Discriminator module. Compared to typical GANs, the JANE framework includes an embedding module to produce network embeddings instead of generating new data (attribute network).