机器学习助力个性化新闻与内容传播预测
一、支持向量机(SVM)在新闻分类中的应用
1.1 SVM 基础原理
支持向量机(SVM)是一种尝试使用最大间隔超平面将数据点线性分离为不同类别的算法。假设我们有两类数据,想用一条线将它们分开(这里仅处理两个特征或维度)。在选择分隔线时,像图中的线 H1 不能有效区分两类数据,可排除;线 H2 能干净地分开两类数据,但线 H3 是最大间隔线,它位于每类最近点的中心,这些最近点被称为支持向量。
若数据不能如此整齐地分类,存在点的重叠情况,有两种处理方法:
- 软间隔 SVM :仍然最大化间隔,但会对落在间隔错误一侧的点进行惩罚。
- 核技巧 :将数据转换到更高维度的空间,使数据能够被线性分离。例如,将一维特征空间映射到二维特征空间,把每个 x 值映射到 x 和 x²,这样就可以添加一个线性分离平面。
1.2 使用 SVM 进行新闻分类
我们可以将 tf - idf 矩阵输入到 SVM 中进行训练,代码如下:
from sklearn.svm import LinearSVC
clf = LinearSVC()
model = clf.fit(tv, df['wanted'])
这里的 tv 是矩阵,df[‘wanted’] 是标签列表,标签为 y 或 n,表示是否对文章感兴趣。运行上述代码后,模型就训练完成了。需要注意的是,这里没有正式评估模型,通常应该有一个保留集来评估模型,
超级会员免费看
订阅专栏 解锁全文
736

被折叠的 条评论
为什么被折叠?



