Live data from Hacker News

Visualizing the Math Behind Logistic Regression and Newton's Method

thelaziestprogrammer.com

21–30 of 32 posts

Re: Visualizing the Math Behind Logistic Regression and Newton's Method

#21
post #2

What is the difference between Newton's Method and Gradient Descent? Edit: Found an answer: https://www.quora.com/In-optimization-why-is-Newtons-method-...

In short, Newton's method uses second order derivative information in the search direction, while gradient descent only uses first order derivative. In between, there are "quasi-newton" methods which include generalizations of the "secant method". I should also mention that there are all sorts of ad-hoc approaches for attempting to increase the convergence rate of gradient descent, e.g., pre-conditioning, "momentum" terms, etc.

Re: Visualizing the Math Behind Logistic Regression and Newton's Method

#22
post #2

What is the difference between Newton's Method and Gradient Descent? Edit: Found an answer: https://www.quora.com/In-optimization-why-is-Newtons-method-...

The calculus answer is that gradient descent approximates the shape of your optimization space with the first order taylor expansion at your currently optimized point (first derivative information), and Newton's method approximates it with the second order taylor expansion (first and second derivative information).

The geometric answer is that gradient descent approximates the shape of your currently optimized point by a plane that is tangent to the current point, whereas Newton's approximates it with a quadratic "bowl" using the local curvature. In gradient descent you have to take short steps down the path, because you know your approximation cannot be true (you will not always be able to lower your error by moving in the same direction, if you assume there is some minimum error). In Newton's method you can assume that your bowl approximation is correct and go straight to the bottom of that bowl. If your space really does look like a bowl, you will get to the bottom super quickly.

The ELI5 answer: you are a ship captain looking for the lowest point in a part of the ocean. You cannot afford to send a submersible down, so your approach is to send an anchor down to check the depth and take a panoramic photo a few feet around the anchor. After analyzing the results of each anchor drop you can move your ship anywhere and try again. In gradient descent you look for the lowest point on the edge of the camera's vision and move in that direction. You can move as far as you'd like, but you will not go too far because you know the drop will not go on forever. In Newton's method you will look at the curvature in the pano and extrapolate it out assuming it is a "bowl" shape. For example maybe your anchor is on an underwater J-shaped cliff getting less steep as it goes north, so you map it out as a U shape that starts going up again if you go a mile north. So, you move your ship a mile north and try again there. In gradient descent you would have moved maybe 100 feet north then checked again. Newton's method can intuitively get you to the low point in very few anchor readings, but crunching the numbers of the bowl can be very time-consuming (this becomes relevant in higher dimensions). In this analogy, the long and lat coordinates in the ocean are your two parameters to be optimized, and the height of the ocean floor is the error in your optimization. You want to find the parameters that give you the lowest error.

Re: Visualizing the Math Behind Logistic Regression and Newton's Method

#23
post #18

Earlier quoted context omitted.

Thanks for the feedback, I co-worker just jabbed me with regarding the log property mistake also... As to the motivation for the correct step: can you point me to a resource that explains this? Not sure I follow...

> As to the motivation for the correct step: can you point me to a resource that explains this? Not sure I follow... You write an equation involving division by the gradient. This is an illegal operation (one cannot divide by a vector), and your final recipe doesn't do it. As far as I can tell, you are writing down the incorrect, illegally-vector-inverting formula as motivation for the correct formula involving the (…

Ahh I got it. Understood, definitely worth clarifying, will update. Thanks.

Re: Visualizing the Math Behind Logistic Regression and Newton's Method

#24
post #18

Earlier quoted context omitted.

Thanks for the feedback, I co-worker just jabbed me with regarding the log property mistake also... As to the motivation for the correct step: can you point me to a resource that explains this? Not sure I follow...

> As to the motivation for the correct step: can you point me to a resource that explains this? Not sure I follow... You write an equation involving division by the gradient. This is an illegal operation (one cannot divide by a vector), and your final recipe doesn't do it. As far as I can tell, you are writing down the incorrect, illegally-vector-inverting formula as motivation for the correct formula involving the (…

Sorry to say it, but I got the impression that the author was unaware it was nonsensical, not that it was a clever motivation.

Re: Visualizing the Math Behind Logistic Regression and Newton's Method

#25
Dialing up the complexity a bit from Newton's method, it would be interesting to know whether there are now better explanations of the conjugate gradient method online than this classic (or at least high-profile) intro: https://www.cs.cmu.edu/~quake-papers/painless-conjugate-grad...

Re: Visualizing the Math Behind Logistic Regression and Newton's Method

#26
post #13

Since the author is reading, a few small typos, followed by one slightly more substantial comment: 'simgoid' should be 'sigmoid' (S-shaped); `x y = log(x) + log(y)` should be `log(x y) = log(x) + log(y)`;'guarentee' should be 'guarantee'; 'recipricol' should be 'reciprocal'. I would like to see some mention of the fact that the division by the gradient is a meaningless, purely formal motivation for the correct step (…

Thanks for the feedback, I co-worker just jabbed me with regarding the log property mistake also... As to the motivation for the correct step: can you point me to a resource that explains this? Not sure I follow...

Bishop has a nice treatment of Newton's method in "Pattern recognition and machine learning". Good book to have on your shelf of you are learning this stuff.

Re: Visualizing the Math Behind Logistic Regression and Newton's Method

#27
post #13

Since the author is reading, a few small typos, followed by one slightly more substantial comment: 'simgoid' should be 'sigmoid' (S-shaped); `x y = log(x) + log(y)` should be `log(x y) = log(x) + log(y)`;'guarentee' should be 'guarantee'; 'recipricol' should be 'reciprocal'. I would like to see some mention of the fact that the division by the gradient is a meaningless, purely formal motivation for the correct step (…

I'd also like to note that the Hessian matrix elements should have a \partial{\partial{l}} in each numerator, not a single \partial{l} [1].

If you aren't using LaTeX for formatting, then think partial^2 of l. FWIW: I just found this[2] which would make (using the physics package) even simpler to represent.

[1] https://en.wikipedia.org/wiki/Hessian_matrix

[2] https://tex.stackexchange.com/questions/225523/how-to-write-...

Re: Visualizing the Math Behind Logistic Regression and Newton's Method

#28
post #14

For the graphs of the home price / bathroom data set, what does the vertical axis represent? I don't see it labeled or discussed anywhere.

I just took the index of the data point (i.e. 1, 250) as the y-axis with the intention of "Stretching out" the data set along the y-axis. Otherwise the data would otherwise be illegibly compressed on a 1-D number line. In retrospect, I could have better represented the data with 2 overlying histograms, but this (somewhat) captures the intent of showing that "more expensive houses tend to have more than 2 bathrooms".

I agree with you that 2 histograms would be better. Check out the grouped barchart on this link

http://nvd3.org/examples/multiBar.html

Re: Visualizing the Math Behind Logistic Regression and Newton's Method

#29
post #22
post #2

What is the difference between Newton's Method and Gradient Descent? Edit: Found an answer: https://www.quora.com/In-optimization-why-is-Newtons-method-...

The calculus answer is that gradient descent approximates the shape of your optimization space with the first order taylor expansion at your currently optimized point (first derivative information), and Newton's method approximates it with the second order taylor expansion (first and second derivative information). The geometric answer is that gradient descent approximates the shape of your currently optimized point…

Great explanation, and the ship example could make for a fun math game! I'm in NYC also and interested in creating spaces for mathematics, will be at the Museum of Mathematics hackathon next week. Drop me a line if you're interested in chatting, sandy.vanderbleek@gmail.com

Re: Visualizing the Math Behind Logistic Regression and Newton's Method

#30

Earlier quoted context omitted.

I am a programmer trying to learn math, so are my intended audience members. That said, I should include facts related to convergence, and maybe even speed compared to SGD. As to the reciprocal -> inverse generalization, do you have any resources you could point we towards to better understand this? Additionally, a concrete answer to "Why would following the tangent repeatedly be a good idea?" has been hard to come b…

In general, it’s not a good idea. And in general, Newton’s method won’t converge. Newton’s method boils down to replacing your function by a first-order approximation. For a differentiable function, in a small neighbourhood(!), that’s a good approximation (by definition), though, and the zero of the model function will be very close to the zero of the original function (if it lies in that neighbourhood). PS: i did no…

Newton's method with a line search is the go-to algorithm for convex optimisation if the dimension of the problem is not too large.
Post reply on HN