EricLouchez.Shorokoo.Modules 0.1.8-dev

This is a prerelease version of EricLouchez.Shorokoo.Modules.
dotnet add package EricLouchez.Shorokoo.Modules --version 0.1.8-dev
                    
NuGet\Install-Package EricLouchez.Shorokoo.Modules -Version 0.1.8-dev
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="EricLouchez.Shorokoo.Modules" Version="0.1.8-dev" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="EricLouchez.Shorokoo.Modules" Version="0.1.8-dev" />
                    
Directory.Packages.props
<PackageReference Include="EricLouchez.Shorokoo.Modules" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add EricLouchez.Shorokoo.Modules --version 0.1.8-dev
                    
#r "nuget: EricLouchez.Shorokoo.Modules, 0.1.8-dev"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package EricLouchez.Shorokoo.Modules@0.1.8-dev
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=EricLouchez.Shorokoo.Modules&version=0.1.8-dev&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=EricLouchez.Shorokoo.Modules&version=0.1.8-dev&prerelease
                    
Install as a Cake Tool

Shorokoo.Modules

Baseline neural-network library for Shorokoo: ready-made layers, loss functions, optimizers, and initializers built from Shorokoo modules.

  • Initializers (Shorokoo.Modules.Initializers) — Zeros, Ones, Uniform, Normal, XavierUniform, XavierNormal, KaimingUniform, KaimingNormal, TruncatedNormal, LeCunNormal. All shape-only [TrainableParamInitializer]s; the random ones are seeded (deterministic), and Xavier/Kaiming/LeCun compute fan-in/fan-out in-graph from the shape vector.
  • Layers (Shorokoo.Modules.Layers) — Linear, Conv1d, Conv2d, Conv3d (hyperparameter-driven geometry via the dynamic Conv lowering), ConvTranspose2d (default geometry, kernel inferred from the weight), BatchNorm2d/BatchNorm1d (training/eval flag, running stats via StateUpdate), LayerNorm, RMSNorm, GroupNorm, InstanceNorm2d, Dropout (training flag), Embedding, MultiHeadAttention / TransformerEncoderLayer (+ the Attention.ScaledDotProductAttention helper), LeakyReLU/ELU (hyper alpha), PReLU (learnable slope), and the Pooling / GatedLinear.GLU helpers (MaxPool2d, AvgPool2d, GlobalAvgPool2d, GlobalMaxPool2d, Flatten). Plain activations are tensor one-liners — x.Relu(), x.Gelu(), x.Sigmoid(), x.Tanh(), x.Softmax(axis) — and need no modules.
  • Losses (Shorokoo.Modules.Losses) — L2Loss (MSE), L1Loss, HuberLoss(delta) / SmoothL1Loss, CrossEntropyLoss (logits + int64 class indices), NLLLoss, BCELoss, BCEWithLogitsLoss, KLDivLoss (log-probs + probs). All map (predictions, targets) → scalar loss.
  • Optimizers (Shorokoo.Modules.Optimizers) — SGDOptimizer, SGDMomentumOptimizer, AdamOptimizer (with bias correction), AdamWOptimizer, RMSpropOptimizer, AdagradOptimizer, with strongly typed hyperparameter sets and learning-rate schedules (Schedules.*). Optimizer state (moments, velocity, accumulators) is created inside each module via optimizer-owned [StateInitializer]s — OptimizerStateZeros (param-shaped) and OptimizerScalarZeros (a rank-0 scalar, e.g. Adam's timestep) — and threaded with StateUpdate; never declared in the Inline signature.
dotnet add package Shorokoo.Modules
using Shorokoo.Modules.Optimizers;
using Shorokoo.Modules.Losses;

var rig = TrainingRig.FromScratch(
    MyModel.ComputationGraph,
    CrossEntropyLoss.ComputationGraph,
    AdamOptimizer.ComputationGraph,
    sampleInputs,
    new AdamOptimizerHyperparameters { LearningRate = 1e-3f });

Documentation: https://github.com/Eric-Louchez/Shorokoo

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on EricLouchez.Shorokoo.Modules:

Package Downloads
EricLouchez.Shorokoo

Define, train, and run neural networks in pure C#. Meta-package that brings the Shorokoo runtime (Shorokoo.Core), ready-made layers (Shorokoo.Modules), and the [Module] source generator (Shorokoo.CodeGen). Add exactly one backend: Shorokoo.LinuxCPU, Shorokoo.LinuxGPU, Shorokoo.WinCPU, or Shorokoo.WinGPU.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.8-dev 30 6/20/2026
0.1.7-dev 57 6/16/2026
0.1.6-dev 44 6/16/2026
0.1.4-preview.1 56 6/12/2026