10、机器学习中的特征提取与数据处理技巧

机器学习中的特征提取与数据处理技巧

1. 创造新特征

在尝试提出新想法时,从不同角度看待问题是很有用的方法。例如编写代码时,先设想“理想路径”,但测试代码时,转换思路问“让程序崩溃的最快方法是什么”会更有效。

对于改进分类器,之前查看各类别中最频繁出现的词有显著效果,现在尝试查看每个文档类别中最少出现的词。通过对之前代码略作修改,可提取一组中最少使用的标记:

let rareTokens n (tokenizer:Tokenizer) (docs:string []) =
    let tokenized = docs |> Array.map tokenizer
    let tokens = tokenized |> Set.unionMany
    tokens
    |> Seq.sortBy (fun t -> countIn tokenized t)
    |> Seq.take n
    |> Set.ofSeq

let rareHam = ham |> rareTokens 50 casedTokenizer |> Seq.iter (printfn "%s")
let rareSpam = spam |> rareTokens 50 casedTokenizer |> Seq.iter (printfn "%s")

测试结果如下表所示:
| 类别 | 标记 |
| — | — |
| Ham | 000pes, 0quit, 100, 1120, 116, …,

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值