实验三:机器学习1.0
要求:
针对实验1和实验2构建的数据集信息分析
设计实现通过数据简介进行大类分类的程序
代码实现:
训练集数据获取:
read_data.py
import json
import pickledef read_intro():data = []trypath=r"E:\Procedure\Python\Experiment\first.json"filepath=r"E:\Procedure\Python\Experiment\res1.json"with open(filepath, 'r', encoding='utf-8') as file:for line in file:record = json.loads(line)if record.get('intro')!='':data.append(record)return datadef store_model(model):# 加载模型file=r'E:\Procedure\Python\Experiment\Machine_Learning\model1.pkl'try:# 尝试以 'xb' 模式打开文件,如果文件不存在则创建新文件with open(file, 'wb') as file:# 使用 pickle 序列化模型并写入文件pickle.dump(model, file)except FileExistsError:print("File already exists. Cannot overwrite existing file.")except Exception as e:print("An error occurred:", e)# 使用加载的模型进行预测#predictions = loaded_model.predict(X_test)
def store_report(report):file=r"E:\Procedure\Python\Experiment\Machine_Learning\class_report.txt"with open(file,'w')as file:file.write(report)returndef get_model():m_path=r'E:\Procedure\Python\Experiment\Machine_Learning\model1.pkl'try:with open(m_path,'rb')as file:loaded_model=pickle.load(file)return loaded_modelexcept Exception as e:print(e)return None
训练模型:
多项式朴素贝叶斯模型用于单一标签文本分类
# 导入所需的库
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.naive_bayes import MultinomialNB
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score, classification_report
import read_data
import random
data=read_data.read_intro()
random.shuffle(data)
X = [item['intro'] for item in data]
y = [item['mainclass'] for item in data]
# 文本向量化
vectorizer = TfidfVectorizer()
X_vectorized = vectorizer.fit_transform(X)# 将数据集划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X_vectorized, y, test_size=0.2, random_state=42)# 初始化朴素贝叶斯分类器
model = read_data.get_model()
#model = MultinomialNB()
# 训练模型model.fit(X_train, y_train)# 在测试集上进行预测
y_pred = model.predict(X_test)read_data.store_model(model)
# 评估模型性能
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)# 打印分类报告
print("\nClassification Report:")
report=classification_report(y_test, y_pred,zero_division=0)
print(report)
read_data.store_report(report)
结果:

相关文章:
实验三:机器学习1.0
要求: 针对实验1和实验2构建的数据集信息分析 设计实现通过数据简介进行大类分类的程序 代码实现: 训练集数据获取: read_data.py import json import pickledef read_intro():data []trypathr"E:\Procedure\Python\Experiment\f…...
Vue 3 + Vite项目实战:常见问题与解决方案全解析
文章目录 一、项目使用本地图片打包后不显示1、在html中时候,本地运行和打包后线上运行都ok。2、用动态数据,本地运行ok,打包后线上运行不显示3、适用于处理单个链接的资源文件4、用动态数据且本地和线上访问都可显示 二、使用插件vite-plugi…...
飞天使-k8s知识点31-rancher的正确打开方式
文章目录 安装之前优化一下内核参数以及系统内核版本 rancher安装主要是使用以下命令nginx的配置为解决办法 安装之前优化一下内核参数以及系统内核版本 内核版本 4.17 cat > /etc/modules-load.d/iptables.conf <<EOF ip_tables iptable_filter EOF 然后重启服务器…...
Vue.component v2v3注册(局部与全局)组件使用详解
在Vue中,可以通过两种方式注册组件:局部注册和全局注册。 局部注册是在父组件中通过import和components选项注册的组件,仅在当前父组件及其子组件中可用。 // 父组件中import ChildComponent from ./ChildComponent.vue;export default {co…...
HNU-算法设计与分析-作业5
第五次作业【回溯算法】 文章目录 第五次作业【回溯算法】<1> 算法分析题5-3 回溯法重写0-1背包<2> 算法分析题5-5 旅行商问题(剪枝)<3> 算法实现题5-2 最小长度电路板排列问题<4> 算法实现题5-7 n色方柱问题<5> 算法实现…...
基础之音视频2
01 前言 02 mp 03 mp实例 简易音乐播放器 04 音频 sound-pool 1.作用 播放多个音频,短促音频 2.过程 加载load- 3.示例 模拟手机选铃声 步骤: 创建SoundPool对象,设置相关属性 音频流存入hashmap 播放音频 05 videoview 3gp 体积小 mp4 …...
两小时看完花书(深度学习入门篇)
1.深度学习花书前言 机器学习早期的时候十分依赖于已有的知识库和人为的逻辑规则,需要人们花大量的时间去制定合理的逻辑判定,可以说是有多少人工,就有多少智能。后来逐渐发展出一些简单的机器学习方法例如logistic regression、naive bayes等…...
21【Aseprite 作图】画白菜
1 对着参考图画轮廓 2 缩小尺寸 变成这样 3 本来是红色的描边,可以通过油漆桶工具(取消 “连续”),就把红色的轮廓线,变成黑色的 同时用吸管工具,吸取绿色和白色,用油漆桶填充颜色 4 加上阴影…...
2024.05.15 [AI开发配环境]个人使用最新版远程服务器配环境大纲:docker、云盘、ssh、conda等
不包括在宿主机安装docker。 docker 找到心仪的镜像,比如从网上pull:https://hub.docker.com/r/pytorch/pytorch/tags?page&page_size&ordering&name2.0.1 docker pull pytorch/pytorch:2.0.1-cuda11.7-cudnn8-devel# 新建容器 docker r…...
opencv 轮廓区域检测
直线检测 void LineDetect(const cv::Mat &binaryImage) {cv::Mat xImage,yImage,binaryImage1,binaryImage2;// 形态学变化,闭操作 先膨胀,再腐蚀 可以填充小洞,填充小的噪点cv::Mat element cv::getStructuringElement(cv::MORPH_RE…...
2024-5-16
今日安排: 完结 nf_tables 模块的基本学习,然后开始审计源码mount 的使用,学习 namespace (昨昨昨昨天残留的任务)(:看我能搁到什么时候静不下心学习新知识就做 CTF 题目🦑🦑🦑 今…...
IT行业的现状与未来:技术创新引领时代变革
随着技术的不断进步,IT行业已成为推动全球经济和社会发展的关键力量。从云计算、大数据、人工智能到物联网、5G通信和区块链,这些技术正在重塑我们的生活和工作方式。本文将探讨当前IT行业的现状及未来发展趋势,并邀请行业领袖、技术专家和创…...
Redis分布式锁【简单版】
文章目录 概要例子1【SETNX EXPIRE】例子2【 Redisson 】 概要 redis分布式锁六种方案 SETNX EXPIRE 方案: 描述:使用Redis的SETNX命令来尝试设置一个键值对,如果该键不存在,则设置成功并设置过期时间,实现锁的功能…...
18.Blender 渲染工程、打光方法及HDR贴图导入
HDR环境 如何导入Blender的HDR环境图 找到材质球信息 在右上角,点击箭头,展开详细部分 点击材质球,会出现下面一列材质球,将鼠标拖到第二个材质球,会显示信息 courtyard.exr 右上角打开已渲染模式 左边这里选择世界…...
VBA在Excel中部首组查字法的应用
VBA在Excel中部首组查字法的应用 文章目录 前言一、网站截图二、操作思路三、代码1.创建数据发送及返回方法2.创建截取字符串中的数值的方法3.获取部首对应的编码4.获取特定部首的汉字运行效果截图前言 使用汉语字典查生字、生词,多用拼音查字法和部首查字法。以前都是用纸质…...
ASP.NET MVC 4升级迁移到ASP.NET MVC 5
背景:今天针对一个老项目进行框架升级,老项目使用的是MVC 4,现在要升级到MVC5。 备份项目.NET升级4.5以上版本通过Nuget,更新或者直接安装包 包名oldVersionnewVersion说明Microsoft.AspNet.Mvc4.0.05.x.xMicrosoft.AspNet.Razo…...
AIGC时代已至,你准备好抓住机遇了吗?
一、行业前景 AIGC,即人工智能生成内容,是近年来人工智能领域中发展迅猛的一个分支。随着大数据、云计算、机器学习等技术的不断进步,AIGC已经取得了显著的成果,并且在广告、游戏、自媒体、教育、电商等多个领域实现了广泛应用。…...
2024CCPC郑州邀请赛暨河南省赛
比赛记录:看群里大家嘎嘎拿牌,自己个人来solo了一下,发现简单到中等题很多,写了两小时出了7题,但是写的比较慢,对难题把握还是不准确 补题 : A题确实巧妙充分利用题目的数据范围来思考问题&…...
Spring 各版本发布时间与区别
版本版本特性Spring Framework 1.01. 所有代码都在一个项目中 2. 支持核心功能IoC、AOP 3. 内置支持Hibernate、iBatis等第三方框架 4. 对第三方技术简单封装。如:JDBC、Mail、事务等 5. 只支持XML配置方式。6.主要通过 XML 配置文件来管理对象和依赖关系࿰…...
前端模块导入导出方式
不同的导出方式和相应的导入方式,可以提炼成 3 种类型:name、default 和 list。 以下是使用示例: // Name Export | Name Import // 一个“命名”的导出 export const name value import { name } from ...❌ 错误示例: export…...
STC8H单片机低功耗实战:用掉电模式和外部中断,让电池续航翻倍
STC8H单片机低功耗实战:用掉电模式和外部中断,让电池续航翻倍 在电池供电的嵌入式设备开发中,功耗控制往往是决定产品成败的关键因素。想象一下,一款设计精良的便携式环境监测仪,如果因为功耗问题导致频繁更换电池&am…...
一篇文章吃透SpringBoot:自动配置原理与项目实战
一篇文章吃透SpringBoot:自动配置原理与项目实战 目录 1、springboot简介 2、springboot入门 3、热部署组件(DevTools) 4、springboot整合jsp 5、application.properties 6、springboot整合mybatis 7、springboot整合lombok 8、springboot实现单元测试 9、springboot整合drui…...
超大规模内容生成技能引擎:模块化架构与工作流实践
1. 项目概述:一个面向超大规模内容生成的技能引擎最近在折腾一些自动化内容生成的项目,发现了一个挺有意思的GitHub仓库,叫smouj/ultra-generator-skill。光看这个名字,你可能会觉得有点抽象——“超生成器技能”?这到…...
音频智能切片工具:快速解放双手的终极音频分割解决方案
音频智能切片工具:快速解放双手的终极音频分割解决方案 【免费下载链接】audio-slicer A simple GUI application that slices audio with silence detection 项目地址: https://gitcode.com/gh_mirrors/aud/audio-slicer 还在为处理冗长的音频文件而烦恼吗&…...
Nacos高可用集群部署实战:从架构设计到生产运维全解析
1. 项目概述:为什么Nacos集群部署是微服务架构的“定海神针”在微服务架构的实践中,服务注册与发现、配置管理是两大基石。Nacos作为Spring Cloud Alibaba生态的核心组件,集这两大功能于一身,其稳定性和可用性直接决定了整个微服务…...
Ship-Score:自动化项目健康度评估工具的设计、实现与工程实践
1. 项目概述与核心价值最近在GitHub上看到一个挺有意思的项目,叫cwklurks/ship-score。乍一看这个标题,你可能会有点摸不着头脑,这“ship-score”到底是个啥?是给船打分?还是某种评分系统?作为一个在软件开…...
智能体编排框架实战:构建可控可观测的多AI协同工作流
1. 项目概述与核心价值最近在折腾AI应用开发,特别是想把多个大语言模型(LLM)和工具(Tools)组合起来,搞点自动化流程。市面上现成的框架不少,但要么太重,要么太“黑盒”,想…...
如何在浏览器中实现专业级Markdown文档实时渲染:完整配置指南
如何在浏览器中实现专业级Markdown文档实时渲染:完整配置指南 【免费下载链接】markdown-viewer Markdown Viewer / Browser Extension 项目地址: https://gitcode.com/gh_mirrors/ma/markdown-viewer Markdown Viewer是一款功能强大的浏览器扩展,…...
3分钟学会Charticulator:零代码制作专业数据图表的终极指南
3分钟学会Charticulator:零代码制作专业数据图表的终极指南 【免费下载链接】charticulator Interactive Layout-Aware Construction of Bespoke Charts 项目地址: https://gitcode.com/gh_mirrors/ch/charticulator 还在为制作专业图表而头疼吗?…...
汇顶科技入围GSA奖项:中国芯片设计公司的战略聚焦与成长路径分析
1. 项目概述:一次里程碑式的行业认可最近在半导体圈子里,一个消息引起了不小的波澜:汇顶科技成功入围了全球半导体联盟(GSA)2019年度的两大奖项提名。对于不熟悉这个领域的朋友来说,这或许只是一个普通的公…...
