IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 机器-机器学习的基本概念-KNN近邻算法 -> 正文阅读

[人工智能]机器-机器学习的基本概念-KNN近邻算法

机器学习的基本概念

  • 数据分析的4个层次
    描述性分析(Descriptive当前的业务现状如何?)
    诊断性分析(Diagnostic某些问题为什么会发生?)
    预测性分析(Predictive我们的业务未来会咋样?预测分析会用到机器学习算法,帮助预
    测产品的销量如何?)
    规范性分析(Prescriptive我们要采取何种对策?机器学习算法可以帮助我们进行预测/规范性分析)

  • 机器学习能解决什么问题

    • 预测分析
    • 利用历史的数据, 结合统计学的知识, 发现规律
    • 找到规律之后, 利用跟这个规律来预测未来
  • 本阶段我们的学习重点是机器学习算法的使用

    • 利用已有机器学习算法解决业务问题, 而不是去创造新算法
    • 相关三方库都有算法相关实现
    • 着重学习三类算法:聚类分析,回归分析,分类分析

机器学习中的数据集

  • 样本 sample
    • 用来训练模型的数据中, 每一行就是一个样本
  • 特征 feature
    • 每一列就是一个特征(除了目标之外)
  • 目标 label target
    • 训练模型之后, 要预测的数据列
  • 特征工程(机器学习建模过程中最重要的部分) feature engineering
    • 就是数据处理 用到Pandas
    • 缺失值处理, 重复值处理 ,异常值处理
    • 特征提取 把文本信息转换成数值信息( one-hot编码)
    • 特征变换 归一化 minmaxScaler
    • 特征衍生( 机器学习问题中, 特征衍生是决定最终模型效果最关键步骤)
      • 原始的数据集上, 通过一些分组聚合的套路, 创建出一些新的特征列
      • 特征交叉 性别 和职业 相乘
    • 特征筛选 特征降维
      • 把重要的特征筛选出来
  • 特征处理完 就可以交给算法训练模型

数据集划分: 当数据量不是很大的前提下 7:3 ~ 8:2

  • 训练集 多一些
  • 测试集 少一些 工作场景下 一份测试数据只能用一次

机器学习算法分类

  • 监督 有标签, 有目标
    • 回归 目标值是数值,取值范围连续值
      • 预测房价
      • 预测下个月的销售额
    • 分类 鸢尾花 三种鸢尾花
      • 二分类 会不会违约 会不会点击 会不会流失
  • 无监督 没有标签, 没有目标
    • KMeans 聚类
    • 反欺诈

机器学习工作流程

  • 获取数据与基本数据处理
  • 特征工程
  • 模型训练
  • 模型评估

模型选择

  • 结合不同的算法详细介绍

过拟合/欠拟合概念

  • 模型过于简单 预测的时候会出错 欠拟合
  • 过拟合 模型过于复杂, 在自己训练的时候, 训练集表现好, 测试集表现差
    • 训练集 测试集都可以, 但是上线之后表现差

在sklearn中KNN算法的API

from sklearn.neighbors import KNeighborsClassifier
#创建knn算法的分类器实例
knn_classifier = KNeighborsClassifier(n_neighbors=指定邻居数量)
#拟合训练数据
knn_classifier.fit(训练集特征值,训练集目标值)
#利用knn算法进行预测
y_predict = knn_classifier.predict(测试数据)
#得出预测结果
y_predict[0]

代码实现

# 导包
import numpy as np
from sklearn import datasets

# 设置忽略警告
import warnings
warnings.filterwarnings

# 加载鸢尾花数据
iris = datasets.load_iris()
# 把特征数据和目标数据传给x和y
x=iris.data
y= iris.target

# 使用SKlearn的KNeighborsClassifier进行分类预测
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier

#训练集 测试集划分
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.2)

# 创建KNN分类器对象 近邻数为6
knn_clf = KNeighborsClassifier(n_neighbors=6)

#训练集训练模型
knn_clf.fit(x_train, y_train)

#使用训练好的模型进行预测
y_predict = knn_clf.predict(x_test)

# 计算准确率:
sum(y_predict == y_test)/len(y_test)


# 第二种计算准确率的方法
from sklearn.metrics import accuracy_scorec

# 方式一:
accuracy_score(y_test, y_predict)
# 方式二:
knn_classifier.score(x_test, y_test)


  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-08-24 15:33:09  更:2021-08-24 15:34:52 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 18:39:58-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码