# NodeVector: A Novel Network Node Vectorization with Graph Analysis and Deep Learning
###### Abstract
The primary goal of unsupervised learning is to find out hidden or inherent structures and gain insights into the data without prior knowledge or guidance. Unsupervised learning is a powerful tool for exploratory data analysis, data preprocessing, and gaining a deeper understanding of complex datasets, even when labeled data are scarce or unavailable [10]. Studies on the vectorization of nodes in the network dataset are inspired by natural language processing (NLP) techniques. To use NLP techniques, sentences are derived from the network data structure. The created sentences are suitable for the use of natural language processing algorithms. Sentence data type contains information within itself. The words contained in the sentence are in order, they can form subgroups according to the meaning of the sentence, their locations in the sentence are determined according to the meaning of the word, the positional placement of the words with each other, and their distribution in the sentence constitute the meaning of the sentence. Due to the natural structure of the sentence, the information it contains is valuable and it is desired to be used without loss. For this reason, natural language processing algorithms are based on sentence processing. Sentences can be converted into graph data so that the words in the sentence represent nodes and the interactions between words represent edges. During this transformation, the information contained in the sentence is lost. For this reason, the transformation is one-way and it is not possible to create only the same sentences from graph data. When sentences are derived from graph data, the probability of containing the initial sentences is very low, but a large number of meaningless and incorrect sentences are produced. A simple derivation scenario is shown in Figure 1.  
In this paper, we consider that developing a node representation method by deriving sentences from the dataset modeled with a graph causes the information contained in the graph data to be lost. We suggest that the use of graph analysis instead of deriving sentences from graph data produces more useful results. Our motivation is that there is no work in the literature that produces node representation through unsupervised learning using the combination of network analysis and neural networks to consider the network data structure. Therefore, our proposed method differs from all similar methods in the literature. Our contributions: in order to test our hypothesis, we develop a node representation algorithm based on network analysis, examine the effects of techniques that affect the algorithms and the results, and compare the performance of the algorithm on different graph datasets. The rest of the paper is organized as follows. The next section (Section 2) exhibits the literature overview about existing state-of-the-art network node vectorization algorithms. Then, we describe networks (Section 3.1), the skip-gram model (Section 3.2), negative sampling (Section 3.3), and network analysis (Section 3.4). We then discuss our node representation method and node similarity detection algorithm (Section 3.5) that performs network enrichment with the help of network analysis. We then share the pseudocode and discuss our NodeVector algorithm (Section 3.6) in detail. The last section offers details about the dataset, and we discuss the results (Sections 4 and 5).