Using Full-text Academic Articles and Wikipedia to Find Alternative Free Bioinformatics Software

Free Bioinformatics Software Shutian Ma, Chengzhi Zhang Nanjing University of Science and Technology, Nanjing, China, 210094 Given the importance of scientific software in academic research, more and more software are arriving on market each year and most powerful and user-friendly ones can be really expensive (Smith, 2014). Simultaneously, it turns to be difficult for researchers, teachers and students to choose suitable software which contain the required functions at reasonable cost or even no cost. Taking bioinformatics software as a case study, this paper wants to find free software which are similar with commercial ones and have potential to be alternatives. Content and network information are applied for preference-oriented results, which encapsulates how people describe them in wiki and how people use them in research. In order to obtain bioinformatics software list, we searched the Wikipedia category named Bioinformatics Software. Except categories starting with characters List of, we crawled 143 specific bioinformatics software and 20 of them are commercial ones according to licenses. 114,510 PLOS ONE papers are downloaded in XML format and 11,013 articles contain bioinformatics software after exact string matching. To calculate the similarity between software, we firstly project them into different vector spaces based on software knowledge graph generated by info-box from Wikipedia and textual content from papers and Wikis. According to data source, we use following content information to represent software: paper full text, Wikipedia text and Wikipedia info box. When learning software vectors from full text of literature and wiki pages, we applied LSI (Deerwester, Dumais, Furnas, Landauer, & Harshman, 1990), LDA (Blei, Ng, & Jordan, 2003) and Doc2Vec (Le & Mikolov, 2014), vector dimensions are all set to be 100. When using Wikipedia, info box in wiki pages inspired us to build knowledge graph. For instance, info box in MODELLER wiki page describes basic profile, such as original authors, developers, operation system and so on. Therefore, we construct a software knowledge graph consisting of seven kinds of nodes: developed by what kind of team (university, company and person), year of stable release (14 different years), written in what kind of programming language (17 languages), operation system (Linux, Unix, Windows and MacOS), applied platform (6 kinds), available language (English or cross-language) and software type (44 types). Then, Node2Vec (Grover & Leskovec, 2016), Diff2Vec (Rozemberczki & Sarkar, 2018) and struc2vec (Ribeiro, Saverese, & Figueiredo, 2017) are applied to learn node embedding, vector dimensions are all set to be 128. After representing software based on contextual and network information, we calculate cosine similarities between using these vectors and combine similarities to generate different preference-oriented software results, which are: Wiki-Content, PaperContent, Wiki-Graph, Wiki-All, Paper Content+Wiki Content, Paper Content+Wiki Graph and Wiki+Paper. Specifically, when doing linear combinations, all weights are set to be one. Aiming at constructing ground truth, we measure of the information overlap between two software. Firstly, queries are made on Google by searching software names one by one and all sets of free and commercial software pair in format of Software A + Software B one by one. Then, we convert results number returned from search engine into normalized pointwise mutual information (Bouma, 2009) using following formula: