机器学习--Kaggle的使用
机器学习–Kaggle的使用
打开Kaggle: Your Machine Learning and Data Science Community并点击Sign In登录账号

kaggle中自带了很多的数据集

在点击Datasets之后,单点Notebook,如果有适用的数据集可以单击Copy and Edit复制其Notebook,之后我们自己进行慢慢研习。

点击File,Upload input,Upload dataset后即可把我们现有的文档进行上传。

来举一个手写数字识别的栗子:
import numpy as np # 导入NumPy数学工具箱
import pandas as pd # 导入Pandas数据处理工具箱
from keras.datasets import mnist #从Keras中导入mnist数据集
#读入训练集和测试集
(X_train_image, y_train_lable), (X_test_image, y_test_lable) = mnist.load_data()
print ("特征集张量形状:", X_train_image.shape) #用shape方法显示张量的形状
print ("第一个数据样本:\n", X_train_image[0]) #注意Python的索引是从0开始的
结果如下
shape方法显示X_train_image张量的形状。灰度图像数据集是3D张量,第一个维度是样本维(也就是一张一张的图片,共60 000张),后面两个是特征维(也就是图片的28px×28px的矩阵)
print ("第一个数据样本的标签:", y_train_lable[0])
from tensorflow.keras.utils import to_categorical # 导入keras.utils工具箱的类别转换工具
X_train = X_train_image.reshape(60000,28,28,1) # 给标签增加一个维度
X_test = X_test_image.reshape(10000,28,28,1) # 给标签增加一个维度
y_train = to_categorical(y_train_lable, 10) # 特征转换为one-hot编码
y_test = to_categorical(y_test_lable, 10) # 特征转换为one-hot编码
print ("数据集张量形状:", X_train.shape) # 特征集张量的形状
print ("第一个数据标签:",y_train[0]) # 显示标签集的第一个数据

(1)Keras要求图像数据集导入卷积网络模型时为4阶张量,最后一阶代表颜色深度,灰度图像只有一个颜色通道,可以设置其值为1。
from keras import models # 导入Keras模型, 和各种神经网络的层
from keras.layers import Dense, Dropout, Flatten, Conv2D, MaxPooling2D
model = models.Sequential() # 用序贯方式建立模型
model.add(Conv2D(32, (3, 3), activation='relu', # 添加Conv2D层input_shape=(28,28,1))) # 指定输入数据样本张量的类型
model.add(MaxPooling2D(pool_size=(2, 2))) # 添加MaxPooling2D层
model.add(Conv2D(64, (3, 3), activation='relu')) # 添加Conv2D层
model.add(MaxPooling2D(pool_size=(2, 2))) # 添加MaxPooling2D层
model.add(Dropout(0.25)) # 添加Dropout层
model.add(Flatten()) # 展平
model.add(Dense(128, activation='relu')) # 添加全连接层
model.add(Dropout(0.5)) # 添加Dropout层
model.add(Dense(10, activation='softmax')) # Softmax分类激活,输出10维分类码
# 编译模型
model.compile(optimizer='rmsprop', # 指定优化器loss='categorical_crossentropy', # 指定损失函数metrics=['accuracy']) # 指定验证过程中的评估指标
这段代码把数据集放入卷积神经网络进行处理。这个网络中包括两个Conv2D(二维卷积)层,两个MaxPooling2D(最大池化)层,两个Dropout层用于防止过拟合,还有Dense(全连接)层,
最后通过Softmax分类器输出预测标签y’值,也就是所预测的分类值。这个y’值,是一个one-hot(即“一位有效编码”)格式的10维向量。我们可以将y’与标签真值y进行比较,以计算预测的准确率。

model.fit(X_train, y_train, # 指定训练特征集和训练标签集validation_split = 0.3, # 部分训练集数据拆分成验证集epochs=5, # 训练轮次为5轮batch_size=128) # 以128为批量进行训练

accuracy:代表训练集上的预测准确率。
val_accuracy:代表验证集上的预测准确率。
score = model.evaluate(X_test, y_test) # 在测试集上进行模型评估
print('测试集预测准确率:', score[1]) # 打印测试集上的预测准确率
K折验证:机器学习中有重用同一个数据集进行多次验证的方法

K折验证(K-fold validation)的思路是将数据划分为大小相同的K个分区,对于每个分区,都在剩余的K-1个分区上训练模型,然后在留
下的分区上评估模型。
最终分数等于K个分数的平均值。对于数据集的规模比较小或者模型性能很不稳定的情况,这是一种很有用的方法。
注意K折验证仍需要预留独立的测试集再次进行模型的校正
pred = model.predict(X_test[0].reshape(1, 28, 28, 1)) # 预测测试集第一个数据
print(pred[0],"转换一下格式得到:",pred.argmax()) # 把one-hot码转换为数字
import matplotlib.pyplot as plt # 导入绘图工具包
plt.imshow(X_test[0].reshape(28, 28),cmap='Greys') # 输出这个图片
可通过如上predict方法得到模型的预测值
相关文章:
机器学习--Kaggle的使用
机器学习–Kaggle的使用 打开Kaggle: Your Machine Learning and Data Science Community并点击Sign In登录账号 kaggle中自带了很多的数据集 在点击Datasets之后,单点Notebook,如果有适用的数据集可以单击Copy and Edit复制其Notebook,之后…...
客户服务新突破,天润融通助力电动车企业实现数智化转型
近年来,两轮电动车成为年轻人喜爱的出行新方式,借着这种潮流,许多新兴品牌迅速发展,并跻身行业头部。 但问题也随之而来,由于业务快速发展,各类服务问题也开始增多。 比如天润融通服务的一家头部两轮电动…...
力扣题目 - 2931.购买物品的最大开销
题目 还需要你前往力扣官网查看详细的题目要求 地址 思路 这边需要你去力扣官网详细查看题目看了题目提供的示例 已经有了解法, 先把values转成1维数组,排序之后进行累加即可 代码 var maxSpending function (values) {let list values.flat();list.sort((a, b) > a - …...
智慧化工园区自动化在线监测,建立产业链路数字安全网
智慧化工升级国家政策推动安全风险频发 化工园区作为化工产业的核心集聚地,在全球经济中占据重要地位。为推动行业的高质量发展,国家相继发布了《“十四五”危险化学品安全生产规划方案》、《石化化工行业数字化转型实施指南》和《化工园区安全风险智能化…...
在Docker中运行MySQL的思考:挑战与解决方案
引言 在云计算和容器化技术日益普及的今天,Docker作为一种轻量级的容器化平台,已经成为开发和部署应用的首选工具之一。其提供的便携性、可扩展性和环境一致性对于无状态微服务来说无疑是巨大的福音。然而,并非所有应用都适合在Docker容器中…...
Linux中所有和$有关的操作
prog < file 命令在 Shell 编程中用于 输入重定向,它将文件的内容作为程序的输入。即,程序 prog 会从文件 file 中读取数据,而不是从标准输入(通常是键盘)读取数据。 基本语法: prog < file 解释&…...
github操作学习笔记(杂乱版)
git开源的分布式版本控制系统: 每次修改文件提交后,都会自动创建一个项目版本 查看git版本看有没有安装成功:git --version 把默认编辑器设置成vim:git config --global core.editor "vim" 1、设置昵称和邮箱ÿ…...
学习思考:一日三问(思考篇)之路由表
学习思考:一日三问(思考篇)之路由表 学了什么(是什么)Destination/Mask(最终目标,寻路必须)Proto(择优可选)Pre(择优可选)Cost&#x…...
多个NVR同时管理EasyNVR:设置了“按需拉流超时”配置但没反应的解决方法
视频监控这一技术在当今社会的应用已然愈发广泛,其影响力渗透至我们生活的方方面面。它不仅为我们带来了更为坚固的安全防线,还在诸多行业领域中发挥着不可替代的作用。 在广泛的应用领域中,NVR录像机汇聚管理EasyNVR凭借其卓越的技术实力与前…...
基于Springboot的实验室管理系统【附源码】
基于Springboot的实验室管理系统 效果如下: 系统登录页面 实验室信息页面 维修记录页面 轮播图管理页面 公告信息管理页面 知识库页面 实验课程页面 实验室预约页面 研究背景 在科研、教育等领域,实验室是进行实验教学和科学研究的重要场所。随着实验…...
【Oracle11g SQL详解】常用字符串函数:`CONCAT`、`SUBSTR`、`LENGTH`、`INSTR` 等
常用字符串函数:CONCAT、SUBSTR、LENGTH、INSTR 等 字符串函数在 SQL 中被广泛用于处理文本数据,例如拼接字符串、提取子串、查找字符位置等。Oracle 11g 提供了强大的字符串函数,可以简化对字符串的操作。 一、CONCAT:拼接字符串…...
某养老产业公司管理诊断项目成功案例纪实
某养老产业公司管理诊断项目成功案例纪实 ——从短期和长期出发,提供转型改革建议 【客户行业】养老行业 【问题类型】问题诊断 【客户背景】 某养老产业公司是一家主要从事养老服务为主的企业,主营业务包括社区养老服务、居家养老、康复训练服务等…...
自然语言处理基础及应用场景
自然语言处理定义 让计算机理解人所说的文本 语音 Imitation Game 图灵测试 行为主义 鸭子理论 自然语言处理的基本任务 词性标注:区分每个词名词、动词、形容词等词性命名实体的识别:名词的具体指代是哪一类事物共指消解:代词指代的是前面…...
网页爬虫技术全解析:从基础到实战
引言 在当今信息爆炸的时代,互联网上的数据量每天都在以惊人的速度增长。网页爬虫(Web Scraping),作为数据采集的重要手段之一,已经成为数据科学家、研究人员和开发者不可或缺的工具。本文将全面解析网页爬虫技术&…...
数据仓库-查看表和数据库的信息
查询表信息 使用系统表pg_tables查询数据库所有表的信息。 SELECT * FROM pg_tables;使用gsql的\d命令查询表结构。 示例:先创建表customer_t1并插入数据。 CREATE TABLE customer_t1 ( c_customer_sk integer, c_customer_id char(5)…...
【JVM】JVM基础教程(四)
上一章:【JVM】JVM基础教程(三)-CSDN博客 目录 自动垃圾回收 方法区的回收 方法区回收条件 手动触发回收 堆回收 如何判断堆上的对象可以回收? 可以给对象引用赋值null,切断引用 引用计数法 循环引用缺点 查…...
深入了解Text2SQL开源项目(Chat2DB、SQL Chat 、Wren AI 、Vanna)
深入了解Text2SQL开源项目(Chat2DB、SQL Chat 、Wren AI 、Vanna) 前言1.Chat2DB2.SQL Chat3.Wren AI4.Vanna 前言 在数据驱动决策的时代,将自然语言查询转化为结构化查询语言(SQL)的能力变得日益重要。无论是小型创业…...
websocket 服务 pinia 全局配置
websocket 方法类 // stores/webSocketStore.ts import { defineStore } from "pinia";interface WebSocketStoreState {ws: WebSocket | null; // WebSocket 实例callbacks: ((message: string) > void)[]; // 消息回调函数列表connected: boolean; // 连接状态…...
基于Springboot企业oa管理系统【附源码】
基于Springboot企业oa管理系统 效果如下: 系统主页面 用户管理页面 公告信息管理页面 客户关系管理页面 车辆信息管理页面 工资信息管理页面 文件信息管理页面 上班考勤管理页面 研究背景 随着信息化时代的到来和企业OA管理理念的更新,企业面临着日益…...
Python遥感开发之地理探测器的实现
Python遥感开发之地理探测器的实现 1 地理探测器介绍2 官方软件实现3 Python代码实现 前言:本篇博客主要介绍使用py_geodetector库来实现地理探测器。 1 地理探测器介绍 官网链接:http://www.geodetector.cn/index.html 地理探测器用于测量和归因空间分…...
【杂谈】-递归进化:人工智能的自我改进与监管挑战
递归进化:人工智能的自我改进与监管挑战 文章目录 递归进化:人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管?3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...
电脑插入多块移动硬盘后经常出现卡顿和蓝屏
当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...
Python如何给视频添加音频和字幕
在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...
Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
Qemu arm操作系统开发环境
使用qemu虚拟arm硬件比较合适。 步骤如下: 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载,下载地址:https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...
python爬虫——气象数据爬取
一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用: 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests:发送 …...
nnUNet V2修改网络——暴力替换网络为UNet++
更换前,要用nnUNet V2跑通所用数据集,证明nnUNet V2、数据集、运行环境等没有问题 阅读nnU-Net V2 的 U-Net结构,初步了解要修改的网络,知己知彼,修改起来才能游刃有余。 U-Net存在两个局限,一是网络的最佳深度因应用场景而异,这取决于任务的难度和可用于训练的标注数…...
门静脉高压——表现
一、门静脉高压表现 00:01 1. 门静脉构成 00:13 组成结构:由肠系膜上静脉和脾静脉汇合构成,是肝脏血液供应的主要来源。淤血后果:门静脉淤血会同时导致脾静脉和肠系膜上静脉淤血,引发后续系列症状。 2. 脾大和脾功能亢进 00:46 …...
