com.komputation:komputation

Komputation is a neural network framework for the JVM written in the Kotlin programming language.


Keywords
artificial-intelligence, convolutional-neural-networks, cuda, framework, gpu, jvm, kotlin, machine-learning, neural-networks, nlp, nvidia, recurrent-neural-networks, seq2seq
License
BSD-1-Clause

Documentation

Komputation

Komputation is a neural network framework for the Java Virtual Machine written in Kotlin and CUDA C.

Maven

Komputation is available through Maven Central:

<dependency>
    <groupId>com.komputation</groupId>
    <artifactId>komputation</artifactId>
    <version>0.12.5</version>
</dependency>

Layers

CPU demos

GPU/CUDA demos

Sample code

The following code instantiates a GPU-accelerated convolutional neural network for sentence classification:

    val sentenceClassifier = cudaNetwork(
        batchSize,
        lookup(embeddings, maximumDocumentLength, embeddingDimension, optimization),
        convolution(numberFilters, filterWidth, filterHeight, initialization, optimization),
        relu(),
        dropout(random, keepProbability),
        dense(numberCategories, Activation.Softmax, initialization, optimization)
    )

See the TREC demo for more details.

Initialization

Loss functions

Optimization