I think this is a strong starting point but I think the nice crisp “neural net = function approximator” mostly falls apart as a useful notion when you do fancy stuff with your neural net like active learning or RLAIF. Maybe it’s not technically the neural net doing that...
I guess we don’t have great terms to delineate all these levels of the system:
code that does a forward pass (usually implicitly also describing backward pass & update given loss)
code that does that plus training (ie data fetch and loss function)
that plus RL environment or training set
that plus “training scaffolding” code that eg will do active learning or restart the game if it freezes
just code & weights for a forward pass during inference (presuming that the system has separable training and inference stages)
that plus all the “inference scaffolding” code which will eg do censorship or internet search or calculator integration
that plus the “inference UI”. (Consider how differently people use gpt4 api vs chatgpt website.) (This could also eg be the difference between clicking a checkbox for who to kill and clicking the cancel button on the notification!)
the actual final system turned on in the wild with adversarial users and distribution shift and so on
I wonder if some folks are taking past each other by implicitly referring to different items above...
I think this is a strong starting point but I think the nice crisp “neural net = function approximator” mostly falls apart as a useful notion when you do fancy stuff with your neural net like active learning or RLAIF. Maybe it’s not technically the neural net doing that...
I guess we don’t have great terms to delineate all these levels of the system:
code that does a forward pass (usually implicitly also describing backward pass & update given loss)
code that does that plus training (ie data fetch and loss function)
that plus RL environment or training set
that plus “training scaffolding” code that eg will do active learning or restart the game if it freezes
just code & weights for a forward pass during inference (presuming that the system has separable training and inference stages)
that plus all the “inference scaffolding” code which will eg do censorship or internet search or calculator integration
that plus the “inference UI”. (Consider how differently people use gpt4 api vs chatgpt website.) (This could also eg be the difference between clicking a checkbox for who to kill and clicking the cancel button on the notification!)
the actual final system turned on in the wild with adversarial users and distribution shift and so on
I wonder if some folks are taking past each other by implicitly referring to different items above...