Goto

Collaborating Authors

 tensorflow api


DLLens: Testing Deep Learning Libraries via LLM-aided Synthesis

arXiv.org Artificial Intelligence

Testing is a major approach to ensuring the quality of deep learning (DL) libraries. Existing testing techniques commonly adopt differential testing to relieve the need for test oracle construction. However, these techniques are limited in finding implementations that offer the same functionality and generating diverse test inputs for differential testing. This paper introduces DLLens, a novel differential testing technique for DL library testing. Our insight is that APIs in different DL libraries are commonly designed to accomplish various computations for the same set of published DL algorithms. Although the mapping of these APIs is not often one-to-one, we observe that their computations can be mutually simulated after proper composition and adaptation. The use of these simulation counterparts facilitates differential testing for the detection of functional DL library bugs. Leveraging the insight, we propose DLLens as a novel mechanism that utilizes a large language model (LLM) to synthesize valid counterparts of DL library APIs. To generate diverse test inputs, DLLens incorporates a static analysis method aided by LLM to extract path constraints from all execution paths in each API and its counterpart's implementations. These path constraints are then used to guide the generation of diverse test inputs. We evaluate DLLens on two popular DL libraries, TensorFlow and PyTorch. Our evaluation shows that DLLens can synthesize counterparts for more than twice as many APIs found by state-of-the-art techniques on these libraries. Moreover, DLLens can extract 26.7% more constraints and detect 2.5 times as many bugs as state-of-the-art techniques. DLLens has successfully found 56 bugs in recent TensorFlow and PyTorch libraries. Among them, 41 are previously unknown, 39 of which have been confirmed by developers after reporting, and 19 of those confirmed bugs have been fixed by developers.


GitHub - migueldeicaza/TensorFlowSharp: TensorFlow API for .NET languages

#artificialintelligence

TensorFlowSharp is a good runtime to run your existing models, and is mostly a straight binding to the underlying TensorFlow runtime. Most people will want to use a higher-level library for interfacing with TensorFlow. The library was designed to blend in the .NET ecosystem and use the .NET naming conventions. I strongly recommend that you use TensorFlow.NET which takes a different approach than TensorFlowSharp, it uses the Python naming convention and has a much broader support for the higher level operations that you are likely to need - and is also actively maintained. TensorFlowSharp are .NET bindings to the TensorFlow library published here: This surfaces the C API as a strongly-typed .NET API for use from C# and F#.


GitHub - eaplatanios/tensorflow_scala: TensorFlow API for the Scala Programming Language

#artificialintelligence

It attempts to provide most of the functionality provided by the official Python API, while at the same type being strongly-typed and adding some new features. It is a work in progress and a project I started working on for my personal research purposes. Much of the API should be relatively stable by now, but things are still likely to change. Please refer to the main website for documentation and tutorials. For example, the following code shows how simple it is to train a multi-layer perceptron for MNIST using TensorFlow for Scala.


Image Recognition Algorithm using Transfer Learning

#artificialintelligence

Not having sufficient data, time or resources represents a critical complication in building an efficient image classification network. In this article, I present a straightforward implementation where I get around all these lack-of-resource constraints. We will see what transfer learning is, why it is so effective, and finally, I will go step-by-step in building an image classification learning model. The model I will develop is an alpaca vs. not alpaca classifier, i.e. a neural network capable of recognizing whether or not the input image contains an alpaca. Finally, I will test the algorithm with some alpaca pictures I personally made during one of my recent hikes.


Top 9 APIs In Machine Learning & Artificial Intelligence

#artificialintelligence

APIs are a set of tools and protocols used for building software and models. There are various types of APIs like Local API, Web API, and Program API, which help machine learning developers communicate with each other and share knowledge across various platforms. In this article, we are listing down the top nine APIs every developer who's working with ML and AI should know: Amazon machine learning API is one of the most popular APIs among the organisations. It allows the users to perform various kinds of machine learning tasks and has the capability to easily build, train and deploy machine learning models. Here, a user can choose from a number of pre-trained AI services for computer vision, language, recommendations, forecasting, among others.


What is Keras? The deep neural network API explained

#artificialintelligence

While deep neural networks are all the rage, the complexity of the major frameworks has been a barrier to their use for developers new to machine learning. There have been several proposals for improved and simplified high-level APIs for building neural network models, all of which tend to look similar from a distance but show differences on closer examination. Keras is one of the leading high-level neural networks APIs. It is written in Python and supports multiple back-end neural network computation engines. Given that the TensorFlow project has adopted Keras as the high-level API for the upcoming TensorFlow 2.0 release, Keras looks to be a winner, if not necessarily the winner.


What is Keras? The deep neural network API explained

#artificialintelligence

While deep neural networks are all the rage, the complexity of the major frameworks has been a barrier to their use for developers new to machine learning. There have been several proposals for improved and simplified high-level APIs for building neural network models, all of which tend to look similar from a distance but show differences on closer examination. Keras is one of the leading high-level neural networks APIs. It is written in Python and supports multiple back-end neural network computation engines. Given that the TensorFlow project has adopted Keras as the high-level API for the upcoming TensorFlow 2.0 release, Keras looks to be a winner, if not necessarily the winner.


Google Is Helping The Pentagon Build AI For Drones

#artificialintelligence

Google has partnered with the United States Department of Defence to help the agency develop artificial intelligence for analysing drone footage, a move that set off a firestorm among employees of the technology giant when they learned of Google's involvement. Google's pilot project with the Defence Department's Project Maven, an effort to identify objects in drone footage, has not been previously reported, but it was discussed widely within the company last week when information about the project was shared on an internal mailing list, according to sources who asked not to be named because they were not authorised to speak publicly about the project. Some Google employees were outraged that the company would offer resources to the military for surveillance technology involved in drone operations, sources said, while others argued that the project raised important ethical questions about the development and use of machine learning. Google's Eric Schmidt summed up the tech industry's concerns about collaborating with the Pentagon at a talk last spring. "There's a general concern in the tech community of somehow the military-industrial complex using their stuff to kill people incorrectly," he said.


The Pentagon's New Partner for Building Drones Should Make Us All Nervous

#artificialintelligence

On Tuesday, a privacy and security report published by Gizmodo revealed that Google and the Pentagon are collaborating on developing drones. Known as Project Maven, the Department of Defense pilot project involves analyzing, combing through, defining, and categorizing visual data amassed by aerial drones. It wouldn't be too far off to say the project would function as the Pentagon's all-seeing eye. According to Greg Allen, a Center for a New American Society adjunct fellow, the current amount of obtained footage is so vast it isn't possible for human analysts at the defense agency to sift through it and correctly define objects in the footage. As it stands, the United States' drone strike program is already criticized by human rights groups like Reprieve for reportedly killing hundreds of civilians in Pakistan, Afghanistan, Yemen, and beyond in spite of claims of "surgical" precision from former CIA director John Brennan in 2011.


Google Introduced Learn with Google AI Website - Trade Flock

#artificialintelligence

On 1st March Google introduced Learn with Google AI Website – a set of educational resources that aims at bringing machine learning skills and makes artificial intelligence accessible to all. Google says the new course has been developed by Machine Learning (ML) experts at the company and is free and available to all users. These educational resources will encourage everyone from beginners to researchers to learn about machine learning concepts by providing a huge range of free, in-depth content, develop skills in the area, and apply AI concept to the real-world problems. Previously, the Machine Learning Crash Course(MLCC) was an internal course at Google, designed to train the Google's employee with a practical introduction to Machine Learning concepts and Artificial Intelligence(AI), as Google continues its moves to be an "AI First" company. Around 18,000 Google employees have already signed up for the course.