Giter Site home page Giter Site logo

Comments (14)

robertleeplummerjr avatar robertleeplummerjr commented on April 28, 2024 4

Here is the roadmap, and I added a link to this issue under why: https://github.com/BrainJS/brain.js/wiki/Roadmap

We started by looking at convolutional layers, and I saw a desire to have a "layer playground" and at the same time I was looking into how to make things faster. I then found that gpu accelerating, we can have a substantial performance gain, so I found what I felt was the most mature platform for doing so: github.com/gpujs/gpu.js

Since finding, I was added to the team, and helped add node support and a great deal of other features, so I could greedily get brain.js to run on it. From there, along with the help of @abhisheksoni27 we achieved a GPU accelerated version of brain.js here: https://github.com/BrainJS/brain.js/blob/nn-gpu/src/neural-network-gpu.js in the https://github.com/BrainJS/brain.js/tree/nn-gpu branch.

From that point we are now MVP proven. But the remaining "layer playground" and flexibility to process images (ie convolutional layers as well as other related types like pool) needed to be added. Since the architectures for FeedForward and Recurrent are already there, I started adding the layers for them and will eventually connect them up. The layers have been added here: https://github.com/BrainJS/brain.js/tree/nn-gpu-layers/src/layer in the https://github.com/BrainJS/brain.js/tree/nn-gpu-layers branch. They are not all yet unit tested, and done, but that is where my active development is. If you want to help you could spend time ensuring layers act as supposed to by further developing them, or work on FeedForward or Recurrent runners for the layers.

from brain.js.

willrstern avatar willrstern commented on April 28, 2024 4

(This is NOT your game changer project, but I didn't want to open a new issue just to point it out.)
I've been teaching intro-to-machine-learning on LearnCode using brain.

Here's a text editor theme generator and the video to go with it

And for what it's worth, props to you guys for running with this project... I love how brain is a library that allows people to use ML before they understand it. We don't make devs learn about JS engines before coding with JS, I think ML should strive to be the same way.

from brain.js.

robertleeplummerjr avatar robertleeplummerjr commented on April 28, 2024 2

Absolutely: https://github.com/arrayfire/arrayfire-js
In-fact, javascript, compared to other industry standard machine learning languages, such as python, are many times faster. Here is a top result from a Google Search of "javascript vs python speed" - https://www.quora.com/Is-JavaScript-v8-faster-than-Python

In short, it isn't that it may be faster, it is that there are many more tools available in node/js.

from brain.js.

hellonearthis avatar hellonearthis commented on April 28, 2024 2

Thanks willrstern, your tutorials brought me to brain.js =)

from brain.js.

lodenrogue avatar lodenrogue commented on April 28, 2024

Is javascript fast enough to handle millions/billions of samples to be able to construct a model for this purpose?

from brain.js.

ValeriaVG avatar ValeriaVG commented on April 28, 2024

Greetings.
I'd like to help with this idea.

I believe there should be a cascade of networks - with first one to determine the type of the image (Ultrasound, X-Ray, MRI etc) and the following ones to group and classify diseases.

This will allow the decompose the task into smaller ones and develop (and possibly even run) parts of the system separately.

Also, as far as I know solely pictures won't give a precise diagnosis: we'll need to gather test results and symptoms.

By the way is there a database of this kind of thing? Or it's needed to make a tool to gather it?

P.S. Thank you for the awesome library

from brain.js.

giannosdev avatar giannosdev commented on April 28, 2024

Hey, I haven't seen a response or an update regarding this. Have any of you guys started working on something like this? I would be very interested to help!

from brain.js.

robertleeplummerjr avatar robertleeplummerjr commented on April 28, 2024

Awesome! Most of the work is actually being done so that the underlying architecture can handle large input sets and as well various layer types. More in a bit.

from brain.js.

robertleeplummerjr avatar robertleeplummerjr commented on April 28, 2024

So to answer your question:

Have any of you guys started working on something like this?

I would say this is probably the most active issue currently.

from brain.js.

robertleeplummerjr avatar robertleeplummerjr commented on April 28, 2024

Just now seeing:

By the way is there a database of this kind of thing? Or it's needed to make a tool to gather it?

There would need to be some sort of linkage setup. Something that comes to mind, especially because now we have GPU acceleration... gpu databases.

from brain.js.

robertleeplummerjr avatar robertleeplummerjr commented on April 28, 2024

@willrstern fantastic man. As well I saw your videos and love them. I would urge you to push the boundaries and offer any suggestions and be critical with feedback, we want to will change the industry.

I love how brain is a library that allows people to_use_ ML before they understand it. We don't make devs learn about JS engines before coding with JS, I think ML should strive to be the same way.

This is my one main driving force when it comes to my motivation for building a better neural network. It must be simple, it must be fast. Your words mean a lot.

from brain.js.

robertleeplummerjr avatar robertleeplummerjr commented on April 28, 2024

I actually submitted a proposal talk for https://ti.to/ml4all/ml4all-2018 it starts something like this (opening illustration that I will then go on to use to introduce brain.js and ideals therein):

You get into a car, you press the gas, you go. You don't have to think about...

We'll see what they say.

from brain.js.

Vectorrent avatar Vectorrent commented on April 28, 2024

So, we are about 8 years late... but how is this for a "game changer" of a project?

That is a tweet from the founder of GUN.js, gushing over a really cool project I'm developing in Brain. GUN is an amazing, decentralized and in-browser database, which I've used as the foundation of a distributed, hivemind-esque platform for AI training. At least, that is the vision! Preliminary results are promising, but we're going to need more users, more compute, and more importantly - input from the guy who made all of this possible. We could really use your expertise.

Currently, the architecture is something like a mesh of GRU networks, variable size, and layered upon each other. I would have preferred to use the Recurrent class, but I couldn't figure it out, and it doesn't work with train-stream, anyway. We are doing some interesting things with neuron sampling, and strategic integration. I'll spare you the details here, but I'd love to have a chat elsewhere. I'm actually the guy who runs the unofficial Brain.js Discord server, though most of this work is happening in GUN's Matrix room. You should join us.

Finally, thank you for all the hard work you've put into Brain.js, @robertleeplummerjr! I can't wait to turn this thing into the most awesome (and terrifying) neural network the world has ever seen.

from brain.js.

robertleeplummerjr avatar robertleeplummerjr commented on April 28, 2024

This has caught my eye, and I look forward to seeing more. I'm not sure I understand the full ramifications of it however.

from brain.js.

Related Issues (20)

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.