Viewing a single comment thread. View all comments

TeamPupNSudz t1_j8z8928 wrote

A significant amount of current AI research is going into how to shrink and prune these models. The ones we have now are horribly inefficient. There's no way it takes a decade before something (granted, maybe less impressive) is available to consumer hardware.

32

rnobgyn t1_j8zvfrk wrote

Exactly - the first computers took up a whole room

12

Takadeshi t1_j93gacq wrote

Doing my undergrad thesis on this exact topic :) with most models, you can discard up to 90% of their weights and have a similar performance with only about 1-2% loss of accuracy. Turns out that when training models they tend to learn better when dense (i.e a large quantity of non-zero weights), but in implementation they tend to have some very strong weights, but a large number of "weak" weights that contribute to the majority of the parameter count but very little to the actual accuracy of the model, so you can basically just discard them. There are also a few other clever tricks you can do to reduce the number of params by a lot; for one, you can cluster weights into groups and then make hardware-based accelerators to carry out the transformation for each cluster, rather than treating each individual weight as a multiplication operation. This paper shows that you can reduce the size of a CNN-based architecture by up to 95x with almost no loss of accuracy.

Of course this relies on the weights being public, so we can't apply this method to something like ChatGPT, but we can with stable diffusion. I am planning on doing this when I finish my current project, although I would be surprised if the big names in AI weren't aware of these methods, so it's possible that the weights have already been pruned (although looking specifically at stable diffusion, I don't think they have been).

1

Lower_Praline_1049 t1_j9az9sj wrote

Yo that’s super interesting and definitely the way forward. Tell me more about your project!

1

Takadeshi t1_j9b3c3l wrote

Thank you! :) Early stages right now, just finished the literature review section and am starting implementation, I'm going to try and publish it somewhere when it's done if I can get permission from my university. I'm definitely going to see what I can do with stable diffusion once it's done, would love to get it running on the smallest device possible

1