Do you need a general purpose Machine and Deep Learning Library that has similar API to Scikit-Learn? You can view it here:
Overview
Ever wanted a PyTorch-like deep learning library for Roblox? Now you can!
Thanks to Lua being capable of copying object-orientated programming feature, this library is able to do automatic differentiation, distributed training and more!
Take advantage of calculations combining both automatic differentiation and manual differentiation, simplifying complex calculations while maintaining high performance.
Craft complex models effortlessly using dynamic computational graphs, giving you the ability to create any models you want and modify them at runtime.
Take advantage of model and data parallelism capabilities for extremely fast training, prediction and experimentation.
Build singular models that are interconnected between servers and clients through distributed training.
Build models that handles multi-dimensional inputs and outputs to solve any demands of your projects.
Dive into user-friendly API designed for you to learn in a couple of minutes.
Built for production-grade and research-grade applications.
Cross compatible with DataPredict library.
Use Cases
In-Game Recommendation System
Self-Learning AIs (such as enemies, pets and companions)
Image Moderation
Image Generation
Player Action Prediction System
Furniture/Parts Placement Generation (if you have some land plot system like in Lumber Tycoon or the Work At Pizza Place)
Personalized Item For Player (for example, if you have an item that wants to adapt to player’s usage of item)
Make note that when used with used with Roblox’s MemoryStore service, it will allow you to do global cross-server training. The library was designed to handle distributed training from the start, which PyTorch and TensorFlow did not do.
Preview Code
SequentialNeuralNetwork:setMultipleFunctionBlocks(
WeightBlocks.Linear.new({dimensionSizeArray = {1, 1, 3}}),
WeightBlocks.Linear.new({dimensionSizeArray = {1, 3, 5}}),
ActivationBlocks.LeakyReLU.new(),
DropoutBlocks.Dropout.new({dropoutRate = 0.5}),
WeightBlocks.Linear.new({dimensionSizeArray = {1, 5, 1}}),
ShapeTransformationBlocks.Transpose.new({dimensionIndexArray = {2, 3}}),
ActivationBlocks.LeakyReLU.new()
)
for i = 1, 100000 do
local generatedLabelTensor = SequentialNeuralNetwork:forwardPropagate(inputTensor)
local lossTensor = CostFunction:calculateLossTensor(generatedLabelTensor, labelTensor)
local costValue = CostFunction:calculateCostValue(generatedLabelTensor, labelTensor)
SequentialNeuralNetwork:backPropagate(lossTensor)
print(costValue)
task.wait()
end
Download Links
DataPredict Neural (Advanced Deep Learning Library)
Genuinely insane, I was just thinking of trying to learn datapredict again and you come out with something that will make my life a billion times easier
Hello guys! I’m adding a survey to the first post to see what I should prioritize. Please put in your votes so that choice will most likely to be developed first!
For now, I’ll be taking a break from developing this library for a while and wait for you guys to vote until enough data is received.
I was training a regular nn with @Cffex to classify digits with the mnist dataset, which reached a local optima of 80%, no matter what we did it just wouldn’t improve. I’m looking forward on the convolutional layers since it’s much better for processing images
also
this has parallel luau? if so then i’m definitely switching over
would love to have typechecking tho, so i dont have to constantly look at the docs
I find the normal data predict library easier to understand, this library is to make the API similar to that of the PyTorch library. You might want to get a ML or PyTorch refresher to understand better. Try the normal one and fiddle around as its mor documented
It will have it during later updates. Just not now. I’m currently designing how the tensors should be moved around while taking full advantage of the parallel luau capabilities. That doesn’t mean you should switch though.
Haha, Sorry about that! Will add it later once I get the pure Lua version of this library up and running.
Please convert the current TensorL-3D library to TensorL as soon as possible! I will not make the DataPredict-Neural be compatible with TensorL-3D in the future.
TensorL can handle any N-dimensional sized tensors and DataPredict-Neural will follow the TensorL’s format. So this should be fun!