# How does the weight update formula for logistic regression work?

I am trying to use Logistic Regression to make a spam filter, but I am having trouble understanding the weight update part. I have processed my email dataset, and I have an attribute vector of the top n words that are most likely to be contained within a spam.

From my understanding, during training, I will have to implement an optimization formula after each training example in order to update the weights.

$$w_l \leftarrow w_l + \eta \cdot \sum_{i=1}^m [ y^{(i)} - P(c_+ \mid \vec{x}^{(i)} )] \cdot x_l^{(i)}$$

How does a formula such as this work? How can it be implemented in Python?

I think i found out how that works, so i made a short article about it . https://medium.com/@kourloskostas/python-spam-filter-86b21d7d1564 I hope it helps!

• You are right ,will post the answer here as well Apr 14 '20 at 9:50
• Actually, if you could excerpt the most salient passages from the medium article, that would really help with this answer, specifically. (Welcome to SE:AI btw--glad to have you here!)
– DukeZhou
Apr 14 '20 at 22:22
• Thanks ! I will do my best to clear the article up! Apr 15 '20 at 0:23