《大数据架构和算法实现之路:电商系统的技术实战》——1.2 分类任务的处理流程

简介:

本节书摘来自华章计算机《大数据架构和算法实现之路:电商系统的技术实战》一书中的第1章,第1.2节,作者 黄 申,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.2 分类任务的处理流程

给出分类问题的基本概念之后,下面就来理解分类的关键要素和流程。

  • 学习:指计算机通过人类标注的指导性数据,“理解”和“模仿”人类决策的过程。
  • 算法模型:分类算法通过训练数据的学习,其计算方式和最后的输出结果,称为模型。通常是指一个做决策的计算机程序及其相应的存储结构,它使得计算机的学习行为更加具体化。常见的模型有朴素贝叶斯(Naive Bayes)、K-最近邻(KNN)、决策树,等等。
  • 标注数据:也称为标注样本。由于分类学习是监督式的,对于每个数据对象,除了必要的特征值列表,还必须告诉计算机它属于哪个分类。因此需要事先进行人工的标注,为每个对象指定分类的标签。在前面的水果案例中,对各个水果分别打上“苹果”“甜橙”和“西瓜”的标签就是标注的过程。这一点非常关键,标注数据相当于人类的老师,其质量高低直接决定机器学习的效果。值得注意的是,标注数据既可以作为训练阶段的学习样本,也可以作为测试阶段的预测样本。在将监督式算法大规模应用到实际生产之前,研究人员通常会进行离线的交叉验证(Cross Validation),这种情况会将大部分标注数据用在训练阶段,而将少部分留在测试阶段使用。对于交叉验证,会在后文的效果评估部分做进一步阐述。在正式的生产环境中,往往会将所有的标注数据用于训练阶段,以提升最终效果。
  • 训练数据:也称为训练样本。这些是带有分类标签的数据,作为学习算法的输入数据,用于构建最终的模型。根据离线内测、在线实际生产等不同的情形,训练数据会取标注数据的子集或全集。
  • 测试数据:也称为测试样本。这些是不具备或被隐藏了分类标签的数据,模型会根据测试数据的特征,预测其应该具有的标签。在进行离线内测时,交叉验证会保留部分标注数据作为测试之用,因此会故意隐藏其标注值,以便于评估模型的效果。如果是在实际生产中,那么任何一个新预测的对象都是测试数据,而且只能在事后通过人工标注来再次验证其正确性。
  • 训练:也称为学习。算法模型通过训练数据进行学习的过程。
  • 测试:也称为预测。算法模型在训练完毕之后,根据新数据的特征来预测其属于哪个分类的过程。

图1-2将如上的基本要素串联起来,展示了分类学习的基本流程。

screenshot

理解了这些要素和分类过程之后,可以发现,除了人工标注之外,最为核心的就是分类的算法了。接下来,我们再来看看几个常用的分类算法。

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
机器学习/深度学习 Dragonfly 人工智能
基于蜻蜓算法优化支持向量机(DA-SVM)的数据多特征分类预测研究(Matlab代码实现)
基于蜻蜓算法优化支持向量机(DA-SVM)的数据多特征分类预测研究(Matlab代码实现)
310 1
|
消息中间件 Java Kafka
Java 事件驱动架构设计实战与 Kafka 生态系统组件实操全流程指南
本指南详解Java事件驱动架构与Kafka生态实操,涵盖环境搭建、事件模型定义、生产者与消费者实现、事件测试及高级特性,助你快速构建高可扩展分布式系统。
622 7
|
机器学习/深度学习 算法 调度
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
832 0
|
机器学习/深度学习 人工智能 算法
算法备案全流程实操
随着《生成式人工智能服务管理暂行办法》在2024年实施,算法备案成为强制性要求。未合规将导致APP下架或高额罚款。本文详解算法备案的核心逻辑与流程,涵盖必备案算法类型、三大监管红线、六大阶段的关键节点,并提供阿里云工具支持,如合规预评估平台和备案助手插件。内容包括金融风控算法的可解释性要求、生成式AI的内容安全措施及个人开发者的技术能力证明方法,助力开发者实现持续合规。
2444 4
|
机器学习/深度学习 传感器 算法
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
789 2
|
SQL 运维 Java
蚂蚁 Flink 实时计算编译任务 Koupleless 架构改造
本文介绍了对Flink实时计算编译任务的Koupleless架构改造。为解决进程模型带来的响应慢、资源消耗大等问题,团队将进程模型改为线程模型,并借助Koupleless的类加载隔离能力实现版本和包的隔离。通过动态装配Plugin及其Classpath,以及Biz运行时仅对依赖Plugin可见的设计,大幅优化了编译任务的性能。结果表明,新架构使编译耗时降低50%,吞吐量提升5倍以上。
蚂蚁 Flink 实时计算编译任务 Koupleless 架构改造
|
机器学习/深度学习 传感器 数据采集
【23年新算法】基于鱼鹰算法OOA-Transformer-BiLSTM多特征分类预测附Matlab代码 (多输入单输出)(Matlab代码实现)
【23年新算法】基于鱼鹰算法OOA-Transformer-BiLSTM多特征分类预测附Matlab代码 (多输入单输出)(Matlab代码实现)
676 0
|
机器学习/深度学习 分布式计算 Java
Java 大视界 -- Java 大数据机器学习模型在遥感图像土地利用分类中的优化与应用(199)
本文探讨了Java大数据与机器学习模型在遥感图像土地利用分类中的优化与应用。面对传统方法效率低、精度差的问题,结合Hadoop、Spark与深度学习框架,实现了高效、精准的分类。通过实际案例展示了Java在数据处理、模型融合与参数调优中的强大能力,推动遥感图像分类迈向新高度。
|
机器学习/深度学习 人工智能 算法
AP聚类算法实现三维数据点分类
AP聚类算法实现三维数据点分类
460 0
|
分布式计算 大数据 Java
springboot项目集成大数据第三方dolphinscheduler调度器 执行/停止任务
springboot项目集成大数据第三方dolphinscheduler调度器 执行/停止任务
429 0