Sales-Choice-Volunteering-Project / EmotionAnalyzerWeka

The program for obtaining emotion data
1 stars 0 forks source link

Getting familiar with Support Vector Machines #13

Closed damirsaleschoice closed 3 years ago

damirsaleschoice commented 3 years ago

We are most likely going to end up using the Support Vector Machines (SVM) for a Natural Language Classifier. The Support Vector Machines are very complicated and heavy on math... Luckily, we do not need to get in that deep and can observe it on the surface, so here is a task:

Assume you are writing a Support Vector Machines for Dummies book as a bad author; not understanding the complicated math and theories behind it. Try to get informed what SVMs are, and how they work. If there is something you don't understand, skip it for later (that is, if you want to come back to it at all). Skipping is not be the proper way to learn!!! So, if you disagree with skipping, try finding some source which explains SVMs in Layman's terms, because that is all we need.

Focus mainly on the parts such as the "Kernel trick" and how they are better (or worse) than the Neural Networks. If you still don't understand them, don't worry, I will do a quick and easy crash-course on it... I can explain them in 5-10 minutes.

Weka does not come with SVMs, but you can import the external component, which will be another ticket...

sherlockliang888 commented 3 years ago

Imagine we have a lot of data we want to classify on a 2D planer, SVM machine draws lines to best separate them, or to classify them. However, sometimes it is difficult to draw such lines. That's when we use the kernel trick, which projects the planer to a higher dimension such as 3D and then draw lines to separate them.

I have thought about using RNN since it may performs better in terms of sentiment analysis, but I guess the reason why SVM may be a better algorithm is that NN requires a large amount of data for training to produce high accuracy, and this takes a long training time.

Done