Goto

Collaborating Authors

 deeplearning4j


Impact of Recurrent Neural Networks and Deep Learning Frameworks on Real-time Lightweight Time Series Anomaly Detection

arXiv.org Artificial Intelligence

Real-time lightweight time series anomaly detection has become increasingly crucial in cybersecurity and many other domains. Its ability to adapt to unforeseen pattern changes and swiftly identify anomalies enables prompt responses and critical decision-making. While several such anomaly detection approaches have been introduced in recent works years, they primarily utilize a single type of recurrent neural net (RNNs) and have been implemented in only one deep learning framework. It is unclear how the use of different types of RNNs available in various deep learning frameworks affects the performance of these anomaly detection approaches due to the absence of comprehensive evaluations. Arbitrarily choosing a RNN variant and a deep learning framework to implement an anomaly detection approach may not reflect its true performance and could potentially mislead users into favoring one approach over another. In this paper, we aim to study the influence of various types of RNNs available in popular deep learning frameworks on real-time lightweight time series anomaly detection. We reviewed several state-of-the-art approaches and implemented a representative anomaly detection approach using well-known RNN variants supported by three widely recognized deep learning frameworks. A comprehensive evaluation is then conducted to analyze the performance of each implementation across real-world, open-source time series datasets. The evaluation results provide valuable guidance for selecting the appropriate RNN variant and deep learning framework for real-time, lightweight time series anomaly detection.


Impact of Deep Learning Libraries on Online Adaptive Lightweight Time Series Anomaly Detection

arXiv.org Artificial Intelligence

Providing online adaptive lightweight time series anomaly detection without human intervention and domain knowledge is highly valuable. Several such anomaly detection approaches have been introduced in the past years, but all of them were only implemented in one deep learning library. With the development of deep learning libraries, it is unclear how different deep learning libraries impact these anomaly detection approaches since there is no such evaluation available. Randomly choosing a deep learning library to implement an anomaly detection approach might not be able to show the true performance of the approach. It might also mislead users in believing one approach is better than another. Therefore, in this paper, we investigate the impact of deep learning libraries on online adaptive lightweight time series anomaly detection by implementing two state-of-the-art anomaly detection approaches in three well-known deep learning libraries and evaluating how these two approaches are individually affected by the three deep learning libraries. A series of experiments based on four real-world open-source time series datasets were conducted. The results provide a good reference to select an appropriate deep learning library for online adaptive lightweight anomaly detection.


The Ultimate Guide to Machine Learning Frameworks - The New Stack

#artificialintelligence

We have seen an explosion in developer tools and platforms related to machine learning and artificial intelligence during the last few years. From cloud-based cognitive APIs to libraries to frameworks to pre-trained models, developers make many choices to infuse AI into their applications. AI engineers and researchers choose a framework to train machine learning models. These frameworks abstract the underlying hardware and software stack to expose a simple API in languages such as Python and R. For example, an ML developer can leverage the parallelism offered by GPUs to accelerate a training job without changing much of the code written for the CPU. These frameworks expose simpler APIs that translate to complex mathematical computations and numerical analysis often needed for training the machine learning models. Apart from training, the machine learning frameworks simplify inference -- the process of utilizing a trained model for performing prediction or classification of live data.


Top 10 Deep Learning Frameworks for Every Data Scientist

#artificialintelligence

Deep learning framework with an interface or a library/tool helps Data Scientists and ML Developers to bring the deep learning models into life. Deep Learning a sub-branch of machine learning, that puts efficiency and accuracy on the table, when it is trained with a vast amounts of bigdata. TensorFlow developed by the Google Brain team, is inarguably one of the most popular deep learning frameworks. It supports Python, C, and R to create deep learning models along with wrapper libraries. It is available on both desktop and mobile.


Deeplearning4j: Deep learning and ETL for the JVM

#artificialintelligence

Eclipse Deeplearning4j is an open source, distributed, deep learning library for the JVM. Deeplearning4j is written in Java and is compatible with any JVM language, such as Scala, Clojure, or Kotlin. The underlying computations are written in C, C, and Cuda. Keras will serve as the Python API. Integrated with Hadoop and Apache Spark, Deeplearning4j brings AI to business environments for use on distributed GPUs and CPUs.


Glossary

#artificialintelligence

The intent of this glossary is to provide clear definitions of the technical terms specific to deep artificial neural networks. It is a work in progress. An activation, or activation function, for a neural network is defined as the mapping of the input to the output via a non-linear transform function at each "node", which is simply a locus of computation within the net. Each layer in a neural net consists of many nodes, and the number of nodes in a layer is known as its width. Activation algorithms are the gates that determine, at each node in the net, whether and to what extent to transmit the signal the node has received from the previous layer. A combination of weights (coefficients) and biases work on the input data from the previous layer to determine whether that signal surpasses a given treshhold and is deemed significant. Those weights and biases are slowly updated as the neural net minimizes its error; i.e. the level of nodes' activation change in the course of learning. These activation functions allow neural networks to make complex boundary decisions for features at various levels of abstraction. Adadelta is an updater, or learning algorithm, related to gradient descent. Unlike SGD, which applies the same learning rate to all parameters of the network, Adadelta adapts the learning rate per parameter. Adagrad, short for adaptive gradient, is an updater or learning algorithm that adjust the learning rate for each parameter in the net by monitoring the squared gradients in the course of learning. It is a substitute for SGD, and can be useful when processing sparse data. Affine is a fancy word for a fully connected layer in a neural network. "Fully connected" means that all the nodes of one layer connect to all the nodes of the subsequent layer. A restricted Boltzmann machine, for example, is a fully connected layer. Convolutional networks use affine layers interspersed with both their namesake convolutional layers (which create feature maps based on convolutions) and downsampling layers, which throw out a lot of data and only keep the maximum value. "Affine" derives from the Latin affinis, which means bordering or connected with. Each connection, in an affine layer, is a passage whereby input is multiplied by a weight and added to a bias before it accumulates with all other inputs at a given node, the sum of which is then passed through an activation function: e.g.


Top 5 Deep Learning Frameworks, their Applications, and Comparisons!

#artificialintelligence

I have been a programmer since before I can remember. I enjoy writing codes from scratch โ€“ this helps me understand that topic (or technique) clearly. This approach is especially helpful when we're learning data science initially. Try to implement a neural network from scratch and you'll understand a lot of interest things. But do you think this is a good idea when building deep learning models on a real-world dataset? It's definitely possible if you have days or weeks to spare waiting for the model to build.


5 Open Source Frameworks For Artificial Intelligence & Machine Learning Models

#artificialintelligence

The transitional rise of Artificial intelligence in the most recent decade has prodded a gigantic demand for AI and ML skills in the present market. ML-based innovation is currently utilized as a part of relatively every industry whether it be finance or say health care. In this article, we will be highlighting 5 tools and their respective frameworks that features on the'hot rundown' for Artificial Intelligence & Machine Learning Models. A short depiction alongside the features is provided for each tool or framework. Lets us travel and discover precisely, why the accompanying tools and frameworks are positioned so high.


Java AI

#artificialintelligence

And more broadly, why should you use JVM languagues like Java, Scala, Clojure or Kotlin to build AI and machine-learning solutions? Java is the most widely used programming language in the world. Large organizations in the public and private sector have enormous Java code bases, and rely heavily on the JVM as a compute environment. In particular, much of the open-source big data stack is written for the JVM. This includes Apache Hadoop for distributed data management; Apache Spark as a distributed run-time for fast ETL; Apache Kafka as a message queue; ElasticSearch, Apache Lucene and Apache Solr for search; and Apache Cassandra for data storage to name a few.


Building Complex Network Architectures with Computation Graph - Deeplearning4j: Open-source, Distributed Deep Learning for the JVM

#artificialintelligence

This page describes how to build more complicated networks, using DL4J's Computation Graph functionality. New Features!!! as of 7.3 Computation Graph will support a parameterless LossLayer and vertices for performing triplet loss. As a general rule, when building networks with a single input layer, a single output layer, and an input- a- b- c- output type connection structure: MultiLayerNetwork is usually the preferred network. However, everything that MultiLayerNetwork can do, ComputationGraph can do as well - though the configuration may be a little more complicated. The basic idea is that in the ComputationGraph, the core building block is the GraphVertex, instead of layers.