Ch3. Example 3-1 Classifying Sentiment of Restaurant Reviews

本章开始正式讲解pytorch在NLP中的应用,也是全书中对代码讲解最为详细的一章,本章的模型仅使用一个感知机作为分类器,所以代码较为简单,但此后的章节均是以这套代码为基础进行扩展,所以务必对代码中的数据结构做到十分了解。

代码笔记:

1. 更新stop early的判断标准?

答:loss本应持续下降,如果5个epoch的训练中,loss持续增大,则判定为偏离最优点,停止训练

2. class Vocabulary(object)中,from serializable()返回的cls(**contents)是什么含义?

答:返回的是unpack 后的字典

3. class ReviewDataset(Dataset)中,__getitem__(self, index)和__len__(self)两个方法在继承父类的时候必须被过载。__getitem__(self, index)作为子类的“首要进入方法(primary entry point method)”,引用时可以不显式引用,关于这一点,可以参考  飞翔的大马哈鱼 的文章

4. 计算loss的时候使用了滑动平均,而且是累积型滑动平均(Cumulative moving average)。参看Wikipedia  https://en.wikipedia.org/wiki/Moving_average

# compute the loss
 loss=loss_func(y_pred,batch_dict['y_target'].float())
 loss_t=loss.item()
 running_loss += (loss_t - running_loss) / (batch_index + 1)

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值