05 Fakultät Informatik, Elektrotechnik und Informationstechnik

Permanent URI for this collectionhttps://elib.uni-stuttgart.de/handle/11682/6

Browse

Search Results

Now showing 1 - 10 of 249
  • Thumbnail Image
    ItemOpen Access
    Challenges of computational social science analysis with NLP methods
    (2022) Dayanik, Erenay; Padó, Sebastian (Prof. Dr.)
    Computational Social Science (CSS) is an emerging research area at the intersection of social science and computer science, where problems of societal relevance can be addressed by novel computational methods. With the recent advances in machine learning and natural language processing as well as the availability of textual data, CSS has opened up to new possibilities, but also methodological challenges. In this thesis, we present a line of work on developing methods and addressing challenges in terms of data annotation and modeling for computational political science and social media analysis, two highly popular and active research areas within CSS. In the first part of the thesis, we focus on a use case from computational political science, namely Discourse Network Analysis (DNA), a framework that aims at analyzing the structures behind complex societal discussions. We investigate how this style of analysis, which is traditionally performed manually, can be automated. We start by providing a requirement analysis outlining a roadmap to decompose the complex DNA task into several conceptually simpler sub-tasks. Then, we introduce NLP models with various configurations to automate two of the sub-tasks given by the requirement analysis, namely claim detection and classification, based on different neural network architectures ranging from unidirectional LSTMs to Transformer based architectures. In the second part of the thesis, we shift our focus to fairness, a central concern in CSS. Our goal in this part of the thesis is to analyze and improve the performances of NLP models used in CSS in terms of fairness and robustness while maintaining their overall performance. With that in mind, we first analyze the above-mentioned claim detection and classification models and propose techniques to improve model fairness and overall performance. After that, we broaden our focus to social media analysis, another highly active subdomain of CSS. Here, we study text classification of the correlated attributes, which pose an important but often overlooked challenge to model fairness. Our last contribution is to discuss the limitations of the current statistical methods applied for bias identification; to propose a multivariate regression based approach; and to show that, through experiments conducted on social media data, it can be used as a complementary method for bias identification and analysis tasks. Overall, our work takes a step towards increasing the understanding of challenges of computational social science. We hope that both political scientists and NLP scholars can make use of the insights from this thesis in their research.
  • Thumbnail Image
    ItemOpen Access
    Analyzing code corpora to improve the correctness and reliability of programs
    (2021) Patra, Jibesh; Pradel, Michael (Prof. Dr.)
    Bugs in software are commonplace, challenging, and expensive to deal with. One widely used direction is to use program analyses and reason about software to detect bugs in them. In recent years, the growth of areas like web application development and data analysis has produced large amounts of publicly available source code corpora, primarily written in dynamically typed languages, such as Python and JavaScript. It is challenging to reason about programs written in such languages because of the presence of dynamic features and the lack of statically declared types. This dissertation argues that, to build software developer tools for detecting and understanding bugs, it is worthwhile to analyze code corpora, which can uncover code idioms, runtime information, and natural language constructs such as comments. The dissertation is divided into three corpus-based approaches that support our argument. In the first part, we present static analyses over code corpora to generate new programs, to perform mutations on existing programs, and to generate data for effective training of neural models. We provide empirical evidence that the static analyses can scale to thousands of files and the trained models are useful in finding bugs in code. The second part of this dissertation presents dynamic analyses over code corpora. Our evaluations show that the analyses are effective in uncovering unexpected behaviors when multiple JavaScript libraries are included together and to generate data for training bug-finding neural models. Finally, we show that a corpus-based analysis can be useful for input reduction, which can help developers to find a smaller subset of an input that still triggers the required behavior. We envision that the current dissertation motivates future endeavors in corpus-based analysis to alleviate some of the challenges faced while ensuring the reliability and correctness of software. One direction is to combine data obtained by static and dynamic analyses over code corpora for training. Another direction is to use meta-learning approaches, where a model is trained using data extracted from the code corpora of one language and used for another language.
  • Thumbnail Image
    ItemOpen Access
    Stochastic neural networks : components, analysis, limitations
    (2022) Neugebauer, Florian; Polian, Ilia (Prof. Dr.)
    Stochastic computing (SC) promises an area and power-efficient alternative to conventional binary implementations of many important arithmetic functions. SC achieves this by employing a stream-based number format called Stochastic numbers (SNs), which enables bit-sequential computations, in contrast to conventional binary computations that are performed on entire words at once. An SN encodes a value probabilistically with equal weight for every bit in the stream. This encoding results in approximate computations, causing a trade-off between power consumption, area and computation accuracy. The prime example for efficient computation in SC is multiplication, which can be performed with only a single gate. SC is therefore an attractive alternative to conventional binary implementations in applications that contain a large number of basic arithmetic operations and are able to tolerate the approximate nature of SC. The most widely considered class of applications in this regard is neural networks (NNs), with convolutional neural networks (CNNs) as the prime target for SC. In recent years, steady advances have been made in the implementation of SC-based CNNs (SCNNs). At the same time however, a number of challenges have been identified as well: SCNNs need to handle large amounts of data, which has to be converted from conventional binary format into SNs. This conversion is hardware intensive and takes up a significant portion of a stochastic circuit's area, especially if the SNs have to be generated independently of each other. Furthermore, some commonly used functions in CNNs, such as max-pooling, have no exact corresponding SC implementation, which reduces the accuracy of SCNNs. The first part of this work proposes solutions to these challenges by introducing new stochastic components: A new stochastic number generator (SNG) that is able to generate a large number of SNs at the same time and a stochastic maximum circuit that enables an accurate implementation of max-pooling operations in SCNNs. In addition, the first part of this work presents a detailed investigation of the behaviour of an SCNN and its components under timing errors. The error tolerance of SC is often quoted as one of its advantages, stemming from the fact that any single bit of an SN contributes only very little to its value. In contrast, bits in conventional binary formats have different weights and can contribute as much as 50\% of a number's value. SC is therefore a candidate for extreme low-power systems, as it could potentially tolerate timing errors that appear in such environments. While the error tolerance of SC image processing systems has been demonstrated before, a detailed investigation into SCNNs in this regard has been missing so far. It will be shown that SC is not error tolerant in general, but rather that SC components behave differently even if they implement the same function, and that error tolerance of an SC system further depends on the error model. In the second part of this work, a theoretical analysis into the accuracy and limitations of SC systems is presented. An existing framework to analyse and manage the accuracy of combinational stochastic circuits is extended to cover sequential circuits. This framework enables a designer to predict the effect of small design changes on the accuracy of a circuit and determine important parameters such as SN length without extensive simulations. It will further be shown that the functions that are possible to implement in SC are limited. Due to the probabilistic nature of SC, some arithmetic functions suffer from a small bias when implemented as a stochastic circuit, including the max-pooling function in SCNNs.
  • Thumbnail Image
    ItemOpen Access
    Scalable traffic engineering heuristics for time-triggered communication in real-time networks
    (2026) Geppert, Heiko; Rothermel, Kurt (Prof. Dr. rer. nat. Dr. h. c.)
    Distributed safety-critical cyber-physical systems require real-time behavior. This means they must respond not just quickly, but in time, to new situations considering both, the task processing and network communication time. From a networking perspective, meticulous, time-driven traffic planning performed at the frame level is necessary to guarantee low end-to-end delay bounds and low latency. This involves carefully planning transmission operations along each time-critical frame's network path are carefully planned, including precise timing, to limit or even eliminate interference from cross-traffic and ensure timely delivery. Since modern real-time systems can consist of hundreds or thousands of devices - for example, large manufacturing plants or continental-sized power grids - the traffic planning must be highly scalable. Although there are many traffic planning approaches in the literature, there is a lack of very fast heuristics that can handle very large stream sets and networks quickly. This thesis investigates traffic planning heuristics and optimization techniques, focusing on different aspects of the traffic planning domain. The traffic planning consists of novel methods for conflict-graph-based scheduling and new heuristics for very large instances of traffic planning problem. The optimizations include multicast partitioning, which combines the benefits of multicast and unicast traffic plans, and load-balanced stream placement, which generates traffic plans that can accommodate additional streams joining the system later. We created prototype implementations and analyzed their performance in solving the traffic planning problem. Our traffic plans yielded a higher accumulated network throughput or admitted more streams while maintaining computation times ranging from sub-seconds to minutes, even for extremely large-scale problem instances. The traffic planning methods and optimization techniques presented in this thesis can be applied to modern real-time networking technologies, such as Time-Sensitive Networking and TTEthernet.
  • Thumbnail Image
    ItemOpen Access
    Architectural refactoring to microservices : a quality-driven methodology for modernizing monolithic applications
    (2024) Fritzsch, Jonas; Wagner, Stefan (Prof. Dr.)
    Context and Problem: The microservices architectural style has revolutionized the way modern software systems are developed and operated, and has become the de facto standard for cloud-based applications. However, existing systems are often designed as monoliths, which are associated with inflexible processes, long release cycles, and an architecture incapable of leveraging the advantages of cloud environments. The adoption of microservices would require an architectural refactoring, entailing redevelopments of parts or even the entire application. Often associated with extensive manual effort, the targeted, quality-oriented, and semi-automated decomposition into a set of self-contained services remains problematic. Software architects look for resource-efficient ways to provide predictable results and guidance in this highly individual process. Objective: To systematically guide software architects and developers in modernizing their software systems, we seek to provide a holistic methodology for systematic and quality-driven migrations towards microservices. As part of it, we search solutions for the targeted and automated decomposition into services, and ways to support a quality-oriented design based on established patterns and best practices. Our work aims to provide industry-relevant methods that address the gap between academia and practice by facilitating the transfer of knowledge. Methods: In an overarching design science research process, we create a migration methodology that we implement as a web-based application. For analysis and evaluation, we apply established methods in empirical software engineering, such as case study research, surveys, and semi-structured interviews with experts. Our secondary research to summarize the current state of scientific advances relies on consecutive literature searches and rapid reviews, a lightweight method derived from systematic reviews. Contributions: Based on two primary empirical interview studies with 25 software professionals, we collected evidence on the intentions, strategies, and challenges of migrating monolithic applications to microservices, complemented by requirements for tool support and automation. Over four iterations, we reviewed 110 scientific publications on approaches for architectural refactoring and migration to microservices. To guide architects and developers in a migration process, we conceptualized a framework, along with a dedicated quality model that reflects a quality-driven migration process. Based on latest technologies and a modern user interface design, we realized our concept as a web-based application in an agile development process with early involvement of potential users. In a multi-faceted evaluation, we examined its ability to provide actionable guidance for practitioners. To this end, we conducted three surveys and one interview study with a total of 26 participants, complemented by two longitudinal case studies in an industrial context. Conclusion: We propose a holistic methodology for modernizing monolithic applications to microservices that comprises a framework and a dedicated quality model. Our contributions support architects in making informed decisions about microservices adoption, and furthermore guide them through a systematic transformation process. The evaluations showed an overall positive result in terms of effectiveness, usefulness, and usability, while both case studies demonstrated a successful application in an industrial environment. By sharing important study artifacts, we support researchers developing industry-focused methods, who can profit from our insights and experiences. Moreover, we regard our design science approach to leveraging academic research by practice as transferable to other scientific disciplines.
  • Thumbnail Image
    ItemOpen Access
  • Thumbnail Image
    ItemOpen Access
    Änderungstolerante Serialisierung großer Datensätze für mehrsprachige Programmanalysen
    (2017) Felden, Timm; Plödereder, Erhard (Prof. Dr.)
  • Thumbnail Image
    ItemOpen Access
    From irregular parallelism to portable GPU kernels : enabling efficient task-based GPU programming with HPX, Kokkos and CPPuddle to accelerate stellar mergers
    (2026) Daiß, Gregor; Pflüger, Dirk (Prof. Dr.)
    Adaptive, tree-based structures are the foundation of many of the most efficient algorithms and applications. Yet, running such applications on supercomputers is challenging, as the application developers have to handle, for example, distributed tree-traversals and load balancing. Distributed, asynchronous many-task runtime systems such as HPX aim to alleviate these challenges by embracing fine-grained tasks, enabling a fine interweaving of communication and computation through their task-graph. However, the fine-grained approach embraced by HPX is the antithesis for implementing efficient GPU kernels, which leverage the large numbers of available parallel work items to scale to all compute units of a GPU and to hide latencies. This is compounded by the synchronization of GPU operations, which necessitates blocking entire CPU threads, nullifying any potential benefits of interleaving CPU tasks with the GPU operations through the HPX task-graph. Hence, efficiently leveraging GPU-accelerated supercomputers with HPX applications can still be challenging, albeit for different reasons. In this work, we reconcile these differences and unlock the computational performance of GPUs for HPX applications. Our contributions can be used in any HPX application. However, to benchmark them, we turn to a specific real-world HPX application, the astrophysics code Octo-Tiger. Octo-Tiger is used for large-scale simulations of stellar mergers and demonstrates both the pitfalls and the potential of leveraging large GPU-accelerated supercomputers for applications that rely on such a task-based approach. We refactored Octo-Tiger's CPU-only code, ported its computational hotspots to GPUs, and ultimately turned it into a GPU-accelerated application, greatly speeding up these hotspots with various new GPU compute kernels. These new GPU kernels achieve speedups of up to $283$x compared to Octo-Tiger's previous implementation. However, they also demonstrate the pitfalls of simply replacing CPU tasks by GPU kernels, as Octo-Tiger's overall runtime initially increased almost eightfold when using them despite these individual speedups within the hotspots. To solve the limiting problems, we employ various techniques. Most notably, we integrated asynchronous GPU operations into the HPX task-graph using a polling approach, dynamic GPU kernel fusion based on specialized executors, and GPU memory pools that are optimized for HPX. With these solutions in place, we translate the individual speedups of the GPU kernels into tangible speedups for the entire application of up to 8.5x. Furthermore, we combine this approach with the performance portability library Kokkos, to be able to target different GPU-accelerated supercomputers. In this work, we particularly demonstrate scalability on the supercomputers Perlmutter and Frontier, distributing Octo-Tiger across over a thousand GPU compute nodes.
  • Thumbnail Image
    ItemOpen Access
    Data-integrated methods for performance improvement of massively parallel coupled simulations
    (2022) Totounferoush, Amin; Schulte, Miriam (Prof. Dr.)
    This thesis presents data-integrated methods to improve the computational performance of partitioned multi-physics simulations, particularly on highly parallel systems. Partitioned methods allow using available single-physic solvers and well-validated numerical methods for multi-physics simulations by decomposing the domain into smaller sub-domains. Each sub-domain is solved by a separate solver and an external library is incorporated to couple the solvers. This significantly reduces the software development cost and enhances flexibility, while it introduces new challenges that must be addressed carefully. These challenges include but are not limited to, efficient data communication between sub-domains, data mapping between not-matching meshes, inter-solver load balancing, and equation coupling. In the current work, inter-solver communication is improved by introducing a two-level communication initialization scheme to the coupling library preCICE. The new method significantly speed-ups the initialization and removes memory bottlenecks of the previous implementation. In addition, a data-driven inter-solver load balancing method is developed to efficiently distribute available computational resources between coupled single-physic solvers. This method employs both regressions and deep neural networks (DNN) for modeling the performance of the solvers and derives and solves an optimization problem to distribute the available CPU and GPU cores among solvers. To accelerate the equation coupling between strongly coupled solvers, a hybrid framework is developed that integrates DNNs and classical solvers. The DNN computes a solution estimation for each time step which is used by classical solvers as a first guess to compute the final solution. To preserve DNN's efficiency during the simulation, a dynamic re-training strategy is introduced that updates the DNN's weights on-the-fly. The cheap but accurate solution estimation by the DNN surrogate solver significantly reduces the number of subsequent classical iterations necessary for solution convergence. Finally, a highly scalable simulation environment is introduced for fluid-structure interaction problems. The environment consists of highly parallel numerical solvers and an efficient and scalable coupling library. This framework is able to efficiently exploit both CPU-only and hybrid CPU-GPU machines. Numerical performance investigations using a complex test case demonstrate a very high parallel efficiency on a large number of CPUs and a significant speed-up due to the GPU acceleration.
  • Thumbnail Image
    ItemOpen Access
    Methods for mining political opinions from texts and large language models
    (2025) Ceron, Tanise; Padó, Sebastian (Prof. Dr.)
    In democratic societies, the diversity of opinions enables individuals to express their values and engage with differing perspectives. This thesis investigates political opinions through two lenses: texts and models, examining both ideological positions and policy issue preferences. While ideological analysis is well-established, policy issue preferences represent a more nuanced, underexplored research area. Investigating political opinions from political parties is essential for understanding voter choices, policy decision-making, and the shifts in party agendas over time. In the first part of this thesis, I focus on methods for mining political opinions from party manifestos. Automating the identification of political opinions helps process large datasets, minimize annotation time, and offer timely updates on newly released information from parties. I investigate how accurately party positions can be identified from texts with minimal annotations and the level of detail achievable in this process. We also explore the extent to which party positions can be identified on a large scale across different languages and countries.Results demonstrate that the identification of party positions can be distinguished between the tasks of political scaling and positioning which have substantial differences in terms of evaluation and application. Additionally, findings indicate that improving text representations through in-domain fine-tuning significantly benefits the performance when methods depend on text similarity. And finally, party scaling across languages achieves high performance with multilingual models. Models have become my object of study with the advent of LLMs. They introduce new concerns regarding the type of biases embedded and reproduced by them. Given the importance of shedding light on political biases in LLMs, the second part of this thesis addresses the evaluation and identification of political biases in LLMs. Our research questions center on robustly evaluating LLMs for biases and identifying the political biases regarding ideology and policy issue preferences. This thesis provides definitions of political bias and political worldview, which aid in designing methods for their evaluation. Moreover, it contributes with a framework for a robust evaluation of biases in LLMs and a dataset for evaluating political opinions in LLMs. Finally, findings indicate that small parameter size models are not reliable in their answers, and that LLMs do hold consistent political worldviews in relation to some policy issues. Overall, they highlight the necessity for continued research to understand the complexities and societal implications of developing models integrating diverse political opinions into AI systems.