班课6

1. project

preprocess:

a. bag of words: sklearn.feature_extraction.text.CountVectorizer

把所有出现过的单词整合成字典

b. TFIDF: sklearn.feature_extraction.text.TfidfVectorizer

增加了词频

models

a. sklearn.svm.SVC

b. sklearn.native_bayes.MultionmialNB

c. sklearn.naive_bayes.BernouliNB

d. sklearn.tree.DecisionTreeClassifier

e. sklearn.neighbors.NearestNeighbors

2. Bias-Vaieance Decomposition

bias为模型与目标的差距

variance为不同训练数据造成的差异

越复杂的模型bias越小,variance越大;反之亦然

3. stability:给每个模型增加一个新属性

有一个给定data distributionD,从中抽取S1,S2,分别对其训练算法L

得到相似结果,则称之为stable(如KNN),反之unstable(如decision tree)

4. ensemble methods

训练多组数据,根据准确度赋予不同weight,拟合起来

或者将训练好的模型再放入learning algorithm中,得到最终的output

5. bagging

同上述相似,但是只训练同一种方法(每次选择的sample都是随机得到的,有放回的抽取,所以可能有重复)

bagging针对llow bias high variance的情况,可以降低variance

计算error时假设所有learner都是独立的

6. random forest

简单理解为bagging用在decision tree上

区别是横向纵向分别sample

7. boosting

针对weak learners,可理解为特别stable的learner(只比random好一点)

针对准确度差但是variance很低的

new learner focues on former error learner

即在每一轮的学习中解决之前出现的错误,增大一直错误的weight,如果做对了就减少weight

原文地址:https://www.cnblogs.com/eleni/p/12689348.html