Remix.run Logo
crackalamoo 7 hours ago

Yes, this is essentially it.

As a corollary, the output classes can be any set, rather than needing to be set before training.

akkad33 6 hours ago | parent [-]

Can someone do a ELI5A of how they achieve classification over any user defined list of items? Normal neural networks do a softmax over a known output set to get probabilities

andy12_ 5 hours ago | parent | next [-]

You can achieve open-vocabulary classification by making the final weights in the softmax come from a category encoder instead of being fixed learned weights. So instead of

softmax(encode(input)*learned_weights)

You have

softmax(encode(input)*encode(categories))

I'm not sure if Jev does it this way, but it's how you get open-vocabulary zero-shot image classification with models like CLIP [1].

[1] https://openai.com/index/clip/

theodoretliu 6 hours ago | parent | prev [-]

I can think of two possible approaches 1. Jev limits to 255 distinct options. So they can preprocess your set of options and “tell” the LLM via input tokens 1 = red, 2 = blue, etc then jev need only output softmax over 255 states while benefiting from pretrain of other LLMs 2. You allow the forward pass to output over the total token state but mask over the logits to limit to the user options. Less plausible? bc tricky when input is multi token which they clearly support.

My guess would be option 1. Didn’t read the kev repo here which would also explain