1
$\begingroup$

I understand what is derivative-free optimization, and I am thinking a similar problem where the function $f$ we are optimizing is unknown and the only information we can acquire is the derivative. In other words, we can get $(x_1, \nabla f(x_1)), \cdots, (x_n, \nabla f(x_n)$ to optimize the unknown function.

I know the current gradient based optimization tasks in machine learning are all using this idea to optimize the loss function. But as far as I can understand, all of those problems require the predefined loss function, and compute the gradient based on the predefined loss function at each time step $t$.

Are there any real world problems which don't have such a predefined loss function but give you the gradient of the function you are optimizing directly? In other words, you'll optimize an unknown loss function $f$, at each time step $t$, you choose $x_t$ and receive $\nabla f(x_t)$ as the feedback.

$\endgroup$
4
  • $\begingroup$ If i understand you correctly, then there is no real need to know the function itself, and we can be satisfied with the gradient at certain points $\endgroup$ – nir shahar May 27 at 16:31
  • $\begingroup$ Yes, I think you understand correctly. I am wondering if this setting has some applications in real life? In other words, some real-life applications don't have the function but do optimization directly with the gradient. All the applications I know in ML have some predefined loss function to compute the gradient. $\endgroup$ – Francis May 27 at 19:28
  • 1
    $\begingroup$ All machine learning models have this loss function in order to define what the problem they are trying to solve is. Without a loss function, you don't even know what you are trying to do. Usually we choose some loss function that would make the gradient computation easy (and would have some other properties about its minimum, for example, it is usually chosen to be a convex function). Technically speaking, its not required to know what loss function you are even optimizing, if someone else calculates the gradients for you. $\endgroup$ – nir shahar May 27 at 19:31
  • $\begingroup$ Exactly! So essentially my question is, does there exist any real-world optimation problems ( which don't need to be machine learning problems) which provide the gradients for you to do the optimization while you don't know the specific function you are optimizing. $\endgroup$ – Francis May 27 at 19:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.