Komputation is a neural network framework for the Java Virtual Machine written in Kotlin and CUDA C.
Komputation is available through Maven Central:
<dependency>
<groupId>com.komputation</groupId>
<artifactId>komputation</artifactId>
<version>0.12.5</version>
</dependency>
-
Entry points:
-
Standard feed-forward networks:
-
Convolutional neural networks (CNNs):
-
Recurrent neural networks:
-
Activation functions:
-
Other layers:
-
Boolean functions:
-
Total:
-
Running total:
- Left-to-right:
- Right-to-left:
- Bidirectional:
-
Increment:
-
Word embedding toy problem:
-
MNIST:
-
TREC:
-
Boolean functions:
-
Word embedding toy problem:
-
Total:
-
Increment:
-
MNIST:
-
TREC:
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.
- Stochastic Gradient Descent
- Historical:
- Adaptive: