All Projects → harujoh → Kelpnet

harujoh / Kelpnet

Licence: apache-2.0
Pure C# machine learning framework

Programming Languages

csharp
926 projects

Projects that are alternatives of or similar to Kelpnet

Mixbench
A GPU benchmark tool for evaluating GPUs on mixed operational intensity kernels (CUDA, OpenCL, HIP, SYCL)
Stars: ✭ 130 (-4.41%)
Mutual labels:  gpu, opencl
Neanderthal
Fast Clojure Matrix Library
Stars: ✭ 927 (+581.62%)
Mutual labels:  gpu, opencl
Tf Coriander
OpenCL 1.2 implementation for Tensorflow
Stars: ✭ 775 (+469.85%)
Mutual labels:  gpu, opencl
Clblast
Tuned OpenCL BLAS
Stars: ✭ 559 (+311.03%)
Mutual labels:  gpu, opencl
Compute
A C++ GPU Computing Library for OpenCL
Stars: ✭ 1,192 (+776.47%)
Mutual labels:  gpu, opencl
Compute Runtime
Intel® Graphics Compute Runtime for oneAPI Level Zero and OpenCL™ Driver
Stars: ✭ 593 (+336.03%)
Mutual labels:  gpu, opencl
Tvm
Open deep learning compiler stack for cpu, gpu and specialized accelerators
Stars: ✭ 7,494 (+5410.29%)
Mutual labels:  gpu, opencl
Hipsycl
Implementation of SYCL for CPUs, AMD GPUs, NVIDIA GPUs
Stars: ✭ 377 (+177.21%)
Mutual labels:  gpu, opencl
Parenchyma
An extensible HPC framework for CUDA, OpenCL and native CPU.
Stars: ✭ 71 (-47.79%)
Mutual labels:  gpu, opencl
Clarrays.jl
OpenCL-backed GPU Arrays
Stars: ✭ 58 (-57.35%)
Mutual labels:  gpu, opencl
Arrayfire Rust
Rust wrapper for ArrayFire
Stars: ✭ 525 (+286.03%)
Mutual labels:  gpu, opencl
Mivisionx
MIVisionX toolkit is a set of comprehensive computer vision and machine intelligence libraries, utilities, and applications bundled into a single toolkit. AMD MIVisionX also delivers a highly optimized open-source implementation of the Khronos OpenVX™ and OpenVX™ Extensions.
Stars: ✭ 100 (-26.47%)
Mutual labels:  opencl, onnx
John
John the Ripper jumbo - advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs
Stars: ✭ 5,656 (+4058.82%)
Mutual labels:  gpu, opencl
Coriander
Build NVIDIA® CUDA™ code for OpenCL™ 1.2 devices
Stars: ✭ 665 (+388.97%)
Mutual labels:  gpu, opencl
Bitcracker
BitCracker is the first open source password cracking tool for memory units encrypted with BitLocker
Stars: ✭ 463 (+240.44%)
Mutual labels:  gpu, opencl
Pyopencl
OpenCL integration for Python, plus shiny features
Stars: ✭ 790 (+480.88%)
Mutual labels:  gpu, opencl
Arrayfire Python
Python bindings for ArrayFire: A general purpose GPU library.
Stars: ✭ 358 (+163.24%)
Mutual labels:  gpu, opencl
Ilgpu
ILGPU JIT Compiler for high-performance .Net GPU programs
Stars: ✭ 374 (+175%)
Mutual labels:  gpu, opencl
Gpusorting
Implementation of a few sorting algorithms in OpenCL
Stars: ✭ 9 (-93.38%)
Mutual labels:  gpu, opencl
Cekirdekler
Multi-device OpenCL kernel load balancer and pipeliner API for C#. Uses shared-distributed memory model to keep GPUs updated fast while using same kernel on all devices(for simplicity).
Stars: ✭ 76 (-44.12%)
Mutual labels:  gpu, opencl

KelpNet : Pure C# machine learning framework

License Build status codecov

/* SampleCode */
FunctionStack<float> nn = new FunctionStack<float>(
    new Convolution2D<float>(1, 32, 5, pad: 2, name: "l1 Conv2D"),
    new ReLU<float>(name: "l1 ReLU"),
    new MaxPooling<float>(2, 2, name: "l1 MaxPooling"),
    new Convolution2D<float>(32, 64, 5, pad: 2, name: "l2 Conv2D"),
    new ReLU<float>(name: "l2 ReLU"),
    new MaxPooling<float>(2, 2, name: "l2 MaxPooling"),
    new Linear<float>(7 * 7 * 64, 1024, name: "l3 Linear"),
    new ReLU<float>(name: "l3 ReLU"),
    new Dropout<float>(name: "l3 DropOut"),
    new Linear<float>(1024, 10, name: "l4 Linear")
);
  • Samples: ・XORCNNAlexNetVGGResNetOthers
  • SampleData: ・MNIST ・FashionMNIST ・CIFAR 10/100
  • Importable: ・CaffeModel ・ChainerModel ・ONNXModel

特徴

  • 行列演算にライブラリを使用していないため、全てのアルゴリズムが可読になっています
  • PyTorch や TensorFlow と同じ Define by Run を採用しています
  • 並列演算にOpenCLを採用しているため、GPUだけでなくCPUやFPGA等の様々な演算装置で処理を並列化できます

※OpenCLを使用するためには対応するドライバの追加インストールが必要になることがあります

C#で作られているメリット

  • 開発環境の構築がカンタンで、プログラミングの初学者にも学びやすい言語です
  • .Net標準のFormやUnity等、処理結果を視覚的に表現するための選択肢が豊富です
  • PCやモバイル端末、組み込み機器等、様々なプラットフォームに向けた開発ができます

連絡方法

ご質問、ご要望は Issues へご登録をお願いします
細やかなことでも構いませんので、何かお気づきの点が御座いましたら、お気軽にご利用ください

手軽なやり取りをご希望の場合は Twitter からご連絡ください
現在の開発状況なども Twitter でご確認いただけます
Twitter: https://twitter.com/harujoh

動作環境

Libraries: .NET Standard 2.0 or 2.1
Samples: .NET Framework 4.6.1

実装済み関数

  • Connections:  ・Convolution2D  ・Deconvolution2D  ・EmbedID  ・Linear  ・LSTM
  • Activations:  ・ELU  ・LeakyReLU  ・ReLU  ・ReLU6  ・Sigmoid  ・Tanh  ・Softmax  ・Softplus  ・Swish  ・Mish
  • Poolings:  ・AveragePooling2D  ・MaxPooling2D
  • Normalize:  ・BatchNormalization  ・LRN
  • Noise:  ・Dropout  ・StochasticDepth
  • LossFunctions:  ・MeanSquaredError  ・SoftmaxCrossEntropy
  • Optimizers:  ・AdaBound  ・AdaDelta  ・AdaGrad  ・Adam  ・AdamW  ・AMSBound  ・AMSGrad  ・MomentumSGD  ・RMSprop  ・SGD
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].