Run Keras models in the browser, with GPU support using WebGL

Overview

**This project is no longer active. Please check out TensorFlow.js.**
The Keras.js demos still work but is no longer updated.

Run Keras models in the browser, with GPU support using WebGL



Run Keras models in the browser, with GPU support provided by WebGL 2. Models can be run in Node.js as well, but only in CPU mode. Because Keras abstracts away a number of frameworks as backends, the models can be trained in any backend, including TensorFlow, CNTK, etc.

Library version compatibility: Keras 2.1.2

Interactive Demos

Check out the demos/ directory for real examples running Keras.js in VueJS.

  • Basic Convnet for MNIST
  • Convolutional Variational Autoencoder, trained on MNIST
  • Auxiliary Classifier Generative Adversarial Networks (AC-GAN) on MNIST
  • 50-layer Residual Network, trained on ImageNet
  • Inception v3, trained on ImageNet
  • DenseNet-121, trained on ImageNet
  • SqueezeNet v1.1, trained on ImageNet
  • Bidirectional LSTM for IMDB sentiment classification

Documentation

MIT License

Comments
  • Error: [Model] error loading weights.

    Error: [Model] error loading weights.

    I'm running the latest Keras JS on a trained Keras model. Following the instructions given on the README, I tested loading my model before training (random initialized weights) and it works.

    However, after I perform training and use the exact same way to called model.save_weights, Keras JS is unable to read the model file. When trying to parse the metadata, it gives [Model] error loading weights.

    Any insight into why this would happen?

    opened by calclavia 10
  • Multi-dimensional Sequential Inputs  / unflattened float32 arrays

    Multi-dimensional Sequential Inputs / unflattened float32 arrays

    This library appears to be focused on the Model structure, which is okay, but most of my trained networks are in Sequential form. Specifically LSTM Sequentials.

    LSTM Sequentials generally expect a three-dimensional input (batchSize, X,Y). However this repo requires there to be only one flattened input for Sequential, named "input". Has anyone found a good way to convert Sequentials to a Model or a way around this?

    I would like to just do prediction in javascript. That means the model shouldn't even need to be compiled, so maybe I can just hack something together myself.

    opened by LRonHubs 9
  • Error loading demo model (

    Error loading demo model ("RangeError: Invalid typed array length")

    Hi, I am trying to load the mnist_vae model weights demo with the following html:

    <html>
    <head>
      <meta charset="utf-8">
      <script language="javascript" type="text/javascript" src="scripts/lib/keras.js"></script>
    </head>
    <body>
      <script language="javascript" type="text/javascript">
    	  const model = new KerasJS.Model({
    	  filepaths: {
    	    model: 'static/model/mnist_vae.json',
    	    weights: 'static/model/mnist_vae_weights.buf',
    	    metadata: 'static/model/mnist_vae_metadata.json'
    	  },
    	  gpu: false
    	});
      </script>
    </body>
    </html>
    

    This is the error I get in Chrome:

    RangeError: Invalid typed array length
        at new Float32Array (native)
        at http://0.0.0.0:8000/scripts/lib/keras.js:4:18505
        at Array.map (native)
        at http://0.0.0.0:8000/scripts/lib/keras.js:4:18250
        at Array.forEach (native)
        at t.value (http://0.0.0.0:8000/scripts/lib/keras.js:4:16687)
        at http://0.0.0.0:8000/scripts/lib/keras.js:4:15092
    From previous event:
        at t.value (http://0.0.0.0:8000/scripts/lib/keras.js:4:15067)
        at new t (http://0.0.0.0:8000/scripts/lib/keras.js:4:14730)
        at http://0.0.0.0:8000/keras.html:8:18
    

    I get a similar error in Firefox that begins with:

    Error: WebGL: Exceeded 16 live WebGL contexts for this principal, losing the least recently used one.
    RangeError: attempting to construct out-of-bounds TypedArray on ArrayBuffer
    Stack trace:
    [...]
    

    Any ideas what might be going wrong?

    opened by mobeets 7
  • Weights have been permuted for Convolution1D

    Weights have been permuted for Convolution1D

    I noticed an error building Convolutional1D layer in js when the input has 1 feature layer. I added a failing test for it to this fork, so that it can be easily reproduced.

    Here is the error reported at localhost:3000/test (all other tests pass)

    Error: cwise: Arrays do not all have the same shape!
        at assign_cwise_thunk (eval at createThunk (eval at <anonymous> (http://localhost:3000/dist/keras.js:2858:1)), <anonymous>:8:71)
        at Object.assign_ndarrayops [as assign] (eval at makeOp (eval at <anonymous> (http://localhost:3000/dist/keras.js:108:1)), <anonymous>:3:43)
        at Convolution2D._w2row (eval at <anonymous> (http://localhost:3000/dist/keras.js:493:1), <anonymous>:274:30)
        at Convolution2D.setWeights (eval at <anonymous> (http://localhost:3000/dist/keras.js:493:1), <anonymous>:126:12)
        at Convolution1D.setWeights (eval at <anonymous> (http://localhost:3000/dist/keras.js:1355:1), <anonymous>:103:20)
        at r.<anonymous> (convolutional/Convolution1D.js:61:19)
        at r (https://cdnjs.cloudflare.com/ajax/libs/mocha/3.0.2/mocha.min.js:2:7852)
        at r.run (https://cdnjs.cloudflare.com/ajax/libs/mocha/3.0.2/mocha.min.js:2:8853)
        at i.runTest (https://cdnjs.cloudflare.com/ajax/libs/mocha/3.0.2/mocha.min.js:2:13553)
        at https://cdnjs.cloudflare.com/ajax/libs/mocha/3.0.2/mocha.min.js:2:14192
        at r (https://cdnjs.cloudflare.com/ajax/libs/mocha/3.0.2/mocha.min.js:2:13024)
        at https://cdnjs.cloudflare.com/ajax/libs/mocha/3.0.2/mocha.min.js:2:13000
        at n (https://cdnjs.cloudflare.com/ajax/libs/mocha/3.0.2/mocha.min.js:2:12791)
        at https://cdnjs.cloudflare.com/ajax/libs/mocha/3.0.2/mocha.min.js:2:12855
        at i (https://cdnjs.cloudflare.com/ajax/libs/mocha/3.0.2/mocha.min.js:1:559)
    
    opened by wassname 7
  • Conv1D layer: check for legacy shape of weights

    Conv1D layer: check for legacy shape of weights

    Keras changed the ordering of the weights (see https://github.com/fchollet/keras/commit/9f6acd960c0a0c699c79ca1d571783e1692568fb and https://github.com/fchollet/keras/commit/305b3bed747bb8dd358cf82d11bcb1aee5b6e517).

    This will only transpose the weights if in legacy format. Fixes issue #22.

    opened by stekaiser 6
  • Fira sans is broken in Chrome and Firefox on Linux

    Fira sans is broken in Chrome and Firefox on Linux

    On Debian testing at least but probably on other distros as well. Could be also broken on Mac, the issue with Fira sans was revealed in habrahabr.ru redesign (worked fine on Windows but was totally invisible on Mac/Linux). It looks like this: 2016-12-07_21-01-23 Disabling font-family in body reveals the text. Please replace the font with the working version.

    opened by rkfg 4
  • Demo is not working

    Demo is not working

    webgl.js:56Uncaught TypeError: Cannot read property 'getShaderPrecisionFormat' of null keras.js:4 Uncaught TypeError: Cannot read property 'getParameter' of null bundle.js:15n @ bundle.js:1(anonymous function) @ bundle.js:1(anonymous function) @ bundle.js:1

    screen shot 2016-10-16 at 12 17 16

    opened by AlexanderKozhevin 4
  • Can not initiate model in nodejs with demo models

    Can not initiate model in nodejs with demo models

    Hi

    I am trying to predict on the IMDB bidrectional LSTM demo in NodeJS, so I have this code:

    const KerasJS = require('keras-js');
    const model = new KerasJS.Model({
        filepaths: {
            model: 'imdb_bidirectional_lstm.json',
            weights: 'imdb_bidirectional_lstm_weights.buf',
            metadata: 'imdb_bidirectional_lstm_metadata.json'
        },
        filesystem: true
    });
    

    When I run this, it throws this error:

    RangeError: Invalid typed array length at Float32Array (native) at D:\development\webserving\node_modules\core-js\modules_typed-array.js:416:15 at new Float32Array (D:\development\webserving\node_modules\core-js\modules\es6.typed.float32-array.js:3:12) at D:\development\webserving\node_modules\keras-js\lib\Model.js:465:30 at Array.map (native) at D:\development\webserving\node_modules\keras-js\lib\Model.js:433:37 at Array.forEach (native) at Model._createLayers (D:\development\webserving\node_modules\keras-js\lib\Model.js:352:19) at D:\development\webserving\node_modules\keras-js\lib\Model.js:195:15 at tryCatcher (D:\development\webserving\node_modules\bluebird\js\release\util.js:16:23) at Promise._settlePromiseFromHandler (D:\development\webserving\node_modules\bluebird\js\release\promise.js:512:31) at Promise._settlePromise (D:\development\webserving\node_modules\bluebird\js\release\promise.js:569:18) at Promise._settlePromise0 (D:\development\webserving\node_modules\bluebird\js\release\promise.js:614:10) at Promise._settlePromises (D:\development\webserving\node_modules\bluebird\js\release\promise.js:693:18) at Promise._fulfill (D:\development\webserving\node_modules\bluebird\js\release\promise.js:638:18) at PromiseArray._resolve (D:\development\webserving\node_modules\bluebird\js\release\promise_array.js:126:19)

    Any idea what I am doing wrong here?

    Thanks :-)

    opened by spec2e 3
  • simply importing keras.js results in

    simply importing keras.js results in "Uncaught SyntaxError: Invalid regular expression"

    Hi transcranial, I just wanted to write a simple web page to import keras-js. After cloning this repo, I create a file test.html containing the following codes:

    <html>
    <head>
    <title>keras-js test</title>
    
    <script src="dist/keras.js"></script>
    
    <script type="text/javascript">
    
    function periodic() {
      var d = document.getElementById('egdiv');
      d.innerHTML = 'Random number: ' + Math.random()
    }
    
    var net; // declared outside -> global variable in window scope
    function start() {
    
      setInterval(periodic, 500);
    }
    
    }
    </script>
    </head>
    
    <body onload="start()">
    
    <div id="egdiv"></div>
    
    </body>
    </html>
    
    

    Then I dragged this file into my Chrome browser, but in the console I received the following error:

    Uncaught SyntaxError: Invalid regular expression: /[ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԧԱ-Ֆՙա-ևא-תװ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠࢢ-ࢬऄ-हऽॐक़-ॡॱ-ॷॹ-ॿঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-ళవ-హఽౘౙౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൠൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏼᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛰᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤜᥐ-ᥭᥰ-ᥴᦀ-ᦫᧁ-ᧇᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々-〇〡-〩〱-〵〸-〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿌ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚗꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞎꞐ-ꞓꞠ-Ɦꟸ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꪀ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ]/: Range out of order in character class
        at new RegExp (<anonymous>)
        at Object.<anonymous> (keras.js:31478)
        at keras.js:31221
        at Object.e.read.s (keras.js:31221)
        at e (keras.js:1)
        at Object.<anonymous> (keras.js:31221)
        at Object.o (keras.js:31221)
        at e (keras.js:1)
        at Object.<anonymous> (keras.js:1)
        at e (keras.js:1)
        at Object.<anonymous> (keras.js:1)
        at e (keras.js:1)
        at Object.t.__esModule.default (keras.js:10644)
        at e (keras.js:1)
        at Object.t.__esModule.default (keras.js:10644)
        at e (keras.js:1)
    

    Can you tell me why this happened and how to deal with it?

    Best wishes, Yiming

    opened by yiminglin-ai 3
  • Error when call model.predict

    Error when call model.predict

    It's saying that there are a token |= but my code only has one file index.html and it has no such symbol. What is the cause here?

    SyntaxError: Unexpected token |=
        at new Function (<anonymous>)
        at u (https://off99555.github.io/HoNNeT/keras-js/keras.js:13:8807)
        at assigns_cwise_thunk (eval at r (https://off99555.github.io/HoNNeT/keras-js/keras.js:13:10619), <anonymous>:7:29)
        at Object.assigns_ndarrayops [as assigns] (eval at i (https://off99555.github.io/HoNNeT/keras-js/keras.js:1:6744), <anonymous>:3:44)
        at e.value (https://off99555.github.io/HoNNeT/keras-js/keras.js:7:19739)
        at e.value (https://off99555.github.io/HoNNeT/keras-js/keras.js:7:21879)
        at t.value (https://off99555.github.io/HoNNeT/keras-js/keras.js:4:15902)
        at t.<anonymous> (https://off99555.github.io/HoNNeT/keras-js/keras.js:4:16786)
        at o (https://off99555.github.io/HoNNeT/keras-js/keras.js:16:7592)
        at Generator._invoke (https://off99555.github.io/HoNNeT/keras-js/keras.js:16:9001)
        at Generator.t.(anonymous function) [as next] (https://off99555.github.io/HoNNeT/keras-js/keras.js:16:7771)
        at Generator.i (https://off99555.github.io/HoNNeT/keras-js/keras.js:11:1532)
        at u._promiseFulfilled (https://off99555.github.io/HoNNeT/keras-js/keras.js:9:22799)
        at t.<anonymous> (https://off99555.github.io/HoNNeT/keras-js/keras.js:9:24615)
    From previous event:
        at t (https://off99555.github.io/HoNNeT/keras-js/keras.js:4:15972)
        at t.<anonymous> (https://off99555.github.io/HoNNeT/keras-js/keras.js:4:18474)
        at o (https://off99555.github.io/HoNNeT/keras-js/keras.js:16:7592)
        at Generator._invoke (https://off99555.github.io/HoNNeT/keras-js/keras.js:16:9001)
        at Generator.t.(anonymous function) [as next] (https://off99555.github.io/HoNNeT/keras-js/keras.js:16:7771)
    From previous event:
        at t (https://off99555.github.io/HoNNeT/keras-js/keras.js:4:17225)
        at model.ready.then (https://off99555.github.io/HoNNeT/:165:16)
    From previous event:
        at https://off99555.github.io/HoNNeT/:158:20
    

    Here's the javascript part of that index.html file:

         const N_AVAIL_HEROES = 260
         const HERO_INPUT = new Array(2 * N_AVAIL_HEROES).fill(0)
         const vm = new Vue({
             el: '#app',
             data() {
                 return {
                     model: null,
                     modelReady: false
                 }
             },
             watch: {
                 modelReady: function() {
                     if (this.modelReady)
                         console.log('the model is ready now')
                 }
             }
         })
         const model = new KerasJS.Model({
             filepaths: {
                 model: 'honnet_brain_architecture.json',
                 weights: 'honnet_brain_weights_weights.buf',
                 metadata: 'honnet_brain_weights_metadata.json'
             }
         })
         function getInputData(legion, hellbourne) {
            console.log('predicting with data')
            const inputData = {
                'hero_input': new Float32Array(HERO_INPUT)
            }
            return inputData
         }
         model.ready().then(() => {
             vm.model = model
             vm.modelReady = true
    
             // make predictions
             // outputData is an object keyed by names of the output layers
             // or `output` for Sequential models
             model.predict(getInputData([], [])).then(function(outputData) { // <====== error happens here!
                 console.log('output')
                 console.log(outputData)
             }).catch(err => {
                 // handle error
                 console.log('pred error: ')
                 console.log(err)
             })
         }).catch(err => {
             // handle error
             console.log('ready error: ')
             console.log(err)
         })
    
    opened by off99555 3
  • [Model] path to protobuf-serialized model definition file is missing

    [Model] path to protobuf-serialized model definition file is missing

    Update from master 11/10/2017

    Code builds but fails in browser, see error below. What changed?

    Error: [Model] path to protobuf-serialized model definition file is missing. new Model ./src/Model.js:34 31 | } = config 32 | 33 | if (!filepath) {

    34 | throw new Error('[Model] path to protobuf-serialized model definition file is missing.') 35 | } 36 | this.filepath = filepath 37 |

    opened by dparnellmitek 2
  • Purpose of wrapping the prediction inference call in a setTimeout() and also passing in exactly 10 milliseconds

    Purpose of wrapping the prediction inference call in a setTimeout() and also passing in exactly 10 milliseconds

    I have a small question, could anyone please explain to me what's the purpose of wrapping the prediction inference call in a setTimeout() and also passing in exactly 10 milliseconds (and not something like 5 or 15 milliseconds)? Thanks!

    https://github.com/transcranial/keras-js/blob/7713c554f062a77b6897892c2d10209e72576868/demos/src/components/common/Imagenet.vue#L274-L276

    opened by jackylu0124 0
  • Can i use CRF models on keras-js ?

    Can i use CRF models on keras-js ?

    Hello ! I have created a Named Entity Recognition model with tensorflow/keras/keras_contrib. I would like run this model on my clients browser with Keras.js but i doesn't found anything for this. When i load my model, i use keras_contrib class like this in python :

    self.model = load_model( dir_path + '/v1/tools/TextAnalyzerData/model.h5', custom_objects={ 'CRF':CRF, 'crf_loss':crf_loss, 'crf_viterbi_accuracy':crf_viterbi_accuracy } )

    Any alternative or tips for javascript size ? Thanks

    opened by sandro971 0
  • model.predict() always outputs same invalid results after deployment

    model.predict() always outputs same invalid results after deployment

    Problem Statment:

    Goal: Use keras-js (https://github.com/transcranial/keras-js) to do Sentiment Analysis for input summary(NLP).

    Developing environment: React 16.6.3

    Related Dependencies: keras-js, imdb_bidirectional_lstm.bin(trained model, located in public folder), imdb_dataset_word_index_top20000.json

    Problem: The model.predict() function in keras-js always output the same result, regardless what the the actual input is, the output is always 50% after deployment.

    It works fine on my machine, I’m using Mac OS. But if we deployed it to Linux server, the problem occurred. We can load all dependencies in Linux server, no error messages, but the prediction results are totally different from that from local machine even we used completely same code. The prediction results in deployed version are always 50%, which is not valid.

    opened by zjtisme 0
  • TypeError: layer.layer is undefined

    TypeError: layer.layer is undefined

    I want to run a keras model on a browser using keras.js , but keras.js predict is not working. while loading i got the following error

    TypeError: layer.layer is undefined here is the js code:

    const model = new KerasJS.Model(
         {
         filepath: 'example.bin',
         gpu : true,
         filesystem : true
    
         })
    
           model.ready().then(() => model.predict(
           {
             input: new Float32Array(samples),
           })) .then(({output}) => 
           {
             alert(output['output']);
           })
           .catch((error) => 
           {
             alert(error);
          });
    
    
    opened by hmhwe 0
  • Error: predict() must take an object where the keys are the named inputs of the model:

    Error: predict() must take an object where the keys are the named inputs of the model:

    I have been trying to run a keras model in browser using keras.js. But whenever i try to predict I got the following error

    Error: predict() must take an object where the keys are the named inputs of the model: Here is js code

    handlePredict()
      {
        const model = new KerasJS.Model({
        filepaths: {
        model: 'model.json',
        weights: 'model_weights.buf',
        metadata: 'model_metadata.json'
      },
    
      gpu : true,
      filesystem : true
    
    })
    
      model.ready().then(() =>{
        const inputData = {
          'input_1': new Float32Array(samples)
        }
        alert('Converted text = ' + inputData['input_1'])
        return model.predict(inputData['input_1'])
      })
      .then(output =>
        {
        alert('Predicted value : ' + output['fc1000']);
        })
      .catch(err =>
        {
        alert(err);
        })
    
      }
    

    I am using keras-js 0.3.0 and keras 2.2.4 . Any help would be appreciated.

    opened by hmhwe 0
Releases(v0.3.0)
  • v0.3.0(May 20, 2017)

    • Added back legacy Merge, MaxoutDense, Highway layers
    • Fixed model creation when Model class contains branches of Sequential class
    • Added SqueezeNet v1.1 and Auxiliary Classifier Generative Adversarial Network (AC-GAN) demos
    Source code(tar.gz)
    Source code(zip)
  • v0.2.0(May 20, 2017)

  • v0.1.0(May 20, 2017)

Owner
Leon Chen
Co-founder, MD.ai. Software/ML engineer, doctor, electronic musician.
Leon Chen
Catch-all collection of generative art made using processing

Generative art with Processing.py Some art I have created for fun. Dependencies Processing for Python, see how to download/use here Packages contained

2 Mar 12, 2022
NCVX (NonConVeX): A User-Friendly and Scalable Package for Nonconvex Optimization in Machine Learning.

NCVX NCVX: A User-Friendly and Scalable Package for Nonconvex Optimization in Machine Learning. Please check https://ncvx.org for detailed instruction

SUN Group @ UMN 28 Aug 03, 2022
On the adaptation of recurrent neural networks for system identification

On the adaptation of recurrent neural networks for system identification This repository contains the Python code to reproduce the results of the pape

Marco Forgione 3 Jan 13, 2022
Physics-informed Neural Operator for Learning Partial Differential Equation

PINO Physics-informed Neural Operator for Learning Partial Differential Equation Abstract: Machine learning methods have recently shown promise in sol

107 Jan 02, 2023
Computational inteligence project on faces in the wild dataset

Table of Contents The general idea How these scripts work? Loading data Needed modules and global variables Parsing the arrays in dataset Extracting a

tooraj taraz 4 Oct 21, 2022
Local Similarity Pattern and Cost Self-Reassembling for Deep Stereo Matching Networks

Local Similarity Pattern and Cost Self-Reassembling for Deep Stereo Matching Networks Contributions A novel pairwise feature LSP to extract structural

31 Dec 06, 2022
TRIQ implementation

TRIQ Implementation TF-Keras implementation of TRIQ as described in Transformer for Image Quality Assessment. Installation Clone this repository. Inst

Junyong You 115 Dec 30, 2022
Invertible conditional GANs for image editing

Invertible Conditional GANs This is the implementation of the IcGAN model proposed in our paper: Invertible Conditional GANs for image editing. Novemb

Guim 278 Dec 12, 2022
SimpleDepthEstimation - An unified codebase for NN-based monocular depth estimation methods

SimpleDepthEstimation Introduction This is an unified codebase for NN-based monocular depth estimation methods, the framework is based on detectron2 (

8 Dec 13, 2022
Semi-Supervised Graph Prototypical Networks for Hyperspectral Image Classification, IGARSS, 2021.

Semi-Supervised Graph Prototypical Networks for Hyperspectral Image Classification, IGARSS, 2021. Bobo Xi, Jiaojiao Li, Yunsong Li and Qian Du. Code f

Bobo Xi 7 Nov 03, 2022
phylotorch-bito is a package providing an interface to BITO for phylotorch

phylotorch-bito phylotorch-bito is a package providing an interface to BITO for phylotorch Dependencies phylotorch BITO Installation Get the source co

Mathieu Fourment 2 Sep 01, 2022
GitHub repository for "Improving Video Generation for Multi-functional Applications"

Improving Video Generation for Multi-functional Applications GitHub repository for "Improving Video Generation for Multi-functional Applications" Pape

Bernhard Kratzwald 328 Dec 07, 2022
Repository of 3D Object Detection with Pointformer (CVPR2021)

3D Object Detection with Pointformer This repository contains the code for the paper 3D Object Detection with Pointformer (CVPR 2021) [arXiv]. This wo

Zhuofan Xia 117 Jan 06, 2023
InterFaceGAN - Interpreting the Latent Space of GANs for Semantic Face Editing

InterFaceGAN - Interpreting the Latent Space of GANs for Semantic Face Editing Figure: High-quality facial attributes editing results with InterFaceGA

GenForce: May Generative Force Be with You 1.3k Jan 09, 2023
AAAI 2022: Stationary diffusion state neural estimation

Stationary Diffusion State Neural Estimation Although many graph-based clustering methods attempt to model the stationary diffusion state in their obj

绽琨 33 Nov 24, 2022
The official implementation of the research paper "DAG Amendment for Inverse Control of Parametric Shapes"

DAG Amendment for Inverse Control of Parametric Shapes This repository is the official Blender implementation of the paper "DAG Amendment for Inverse

Elie Michel 157 Dec 26, 2022
Official implementation for paper: A Latent Transformer for Disentangled Face Editing in Images and Videos.

A Latent Transformer for Disentangled Face Editing in Images and Videos Official implementation for paper: A Latent Transformer for Disentangled Face

InterDigital 108 Dec 09, 2022
VOneNet: CNNs with a Primary Visual Cortex Front-End

VOneNet: CNNs with a Primary Visual Cortex Front-End A family of biologically-inspired Convolutional Neural Networks (CNNs). VOneNets have the followi

The DiCarlo Lab at MIT 99 Dec 22, 2022
Image super-resolution (SR) is a fast-moving field with novel architectures attracting the spotlight

Revisiting RCAN: Improved Training for Image Super-Resolution Introduction Image super-resolution (SR) is a fast-moving field with novel architectures

Zudi Lin 76 Dec 01, 2022
Pre-trained models for a Cascaded-FCN in caffe and tensorflow that segments

Cascaded-FCN This repository contains the pre-trained models for a Cascaded-FCN in caffe and tensorflow that segments the liver and its lesions out of

300 Nov 22, 2022