当前位置: 首页 > news >正文

002_文本分类任务的问答

1、下面代码中,random_state作为随机种子作用是什么?

train_x, valid_x, train_y, valid_y = model_selection.train_test_split(trainDF['text'], trainDF['label'], test_size=0.25, random_state=42)

这段代码的作用是随机把数据分为两个部分
计算机的“随机数”其实是 伪随机数,它们是由一个公式算出来的。第一次“随机”时,程序会用一个 起始值(种子 seed)之后根据一个确定的数学公式生成下一次“随机”的结果。如果种子相同,公式和初始值都一样,那么每次运行得到的随机数序列就一样。

此外test_size是表示验证集占整个数据的比例,而不是训练集,因为验证集相对于训练集来说比较小

2、解释代码

    encoder = preprocessing.LabelEncoder()train_y = encoder.fit_transform(train_y)valid_y = encoder.transform(valid_y)

第一行代码,encoder的作用是把分类标签(字符串或其他形式)映射成整数
第二行代码分为fit和transform两个过程,fit过程找出所有的label,并放入集合set,然后映射成词典,transform过程把label映射为数字,并对原label做替换
第三行代码只用transform,不再fit,是因为验证集要用和训练集相同的标签映射关系

3、说说TF-IDF,并解释代码

    tfidf_vect = TfidfVectorizer(analyzer='word', token_pattern=r'\w{1,}', max_features=5000)tfidf_vect.fit(trainDF['text'])xtrain_tfidf = tfidf_vect.transform(train_x)xvalid_tfidf = tfidf_vect.transform(valid_x)

TF-IDF: Term Frequency – Inverse Document Frequency (词频–逆文档频率)
主要作用是衡量一个词在一篇文档里有多重要

fit作用:这里传入的参数是文本(字符串)的列表,fit的作用是统计每个词出现在哪些文档,计算IDF值,并建立词表,决定哪些词被保留
transform:用fit建立的词表,把训练集文本转成TF-IDF特征矩阵

4、模型训练

# 3.训练朴素贝叶斯分类器
def train_model(classifier, feature_vector_train, label_train, feature_vector_valid, label_valid, is_neural_net=False):# 3.1. 训练模型classifier.fit(feature_vector_train, label_train)# 3.2. 预测验证集predictions = classifier.predict(feature_vector_valid)# 3.3. 如果是神经网络,取预测概率最大的类别if is_neural_net:predictions = predictions.argmax(axis=-1)   # argmax 返回最大值所在的索引# axis=-1 表示 沿最后一维 取最大值索引,也就是对每一行(每条样本)找到概率最大的类别索引# 3.4. 返回准确率return metrics.accuracy_score(label_valid, predictions)

训练模型说法太笼统了,有没有更详细的说法?
      训练模型就是执行所传入的深度学习算法,让模型从训练数据里学到规律,使它能预测未知数据的标签

http://www.wxhsa.cn/company.asp?id=6832

相关文章:

  • 车牌识别
  • 告别人工标注瓶颈!Reward-RAG:用 CriticGPT 打造更懂人类偏好的检索模型
  • Latex 中百分号怎么打
  • 文件上传-条件竞争绕过
  • 文件包含漏洞
  • 9.17 CSP-S模拟23/多校A层冲刺NOIP2024模拟赛19 改题记录
  • Java基本语法
  • 在AI技术快速实现创想的时代,挖掘前端学习新需求成为关键——某知名编程教育平台需求洞察
  • 负载均衡层详解part3-lvs
  • 4. MySQL 索引优化实战
  • 算法课第一周作业
  • 线段树懒标记模板
  • 谁在我这位置遗留或丢失了一颗口罩爆珠(好像是桃子味)?
  • python小计划——学生管理系统
  • C++ 并发
  • UML 5章
  • 《微服务事务管理》 - 教程
  • python之socket udp服务器实现
  • kylin SP3安装mysql 8.4.5
  • Unity中是否可以禁用GC
  • 经典SQL语句大全
  • 开源软件图形库
  • IvorySQL 与 deepin 完成兼容性认证,共创开源生态新篇章
  • 在 Nginx 上搭建静态站点
  • 测试
  • 认真做膜你赛
  • 使用GitHub Dork快速发现漏洞:我的第一个Bugcrowd漏洞挖掘实战
  • kylin SP3安装mysql8.0.41
  • DIFY 项目中通过 Makefile 调用 Dockerfile 并采用 sudo make build-web 命令构建 web 镜像的方法和注意事项
  • 代码随想录算法训练营第一天 | 704. 二分查找、27. 移除元素、209.长度最小的子数组