《大数据架构和算法实现之路:电商系统的技术实战》——第1章 方案设计和技术选型:分类 1.1 分类的基本概念-阿里云开发者社区

开发者社区> 华章计算机> 正文

《大数据架构和算法实现之路:电商系统的技术实战》——第1章 方案设计和技术选型:分类 1.1 分类的基本概念

简介:
+关注继续查看

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

第1章

方案设计和技术选型:分类

听完大宝关于第一点的描述,小明很肯定地说:“你们的商家应该是需要这样的一个功能:在他们发布商品的时候,系统会自动地为其推荐合适的商品分类,其界面示意图如图1-1所示。如果商家希望出售一台苹果的Mac Pro笔记本电脑,输入‘MacBook Pro’后,系统能够自动为其提示最为相关的三个分类‘笔记本电脑’、‘笔记本配件’和‘其他数码’。这是由后台的分类算法来实现的,如果该算法足够聪明,那么它推荐的第一个分类就应该是正确的,商家只需要点击选择即可。这样,既方便了商家的商品发布,又避免了粗心大意而导致的错误分类。而且,对于少数企图违规操作的商家,如果他们选择了和系统默认推荐相差甚远的分类选项,其行为也会被系统记录在案,然后定期生成报表,提交给运营部门进行核查。如此一来,人们就不用在纷繁复杂的类目中痛苦摸索,工作的效率也会大幅提升。”

“没错,这应该是商家愿意使用的工具,如果真能实现那就太棒了。不过,你刚刚提到的分类算法是什么?”

“分类,是一个典型的监督式机器学习方法”。

“哦,什么是机器学习?什么是监督式的学习?”

“现在,我们从头来讲,然后逐步定位这里的技术方案和选型。”


screenshot

1.1 分类的基本概念

好莱坞著名的电影系列《终结者》想必大家都耳熟能详了,其中主角之一“天网”让人印象深刻。之所以难忘,是因为它并非人类,而是20世纪后期人们以计算机为基础创建的人工智能防御系统,最初是出于军事目的而研发的,后来自我意识觉醒,视全人类为威胁,发动了审判日。当然,这一切都是剧情里的虚构场景。那么现实生活中,机器真的可以自我学习、超越人类吗?最近大火的谷歌人工智能杰作Alpha Go,及其相关的机器深度学习,让人们再次开始审视这类问题。虽然目前尚无证据表明现实中的机器能像“天网”一样自我思考,但是机器确实能在某些课题上、按照人们设定的模式进行一定程度的“学习”,这正是机器学习(Machine Learning)所关注的。机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习在多个领域已经有了十分广泛的应用,例如,数据挖掘、计算机视觉、自然语言处理、生物特征识别、医学诊断等。

任何机器学习的任务大体上都可以分为数据的表示(或特征工程)、预处理、学习算法,以及评估等几个步骤。《大数据架构商业之路》一书的6.1节和6.2节,已经详细介绍了数据的表示和预处理。本篇将快速重温几种主流的机器学习方式和算法,然后重点阐述其实践过程。这里的算法包括监督式学习中的分类(classif?ication/categorization)和线性回归(linear regression),非监督式学习中的聚类(clustering)。对于刚刚讨论的第一个业务需求,我们将运用分类技术。而对于小丽提出的第2个和第3个需求,我们将利用这些机会分别学习聚类和线性回归,具体将在稍后的第2章和第3章分别探讨。

监督式学习(Supervised Learning),是指通过训练资料学习并建立一个模型,然后依此模型推测新的实例。训练资料是由输入数据对象和预期输出组成的。模型的输出可以是一个离散的标签,也可以是一个连续的值,分别称为分类问题和线性回归分析。分类技术旨在找出描述和区分数据类的模型,以便能够使用模型预测分类信息未知的数据对象,告诉人们它应该属于哪个分类。模型的生成是基于训练数据集的分析,一般分为启发式规则、决策树、数学公式和神经网络。举个例子,我们为计算机系统展示大量的水果,然后告诉它哪些是苹果,哪些是甜橙,通过这些样本和我们设定的建模方法,计算机学习并建立模型,最终拥有判断新数据的能力。

如果你觉得这样说还是过于抽象,那么让我们继续采用水果的案例,生动地描述一下“分类”问题。假想这样的场景:将1000颗水果放入一个黑箱中,并事先告诉一位果农,黑箱里只可能有苹果、甜橙和西瓜三种水果,没有其他种类。然后每次随机摸出一颗,让果农判断它是三类中的哪一类。这就是最基本的分类问题,只提供有限的选项,而减少了潜在的复杂性和可能性。不过问题在于,计算机作为机器是不能完成人类所有的思维和决策的。分类算法试图让计算机在特定的条件下,模仿人的决策,高效率地进行分类。研究人员发现,在有限的范围内做出单一选择时,这种基于机器的方法是可行的。如果输入的是一组特征值,那么,输出的就一定是确定的选项之一。

“大宝,计算机的自动分类有很多应用场景,远不止水果划分这么简单,比如你们目前的这个需求:将商品挂载到合适的产品类目。当然还有邮件归类、垃圾短信识别、将顾客按兴趣分组等,这些都可以应用分类技术。”

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
排序算法大数据量测试代码
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections; using System.Diagnostics; using System.IO; namespace Sort { class Program
812 0
结构化大数据分析平台设计
## 前言  任何线上系统都离不开数据,有些数据是业务系统自身需要的,例如系统的账号,密码,页面展示的内容等。有些数据是业务系统或者用户实时产生的,例如业务系统的日志,用户浏览访问的记录,系统的购买订单,支付信息,会员的个人资料等。
1186 0
WPF技术触屏上的应用系列(六): 视觉冲击、超炫系统主界面、系统入口效果实现
原文: WPF技术触屏上的应用系列(六): 视觉冲击、超炫系统主界面、系统入口效果实现         去年某客户单位要做个大屏触屏应用,要对档案资源进行展示之用。
996 0
Nebula 架构剖析系列(一)图数据库的存储设计
在讨论某个数据库时,存储 ( Storage ) 和计算 ( Query Engine ) 通常是讨论的热点,也是爱好者们了解某个数据库不可或缺的部分。每个数据库都有其独有的存储、计算方式,今天就和图图来学习下图数据库 Nebula Graph 的存储部分。
1567 0
10059
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载