Code Monkey home page Code Monkey logo

unitytensorflowkeras's Introduction

UnityTensorflowKeras

Please use [Tensorflow.Net][https://github.com/SciSharp/TensorFlow.NET] instead!! This project will not be maintained.

  • It is an extension of Unity ML agent for deep learning, primarily reinforcement learning, with in-editor/in-game training support. It also provides interface for another optimization algorithms such as MAES.

  • It uses a modified version of KerasSharp and TensorflowSharp as the backend, which usesTensorflow c++ lib. No python is needed for model building/evaluation/training. You can even build a standalone(an actual playable game!) with training capability.

  • This repo is made for Aalto University's Intellicent Computational Media course. The course includes two parts: Audio(Python) and Games(Unity and Python), and this repo contains the main materials for the Unity part of the course. This repo is a remake based on the original materials, which are made with CNTK. It will also be part of my master's thesis.

Features:

  • Use your already made Unity ML-Agent, but enable learning in Unity editor/build without python or extra coding.
  • Reinforcement learning(PPO baseline) and supervised learning.
  • Evolution Strategy (using Covariance Matrix Adaption Evolution Strategy(CMA-ES))
  • Examples provided.

Requirements:

  • Unity ML agent v0.8
  • Unity 2018.1.9(Should be working with some of the newer versions as well).

Platforms:

  • Windows is almost fully supported. If you want to use GPU, CUDA and cuDNN are needed(Please google CUDA v9.0 and cudnn v7 and install them).
  • Mac should be fully supported if I have a Mac to build, but now it does not have Concat Gradient, which means the agent can not have both visual and vector observations at the same time, and discrete action branching is not supported neither. Mac does not support GPU. - - Linux is not tested at all.
  • Android does not support any type of gradient/training. But you can use trained neural network on it.
  • IOS is not tested at all. (Sorry that I am not a big fan of Apple products because they are expensive)

Documentation

Future Plan:

We might or might not update this repository. But it will try to keep it up with Unity ML-Agents at least.

Possible future plans/contributions:

  • Updating KerasSharp, maybe with some basic recurrent NN.
  • More example environments.
  • More algorithms including: Complete baseline PPO from ML-Agents(Curiosity Module and GAIL), Deep Q Learning, Deep Mimic, Evolved Policy Gradient, Genetic Algorithms and so on.

License

MIT.

unitytensorflowkeras's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

unitytensorflowkeras's Issues

Add Conv1D

Conv1D is left unimplemented (presumably because it was not added in the original TFSharp repo). How difficult would this be to add to your TFSharp/KerasSharp/Unity repos?

I could try to do the work and submit a PR. I'm interested in trying to do a temporal convolutional network (TCN) in place of an RNN.

Thoughts?

Refactor in SciSharp's libraries

Just read about the features for this project. Seems like building graph and training are not completed. As I know, TensorFlowSharp can't make training process happen. It's time to consider about refactor this project by using TensorFlow.NET, as these examples it can do many tasks.

We made a RL PPO example for your reference.

Thanks for paying attention to SciSharp STACK.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.