QianpengLi577 / Blender_Neural_Network

Create an artificial neural network in Blender

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Blender_Neural_Network

Create an Artificial Neural Network Model in Blender

MNIST

Blender 2.93.1, Animation Nodes 2.2.2 (this version still in development).

Blender Neural Network is an addon for Blender that creates a panel in the 3D view. With this panel you can create the model of ANN. Some examples:

Input Size = 15, Hidden Layer = 10, Output = 2 example_1

Input Size = 784, Hidden Layer = 100, Output = 10 example_2

Input Size = 784, Hidden Layer = 100, Output = 9 example_3

The Panel has four sections

  1. Neuron Aspect

    1. Neurons Aspect Mesh change the mesh of the neurons: 0 > Iconesphere, 1 > Sphere, 2 > Text, 3 > Square
    2. Neuron Model Size change the scale of the neurons.
    3. Connections Visibility Hide the connections
    4. Connecitons Radius change the thickness of the connections.
  2. Neuron Model Size

    1. Set the number of the neurons for each layer.
  3. Neuron Model Shape

    1. Here it is possible to change the 'SHAPE' of the neurons (it is not connected with Numpy, it is just for aesthetic purpose). For instance, MNIST handwritten is a dataset of image 28 x 28, if you are reading an array with one dimension, you will have 28x28 = 784 pixels, and this case the size will be 784 and the shape 28.
  4. Training Data

    1. this section is for training the model and still in development. At the moment you can add the path of the dataset and it will be read directly in Animation Nodes. In this case the the size input of the dataset will be the length of the columns. In the tree you will find this node, Training Model, here converge all the variables you need to update your model. This is the variables:
  • Variables

    • dataset_path
    • inputs
    • hiddenLayer_1
    • output
    • epochs
    • minibatch
    • eta

    To import, for instance, Tensorflow in Blender, I suggest to install it inside the Blender site-packages. Here how to do it. In this case, as you can read in the node script, we are reading training_data file from Text Area in Blender, in this file you have direct access to the viriables declared in the node. So, for example, you can pass the hidden neurons in this way:

    keras.Input(shape=(hiddenLayer_1,)) Where hiddenLayer_1 is the variable red from the panel.

    1. Data

>The Panel

This is the aspect of the panel, you can pretty much control all the important visualization aspects. The panel still missing the possibility to control the distance between the layers. If you want to contribute, please, you are welcome.

Panel

About

Create an artificial neural network in Blender


Languages

Language:Python 100.0%