Electrical & Computer Engineering
Permanent URI for this communityhttp://hdl.handle.net/1903/2234
Browse
85 results
Search Results
Item Extending The Applicability of Non-Malleable Codes(2019) Kulkarni, Mukul; Dachman-Soled, Dana; Electrical Engineering; Digital Repository at the University of Maryland; University of Maryland (College Park, Md.)Modern cryptographic systems provide provable security guarantees as long as secret keys of the system remain confidential. However, if adversary learns some bits of information about the secret keys the security of the system can be breached. Side-channel attacks (like power analysis, timing analysis etc.) are one of the most effective tools employed by the adversaries to learn information pertaining to cryptographic secret keys. An adversary can also tamper with secret keys (say flip some bits) and observe the modified behavior of the cryptosystem, thereby leaking information about the secret keys. Dziembowski et al. (JACM 2018) defined the notion of non-malleable codes, a tool to protect memory against tampering. Non-malleable codes ensure that, when a codeword (generated by encoding an underlying message) is modified by some tampering function in a given tampering class, if the decoding of tampered codeword is incorrect then the decoded message is independent of the original message. In this dissertation, we focus on improving different aspects of non-malleable codes. Specifically, (1) we extend the class of tampering functions and present explicit constructions as well as general frameworks for constructing non-malleable codes. While most prior work considered ``compartmentalized" tampering functions, which modify parts of the codeword independently, we consider classes of tampering functions which can tamper with the entire codeword but are restricted in computational complexity. The tampering classes studied in this work include complexity classes $\mathsf{NC}^0$, and $\mathsf{AC}^0$. Also, earlier works focused on constructing non-malleable codes from scratch for different tampering classes, in this work we present a general framework for constructing non-malleable codes based on average-case hard problems for specific tampering families, and we instantiate our framework for various tampering classes including $\mathsf{AC}^0$. (2) The locality of code is the number of codeword blocks required to be accessed in order to decode/update a single block in the underlying message. We improve efficiency and usability by studying the optimal locality of non-malleable codes. We show that locally decodable and updatable non-malleable codes cannot have constant locality. We also give a matching upper bound that improves the locality of previous constructions. (3) We investigate a stronger variant of non-malleable codes called continuous non-malleable codes, which are known to be impossible to construct without computational assumptions. We show that setup assumptions such as common reference string (CRS) are also necessary to construct this stronger primitive. We present construction of continuous non-malleable codes in CRS model from weaker computational assumptions than assumptions used in prior work.Item Scalable and Accurate Memory System Simulation(2019) Li, Shang; Jacob, Bruce; Electrical Engineering; Digital Repository at the University of Maryland; University of Maryland (College Park, Md.)Memory systems today possess more complexity than ever. On one hand, main memory technology has a much more diverse portfolio. Other than the mainstream DDR DRAMs, a variety of DRAM protocols have been proliferating in certain domains. Non-Volatile Memory(NVM) also finally has commodity main memory products, introducing more heterogeneity to the main memory media. On the other hand, the scale of computer systems, from personal computers, server computers, to high performance computing systems, has been growing in response to increasing computing demand. Memory systems have to be able to keep scaling to avoid bottlenecking the whole system. However, current memory simulation works cannot accurately or efficiently model these developments, making it hard for researchers and developers to evaluate or to optimize designs for memory systems. In this study, we attack these issues from multiple angles. First, we develop a fast and validated cycle accurate main memory simulator that can accurately model almost all existing DRAM protocols and some NVM protocols, and it can be easily extended to support upcoming protocols as well. We showcase this simulator by conducting a thorough characterization over existing DRAM protocols and provide insights on memory system designs. Secondly, to efficiently simulate the increasingly paralleled memory systems, we propose a lax synchronization model that allows efficient parallel DRAM simulation. We build the first ever practical parallel DRAM simulator that can speedup the simulation by up to a factor of three with single digit percentage loss in accuracy comparing to cycle accurate simulations. We also developed mitigation schemes to further improve the accuracy with no additional performance cost. Moreover, we discuss the limitation of cycle accurate models, and explore the possibility of alternative modeling of DRAM. We propose a novel approach that converts DRAM timing simulation into a classification problem. By doing so we can make predictions on DRAM latency for each memory request upon first sight, which makes it compatible for scalable architecture simulation frameworks. We developed prototypes based on various machine learning models and they demonstrate excellent performance and accuracy results that makes them a promising alternative to cycle accurate models. Finally, for large scale memory systems where data movement is often the performance limiting factor, we propose a set of interconnect topologies and implement them in a parallel discrete event simulation framework. We evaluate the proposed topologies through simulation and prove that their scalability and performance exceeds existing topologies with increasing system size or workloads.Item Towards solving recognition and detection problems in real life(2019) Wu, Zhe; Davis, Larry S; Electrical Engineering; Digital Repository at the University of Maryland; University of Maryland (College Park, Md.)Recognition and detection are essential topics in video and image analysis, especially in applications towards real-life setting. There are lots of challenges that we need to solve from (a) various background conditions that could bury essential recognition cues, such as illumination, occlusion, poor data recording condition, etc. to (b) imperfect data annotation that can misguide the classifier and trap the learning process, and (c) intentionally image editing and filtering that make the image appealing but the trained classifiers easy to fail. The former type poses a great challenge to the recognition system, since finding the discriminative evidences from background noises is like finding a needle in a haystack. Missing annotation or incorrect annotation is inevitable during data annotation procedure. In the era of Big Data, minimizing the effect of this type of noise becomes more essential. For the artistic image filtering, we need to learn the stylization information from a limited number of filtered samples and make the trained model robust to various appearance transform. In this dissertation, we specifically study three types of visual problems in three challenging applications towards real-life setting. First, we study the deception detection in videos. We propose an automated approach for deception detection in real-life trial videos. Mining the subtle cue of deception is dicult due to its covert nature. At the mean time, we need to handle the background noises from the unconstrained setting. To solve this problem, we build a multi-modal system that takes into account three different modalities (visual, audio and text). On the vision side, our system uses classifiers trained on low level video features which predict human micro-expressions. We show that predictions of high-level micro-expressions can be used as features for deception prediction. MFCC (Mel-frequency Cepstral Coecients) features from the audio domain also provide a significant boost in performance, while information from transcripts is not very beneficial for our system. We demonstrate the effectiveness of utilizing multiple modalities than each single modality. We also present results of a user-study to analyze how well do average humans perform on this task, what modalities they use for deception detection and how they perform if only one modality is accessible. Besides, most work on automated deception detection (ADD) in video has two restrictions: (i) it focuses on a video of one person, and (ii) it focuses on a single act of deception in a one or two minute video. As an extension, we propose a new ADD framework which captures long term deception in a group setting. We study deception in the well-known Resistance game (like Mafia and Werewolf) which con- sists of 5-8 players of whom 2-3 are spies. Spies are deceptive throughout the game (typically 30-65 minutes) to keep their identity hidden. We develop an ensemble predictive model to identify spies in Resistance videos. We show that features from low-level and high-level video analysis are insucient, but when combined with a new class of features that we call spyrank, produce the best results. We achieve AUCs of over 0.70 in a fully automated setting. Second, we study missing annotation problem in the task of object detection. Missing annotation is an inevitable issue for large scale datasets. In this setting, the unlabeled object instances will be treated as background, which will generate an incorrect training signal for the detector. Interestingly, through a preliminary study, we observe that after dropping 30% of the annotations (and labeling them as background), the performance of CNN-based object detectors like Faster-RCNN only drops by 5% on the PASCAL VOC dataset. We provide a detailed explanation for this result. To further bridge the performance gap, we propose a simple yet effective solution, called Soft Sampling. Soft Sampling re-weights the gradients of RoIs as a function of overlap with positive instances. This ensures that the uncertain background regions are given a smaller weight compared to the hard- negatives. Extensive experiments on curated PASCAL VOC datasets demonstrate the effectiveness of the proposed Soft Sampling method at di↵erent annotation drop rates. Finally, we show that on OpenImagesV3, which is a real-world dataset with missing annotations, Soft Sampling outperforms standard detection baselines by over 3%. It was also included in the top performing entries in the OpenImagesV4 challenge conducted during ECCV 2018. Last, deep neural networks have been shown to suffer from poor generalization when small perturbations are added (like Gaussian noise), yet little work has been done to evaluate their robustness to more natural image transformations like photo filters. This chapter presents a study on how popular pretrained models are affected by commonly used Instagram filters. To this end, we introduce ImageNet-Instagram, a filtered version of ImageNet, where 20 popular Instagram filters are applied to each image in ImageNet. Our analysis suggests that simple structure preserving filters which only alter the global appearance of an image can lead to large differences in the convolutional feature space. To improve generalization, we introduce a lightweight de-stylization module that predicts parameters used for scaling and shifting feature maps to “undo” the changes incurred by filters, inverting the process of style trans- fer tasks. We further demonstrate the module can be readily plugged into modern CNN architectures together with skip connections. We conduct extensive studies on ImageNet-Instagram, and show quantitatively and qualitatively, that the proposed module, among other things, can effectively improve generalization by simply learn- ing normalization parameters without retraining the entire network, thus recovering the alterations in the feature space caused by the filters.Item Generalized Synchronization Trees(2019) Ferlez, James Robert; Marcus, Steven I; Cleaveland, Walter R; Electrical Engineering; Digital Repository at the University of Maryland; University of Maryland (College Park, Md.)We propose a novel framework for modeling cyber-physical systems (CPSs) that we call Generalized Synchronization Trees (GSTs). GSTs provide a rich framework for modeling systems that contain both discrete and continuous behavior in any combination, as well as enabling novel methods for analyzing such systems. GSTs were inspired by Milner's successful use of Synchronization Trees (STs) to model interconnected computing processes, and GSTs afford a means of applying those same perspectives to CPSs. In particular, STs -- and thus GSTs -- provide a very natural setting for studying bisimulation and composition. In this thesis, we study both matters from a number of different perspectives: different notions of bisimulation over GSTs are defined and their (unexpected) semantic differences are established; the relationship of GSTs to behavioral, state-based systems is demonstrated; a simple modal logic for GSTs is defined and its relationship to bisimulation is established, in particular with respect to Hennessy-Milner classes of GSTs; and finally, bisimulation is demonstrated to be a congruence for several different composition operators. First, we contribute a novel counterexample to the semantic equivalence of two common notions of bisimulation, as they are naturally adapted to GSTs; this is in contrast to the situation for discrete processes, where these two notions of bisimulation coincide. This example -- and the definitions of bisimulation on which it is based -- thus provides crucial guiding intuition for further study. Second, we demonstrate how GSTs may be regarded as "unrollings" of conventional state-based behavioral systems, in direct analog to the way STs may be regarded as "unrollings" of ordinary labeled transitions systems. Crucially, conditions are established under which this unrolling procedure is shown to preserve a notion of bisimulation, as it does in the discrete case. Third, we study the relationship between bisimulation for GSTs and a generalization of Hennessy-Milner Logic (HML) that we call Generalized Hennessy-Milner Logic (GHML). In particular, we establish a relationship between maximal Hennessy-Milner classes of discrete structures and maximal Hennessy-Milner classes of GSTs; a Hennessy-Milner class is a class of models for which modal equivalence implies bisimulation equivalence, and this direction of implication is seldom studied in the context of CPSs. Moreover, we translate Linear, Time-Invariant Systems -- regarded as behavioral systems -- into GSTs, and study the relationship between these GSTs and maximal Hennessy-Milner classes. Finally, we study the congruence properties of bisimulation with respect to several composition operators over GSTs. One such composition operator mirrors a synchronous composition operator defined over behavioral systems, so the relationship between GSTs and state-based systems leads to a natural congruence result. Another composition operator we consider is a novel generalization of the CSP parallel composition operator for discrete systems; for this operator, too, we establish that bisimulation is a congruence, although the operator itself has subtle, implicit restrictions that make this possible. We also show that discrete GSTs can capture the bisimulation semantics of HyPA, a hybrid process algebra; consequently, this is implicitly a congruence result over compositions obtained using HyPA terms for which bisimulation is a congruence.Item DIAGNOSING AND IMPROVING THE PERFORMANCE OF INTERNET ANYCAST(2019) Li, Zhihao; Spring, Neil; Electrical Engineering; Digital Repository at the University of Maryland; University of Maryland (College Park, Md.)IP anycast is widely used in Internet infrastructure, including many of the root and top-level DNS servers, major open DNS resolvers, and content delivery networks (CDNs). Increasing popularity of anycast in DNS resolvers involves it in most activities of Internet users. As a result, the performance of anycast deployments is critical to all the Internet users. What makes IP anycast such an attractive option for these globally replicated services are the desired properties that anycast would appear to achieve: reduced overall access latency for clients, improved scalability by distributing traffic across servers, and enhanced resilience to DDoS attacks. These desired properties, however, are not guaranteed. In anycast, a packet is directed to certain anycast site through inter-domain routing, which can fail to pick a route with better performance in terms of latency or load balance. Prior work has studied anycast deployments and painted a mixed picture of anycast performance: many clients of anycast are not served by their nearby anycast servers and experience large latency overheads; anycast sometimes does not balance load across sites effectively; the catchment of an anycast site is mostly stable, but it is very sensitive to routing changes. Although it was observed over a decade ago that anycast deployments can be inefficient, there exist surprisingly few explanations on the causes or solutions. In addition, most prior work evaluated only one or several deployments with measurement snapshots. I extended previous studies by large-scale and longitudinal measurements towards distinct anycast deployments, which can provide more complete insights on identifying performance bottlenecks and providing potential improvements. More importantly, I develop novel measurement techniques to identify the major causes for inefficiency in anycast, and propose a fix to it. In this dissertation, I defend the following thesis: Performance-unawareness of BGP routing leads to larger path inflation in anycast than in unicast; and with current topology and protocol support, a policy that selects routes based on geographic information could significantly reduce anycast inflation. In the first part of the dissertation, I use longitudinal measurements collected from a large Internet measurement platform towards distinct anycast deployments to quantitatively demonstrate the inefficiency in performance of anycast. I measured most root DNS servers, popular open DNS resolvers, and one of the major CDNs. With the passive and active measurements across multiple years, I illustrate that anycast performs poorly for most deployments that I measured: anycast is neither effective at directing queries to nearby sites, nor does it distribute traffic in a balanced manner. Furthermore, this longitudinal study over distinct anycast deployments shows that the performance has little correlation with number of sites. In the second part of the dissertation, I focus on identifying the root causes for the performance deficits in anycast. I develop novel measurement techniques to compare AS-level routes from client to multiple anycast sites. These techniques allow me to reaffirm that the major cause of the inefficiency in anycast is the performance- unawareness of inter-domain routing. With measurements from two anycast deployments, I illustrate how much latency inflation among clients can be attributed to the policy-based performance-unaware decisions made by BGP routing. In addition, I design BGP control plane experiments to directly reveal relative preference among routes, and how much such preference affects anycast performance. The newly discovered relative preferences shed light on improving state-of-art models of inter-domain routing for researchers. In the last part of the dissertation, I describe an incrementally deployable fix to the inefficiency of IP anycast. Prior work has proposed a particular deployment scheme for anycast to improve its performance: anycast servers should be deployed such that they all share the same upstream provider. However, this solution would require re-negotiating services that are not working under such a deployment. Moreover, to put the entire anycast service behind a single upstream provider introduces a single point of failure. In the last chapter, I show that a static hint with embedded geographic information in BGP announcements fixes most of the inefficiency in anycast. I evaluate the improvements from such static hints in BGP route selection mechanisms through simulation with real network traces. The simulation results show that the fix is promising: in the anycast deployments I evaluated, the fix reduces latency inflation for almost all clients, and reduces latency by 50ms for 23% to 33% of the clients. I further conduct control plane experiments to evaluate the effectiveness of the static hints in BGP announcements with real-world anycast deployments. This dissertation provides broad and longitudinal performance evaluation of distinct anycast deployments for different services, and identifies an at-fault weakness of BGP routing which is particularly amplified in anycast, i.e., route selection is based on policies and is unaware of performance. While applying the model of BGP routing to diagnose anycast, anycast itself serves as a magnifying glass to reveal new insights on the route selection process of the BGP in general. This work can help refine the model of route selection process that can be applied to various BGP- related studies. Finally, this dissertation provides suggestions to the community on improving anycast performance, which thus improves performance and reliability for many critical Internet infrastructure and ultimately benefits global Internet users.Item USER PERCEPTIONS OF AND ATTITUDES TOWARD ENCRYPTED COMMUNICATION(2019) Bai, Wei; Mazurek, Michelle L.; Electrical Engineering; Digital Repository at the University of Maryland; University of Maryland (College Park, Md.)As people rely more heavily on online communication, privacy becomes an increasingly critical concern. Users of communication services (e.g., email and messaging) risk breaches of confidentiality due to attacks on the service from outsiders or rogue employees, or even government subpoenas and network surveillance. End-to-end encryption, in which anyone cannot read the user's content, is the only way to fully protect their online communications from malicious attackers, rogue company employees, and government surveillance. Although in recent years we have witnessed considerable efforts to push end-to-end encryption into broader adoption, and indeed several popular messaging tools have adopted end-to-end encryption, some obstacles still remain which hinder general users from proactively and confidently adopting end-to-end encrypted communication tools and acknowledge their security benefits. In this dissertation, we investigated the adoption of end-to-end encrypted communication from a variety of user-centered perspectives. In the first part, we conducted a lab study (n=52), evaluating how general users understand the balance between the usability and security for different key management models in end-to-end encryption. We found that participants understood the models well and made coherent assessments about when different tradeoffs might be appropriate. Our participants recognized that the less-convenient exchange model was more secure overall, but found the security of the key-directory based model to be "good enough" for many everyday purposes. In the second part, we explored how general users value the usability and security tradeoffs for different approaches of searching over end-to-end encrypted messages. After systematizing these tradeoffs to identify key feature differences, we used these differences as a basis for a choice-based conjoint analysis experiment (n=160). We found that users indicated high relative importance for increasing privacy and minimizing local storage requirements. While privacy was more important overall, after the initial improvement was made, further improvement was considered less valuable. Also, local storage requirement was more important than adding marginal privacy. Since significant research indicated that non-expert users' mental models about end-to-end encryption led them to make mistakes when using these tools, in the third part of this dissertation, we took the first step to tackle this problem by providing high-level, roughly correct information about end-to-end encryption to non-expert users. In a lab study, participants (n=25) were shown one of several variations on a short tutorial. Participants were asked about their understanding of end-to-end encryption before and after the tutorial, as well as which information they found most useful and surprising. Overall, participants effectively learned many benefits and limitations of end-to-end encryption; however, some concerns and misconceptions still remained, and our participants even developed new ones. The results provided insight into how to structure new educational materials for end-to-end encryption.Item Sparse and Deep Representations for Face Recognition and Object Detection(2019) Xu, Hongyu; Chellappa, Rama; Electrical Engineering; Digital Repository at the University of Maryland; University of Maryland (College Park, Md.)Face recognition and object detection are two very fundamental visual recognition applications in computer vision. How to learn “good” feature representations using machine learning has become the cornerstone of perception-based systems. A good feature representation is often the one that is robust and discriminative to multiple instances of the same category. Starting from features such as intensity, histogram etc. in the image, followed by hand-crafted features, to the most recent sophisticated deep feature representations, we have witnessed the remarkable improvement in the ability of a feature learning algorithm to perform pattern recognition tasks such as face recognition and object detection. One of the conventional feature learning methods, dictionary learning has been proposed to learn discriminative and sparse representations for visual recognition. These dictionary learning methods can learn both representative and discriminative dictionaries, and the associated sparse representations are effective for vision tasks such as face recognition. More recently, deep features have been widely adopted by the computer vision community owing to the powerful deep neural network, which is capable of distilling information from high dimensional input spaces to a low dimensional semantic space. The research problems which comprise this dissertation lie at the cross section of conventional feature and deep feature learning approaches. Thus, in this dissertation, we study both sparse and deep representations for face recognition and object detection. First, we begin by studying the topic of spare representations. We present a simple thresholded feature learning algorithm under sparse support recovery. We show that under certain conditions, the thresholded feature exactly recovers the nonzero support of the sparse code. Secondly, based on the theoretical guarantees, we derive the model and algorithm named Dictionary Learning for Thresholded Features (DLTF), to learn the dictionary that is optimized for the thresholded feature. The DLTF dictionaries are specifically designed for using the thresholded feature at inference, which prioritize simplicity, efficiency, general usability and theoretical guarantees. Both synthetic simulations and real-data experiments (i.e. image clustering and unsupervised hashing) verify the competitive quantitative results and remarkable efficiency of applying thresholded features with DLTF dictionaries. Continuing our focus on investigating the sparse representation and its application to computer vision tasks, we address the sparse representations for unconstrained face verification/recognition problem. In the first part, we address the video-based face recognition problem since it brings more challenges due to the fact that the videos are often acquired under significant variations in poses, expressions, lighting conditions and backgrounds. In order to extract representations that are robust to these variations, we propose a structured dictionary learning framework. Specifically, we employ dictionary learning and low-rank approximation methods to preserve the invariant structure of face images in videos. The learned structured dictionary is both discriminative and reconstructive. We demonstrate the effectiveness of our approach through extensive experiments on three video-based face recognition datasets. Recently, template-based face verification has gained more popularity. Unlike traditional verification tasks, which evaluate on image-to-image or video-to-video pairs, template-based face verification/recognition methods can exploit training and/or gallery data containing a mixture of both images or videos from the person of interest. In the second part, we propose a regularized sparse coding approach for template-based face verification. First, we construct a reference dictionary, which represents the training set. Then we learn the discriminative sparse codes of the templates for verification through the proposed template regularized sparse coding approach. Finally, we measure the similarity between templates. However, in real world scenarios, training and test data are sampled from different distributions. Therefore, we also extend the dictionary learning techniques to tackle the domain adaptation problem, where the data from the training set (source domain) and test set (target domain) have different underlying distributions (domain shift). We propose a domain-adaptive dictionary learning framework to model the domain shift by generating a set of intermediate domains. These intermediate domains bridge the gap between the source and target domains. Specifically, we not only learn a common dictionary to encode the domain-shared features but also learn a set of domain specific dictionaries to model the domain shift. This separation enables us to learn more compact and reconstructive dictionaries for domain adaptation. The domain-adaptive features for recognition are finally derived by aligning all the recovered feature representations of both source and target along the domain path. We evaluate our approach on both cross-domain face recognition and object classification tasks. Finally, we study another fundamental problem in computer vision: generic object detection. Object detection has become one of the most valuable pattern recognition tasks, with great benefits in scene understanding, face recognition, action recognition, robotics and self-driving vehicles, etc. We propose a novel object detector named "Deep Regionlets" by blending deep learning and the traditional regionlet method. The proposed framework "Deep Regionlets" is able to address the limitations of traditional regionlet methods, leading to significant precision improvement by exploiting the power of deep convolutional neural networks. Furthermore, we conduct a detailed analysis of our approach to understand its merits and properties. Extensive experiments on two detection benchmark datasets show that the proposed deep regionlet approach outperforms several state-of-the-art competitors.Item TOWARDS EFFICIENT PRESENTATION AND INTERACTION IN VISUAL DATA ANALYSIS(2019) Cui, Zhe; JaJa, Joseph; Elmqvist, Niklas; Electrical Engineering; Digital Repository at the University of Maryland; University of Maryland (College Park, Md.)The "data explosion'' since the era of the Internet has increased data size tremendously, from several hundred Megabytes to millions of Terabytes. Large amounts of data may not fit into memory, and a proper way of handling and processing the data is necessary. Besides, analyses of such large scale data requires complex and time consuming algorithms. On the other hand, humans play an important role in steering and driving the data analysis, while there are often times when people have a hard time getting an overview of the data or knowing which analysis to run. Sometimes they may not even know where to start. There is a huge gap between the data and understanding. An intuitive way to facilitate data analysis is to visualize it. Visualization is understandable and illustrative, while using it to support fast and rapid data exploration of large scale datasets has been a challenge for a long time. In this dissertation, we aim to facilitate efficient visual data exploration of large scale datasets from two perspectives: efficiency and interaction. The former indicates how users could understand the data efficiently, this depends on various factors, such as how fast data is processed and how data is presented, while the latter focuses more on the users: how they deal with the data and why they interact with the system in a particular way. In order to improve the efficiency of data exploration, we have looked into two steps in the visualization pipeline: rendering and processing (computations). We first address visualization rendering of large dataset through a thorough evaluation of web-based visualization performance. We evaluate and understand the page loading effects of Scalable Vector Graphics (SVG), a popular image format for interactive visualization on the web browsers. To understand the scalability of individual elements in SVG based visualization, we conduct performance tests on different types of charts, in different phases of rendering process. From the results, we have figured out optimization techniques and guidelines to achieve better performance when rendering SVG visualization. Secondly, we present a pure browser based distributed computing framework (VisHive) that exploits computational power from co-located idle devices for visualization. The VisHive framework speeds up web-based visualization, which is originally designed for single computer and cannot make use of additional computational resources on the client side. It takes advantage of multiple devices that today's users often have access to. VisHive constructs visualization applications that can transparently connect multiple devices into an ad-hoc cluster for local computation. It requires no specific software to be downloaded for setup. To achieve a more interactive data analysis process, we first propose a proactive visual analytics system (DataSite) that enable users to analyze the data smoothly with a list of pre-defined algorithms. DataSite provides results through selecting and executing computations using automatic server-side computation. It utilizes computational resources exhaustively during data analysis to reduce the burden of human thinking. Analyzing results identified by these background processes are surfaced as status updates in a feed on the front-end, akin to posts in a social media feed. DataSite effectively turns data analysis into a conversation between the user and the computer, thereby reducing the cognitive load and domain knowledge requirements on users. Next we apply the concept of proactive data analysis to genomic data, and explore how to improve data analysis through adaptive computations in bioinformatics domain. We build Epiviz Feed, a web application that supports proactive visual and statistical analysis of genomic data. It addresses common and popular biological questions that may be asked by the analyst, and shortens the time of processing and analyzing the data with automatic computations. We further present a computational steering mechanism for visual analytics that prioritizes computations performed on the dataset leveraging the analyst's navigational behavior in the data. The web-based system, called Sherpa, provides computational modules for genomic data analysis, where independent algorithms calculate test statistics relevant to biological inferences about gene regulation in various tumor types and their corresponding normal tissues.Item GREMLIN++ & BITGRAPH: IMPLEMENTING THE GREMLIN TRAVERSAL LANGUAGE AND A GPU-ACCELERATED GRAPH COMPUTING FRAMEWORK IN C++(2019) Barghi, Alexander; Franklin, Manoj; Electrical Engineering; Digital Repository at the University of Maryland; University of Maryland (College Park, Md.)This thesis consists of two major components, Gremlin++ and BitGraph. Gremlin++ is a C++ implementation of the Gremlin graph traversal language designed for interfacing with C++ graph processing backends. BitGraph is a graph backend written in C++ designed to outperform Java-based competitors, such as JanusGraph and Neo4j . It also offers GPU acceleration through OpenCL . Designing the two components of this thesis was a major undertaking that involved implementing the semantics of Gremlin in C++, and then writing the computing framework to execute Gremlin’s traversal steps in BitGraph, along with runtime optimizations and backend-specific steps. There were many important and novel design decisions made along the way, including some which yielded both advantages and disadvantages over Java-Gremlin. BitGraph was also compared to several major backends, including TinkerGraph, JanusGraph, and Neo4j. In this comparison, BitGraph offered the fastest overall runtime, primarily due to data ingest speedup.Item Constraints and Priors for Inverse Rendering from Limited Observations(2019) SENGUPTA, SOUMYADIP; Jacobs, David W; Electrical Engineering; Digital Repository at the University of Maryland; University of Maryland (College Park, Md.)Inverse Rendering deals with recovering the underlying intrinsic components of an image, i.e. geometry, reflectance, illumination and the camera with which the image was captured. Inferring these intrinsic components of an image is a fundamental problem in Computer Vision. Solving Inverse Rendering unlocks a host of real world applications in Augmented and Virtual Reality, Robotics, Computational Photography, and gaming. Researchers have made significant progress in solving Inverse Rendering from a large number of images of an object or a scene under relatively constrained settings. However, most real life applications rely on a single or a small number of images captured in an unconstrained environment. Thus in this thesis, we explore Inverse Rendering under limited observations from unconstrained images. We consider two different approaches for solving Inverse Rendering under limited observations. First, we consider learning data-driven priors that can be used for Inverse Rendering from a single image. Our goal is to jointly learn all intrinsic components of an image, such that we can recombine them and train on unlabeled real data using self-supervised reconstruction loss. A key component that enables self-supervision is a differentiable rendering module that can combine the intrinsic components to accurately regenerate the image. We show how such a self-supervised reconstruction loss can be used for Inverse Rendering of faces. While this is relatively straightforward for faces, complex appearance effects (e.g. inter-reflections, cast-shadows, and near-field lighting) present in a scene can’t be captured with a differentiable rendering module. Thus we also propose a deep CNN based differentiable rendering module (Residual Appearance Renderer) that can capture these complex appearance effects and enable self-supervised learning. Another contribution is a novel Inverse Rendering architecture, SfSNet, that performs Inverse Rendering for faces and scenes. Second, we consider enforcing low-rank multi-view constraints in an optimization framework to enable Inverse Rendering from a few images. To this end, we propose a novel multi-view rank constraint that connects all cameras capturing all the images in a scene and is enforced to ensure accurate camera recovery. We also jointly enforce a low-rank constraint and remove ambiguity to perform accurate Uncalibrated Photometric Stereo from a few images. In these problems, we formulate a constrained low-rank optimization problem in the presence of noisy estimates and missing data. Our proposed optimization framework can handle this non-convex optimization using Alternate Direction Method of Multipliers (ADMM). Given a few images, enforcing low-rank constraints significantly improves Inverse Rendering.