dataesr/scientific-paragraphs-categorization huggingface dataset:
Originality. Several previous works have attempted to construct a software-specific word similarity resource. The originality of our work lies in the kind of information sources considered. Specifically, we consider software information sites, such as StackOverflow, 1  forums, etc. , in which developers and ordinary users discuss software related issues. 2 In previous work, Yang and Tan extract similar words from comments and identifiers in source code  [20] , while Howard et al. infer similar verbs from source code  [6]. However, Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page.
Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Permissions@acm. org. source code is not the only place to find words related to software development. Many of these words are also used in the mass of content posted in software information sites. Wang et al. [17]  extract similar frequently used software tags, i. e. , short text fragments used to bookmark contents, in the software information site FreeCode. However, tags represent only a small fraction of the words that appear in software information sites. In this work, we leverage the entire textual contents of the communications in a software information site, namely StackOverflow, to create a software specific word similarity database named SEWordSim, containing similarities of 5,636,534 pairs of words.
Complete details of our database construction process and the evaluation of the resulting database are available in our research paper  [16]. The goal of this demo is to release our database and to promote its use by researchers, especially those that work on text analysis for software engineering. The rest of this paper is organized as follows. Section 2 describes how the database is constructed and our preliminary evaluation. Section 3 presents our API for accessing our database. We discussion statistics and performance of the database and in Section 4. We describe related work in Section 5 and conclude in Section 6.
Measuring Similarity To measure the similarity of a pair of words, we use the concept of word co-occurrence. The co-occurrence of words w1 and w2 is the number of sliding windows of size n in a document corpus (i. e. , a set of documents), where w1 is at the center of the window, and w2 appears in the window. Based on these co-occurrences, we compute positive pointwise mutual information (PPMI)  [10]  between w1 and w2, denoted PPMI (w1, w2), which measures the discrepancy between the actual and expected co-occurrence frequency of w1 and w2, assuming independence. If the software information sites from which we extract contents contain tags, as is the case of StackOverflow, we compute the following weighted PPMI score to take these tags, which are often important terms, into account: WPPMI (w1, w2) = W (j) × PPMI (w1, w2) (1) where W (j) =    α (if j is a popular software tag) β (if j is a nonpopular software tag) γ (otherwise) (2) At this point, for each word wi we have a vector of PPMI scores (or WPPMI scores, if tags are available) that characterize its co-occurrences with other words.
Database Construction Procedure To compute the similarity of pairs of words based on the similarity measure above, we perform following steps: 1. Data Collection & Pre-Processing: This step extracts content from software information sites. This content could be questions and answers in StackOverflow, posts in software forums, bug reports in bug tracking systems, and so on. We separate natural language from source code in this content. We first process the source code by removing programming language keywords and by splitting identifiers based on Camel casing and Pascal casing. The pre-processed source code and the natural language content are then subjected to standard text pre-processing techniques, i. e. , tokenization, stop-word removal, and stemming. Some software information sites also allow users to attach short labels (i.
Preliminary Validation Study To test the effectiveness of our database construction approach, we have used it to infer a word similarity database from 10,000 questions and answers posted in StackOverflow in January 2011. We then performed a user-assisted study to compare the accuracy of our database with a publicly available word similarity database constructed using WordNet  [12]. Details about this study are found in our research paper  [16]. Users gave the results produced using our database an average Likert score that is 50. 2% higher than the results produced using WordNet-based database, resulting in an average discounted cumulative gain (DCG) that is 65. 2% higher. Thus we conclude that our database produces results of substantially better quality.
METHODOLOGY FOR USERS To make our results easily usable, we store word similarities in an SQLite database. 3 We have chosen SQLite because it implements a self-contained and server-less SQL database engine. The current version of our database contains similarities of 5,636,534 word pairs. We also release a dump of the database, which can easily be imported to other kinds of databases. Our database contains one table, named "Word Similarity". To improve the efficiency of search in database, we create indexes on words and similarity values. Table  1  shows the structure of the table "Word Similarity". We also provide a simple Java API to allow users to extract similarities easily from an SQLite database. Our    The first method is a constructor that accepts one argument, which is the location of the SQLite database.
The second method, stemWord, is a stemmer implementing the Porter Stemming algorithm. It takes a word as input and returns the root form of the word. This method should be called before calling the other methods, because our database only contains stemmed words. The third method, isIn-Database, takes a word as an argument and checks whether it exists in the database. This method allows a user to check if our database can be used for a word that the user is interested in. The fourth method computeSimilarity takes as input two words and returns the similarity between them. This similarity ranges from 0 to 1 if input words exist in our database, where 0 indicates that the words are unrelated and 1 indicates that the words are the same. If either word does not appear in the database, computeSimilarity returns -1.
The fifth method, findMostSimilarWord, returns the most similar word to an input word. The sixth method findMost-SimilarMethods, returns all words whose similarity with the input word (the first argument) is greater than or equal to a minimum similarity threshold minSim (the second argument). The seventh method, findTopNWords, takes an input word (the first argument) and a number n (the second argument) and returns the top-n most similar words to the input word. These three methods return null if the input word does not exist in our database. The last method, getAllWords, returns all words that appear in the database. With this method, a user can enumerate all the words and perform additional processing, e. g. , compute clusters of similar words, etc. , by repeatedly invoking the other methods in the class, e.
Range of Similarity Scores Some readers might be interested in the similarity score distribution of word pairs in our database. If all word pairs have very low similarity scores, then our database would not be useful. Figure  2  is a box plot showing the distribution of the maximum similarity score. To draw the box plot, for each word w in our database, we find the word pair (w,w ) that has the maximum similarity score. The scores of these pairs are shown as the box plot. The box plot shows that  50% of the words in our database, which is represented by the box, have maximum similarity scores between 0. 31 and 0. 44. We also find that more than 13. 5% of the words have maximum similarity scores greater than 0. 5. Some of them have maximum similarity scores greater than 0. 8.
Database Performance To enable our database to be used in an interactive tool, the time it takes to process a query should be short enough. The March 2014 version of our SQLite database stores more than 5 million word pairs. To test the efficiency of this database, we randomly selected 1,000 words from a number of StackOverflow questions. Based on these words, we randomly generated 100 word pairs and queried our database for their similarity scores. We perform this experiment on an Intel Core i5 2. 5GHz PC with 8GB of RAM running OS X 10. 9. 2. We use the latest SQLite version (i. e, Version 3. 8. 4. 1) to process queries. Figure  3  shows the distribution of query time required to process each of the 100 word pairs. We observe that more than 75% of the queries could be completed in less than 0.
02 seconds. The median query time is 0. 012 seconds. [11]. They have also pre-computed the similarities of many words and created a publicly accessible database containing these similarities  [12]. Different from the above studies, we do not leverage WordNet; instead, we automatically construct a word similarity database from a software-specific corpus. There are also a number of approaches that construct a thesaurus from a document corpus  [3, 8]. These approaches also analyze the co-occurrence of words. Different from these studies, we leverage a software-specific corpus. We also leverage the phenomenon of social tagging where users assign tags to content in software information sites. These tags are often important software-specific terms. The automatic tuning step of our database construction approach assigns different weights for words that appear as popular tags, unpopular tags, and other words.
CONCLUSION AND FUTURE WORK In this demo, we present our word similarity database for the software engineering community: SEWordSim. This database contains similarity information for 5,636,534 pairs of words. Different from a general-purpose word similarity database, such as one based on WordNet, our database is trained from software-specific documents. Thus, word similarity is considered in a software-specific context. Our approach takes as input software-specific documents, which are abundant and can be easily downloaded from various software information sites, e. g. , StackOverflow, SourceForge, FreeCode, etc. Our preliminary evaluation shows that considering the software context allows SEWordSim to be more accurate than WordNet-based approaches on words related to software development. We have created a simple API to make it easy for researchers to use our database.
EQUIPMENT AND TECHNOLOGY FOR DATA TRANSMISSION IN THE PRESENCE OF LOW BANDWIDTH: LogMeIn SOFTWARE LogMeIn is a remote access software. It enables one to connect to a host computer from another computer or device (client) at any time, as long as an internet connection is available. Two LogMeIn products exist: LogMeIn Free and LogMeIn Pro. LogMeIn Free is free online and LogMeIn Pro requires a subscription. Following installation of the LogMeIn Pro software on the host computer, it is possible to access the software from any internet enabled computer or mobile device (LogMeIn for iOS or LogMeIn Ignition for Android). LogMeIn Pro has a multitude of functions, including transmission of high definition quality video, audio transmission, file transfer, file and desktop sharing, control of multiple monitors, password saving, alerts with LogMeIn central, remote awakening from standby, and system diagnostics.
The computers from which one is running and remotely accessing LogMeIn must meet the following system requirement: The LogMeIn software, by allowing a radiologist at the expert center to take control of the computer at the patient center, via laptop for example, renders possible not only still image transfer (XR, USS, CT, MRI, NM), but also tele-ultrasound expertise in the presence of an inexperienced sonographer or untrained user at the patient center. In the absence of a sonographer at the patient center, an expert is able to make a radiological diagnosis in delayed time from ultrasound video sequences sent by an untrained user, with the use of the 3D virtual navigation program ECHO-CNES (Unité de Médecine et Physiologie Spatiales de Tours)  (6). For tele-ultrasound, the computer at the patient center (isolated site) is beforehand connected to the ultrasound device via a video converter/USB (Pinnacle for example).
Almost all the ultrasound devices have a port (bearing) for video converters. LogMeIn includes a security system not only based on a 256 bit SSL/TLS encryption, but also multiple authentication systems. In effect, LogMeIn has many systems of authentication, including authentication of the gateway to the Client, authentication of users to the gateway, authentication of the gateway to the host, and authentication of the host to the gateway, ensuring the security of the computer data at both the patient and expert center. Finally, LogMeIn can be coupled with Skype to enable audio and face-to-face communication between the operators at the two centers. Skype is a free software available online that includes a call notification system and contacts lists.
One of our aims therefore was to conceive of a system based around the Log-MeIn software, which is not only affordable, but also functional in areas with low-bandwidth internet, such as developing countries like Togo. LogMeIn is available online and the basic version is free. The pro-version costs only 53 euros per year per computer. Other than the low cost, the high level of security available with LogMeIn compared with many other remote access programs was another factor that attracted us to this piece of software. LogMeIn has two intrusion detection capabilities: SSL/TLS et the LogMeIn intrusion filters. The first level of intrusion detection is based around SSL/TLS in order to detect the possible modification of data in transit. The second layer of security relies on three intrusion filters, namely an IP address filter, a denial of service filter, and an authentication filter.
The file transfer capability available with the LogMeIn Proversion, which allowed transfer of ultrasound files up to 100 Mb in around 3 min, demonstrates clearly that this software can be used for delayed tele-ultrasound diagnosis with ECHO-CNES in the presence of a non-expert at the patient center. The LogMeIn technological infrastructure, which functioned perfectly well with 3G dongles and modest bandwidth offers therefore a practical mechanism for medical tele-imaging services even in the most remote areas in which information and communications technologies are lacking. Further, tele-ultrasound expertise could be made available for patients in ambulances with the use of the LogMeIn software. All that is required is a portable ultrasound on board the ambulance and a 3G dongle for internet connection.
One can also envisage the expert being able to view the images on a tablet device or smartphone with the use of LogMeIn for iOS or LogMeIn for android. With untrained ultrasound operators at CHR Tsévié, only delayed tele-ultrasound diagnosis with the virtual navigation program ECHO-CNES was possible. This 3D reconstruction program, of which the diagnostic accuracy for general abdomen ultrasound was estimated at 91% in a previous study  (6) , enables the expert to review the images sent by the untrained person at a later time and make a radiological diagnosis. Ultrasonography involves a degree of technical skill and precision, and thus it is quite operator dependent. As a result, it can be difficult to guide a lay person remotely by voice and/or video. The difficulty in realizing real-time tele-ultrasound with an untrained operator has led some authors to produce visual guides to assist in obtaining images of the organ of interest for diagnosis  (11, 12).
Sheehan et al. , for example, have produced a guide (Expert Visual Guidance) (11) consisting of a program that shows the various positions and angles of the ultrasound probe necessary to obtain the required views of the organ of interest. The authors tested the program with 20 medical students with no prior ultrasound experience. Compared to a group of medical students who were guided by voice alone, these untrained students were more competent at obtaining the necessary views for making a diagnosis. Other authors have used robotic systems, ESTELE  (13) , OTELO  (14) , TER  (15) , to allow an expert to remotely manipulate the ultrasound probe on the patient. These remote-control systems include a robotic arm at the end of which is fixed an ultrasound probe, which an untrained person places and maintains on the patient.
in 1997 , in which doctors in France and Italy performed successful tele-medicine consults with hospitals in the Ivory coast and South Africa  (16). Further, Gimel et al. (17)  demonstrated the feasibility of a tele-pathology service between dermo-pathologists at the Massachusetts General Hospital in the United States and African hospitals, via the transmission of static histology images. The availability and combination of free, yet secure, software such as LogMeIn and low-cost equipment such as Axis technology and their use in developing countries, as used in this study, will hopefully further stimulate the introduction of tele-medicine networks between reference centers in developed countries and remote centers in developing countries. The fact that both patient and medical personnel adherence was good in this study is highly encouraging.
Processing Algorithms and Software Implementation In the following, we present an implementation for 1D lateral displacement measurement in a micro-mechatronic context as well as the performances obtained. This principle and the software provided can however be applied to different purposes, especially at other dimensional scales. We assume that a two-stripe pattern is attached to the target of interest in order to measure its displacement. Figure  3  gives an example of image to be processed as recorded experimentally using a 20× microscope lens. It is composed of a series of ruling grids where the 8 µm and 8. 4 µm grids are distributed alternatively. The determination of the phase associated with each image of this kind and representative of the target position at the recording instant of time assumes three successive steps described in the following subsections: extraction of intensity distributions from each stripe set; determination of the period in pixel of each stripe set; computation of the phase of the central pixel for both stripe sets.
A frame grabbing of 1389. 5 fps was achieved with these parameters and a common computer (Intel Core2 Quad CPU Q9550 2. 83 GHz, running under Windows 7). The C++ software developed (Provided as supplementary data to this paper. ) was able to process the image flow in real time as demonstrated in Figure  13. The latter presents the reconstructed free oscillations of the shuttle after the manual application of a starting pulse. Despite the peak-to-peak vibration amplitude being larger than 40 µm; i. e. , 5 times the elementary grid pattern period, the continuity of the shuttle displacement is perfectly reconstructed thanks to the slightly different periods of the twin grids. The 1389. 5 fps sampling rate allows for a high quality description of the 19. 7 ms period of the shuttle vibration as observed in the zoom of Figure  13b.
Solution to the static problem The static problem is solved to assess the resulting deflection of the plates as a result of a constant burnishing force. This problem does not consider the force due to superimposed vibration. The static deflection of the plates is a condition that affects the tool design. The burnishing force must produce a resulting deflection value lower than the J gap. To perform this analysis, we implement the Lazarus language software, which leads to a solution that has been obtained via the finite difference method. We used 50 nodes with a 0. 000002s integration step. Using this software, we performed a comparative study of the maximum deflection of the M 1 plate evaluated for three thicknesses, h, (1 mm, 1. 5 mm and 2 mm) and three different burnishing forces, F, (15N, 30N and 50N).
Background: Sequence alignments are the starting point for most evolutionary and comparative analyses. Full genome sequences can be compared to study patterns of within and between species variation. Genome sequence alignments are complex structures containing information such as coordinates, quality scores and synteny structure, which are stored in Multiple Alignment Format (MAF) files. Processing these alignments therefore involves parsing and manipulating typically large MAF files in an efficient way. Results: MafFilter is a command-line driven program written in C++ that enables the processing of genome alignments stored in the Multiple Alignment Format in an efficient and extensible manner. It provides an extensive set of tools which can be parametrized and combined by the user via option files.
We demonstrate the software's functionality and performance on several biological examples covering Primate genomics and fungal population genomics. Example analyses involve window-based alignment filtering, feature extractions and various statistics, phylogenetics and population genomics calculations. Conclusions: MafFilter is a highly efficient and flexible tool to analyse multiple genome alignments. By allowing the user to combine a large set of available methods, as well as designing his/her own, it enables the design of custom data filtering and analysis pipelines for genomic studies.
Programs generating MAF files include BlastZ and MultiZ from the Threaded Blockset Aligner (TBA) package  [2]  or Last  [3]. The multiple alignment serves as an entry to further analyses and several processing steps are required to filter the data, particularly the removal of low-quality regions. In addition, many downstream analysis tools take as input single syntenic blocks only, requiring the global alignment to be exported into multiple alignment files in an external format such as Fasta or Phylip. This conversion often comes at the cost of losing information such as original genome coordinates that may be required in the further analysis pipeline. Solutions to this issue can involve the generation of a database that integrates all analyses results  [4]. This is however a tedious process, which conveniently can be avoided.
We here introduce a new program which facilitates the processing and analysis of multiple alignment files. The program allows the user to define his/her own analysis pipeline and efficiently processes the input MAF file. Each synteny block is processed separately and passed through a series of filters previously defined by the user (see Figure  2 ). Each filter performs a predefined task, such as cleaning the alignment or computing relevant statistics, and passes the synteny block, eventually modified, to the next filter. The output of the program is typically one or several MAF files, and/or several alignment files in external formats like Fasta or Phylip. Furthermore the program allows the output of statistical results in spreadsheet files, or even tree files if phylogenetics analyses are involved.