Python Scikit-learn简介(二)

server/2024/11/26 23:38:24/

数据处理

数据划分

机器学习的数据,可以划分为训练集、验证集和测试集,也可以划分为训练集和测试集。
在这里插入图片描述

python">from sklearn.model_selection import train_test_split# 示例数据
X = [[1, 2], [3, 4], [5, 6], [7, 8]]
y = [0, 1, 0, 1]# 划分数据集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=42)print("Training data:", X_train, y_train)
print("Testing data:", X_test, y_test)
数据清洗

数据清洗是数据预处理的第一步,涉及处理缺失值、重复数据、异常值等。

python">import pandas as pd# 创建一个包含缺失值和重复数据的DataFrame
data = pd.DataFrame({'A': [1, 2, np.nan, 4],'B': [5, 5, 7, 8],'C': [9, 10, 11, 12]
})# 删除重复行
data = data.drop_duplicates()# 填充缺失值
data = data.fillna(data.mean())print(data)
特征提取与转换

特征提取是将原始数据转换为更适合机器学习模型的特征表示。Scikit-learn提供了多种特征提取工具,如DictVectorizer用于处理字典数据,CountVectorizer用于文本数据的词频统计。

python">from sklearn.feature_extraction.text import CountVectorizer# 示例文本数据
text_data = ["hello world", "hello everyone", "world of programming"]# 初始化CountVectorizer
vectorizer = CountVectorizer()# 转换文本数据为词频矩阵
X = vectorizer.fit_transform(text_data)print(X.toarray())
标准化与归一化

标准化和归一化是调整特征尺度的重要步骤,有助于提高某些算法的性能。

python">from sklearn.preprocessing import StandardScaler, MinMaxScaler# 示例数据
data = [[1, 2], [2, 3], [3, 4]]# 标准化
scaler = StandardScaler()
standardized_data = scaler.fit_transform(data)# 归一化
min_max_scaler = MinMaxScaler()
normalized_data = min_max_scaler.fit_transform(data)print("Standardized data:", standardized_data)
print("Normalized data:", normalized_data)
缺失值处理

处理缺失值是数据预处理中的常见任务。Scikit-learn提供了SimpleImputer来填充缺失值。

python">from sklearn.impute import SimpleImputer# 示例数据
data = [[1, 2], [np.nan, 3], [7, 6]]# 初始化SimpleImputer,使用均值填充
imputer = SimpleImputer(strategy='mean')# 填充缺失值
imputed_data = imputer.fit_transform(data)print(imputed_data)
特征选择

在这里插入图片描述

监督学习算法

在这里插入图片描述
在这里插入图片描述

  • 线性模型
    • 线性模型是监督学习中最基础的模型之一,它假设特征之间的关系可以用一条直线(对于二元分类)或超平面(对于多类分类)来表示。线性模型主要包括线性回归(用于连续目标变量)和逻辑回归(用于分类目标变量)
  • 支持向量机
    • 支持向量机(Support Vector Machine, SVM)是一种强大的监督学习算法,适用于分类和回归分析。在分类问题中,SVM旨在找到一个超平面,该超平面能够最大化不同类别之间的边际。
    • Scikit-learn提供了多种SVM实现,包括线性SVM和核SVM。线性SVM适用于线性可分数据,而核SVM通过使用核技巧,可以处理非线性可分数据。
  • 决策树
    • 决策树通过一系列的判断规则对数据进行分类,而随机森林是决策树的集成学习方法,通过构建多个决策树并进行投票来提高预测的准确性。
  • 随机森林
    • 随机森林是决策树的集成学习方法,通过构建多个决策树并进行投票来提高预测的准确性。
  • 集成学习方法
    • 监督学习中的梯度提升机(Gradient Boosting)是一种强大的集成学习算法,它通过迭代地训练决策树来最小化损失函数,从而提高模型的预测性能。Scikit-learn提供了一个名为GradientBoostingClassifier的类,用于实现梯度提升机。

无监督学习算法

在这里插入图片描述

  • 聚类分析
    • 聚类分析是将数据集中的样本分成多个组或簇的过程,使得同一簇内的样本相似度高,不同簇间的样本相似度低。K-Means是最常用的聚类算法之一。
  • 主成分分析(PCA)
    • 主成分分析(PCA)是一种用于降维的技术,它通过线性变换将数据投影到新的坐标系中,使得投影后的数据具有最大的方差。
  • 奇异值分解(SVD)
    • 奇异值分解(SVD)是一种矩阵分解技术,常用于降维和数据压缩。
  • 关联规则学习
    • 关联规则学习用于发现数据集中变量之间的有趣关系,如购物篮分析中的“啤酒与尿布”现象。Apriori算法是常用的关联规则学习算法之一。

http://www.ppmy.cn/server/145180.html

相关文章

【Vue3 for beginner】普通插槽、具名插槽、作用域插槽

🌈Don’t worry , just coding! 内耗与overthinking只会削弱你的精力,虚度你的光阴,每天迈出一小步,回头时发现已经走了很远。 📗插槽 在 Vue 3 中,插槽(Slots)是一个强大的功能&am…

搜维尔科技:多画面显示3D系统解决方案,数据孪生可视化大屏3D展示技术

集成多画面系统 集成多画面系统解决方案 1.适合多个用户的紧凑型入门级解决方案 2.会议室功能、审批功能、3D模型讨论等多种使用可能性 3.配有组合设备,方便整合 CAVE 多画面显示系统 1.专业的大屏幕多画面解决方案 2.墙壁、天花板和地板三面CAVE 3.专为沉浸…

免费实用在线AI工具集合 - 加菲工具

免费在线工具-加菲工具 https://orcc.online/ 在线录屏 https://orcc.online/recorder 时间戳转换 https://orcc.online/timestamp Base64 编码解码 https://orcc.online/base64 URL 编码解码 https://orcc.online/url Hash(MD5/SHA1/SHA256…) 计算 https://orcc.online/h…

初试无监督学习 - K均值聚类算法

文章目录 1. K均值聚类算法概述2. k均值聚类算法演示2.1 准备工作2.2 生成聚类用的样本数据集2.3 初始化KMeans模型对象,并指定类别数量2.4 用样本数据训练模型2.5 用训练好的模型生成预测结果2.6 输出预测结果2.7 可视化预测结果 3. 实战小结 1. K均值聚类算法概述…

Python 数据分析核心库大全!

(欢迎关注我的视频号) 👇我的小册 45章教程:(小白零基础用Python量化股票分析小册) ,原价299,限时特价2杯咖啡,满100人涨10元。 大家好!我是菜鸟哥! 今天我们来聊点干货:Python 数据…

算法日记 33 day 动态规划(打家劫舍,股票买卖)

今天来看看动态规划的打家劫舍和买卖股票的问题。 上题目!!!! 题目:打家劫舍 198. 打家劫舍 - 力扣(LeetCode) 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金…

高标准农田智慧农业系统建设方案

1 项目概述 1.1 建设背景 我国是农业大国,近30年来农田高产量主要依靠农药化肥的大量投入,大部分化肥和水资源没有被有效利用而随地弃置,导致大量养分损失并造成环境污染。我国农业生产仍然以传统生产模式为主,传统耕种只能凭经验施肥灌溉,不仅浪费大量的人力物力,也对环…

僵尸毁灭工程 服务搭建 联机教程 无需公网IP、服务器

主要内容 什么是僵尸毁灭工程 搭建该服务,需要准备什么 详细步骤 1.下载并运行 SteamCMD 2.下载僵尸毁灭服务端 3.运行 MoleSDN 进行异地联机 4.小伙伴皮蛋加入鼠鼠服务器 完成联机 什么是僵尸毁灭工程 一款由The Indie Stone开发的开放世界生存模拟游戏。游…