637 research outputs found
Using a Nearest-Neighbour, BERT-Based Approach for Scalable Clone Detection
Code clones can detrimentally impact software maintenance and manually
detecting them in very large codebases is impractical. Additionally, automated
approaches find detection of Type 3 and Type 4 (inexact) clones very
challenging. While the most recent artificial deep neural networks (for example
BERT-based artificial neural networks) seem to be highly effective in detecting
such clones, their pairwise comparison of every code pair in the target
system(s) is inefficient and scales poorly on large codebases.
We therefore introduce SSCD, a BERT-based clone detection approach that
targets high recall of Type 3 and Type 4 clones at scale (in line with our
industrial partner's requirements). It does so by computing a representative
embedding for each code fragment and finding similar fragments using a nearest
neighbour search. SSCD thus avoids the pairwise-comparison bottleneck of other
Neural Network approaches while also using parallel, GPU-accelerated search to
tackle scalability.
This paper details the approach and an empirical assessment towards
configuring and evaluating that approach in industrial setting. The
configuration analysis suggests that shorter input lengths and text-only based
neural network models demonstrate better efficiency in SSCD, while only
slightly decreasing effectiveness. The evaluation results suggest that SSCD is
more effective than state-of-the-art approaches like SAGA and SourcererCC. It
is also highly efficient: in its optimal setting, SSCD effectively locates
clones in the entire 320 million LOC BigCloneBench (a standard clone detection
benchmark) in just under three hours.Comment: 10 pages, 2 figures, 38th IEEE International Conference on Software
Maintenance and Evolutio
Augmenting Machine Learning with Information Retrieval to Recommend Real Cloned Code Methods for Code Completion
Software developers frequently reuse source code from repositories as it
saves development time and effort. Code clones accumulated in these
repositories hence represent often repeated functionalities and are candidates
for reuse in an exploratory or rapid development. In previous work, we
introduced DeepClone, a deep neural network model trained by fine tuning GPT-2
model over the BigCloneBench dataset to predict code clone methods. The
probabilistic nature of DeepClone output generation can lead to syntax and
logic errors that requires manual editing of the output for final reuse. In
this paper, we propose a novel approach of applying an information retrieval
(IR) technique on top of DeepClone output to recommend real clone methods
closely matching the predicted output. We have quantitatively evaluated our
strategy, showing that the proposed approach significantly improves the quality
of recommendation
Term-BLAST-like alignment tool for concept recognition in noisy clinical texts.
MOTIVATION: Methods for concept recognition (CR) in clinical texts have largely been tested on abstracts or articles from the medical literature. However, texts from electronic health records (EHRs) frequently contain spelling errors, abbreviations, and other nonstandard ways of representing clinical concepts.
RESULTS: Here, we present a method inspired by the BLAST algorithm for biosequence alignment that screens texts for potential matches on the basis of matching k-mer counts and scores candidates based on conformance to typical patterns of spelling errors derived from 2.9 million clinical notes. Our method, the Term-BLAST-like alignment tool (TBLAT) leverages a gold standard corpus for typographical errors to implement a sequence alignment-inspired method for efficient entity linkage. We present a comprehensive experimental comparison of TBLAT with five widely used tools. Experimental results show an increase of 10% in recall on scientific publications and 20% increase in recall on EHR records (when compared against the next best method), hence supporting a significant enhancement of the entity linking task. The method can be used stand-alone or as a complement to existing approaches.
AVAILABILITY AND IMPLEMENTATION: Fenominal is a Java library that implements TBLAT for named CR of Human Phenotype Ontology terms and is available at https://github.com/monarch-initiative/fenominal under the GNU General Public License v3.0
Learning semantic structures from in-domain documents
Thesis (Ph. D.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2011.Cataloged from PDF version of thesis.Includes bibliographical references (p. 175-184).Semantic analysis is a core area of natural language understanding that has typically focused on predicting domain-independent representations. However, such representations are unable to fully realize the rich diversity of technical content prevalent in a variety of specialized domains. Taking the standard supervised approach to domainspecific semantic analysis requires expensive annotation effort for each new domain of interest. In this thesis, we study how multiple granularities of semantic analysis can be learned from unlabeled documents within the same domain. By exploiting in-domain regularities in the expression of text at various layers of linguistic phenomena, including lexicography, syntax, and discourse, the statistical approaches we propose induce multiple kinds of structure: relations at the phrase and sentence level, content models at the paragraph and section level, and semantic properties at the document level. Each of our models is formulated in a hierarchical Bayesian framework with the target structure captured as latent variables, allowing them to seamlessly incorporate linguistically-motivated prior and posterior constraints, as well as multiple kinds of observations. Our empirical results demonstrate that the proposed approaches can successfully extract hidden semantic structure over a variety of domains, outperforming multiple competitive baselines.by Harr Chen.Ph.D
Entity Linking for the Biomedical Domain
Entity linking is the process of detecting mentions of different concepts in text documents and linking them to canonical entities in a target lexicon.
However, one of the biggest issues in entity linking is the ambiguity in entity names. The ambiguity is an issue that many text mining tools have yet to address since different names can represent the same thing and every mention could indicate a different thing. For instance, search engines that rely on heuristic string matches frequently return irrelevant results, because they are unable to satisfactorily resolve ambiguity.
Thus, resolving named entity ambiguity is a crucial step in entity linking. To solve the problem of ambiguity,
this work proposes a heuristic method for entity recognition and entity linking over the biomedical knowledge graph concerning the semantic similarity of entities in the knowledge graph. Named entity recognition (NER), relation extraction (RE), and relationship linking make up a conventional entity linking (EL) system pipeline (RL). We have used the accuracy metric in this thesis.
Therefore, for each identified relation or entity, the solution comprises identifying the correct one and matching it to its corresponding unique CUI in the knowledge base. Because KBs contain a substantial number of relations and entities, each with only one natural language label, the second phase is directly dependent on the accuracy of the first. The framework developed in this thesis enables the extraction of relations and entities from the text and their mapping to the associated CUI in the UMLS knowledge base. This approach derives a new representation of the knowledge base that lends it to the easy comparison. Our idea to select the best candidates is to build a graph of relations and determine the shortest path distance using a ranking approach.
We test our suggested approach on two well-known benchmarks in the biomedical field and show that our method exceeds the search engine's top result and provides us with around 4% more accuracy. In general, when it comes to fine-tuning, we notice that entity linking contains subjective characteristics and modifications may be required depending on the task at hand. The performance of the framework is evaluated based on a Python implementation
Building Blocks for Mapping Services
Mapping services are ubiquitous on the Internet. These services enjoy a considerable user base. But it is often overlooked that providing a service on a global scale with virtually millions of users has been the playground of an oligopoly of a select few service providers are able to do so. Unfortunately, the literature on these solutions is more than scarce. This thesis adds a number of building blocks to the literature that explain how to design and implement a number of features
LILO: Learning Interpretable Libraries by Compressing and Documenting Code
While large language models (LLMs) now excel at code generation, a key aspect
of software development is the art of refactoring: consolidating code into
libraries of reusable and readable programs. In this paper, we introduce LILO,
a neurosymbolic framework that iteratively synthesizes, compresses, and
documents code to build libraries tailored to particular problem domains. LILO
combines LLM-guided program synthesis with recent algorithmic advances in
automated refactoring from Stitch: a symbolic compression system that
efficiently identifies optimal lambda abstractions across large code corpora.
To make these abstractions interpretable, we introduce an auto-documentation
(AutoDoc) procedure that infers natural language names and docstrings based on
contextual examples of usage. In addition to improving human readability, we
find that AutoDoc boosts performance by helping LILO's synthesizer to interpret
and deploy learned abstractions. We evaluate LILO on three inductive program
synthesis benchmarks for string editing, scene reasoning, and graphics
composition. Compared to existing neural and symbolic methods - including the
state-of-the-art library learning algorithm DreamCoder - LILO solves more
complex tasks and learns richer libraries that are grounded in linguistic
knowledge
- …