English
Related papers

Related papers: Efficient Differentiable Programming in a Function…

200 papers

In the context of structure-to-structure transformation tasks, learning sequences of discrete symbolic operations poses significant challenges due to their non-differentiability. To facilitate the learning of these symbolic sequences, we…

Computation and Language · Computer Science 2023-06-02 Paul Soulos , Edward Hu , Kate McCurdy , Yunmo Chen , Roland Fernandez , Paul Smolensky , Jianfeng Gao

Natural Language Processing (NLP) helps empower intelligent machines by enhancing a better understanding of the human language for linguistic-based human-computer communication. Recent developments in computational power and the advent of…

Computation and Language · Computer Science 2021-03-02 Amirsina Torfi , Rouzbeh A. Shirvani , Yaser Keneshloo , Nader Tavaf , Edward A. Fox

Feature engineering, a crucial step of machine learning, aims to extract useful features from raw data to improve data quality. In recent years, great efforts have been devoted to Automated Feature Engineering (AutoFE) to replace expensive…

Machine Learning · Computer Science 2022-10-11 Guanghui Zhu , Zhuoer Xu , Xu Guo , Chunfeng Yuan , Yihua Huang

Fast Fourier transform algorithms are an arsenal of effective tools for solving various problems of analysis and high-speed processing of signals of various natures. Almost all of these algorithms are designed to process sequences of…

Data Structures and Algorithms · Computer Science 2025-04-11 Aleksandr Cariow

How does one compile derivatives of tensor programs, such that the resulting code is purely functional (hence easier to optimize and parallelize) and provably efficient relative to the original program? We show that naively differentiating…

Programming Languages · Computer Science 2020-10-01 Gilbert Bernstein , Michael Mara , Tzu-Mao Li , Dougal Maclaurin , Jonathan Ragan-Kelley

Refinement transforms an abstract system model into a concrete, executable program, such that properties established for the abstract model carry over to the concrete implementation. Refinement has been used successfully in the development…

Logic in Computer Science · Computer Science 2021-10-27 Aurel Bílý , Christoph Matheja , Peter Müller

Much algorithmic research in NLP aims to efficiently manipulate rich formal structures. An algorithm designer typically seeks to provide guarantees about their proposed algorithm -- for example, that its running time or space complexity is…

Programming Languages · Computer Science 2025-12-30 Tim Vieira , Ryan Cotterell , Jason Eisner

We introduce a new setting, the category of $\omega$PAP spaces, for reasoning denotationally about expressive differentiable and probabilistic programming languages. Our semantics is general enough to assign meanings to most practical…

Programming Languages · Computer Science 2023-05-29 Mathieu Huot , Alexander K. Lew , Vikash K. Mansinghka , Sam Staton

This book is a graduate-level introduction to probabilistic programming. It not only provides a thorough background for anyone wishing to use a probabilistic programming system, but also introduces the techniques needed to design and build…

Machine Learning · Statistics 2021-10-20 Jan-Willem van de Meent , Brooks Paige , Hongseok Yang , Frank Wood

Interpretation methods and their restrictions to polynomials have been deeply used to control the termination and complexity of first-order term rewrite systems. This paper extends interpretation methods to a pure higher order functional…

Logic in Computer Science · Computer Science 2023-06-22 Emmanuel Hainry , Romain Péchoux

A large amount of numerically-oriented code is written and is being written in legacy languages. Much of this code could, in principle, make good use of data-parallel throughput-oriented computer architectures. Loo.py, a…

Programming Languages · Computer Science 2015-05-19 Andreas Klöckner

Machine learning techniques have been paramount throughout the last years, being applied in a wide range of tasks, such as classification, object recognition, person identification, and image segmentation. Nevertheless, conventional…

Machine Learning · Computer Science 2021-08-03 Gustavo Henrique de Rosa , João Paulo Papa , Alexandre Xavier Falcão

Dynamic programming languages, such as PHP, JavaScript, and Python, provide built-in data structures including associative arrays and objects with similar semantics-object properties can be created at run-time and accessed via arbitrary…

Software Engineering · Computer Science 2014-05-07 David Hauzar , Jan Kofroň , Pavel Baštecký

We present a system, called CASS, for the analysis of functional logic programs. The system is generic so that various kinds of analyses (e.g., groundness, non-determinism, demanded arguments) can be easily integrated. In order to analyze…

Programming Languages · Computer Science 2013-07-18 Michael Hanus , Fabian Reck

There exist many applications where it is necessary to approximate numerically derivatives of a function which is given by a computer procedure. In particular, all the fields of optimization have a special interest in such a kind of…

Numerical Analysis · Mathematics 2012-03-15 Yaroslav D. Sergeyev

Graphics Processing Units (GPUs) and other parallel devices are widely available and have the potential for accelerating a wide class of algorithms. However, expert programming skills are required to achieving maximum performance. hese…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-10-24 Robert Atkey , Michel Steuwer , Sam Lindley , Christophe Dubach

In mathematics and computer algebra, automatic differentiation (AD) is a set of techniques to evaluate the derivative of a function specified by a computer program. AD exploits the fact that every computer program, no matter how…

Mathematical Software · Computer Science 2021-02-03 Vassil Vassilev , Aleksandr Efremov , Oksana Shadura

Program comprehension is a fundamental task in software development and maintenance processes. Software developers often need to understand a large amount of existing code before they can develop new features or fix bugs in existing…

Machine Learning · Computer Science 2019-10-29 Vinoj Jayasundara , Nghi Duy Quoc Bui , Lingxiao Jiang , David Lo

The main goal of parallel processing is to provide users with performance that is much better than that of single processor systems. The execution of jobs is scheduled, which requires certain resources in order to meet certain criteria.…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-02-07 Yang Cao , Fei Wu , Thomas Robertazzi

We apply program verification technology to the problem of specifying and verifying automatic differentiation (AD) algorithms. We focus on define-by-run, a style of AD where the program that must be differentiated is executed and monitored…

Logic in Computer Science · Computer Science 2024-02-14 Paulo Emílio de Vilhena , François Pottier