43,785 research outputs found

    Predicting and Evaluating Software Model Growth in the Automotive Industry

    Full text link
    The size of a software artifact influences the software quality and impacts the development process. In industry, when software size exceeds certain thresholds, memory errors accumulate and development tools might not be able to cope anymore, resulting in a lengthy program start up times, failing builds, or memory problems at unpredictable times. Thus, foreseeing critical growth in software modules meets a high demand in industrial practice. Predicting the time when the size grows to the level where maintenance is needed prevents unexpected efforts and helps to spot problematic artifacts before they become critical. Although the amount of prediction approaches in literature is vast, it is unclear how well they fit with prerequisites and expectations from practice. In this paper, we perform an industrial case study at an automotive manufacturer to explore applicability and usability of prediction approaches in practice. In a first step, we collect the most relevant prediction approaches from literature, including both, approaches using statistics and machine learning. Furthermore, we elicit expectations towards predictions from practitioners using a survey and stakeholder workshops. At the same time, we measure software size of 48 software artifacts by mining four years of revision history, resulting in 4,547 data points. In the last step, we assess the applicability of state-of-the-art prediction approaches using the collected data by systematically analyzing how well they fulfill the practitioners' expectations. Our main contribution is a comparison of commonly used prediction approaches in a real world industrial setting while considering stakeholder expectations. We show that the approaches provide significantly different results regarding prediction accuracy and that the statistical approaches fit our data best

    Model-based machine learning to identify clinical relevance in a high-resolution simulation of sepsis and trauma

    Get PDF
    Introduction: Sepsis is a devastating, costly, and complicated disease. It represents the summation of varied host immune responses in a clinical and physiological diagnosis. Despite extensive research, there is no current mediator-directed therapy, nor a biomarker panel able to categorize disease severity or reliably predict outcome. Although still distant from direct clinical translation, dynamic computational and mathematical models of acute systemic inflammation and sepsis are being developed. Although computationally intensive to run and calibrate, agent-based models (ABMs) are one type of model well suited for this. New analytical methods to efficiently extract knowledge from ABMs are needed. Specifically, machine-learning techniques are a promising option to augment the model development process such that parameterization and calibration are performed intelligently and efficiently. Methods: We used the Keras framework to train an Artificial Neural Network (ANN) for the purpose of identifying critical biological tipping points at which an in silico patient would heal naturally or require intervention in the Innate Immune Response Agent-Based Model (IIRABM). This ANN, determines simulated patient “survival” from cytokine state based on their overall resilience and the pathogenicity of any active infections experienced by the patient, defined by microbial invasiveness, toxigenesis, and environmental toxicity. These tipping points were gathered from previously generated datasets of simulated sweeps of the 4 IIRABM initializing parameters. Results: Using mean squared error as our loss function, we report an accuracy of greater than 85% with inclusion of 20% of the training set. This accuracy was independently validated on withheld runs. We note that there is some amount of error that is inherent to this process as the determination of the tipping points is a computation which converges monotonically to the true value as a function of the number of stochastic replicates used to determine the point. Conclusion: Our method of regression of these critical points represents an alternative to traditional parameter-sweeping or sensitivity analysis techniques. Essentially, the ANN computes the boundaries of the clinically relevant space as a function of the model’s parameterization, eliminating the need for a brute-force exploration of model parameter space. In doing so, we demonstrate the successful development of this ANN which will allows for an efficient exploration of model parameter space

    A general guide to applying machine learning to computer architecture

    Get PDF
    The resurgence of machine learning since the late 1990s has been enabled by significant advances in computing performance and the growth of big data. The ability of these algorithms to detect complex patterns in data which are extremely difficult to achieve manually, helps to produce effective predictive models. Whilst computer architects have been accelerating the performance of machine learning algorithms with GPUs and custom hardware, there have been few implementations leveraging these algorithms to improve the computer system performance. The work that has been conducted, however, has produced considerably promising results. The purpose of this paper is to serve as a foundational base and guide to future computer architecture research seeking to make use of machine learning models for improving system efficiency. We describe a method that highlights when, why, and how to utilize machine learning models for improving system performance and provide a relevant example showcasing the effectiveness of applying machine learning in computer architecture. We describe a process of data generation every execution quantum and parameter engineering. This is followed by a survey of a set of popular machine learning models. We discuss their strengths and weaknesses and provide an evaluation of implementations for the purpose of creating a workload performance predictor for different core types in an x86 processor. The predictions can then be exploited by a scheduler for heterogeneous processors to improve the system throughput. The algorithms of focus are stochastic gradient descent based linear regression, decision trees, random forests, artificial neural networks, and k-nearest neighbors.This work has been supported by the European Research Council (ERC) Advanced Grant RoMoL (Grant Agreemnt 321253) and by the Spanish Ministry of Science and Innovation (contract TIN 2015-65316P).Peer ReviewedPostprint (published version

    Explaining Machine Learning Classifiers through Diverse Counterfactual Explanations

    Full text link
    Post-hoc explanations of machine learning models are crucial for people to understand and act on algorithmic predictions. An intriguing class of explanations is through counterfactuals, hypothetical examples that show people how to obtain a different prediction. We posit that effective counterfactual explanations should satisfy two properties: feasibility of the counterfactual actions given user context and constraints, and diversity among the counterfactuals presented. To this end, we propose a framework for generating and evaluating a diverse set of counterfactual explanations based on determinantal point processes. To evaluate the actionability of counterfactuals, we provide metrics that enable comparison of counterfactual-based methods to other local explanation methods. We further address necessary tradeoffs and point to causal implications in optimizing for counterfactuals. Our experiments on four real-world datasets show that our framework can generate a set of counterfactuals that are diverse and well approximate local decision boundaries, outperforming prior approaches to generating diverse counterfactuals. We provide an implementation of the framework at https://github.com/microsoft/DiCE.Comment: 13 page
    • …
    corecore