PYTHON+AI LLM DAY SIXTY-FIVE

今天简单聊聊随机森林算法(RandomForest)做文本分类任务的大致流程:在开始对数据进行建立分类模型的时候,通常需要对这些数据进行评价能不能做? 最简单的办法就是快速搭建一个模型跑一下,拿到结果再来看下这批数据的质量,然后才是用这批数据训练fasttext,bert,llm等大模型.因为数据决定了模型上限.模型不能直接识别自然语言文本,需将其转化为词向量.在随机森林算法里,底层选用的是tfidf指标,tfidf是tf(词频:某一个词在文本中出现的频率)和idf(逆文档频率:某一个词出现的文本数加一整体的倒数乘以总的文本数整体取自然对数再加一)的乘积.思想就是:某个词在一片文章中出现的频率越高,并且在其他文章中很少出现,那么这个词就有很好的类别区分能力,适合做文本分类.导包:from skearn.feature_extraction,text import TfidfVectorizer.TfidfVectorizer(stop_words(读到这些词,自动忽略)).fit_transform(传入已经做完分词处理的数据,中文通常用结巴分词)形成一个稀疏矩阵,根据这些做了一张词表TfidfVectorizer().vocabulary_.这张词表里面是传入文本的所有词(去重过后)和所对应的索引位置.稀疏矩阵的行就是传入文本的行数,列就是这些分词过后的词,词下面就是tfidt权重.为什么稀疏?因为一行里面的所有词相对于列来说太少,好多地方就是零,因此是稀疏的.然后就是拿词表的索引去找权重分数,用feature和label划分数据集,选择RandomForestClassifier()模型,拟合fit(x_train,y_train)即可.后续要做测试的话,模型和向量化器(TfidfVectorizer())要一并保存,用的同一张词表,测试也是文本先经过向量化器,得到结果再传给模型.随机森林算法是一种集成学习,多个弱学习器是并行关系,当处理大样本数量,也并不快.可以通过调整以下参数.n_estimators,max_depth,min_samples_split,min_sample_leaf,max_features,n_jobs等来加快它的运算速度.

复制代码
相关推荐
武子康43 分钟前
调查研究-192 AI Agent 之间也需要“信任“:把多 Agent 信任变成可测指标
人工智能·openai·agent
Smoothcloud_润云1 小时前
Hermes Agent 的上下文记忆机制:一个开源 Agent 是怎么"记住"你的
人工智能·agent·gpu
早点睡啊1 小时前
精读 LangChain 官方文档(一)总览、安装与快速开始:从 create_agent 跑通第一个智能体
人工智能
牛奶1 小时前
AI时代裁员后:清零是君子豹变
人工智能·程序员
武子康1 小时前
调查研究-191 SenseVoice 不只是 ASR:把语音从“转文字“升级成“理解状态“
人工智能·深度学习·openai
程序员cxuan3 小时前
Codex 会把磁盘给烧了?完整复盘来了!
人工智能·后端·程序员
甲维斯3 小时前
字节版“Codex”初体验,Seed 2.1pro所有人免费用!
人工智能·ai编程·豆包marscode
半个落月4 小时前
从 Tokenization 到 Embedding:用 Node.js 搞懂大模型为什么先“分词”再“向量化”
人工智能·node.js
vanuan4 小时前
MCP协议实战(Java版):用Spring Boot让AI直接查你的数据库
人工智能
雪隐4 小时前
个人电脑玩AI-06让5060 Ti给你打工——不光能画画,Qwen3-TTS还能学人说话,连我老板都信了!
人工智能·后端·python