[Updated on May 7, 2019]
In early April, we promised the community we would open source parts of code. Well the wait is over! Codes available include: NBAI blockchain, AI Model, AI worker version 1.0 and some tools.
Please note that new technologies being developed such as Cygnus Storage System and the latest version of AI worker are currently not available as open source.
Nebula AI blockchain and node
NBAI blockchain is Go Ethereum based, as Ethereum blockchain is already technically advanced, we can save time on repetitive coding for infrastructure, and focus more on developing and optimizing to match our needs. Due to the large training data of artificial intelligence, the time taken to acquire data in the system becomes very crucial. The characteristic of cloud computing is closing the distance between nodes, lowering the cost of communication, and corresponding computational efficiency. Based on this feature and existing issues of the PoW consensus mechanism, we used a new consensus mechanism — Proof of Group (PoG). In PoG we use consensus systems and NBAI credit mechanisms to ensure efficiency and security.
You can learn more about PoG by reading our white paper.
NBAI Node : https://github.com/nebulaai/nbai-node
NBAI Blockchain : https://github.com/nebulaai/ethereum-harmony
NBAI web/offline wallet and blockchain explorer
NBAI web/offline wallet
NBAI web/offline wallet is written in TypeScript, allowing individuals to store NBAI, send and receive funds, check balance and detailed transaction history. As we use web3 for creating wallet address, NBAI wallet is compatible with any ERC-20 wallet.
NBAI blockchain explorer
NBAI blockchain explorer is written in TypeScript, allowing users to search for blocks, transactions, smart contracts and other data, such as block height, block age, the number of confirmed transactions in the block, miner, hash, gas fee, gas used and transaction hash.
Orion Converter is a python tool which aims to help converting Python script to Orion compatible format, so that allows AI Worker to execute AI tasks directly, not only save time for machine learning engineers, but only increase the usability of Orion.
AI Worker 1.0
AI Workers are computing resource providers in orion cloud platform. They execute AI tasks and receive NBAI as rewards. Individual GPU machine may download latest packages, install and join the Orion network. By simply running a few commands, AI tasks from Orion will be automatically dispatched to AI workers, you will be able to rent out your computing power for a real profit.
AI model test set
To test the usability and compatibility of Orion cloud platform, we have been running a lot of tests on AI models to collect and use feedbacks to continually improve the performance of the platform.
Keras is an open-source neural-network library written in Python. This is a simplified code using Keras framework. It takes the build in MNIST dataset as input. A simple sequential neural network will be compiled by Keras. At the end the trained model will evaluate the score on test dataset.
Mnist is a computer vision dataset widely used for training and testing in the field of machine learning. This is a sample AI script for testing task-processing pipeline on Nebula AI Orion working node. A sample code using Deep Convolutional Generative Adversarial Networks, to generate handwritten digital images. We use the MNIST dataset to train the generator and discriminator for GAN. The generator generates handwritten digital images and will save to result folder.
Word2Vec is one of the most popular technique to learn word embeddings using shallow neural network. It’s a two-layer neural net that processes text. This is a sample AI script for testing task-processing pipeline on Nebula AI Orion working node.
This is a testing code base on Pytorch framework. It is a seq2seq translation model and attention mechanism was applied. The model trains a neural network to translate from French to English.
K-means clustering is one of the simplest and popular unsupervised machine learning algorithms. This code aims to find the 66 optimized fire stations locations based on the fire intervention data. This model used scikit-learn package to fit the data.
This is a simplified image encoder and decoder model upgraded by Nebula AI team, the model can be run in Orion platform.