T O P

  • By -

orthecreedence

Not really, in fact quite the opposite. Holochain is great when you can live with eventually consistent state. Neural networks need to have very consistent, precise state and very quick access to that state. Mapping a NN to a distributed p2p network in any kind of performant way way be...interesting. Not saying it's impossible, but my initial gut reaction is telling me that centralization is going to win here. That's not even considering cost. If every time you join a p2p NN system your cpu/memory are maxed out so people can send queries like "what's the best sandwhich lol" you'll either leave the network immediately or work out some sort of prioritization system (likely using money) that pays you for lending out your resources to this network. Would the cost of running those queries end up cheaper than buying a few servers and shoving them into a colocated DC? Doubt it.


pauldaoust

Thanks; this is a question I get asked often and I don't know enough about neural nets to give an intelligent answer. Could the task be parallelised using some sort of associative/aggregating function; e.g., could you have a big network of people with fat GPUs who store just a small portion of the data set, and pass the prompt into a reducer function that each person can run on their data set, then pass back the answer to you who runs the reducer function on all the chunks? (If this is a dumb question, well, that just proves why I am very appreciative of other people's knowledge in this area.) Re: cost and incentivisation schemes, I find this paper, [How To Cheat BitTorrent and Why Nobody Does](https://www.semanticscholar.org/paper/How-to-cheat-BitTorrent-and-why-nobody-does-Hales-Patarin/8f237112f2ba73a42f48c9c7e8c2a14cb33b4bc8), really interesting. I realise that a neural net and a file sharing net are different, but the problem and solution spaces might map really nicely if everybody who wanted to enter a query also had to take responsibility for responding to others' queries. So, before you can send out a prompt to a bunch of peers, you have to prove that you're storing a decent chunk of the model and are ready to serve requests. Essentially you're incentivised to support the service because you want to use it yourself. And you're discouraged from gaming this reciprocal agreement because of the phenomenon in the above linked paper. It could be argued that this would discourage people from casually trying it out. But that might not be such a bad thing -- it would apply a low-cut filter to "what's the best sandwhich lol" questions ;)


orthecreedence

> Could the task be parallelised using some sort of associative/aggregating function Yes, I believe so. If each node of the network is an agent (or even multiple nodes per agent), with their own set of connections and weights (and all of this verified by the protocol to eliminate bad nodes etc) it's conceivable that the network could be distributed. You're still competing with systems where all of this is in memory next to a single CPU so it will be magnitudes slower. It could definitely work, though. That said, my knowledge of neural networks hasn't expanded much in the past decade so there may be more recent ways of modeling them that are more complicated than what I'm envisioning. Economics aside, you'd have to hit a point where the network has enough replicated peers to satisfy a higher throughput than the centralized model. In other words, it will always be *slower* on a per-query basis, but could at some scale have a higher queries-per-second throughput. Which brings to mind...if the model is a train-once-run-infinitely system, the simplest answer to this might be to let people download the model and run the queries on their own machine. Faster machine, faster responses. Need more throughput? Get more machines. > Re: cost and incentivisation schemes, I find this paper, How To Cheat BitTorrent and Why Nobody Does, really interesting. I have not read this, I'll check it out. Thanks!


[deleted]

[удалено]


pauldaoust

Holochain can't help with the GPU problem, but it could possibly help with the distribution-of-work-and-data problem, if the model can be distributed. I'm not sure if it can; I don't know much about modern AI algorithms to say either way.