• Datawhale 之NLP学习-打卡(四)


    Task4 基于深度学习的文本分类1

    1.学习目标

    • 学习FastText的使用和基础原理
    • 学会使用验证集进行调参

    2.文本表示方法Part2

    • 现有文本表示方法的缺陷
      One-hot、Bag of Words、N-gram、TF-IDF几种文本表示方法存在的问题:转换得到的向量维度很高,需要较长的训练实践;没有考虑单词与单词之间的关系,只是进行了统计。

    • FastText

    3.基于FastText的文本分类

    • 代码

      import pandas as pd
      from sklearn.metrics import f1_score
      
      train_df = pd.read_csv("./{}/train_set.csv".format(file_dir),sep='	',nrows=15000)
      train_df['label_ft'] = '__label__' +train_df['label'].astype(str)
      train_df[['text','label_ft']].iloc[:-5000].to_csv('train_test1.csv', index=None, header=None, sep='	')
      
      import fasttext
      model = fasttext.train_supervised('train_test1.csv',lr=1.0,wordNgrams=2,verbose=2,minCount=1,epoch=25,loss='hs')
      val_pred = [model.predict(x)[0][0].split('__')[-1] for x in train_df.iloc[-5000:]['text']]
         
      print(f1_score(train_df['label'].values[-5000:].astype(str), val_pred, average='macro'))
      
      
    • 结果

    4.如何使用验证集调参

    • 参数

      train_supervised参数 解释
      input 训练文件路径
      lr 学习率 默认为0.1
      dim 词向量维度 默认为100
      ws(windows size) 窗口大小 默认为5
      minCount 最小词数 默认为1
      minCountLabel 最小标签数 默认为1
      minn 0
      maxn 0
      neg 负例采样个数 默认为5
      wordNgrams 最大的词n-gram长度 默认为1
      loss 损失函数【ns、hs、softmax、ova】 默认为softmax
      bucket 桶数 默认为2000000
      thread cpu线程数 默认为12
      lrUpdateRate 学习率更新 默认为100
      t 负采样阈值 默认为0.0001
      label 标签前缀 默认为‘label
      verbose 控制打印输出 2显示每个epoch 1显示最后一个epoch
      pretrainedVectors 用于监督学习的预训练词向量(.vec文件)给出路径 默认为‘’
    • 验证方式
      10折交叉验证,每折9/10的数据进行训练,剩余1/10作为验证集检验模型效果

  • 相关阅读:
    IE 插件 Trixie 介绍
    .net开发沉淀之:HttpHandler(一)
    在Eclipse中导入已经存在的jar包
    浏览器的GreaseMonkey和Trixie插件
    为什么export>runnable jar file的launch configuration没有东西可以选择?
    SQL2008:如何解决“阻止保存要求重新创建表的更改”
    在IIS6下部署MVC2.0的注意事项
    ASP.NET 4.0中使用FreeTextBox和FCKeditor遇到安全问题警告的解决办法
    MyEclipse 设置JDK指向目录错误信息
    RHEL5.5 安装 oracle 11g
  • 原文地址:https://www.cnblogs.com/rn-05181226-rw/p/13369347.html
Copyright © 2020-2023  润新知