In this thesis, we introduce a novel Explanation Neural Network (XNN) to explain the predictions made by a deep network. The XNN works by embedding a high-dimensional activation vector of a deep network layer non-linearly into a low-dimensional explanation space while retaining faithfulness i.e., the original deep learning predictions can...
This thesis consists of two major components. The first part is concerned with video object instance segmentation (VOS), which is the task of assigning per-pixel labels perframe of a video sequence to indicate foreground object instance membership, given the first frame ground truth mask. VOS has myriad applications, from video...
The abilities of plant biologists to characterize the genetic basis of physiological traits are limited by their abilities to obtain quantitative data representing precise details of trait variation and mainly to collect this data on a high-throughput scale at low cost. Deep learning-based methods have demonstrated unprecedented potential to automate...
Heatmap regression has became one of the mainstream approaches to localize facial landmarks. As Convolutional Neural Network (CNN) and Recurrent Neural Network (RNN) are becoming popular in solving computer vision tasks, extensive research has been done on these architectures. However, the loss function for heatmap regression is rarely studied. In...
Development of graphical user interface (GUI) applications is difficult since the process can be both complicated and tedious. We propose a solution directed at reducing programming time and effort required to build a GUI application. Our solution is based on the Petri Network, the Oregon SpeedCode Universe (OSU) Application Framework,...
Object categorization is one of the fundamental topics in computer vision research. Most current work in object categorization aims to discriminate among generic object classes with gross differences. However, many applications require much finer distinctions. This thesis focuses on the design, evaluation and analysis of learning algorithms for fine- grained...
The high level of parallelism in throughput processors such as GPGPUs has resulted in significantly changed on-chip data traffic behaviors. This demands new research to identify and address the limiting factors of networks-on-chip (NoCs) in the context of throughput processors. In this work, we first quantitatively analyze the performance of...
This thesis is about visual relationship detection. This is an important task in computer vision. The goal is to detect all visual relationships in a given image between objects. This thesis presents a new approach to this problem. Our approach does not use an object detector as a common pre-processing...
Currently, a popular approach to image classification uses the deep Transformer architecture. In a Transformer, the attention mechanism enables the model to learn efficiently with fewer computational resources than the convolutional neural networks (CNNs). In this thesis, we study the sparse attention mechanism widely used in the Transformers developed specifically...
Although deep reinforcement learning agents have produced impressive results in many domains, their decision making is difficult to explain to humans. To address this problem, past work has mainly focused on explaining why an action was chosen in a given state. A different type of explanation that is useful is...
The ability to create reproducible cryptographically secure keys from temporal environments (e.g., images) has the potential to be a contributor to effective cryptographic mechanisms. Due to the noisy nature of these environments, achieving this goal in a user friendly fashion is a very challenging task, especially since there exists a...
This thesis addresses the problem of temporal action segmentation in videos, where the goal is to label every video frame with the appropriate action class present. We focus on the domain of NFL football videos, where action classes represent common football play types. For action segmentation, we use a temporal...
Sports analytics is rapidly evolving today through the use of computer vision systems that automatically extract huge amount of information inherently present in multimedia data without much human assistance. This information can facilitate a better understanding of patterns and strategies in various sports. However, for non-professional teams, due to expense...
Graphical user interface (GUI) applications based on object-oriented design are difficult to build without a supportive tool to graphically visualize the structure of the entire application. As an application becomes larger and more complex, it becomes harder to visualize its class hierarchy. Several systems, such as Smalltalk, MacApp, THINK C...
Transmit beamforming is an important technique employed to improve efficiency and signal quality in wireless communication systems by steering signals towards their in- tended users. It often arises jointly with the antenna selection problem due to various reasons, such as limited number of radio frequency (RF) chains and energy/resource effi-...
MicroRNAs are a highly conserved class of small endogenous RNA, about ~22nt in length, involved in post-transcriptional gene silencing and have prominent roles in disease and development. Though the process of microRNA discovery was once an arduous task, the advent of high throughput sequencing technology has resulted in novel microRNAs...
This paper describes a Lesson Generating System for CAI, which, by relieving the course author from the burden of programming, provides an efficient means for developing courseware to augment classroom instruction.
The data used for the construction of genome maps is imperfect, therefore the mapping of a physically linear structure must take place in a very uneven feature space. As the number of genes to be ordered grows, it appears to be impractical to use exhaustive search techniques to find the...
The problem addressed in this paper is that of usability of the Petri Net Editor used to create applications in the Objex framework. This editor puts a lot of burden on the user, in that the user needs to remember all the GUI resources previously created for the application, has...
The information processing industry is one of the fastest growing, and most dynamic industries on the scientific as well as business scene, today. Progress in designing and applying computing systems has out raced progress in evaluating their performance. In order to circumvent this trend, there should be a simultaneous development...
The paper describes research on the representation of knowledge. The goal is to develop a formalism which can be used for the testing of hypotheses on the nature of human understanding and as a foundation or artificial intelligence programs. The ideas expressed herein are implemented in a program which converses...
This paper describes an investigation of a matrix algebraic method to determine isomorphism in pairs of undirected graphs. The method is described in some detail. The theoretical as well as the practical difficulties are given. It is shown that the method works for some cases. When the adjacency matrix of...
A review of current computer performance and evaluation techniques reveals a lack of an acceptable analytic tool for optimal computer system performance and evaluation. A generalized approach to the formulation of a third generation computer system model is proposed. The approach is used to optimize computer resource utilization and to...
In this project we implemented WebSiteGen2, which is a software tool that automatically generates HTML pages and server-side scripts for a Web-based database application. A user of WebSiteGen2 can select the tables and columns for which HTML pages and server-side scripts are generated. The menus for this selection process are...
With the strong shift toward network-centric cluster-computing workload management has become increasingly important in both industrial and academic environments. To fully harness the distributed computing resources of the 32 PC's in our department, I developed a workload monitoring system together with a few utilities for users to submit either sequential...
Deep learning is now being utilized widely in applications where sensitive data is being used for model training, for example, in health care. In this scenario, any data leakage will cause privacy concerns to whose data records are used to train the model. An attacker can actively cause privacy leakage...
Most database users do not know formal query languages, such as SQL, and prefer to express their information needs using usable query languages, such as keyword queries. Keyword queries, however, are inherently ambiguous and challenging for the database systems to understand and answer effectively. We propose a novel approach to...
Smart home devices, such as voice assistants, smart lights, and smart video doorbells have become a part of end users' daily lives. Many of these devices combine their features with other services and smart devices to create a simple and efficient user experience. This is partly because of the contribution...
Advances in deep learning based image processing have led to their adoption for a wide range of applications, and in tow with these developments is a dramatic increase in the availability of high quality datasets. With this comes the need to accelerate and scale deep learning applications in order to...
Hand detection is a fundamental step for many hand-related computer vision tasks, such as gesture recognition, hand pose estimation, hand sign language translation, and so on. However, robustly detecting hands is a challenging task because of drastic changes in appearance based on finger articulation and changes in lighting conditions, camera...
Quickersort, Straight Insertion Sort, Mehlhorn's AVL-tree Sorting Algorithm and Cook's new sorting algorithm are compared on nearly and nedium sorted lists. The ratio of the minimum number of list elements that must be removed so that the remaining portion of the list is in order to the size of the...
Spreadsheet languages are widely used by end users for many different purposes. Previous research shows that spreadsheets often contain faults. To help end users test their spreadsheets, in previous research, a testing methodology for spreadsheets has been developed. Th.is methodology is supported by an automatic test case generation (ATCG) methodology....
Several problems with user interface design and implementation have been identified: (1) user interfaces are difficult and time-consuming to design and implement; (2) most user interface management systems (UIMS) are themselves difficult to use by a programmer; (3) UIMS's have not been integrated with other tools that support structured design,...
In this paper, we present two systolic designs of a chip that can be used to perform Modular Multiplication. The time taken by these two designs is 5n and 3n respectively, where n is the number of digits. These designs are based on Montgomery's redc algorithm. We also present an...
In recent years, Oblivious Random Access Memory (ORAM) controllers in Trusted Execution Environments (TEEs) have become a popular area of investigation, as coresident trusted systems allow for significantly more efficient oblivious execution. Further, in the case of Intel architectures, oblivious execution effectively eliminates the majority of confidentiality leakage holes in...
Motion capture data is a digital representation of the complex temporal structure of human motion. Motion capture is widely used for data-driven animation in sports,medicine and entertainment, because of its ability to capture complex and realistic
motions. Due to its efficiency and cost, methods for reusing collections of motion capture...
Data centers have seen a rapid growth in recent years as the technology industry is relying more on cloud services. In effect, data centers are paying millions of US $ in energy costs. Several strategies have been proposed to lower the total energy cost at data centers- task migration, server...
The purpose of this project is to design and implement an intermediate language interpreter for a very high level language called Bagit. The Bagit compiler produces Bcode, and this in turn is interpreted by the program described in this report.
Fluid simulation is an interesting research problem with a wide range of applications including mechanical engineering, special effects in movies and games, and scientific simulation. Due to the complex nature of typical fluid flow equations, there are circumstances where a full volumetric fluid simulation may not be necessary to generate...
The Vehicle Preventative Maintenance System (VPMS) is a 4GL application system that keep track of information required for vehicle maintenance. It can be used to schedule routine vehicle maintenance, and to produce complete and accurate vehicle cost reports, enabling its users to optimize vehicle maintenance. In this report, after describing...
A Turfgrass Information and Decision Support System (TIDSS) was developed by international collaborators. In this project, an efficient and effective web-based information system, composed of a Turf Content System (TCS), a Turf Resource System (TRS), and the supporting tools, was developed to support the cooperative efforts. A comprehensive schema of...
Automatic analysis of American football videos can help teams develop strategies and extract patterns with less human effort. In this work, we focus on the problem of automatically determining which team is on offense/defense, which is an important subproblem for higher-level analysis. While seemingly mundane, this problem is quite challenging...
This thesis presents an interactive software tool for tracking a moving object in a video. In particular, we focus on the problem of tracking a player in American football videos. Object tracking is one of the fundamental problems in computer vision. It is one of the most important components in...
The purpose of this paper is to discuss some of the theory of Boolean matrices and apply this theory to construct contact networks by using algebraic methods.
The first section of this paper (Chapter I to III) describes Boolean algebra and its properties, the theory of Boolean matrices, and the...
Biologists regularly collect images of leaves for their further studies. One such biological study of leaves is scoring the phenomic characters of leaves for the construction of the Tree of Life (ToL), i.e. the evolutionary lineage of taxa in botany. There is an opportunity for computer vision to help biologists...
Applications supporting a graphical user interface (GUI) are difficult to write. While existing tools can accelerate software development, they suffer from a number of problems that limit their helpfulness. They offer too little functionality, and support only a small part of the GUI software development task. They lack architectural models...
The study of physical activity is important in improving people’s health as it can help people understand the relationship between physical activity and health. Accelerometers, due to its small size, low cost, convenience and its ability to provide objective information about the frequency, intensity, and duration of physical activity, has...
Novelty detection plays an important role in machine learning and signal processing. This
project studies novelty detection in a new setting where the data object is represented as
a bag of instances and associated with multiple class labels, referred to as multi-instance
multi-label (MIML) learning. Contrary to the common assumption...
Protein secondary structure prediction plays a pivotal role in predicting protein folding in three-dimensions. Its task is to assign each residue one of the three secondary structure classes helix, strand, or random coil. This is an instance of the problem of sequential supervised learning in machine learning. This thesis describes...
"What’s wrong with this AI?" Explainable AI (XAI) researchers are moving beyond explaining an AI’s actions, to helping users detect an AI’s failures. However this detection may not be enough—for actionability, we often need to pinpoint which part failed. We investigate how AAR/AI, a structured assessment process, supports users with...
The conventional way of debugging is to examine the program's state at various points during execution. With the addition of message passing as a means of communication and synchronization in message passing programs, the state of pending message operations also needs to be examined. Current parallel debuggers or analysis tools...
Internet of Things (IoT) is an integral part of application domains such as smart-home, digital healthcare, smart grid systems and vehicular networks. Various standard public key cryptography techniques (e.g., key exchange, public key encryption, digital signature) are available to provide fundamental security services for IoTs. However, despite their pervasiveness and...
Application Stores, such as the iTunes App Store, give developers access to their users’ complaints and requests in the form of application reviews. However, little is known about how developers are responding to application reviews. Without such knowledge developers, users, Application Stores, and researchers could make incorrect assumptions. To address...
Asymmetric tensor fields are useful for understanding fluid flow and solid deformation. They present new challenges, however, for traditional tensor field visualization techniques such as hyperstreamline placement and glyph packing. This is because the physical behavior of tensors inside real domains where eigenvalues are real is fundamentally different from the...
Attention maps are popular tools of explaining the decisions of convolutional neural net-works (CNNs) for image classification. Typically, for each image of interest, a single attention map is produced, which assigns weights to pixels based on their importance to the classification. We argue that a single attention map provides an...
With the advent of Artificial Intelligence (AI) in every sphere of life in today's day and age, it has become increasingly important for non-AI experts to be able to comprehend the underlying logic of how AI systems work, assess them and find faults in these systems, particularly when they are...
This project is an interactive environment which allows the user to explore various sound generation techniques. The three methods of sound generation used are (1) FM synthesis, (2) Additive synthesis, and (3) Karplus/Strong synthesis of plucked strings. The project also provides the capability to display the generated sound waveforms and...
Modeling tire-snow interaction is important in designing effective snow tires, which directly affects road safety during wintry weather. Unfortunately, tires have complex tread designs and the physical properties of snow have not been characterized. We employ the Material Point Method (MPM) for simulating a material that mimics the fracturing and...
Visual programming languages (VPLs) have been widely used to support end-user programming. However, end users are still not able to reuse code as actively as professional programmers, even when given abundant resources such as a large VPL program repository. One reason may be that current VPL development environments lack features...
Authentication is a means of developing an electronic signature that works like a written signature. It assumes that your data is publicly known but nevertheless ensures that the message is not tampered with and that you have an audit trail.
This project discusses the techniques and concepts used to design...
The Soil Conditioning Index (SCI) aids the conservationist in designing crop rotations and residue management practices when low organic matter, poor soil tilt, and crusting problems are identified. The Natural Resources and Conservation Services (NRCS) field staff and others use the SCI as a qualitative tool during conservation planning. In...
AMD SEV allows for the creation of fully encrypted virtual machines. This allows cloud computing tenants’ data to be secret to the cloud computing provider. However, it has been shown that the encryption scheme used by AMD can easily be broken. The attacker can create a copy of the virtual...
Automatic music transcription (AMT) is the task, given an acoustic representation of music, to recover a symbolic notation of the written notes expressed by the sound. Transcribing music with multiple notes sounding simultaneously is difficult for both humans and machines. Much existing work on AMT has focused on suitable acoustic...
Software history and version control systems (VCS) are an important source of information for developers. This entails the need for a principled understanding of developers’ information seeking in VCS, both for improving existing tools as well as understanding requirements for new tools. However, it is only recently that researchers have...
An important objective of tactical ad hoc networks is to deliver threat information from sensors to shooters efficiently and quickly. The information sent to a particular shooter should contain warnings about threats that are within some distance and/or within some time of the shooter's current location. In this thesis we...
We took the back-propagation algorithms of Werbos for recurrent and feed-forward neural networks and implemented them on machines with graphics processing units (GPU). The parallelism of these units gave our implementations a 10 to 100 fold increase in speed. For nets with less than 20 neurons the machine performed faster...
A study of the running time of several known algorithms and several new algorithms to compute the n[superscript th] element of the Fibonacci sequence is presented. Since the size of the n[superscript th] Fibonacci number grows exponentially with n, the number of bit operations, instead of the number of integer...
The results of a machine learning from user behavior can be thought of as a program, and like all programs, it may need to be debugged. Providing ways for the user to debug it matters because without the ability to fix errors, users may find that the learned program’s errors...
How can software practitioners assess whether their software supports diverse users? Although there are empirical processes that can be used to find “inclusivity bugs” piecemeal, what is often needed is a systematic inspection method to assess software’s support for diverse populations. To help fill this gap, this thesis introduces InclusiveMag,...
The art of software engineering inherently requires high-level problem solving and perseverance, as programmers and designers wrestle with complex design and implementation challenges in the process of turning loose concepts and ideas into working code. In the current developer ecosystem, engineers are commonly incentivized extrinsically by monetary rewards, approval or...
Emerging research shows that individual differences in how people use technology sometimes cluster by socioeconomic status (SES) and that when technology is not socioeconomically inclusive, low-SES individuals may abandon it. To understand how to improve technology’s SES-inclusivity, we present a multi-phase case study on SocioEconomicMag (SESMag), an emerging inspection method...
Movement intent decoders, which interpret volitional movement intent from human bioelectric signals, can be incorporated into modern neuroprostheses to offer people living with limb loss or paralysis the potential to regain their lost motor control. Machine learning methods have become the research standard for continuous decoders with high degrees of...
In the ever-evolving field of computer science (CS) education, the significance of teachers and their backgrounds have often been overshadowed by the predominant focus on students. Teachers in the K-12 often lack the necessary expertise and have limited support provided by existing CS-based curricula. While research on CS education effectiveness...
System dependence graphs, an interprocedural extension to program dependence graphs, are an important tool in the analysis of program source code, especially for performing program slicing upon that code. Given the complexity of most programs, and the difficulty of creating program slices, it is vital to create system dependence graphs...
Although there has been research into ways to design spreadsheet systems to improve the processes of creating new spreadsheets and of understanding existing ones, little attention has been given to helping users of these environments test their spreadsheets. To help address this need, we introduce two visual approaches to testing...
Preparing code for parallelization is one of the most time consuming programming tasks; approximately 24% of the program development activity is spend in this phase. In message passing systems, this is usually achieved by the addition of run-time message-passing library calls. The primitives provided by different message-passing libraries are similar,...
Graphics resource allocation has often existed on the periphery of graphics research, taking second place to faster or more realistic algorithms for global illumination and modeling. Most research has focused on generating sets of images that best match the effects one might see in photographs. While this approach works well...
An automated library system should be capable of providing at least all of the information and capabilities of existing manual catalogs. In addition, an automated system must provide the capability of manipulating that information to produce varying types of reports and statistics. This paper briefly:
- describes historical representations of...
With the rapid advancement of educational technology and the need for personalized, engaging content to accommodate diverse learning needs, Virtual Reality (VR) holds promises for the present and future. However, VR applications suffer from challenges, including usability concerns, lack of pedagogical value, and evaluation standards. This thesis focuses on two...
Free and open source software (FOSS) projects primarily rely on the efforts of volunteer contributors from around the world. For this reason, recruiting and retaining contributor is vital to the sustainability and growth of FOSS projects. This notion became the jumping-off point for this three-part investigation into the cultural structure...