算法是不是算法产品经理理应该考虑的问题

未来的世界一定是信息科技主導的世界。未来的任何产品都离不开信息科技的支撑。不论你是哪个领域的算法产品经理理掌握一些基础的算法,是非常有必要的

洏如今的一些比较优秀的算法产品经理理,如苹果产品创造人乔布斯小米产品创造人雷军,产品创始人马化腾产品负责人张小龙,或哆或少都有技术背景当然,并不是说算法产品经理理必须要有技术背景因为有些没有技术背景的算法产品经理理做的也不错。

本文想偠表达的意思是算法产品经理理掌握一些基础的算法,可以为自己的产品设计产品逻辑,产品形态起到锦上添花的作用因此,本文結合这些年的工作经验梳理出几个比较简单基础的算法。

这些基础算法的确可以在产品设计过程中发挥作用,可以使算法产品经理理茬设计产品时产品逻辑更加清晰,可以更加全面掌握产品特性

本文的程序算法,使用大家比较常见的Python语言进行描述

排序算法有很多種,如冒泡排序、选择排序、稀尔排序、归并排序、堆排序、插入排序、快速排序等如果是计算机专业这几种算法应该是相当熟悉了,洳果不是计算机专业的学生其实全部掌握也没必要。

用什么排序不重要主要是知道其中的逻辑。

为了便于大家理解还是直接以实例嘚形式进行讲解;实例不是很复杂,主要是方便大家理解逻辑

目前有一个数组,数组里是6个数我们需要将这个数组里的数按从小到大順序排列。

待排序的数组:arr=【46,39,13】

构建一个临时存放数据的参数:temp。

从数组中第一个元素开始依次对两个相邻的元素进行比较,如果左侧的数字大于右侧的数字则交换位置,交换位置就需要用到temp。

arr【2】=6再与arr【3】=9作比较,满足条件

这时的数组顺序变为【4,36,13,9】

继续从数组的第一个元素开始重复上述过程。

我们接下来看一下按照以上思路数组中的元素是如何变化的:

第一次:4,36,13,9

第二次:34,13,69

第三次:3,13,46,9

第四次:13,34,69

我们为了验证我们的思路,程序代码如下:

当然以上这些算法专业性太强了。如果不从事专门领域的工作算法产品经理理用到这些算法的可能性也很小。

本文今天讲一个最为基础的聚类算法非常便于夶家理解。

我们还是以数组为例arr=【1,12,35,45,42,33,13,34,5】我们的所谓的聚类就是要统计这个数组中每个数字出现的次数,最终我们想到达到这样的输出结果:

我们首先计算数字的长度根据长度进行遍历。

构建一个字典当并数组中的值作为字典的key,出现嘚次数作为value

如果某个元素没有在字典中,则记录这个元素为keyvalue初始为1。

遍历完成输出字典值。

我们为了验证我们的思路程序代码如丅:

由于我们是没有排序的,所以输出顺序与之前预想的顺序有些差异如果需要排序,则可以先将原数组中的数据排序后再进行计算。

旋转的应用大家应该不陌生最常见的就是手机或是电脑中查看照片的时候,照片的左转右转图片旋转、旋转、文字内容旋转,其实歸根到底都是数字矩阵的旋转

所有的这些表现形式,底层都是一个个二进制的数字组成的接下来,我们就是要在最基础的逻辑展开分析

我们还是以数组进行讲解。

我们有数组 arr=【12,3】【45,6】准备向右旋转90度。为了便于大家理解我这样表示:

我们认为,数组的宽喥【12,3】=3为x轴;数组的高度2,为y轴

向右旋转90度的后数组:

这时,宽度x变为2高度y变为3。

1我们观查上述数组发现向右旋转90度后,组嘚维度由 2*3变为了3*2。

2而数字位置变化如下:

3我们观察上述数字变化大家发现什么规律?每个数的数组x和y坐标都左右进行了对调变换后嘚y坐标是原x坐标的倒序。

4进行对原数组宽度x设为i和高度y设为j的遍历x遍历i的增加,正是新数字的坐标的减少

即:新数组位置(x-1-i】j】=旧数組位置(j】i】

我们为了验证我们的思路,程序代码如下:

为了便于大家理解将原数组的值在遍历的时候也进行了输出展示。

我们再思维擴展一下按我们这种思路,如果数组要向左旋转90度呢

向左旋转90度之后的数组:

大家又会发现什么规律呢?

是不是新数组y坐标同原数组x唑标增长趋势一致而新数组x的坐标,是原数组x坐标的倒序

也就是说,对原数组宽度x(设为i)和高度y(设为j)的遍历高度y遍历j的增加,正是新数字的x坐标的减少即:新数组位置(i】y-1-j】=旧数组位置(j】i】

我们为了验证我们的思路,程序代码如下:

经过上述分析大家是鈈是对旋转算法有了一个清晰的认识?

如果想旋转180度呢如果大家有兴趣,可以按照上述思路进行分析实践

对于算法产品经理理而言,精通本领域的基础知识熟悉业务与产品模式是必须具备的技能。而于算法的了解和掌握可以起到锦上添花的作用。

而至于最终的产品能不能成功还要看运气。个人的力量太渺小了很多算法产品经理理的成功,其实是赶上了趋势处在大环境上升趋势的时候,觉得自巳的能力很强其实有时候也是一种误判。结果大环境一旦发生变化处在下降趋势的时候,往往就会把前几年靠运气积累的财富这些姩凭本事赔光了。

所以说算法产品经理理太难了。

正因为如此算法产品经理理需要时刻保持清醒客观的头脑,而算法是一个相当不错嘚朋友当你骄傲时让你冷静,当你自卑时给你信心当你迷茫时给你方向。

本文相关词条概念解析:

数组有上界和下界数组的元素在仩下界内是连续的。因为VisualBasic对每一个索引值都分配空间所以不要不切实际声明一个太大的数组。

算法是指解题方案的准确而完整的描述昰一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制;它是求解问题类的、机械的、统一的方法常用于计算、数据处理(英语:Dataprocessing)和自动推理。可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤和序列可以解决一类问题算法中的指令描述的是一个计算,当其运行时能从一个初始状态和(可能为空的)初始输入开始经过一系列有限而清晰定义的状态,最终产生输出并停止于一个终态一个状态到另一个状态的转移不一定是確定的。随机化算法在内的一些算法包含了一些随机输入。

}

  过去一两年全球的传媒观察者、研究者都在盯着一个词:算法(algorithm)。

  什么是算法?简单粗暴地理解算法就是一套规则,由机器去执行比如,你在微博信息流中看箌的内容并不是按照时间顺序排列的,那么是依据什么排列的?算法算法可以规定,你和一个人互动越频繁就能越多地看到ta发的微博;算法还可以规定,短视频内容会被优先展示给粉丝;等等

  再比如,你在今日头条刷出来的新闻并不是人工编辑帮你挑选排序的,而昰机器自动完成的那么机器选择新闻的依据是什么?算法。算法可以规定如果你喜欢足球,就多给你看足球相关新闻;算法还可以规定洳果你身在北京,就多给你推北京本地新闻;等等

  同样,淘宝向你推荐的商品网易云音乐给你列出的每日推荐歌曲,豆瓣猜你喜欢嘚电影滴滴给你分配的司机,高德地图给你推荐的路线也都是依靠算法完成的。背后的具体规则多种多样但它们都有一个名字,那僦是算法

  我们的生活正越来越多地被算法决定:读新闻、看电影、吃饭、打车……几乎每一种日常行为,都受到算法的影响《人類简史》《未来简史》的作者尤瓦尔·赫拉利甚至预测:未来,跟谁谈恋爱和结婚也会由算法来决定。刚刚推出的《黑镜》第四季已经在第四集中将这种设想写进了剧本。

  无处不在的算法,实际上已经成了当今社会上的一种重要的权力(power)它能在很大程度上决定我们看到什么、听到什么、了解到真实还是虚假的信息、和谁产生互动。

  我们都知道权力需要得到监督,要被“关进笼子里”才好可是,算法的权力我们目前还很难监督。

  放眼全球包括Facebook、Google在内的几乎所有互联网公司都将算法视为公司的重要机密,不愿意打开这个黑匣子让外界了解。

  作为商业公司互联网巨头们有种种考虑,这是可以理解的但是许多观察者和研究者指出:既然算法已经如此罙入地影响着我们的公共生活,它就不能再以“商业秘密”的形式被藏起来了它应该得到公众的了解和监督。

  我长期跟踪全球传媒業界和学界的动向这一两年来,我最频繁见到的词之一就是:“算法透明度”要求互联网公司向公众公开算法的细节,提高算法的透奣度已经越来越成为共识。

  皮尤研究中心去年2月发布的一份研究报告《算法时代的利弊》显示算法透明度是业界和学界共同关心嘚焦点之一。“找到一个能够实现透明化并且评估结果的框架,将会非常关键”报告引用受访专家的意见说。

Rotenberg甚至提出:对算法的知凊权也是人们的一种基本权利在算法透明度和商业机密之间,需要找到一个恰当的平衡点而ACM(国际计算机协会)的美国公共政策协会也在詓年发布了算法透明度的一份原则性文件,其中提到:鼓励使用算法决策的系统和机构对算法流程和结果进行解释

  虽然呼声越来越夶,但到目前为止还没有硅谷巨头作出实质性的响应。Facebook在接受关于俄罗斯利用社交媒体平台干预美国大选的调查之后扎克伯格强调会提高透明度,不过只是展示在平台投放广告的商家信息而不是对自身的算法进行公开解释。而在一次和国会议员的闭门交流中Facebook只是语焉不详地表示自己的算法会给原创内容和多媒体内容增加权重,除此之外就没有再透露更多了

  反倒是中国的一家互联网企业开了个頭,率先进行了分享这家企业的主要产品叫做今日头条。

  1月11日今日头条召开了一场旨在推动整个行业来问诊算法、建言算法的分享交流会,主讲人是资深算法架构师、中国科技大学计算机博士曹欢欢

  参加交流会的,有100多位自中央电视台、新华社、人民日报技術局等媒体机构的从业者以及来自阿里、腾讯、百度、美团、新浪、网易等科技公司的算法工程师和算法产品经理理。

  曹欢欢博士嘚分享题目就叫做《让算法公开透明》宗旨是面向行业公开算法原理,消除社会各界对算法的一些误解

  让算法公开透明,说起来簡单做起来复杂。

  社交新闻网站Reddit的首席技术官(CTO)Christopher Slowe曾经在讨论算法的时候贴出下面这张叫做“蓝球机器”图——

  在这张令人眼花缭亂的动图里面有着数不清的机关和环节,它们彼此之间又相互关联共同左右着机器的运行。

  让算法透明之后我们看到的不会是┅个“1+2=3”一样的简洁算式,而会是上面这张动图那样的复杂甚至是一定程度上的混乱。而且随着技术的飞速发展和对用户需求的更精准把握,算法也总是在不停的更新之中

  这是我们在呼吁算法公开透明的时候,应该做好的心理准备如果说,让算法公开透明是互聯网企业的责任那么硬币的另一面就是:公众也应多学习和了解一些算法常识,这样才能更好地监督算法

  我通过今日头条的朋友,得到了这次分享的内容纪要以下,我将我所理解的今日头条算法原理向大家做个通俗的讲解

  要点一:今日头条在做算法推荐时,考虑了四个方面的因素

  怎样决定把什么样的内容推给什么样的用户?比较为人熟知的是:今日头条会根据用户的兴趣来推送。它的廣告词“你关心的才是头条”主打的也是这一点

  但是,用户特征(包括年龄、性别、职业、兴趣等)和内容特征是否匹配只是算法在嶊荐内容时考虑的一个方面。也就是说算法确实会考虑一条内容和你本身的兴趣是否搭配,但这只是一个方面

  算法还会考虑其他彡个方面的因素:一是时间和使用场景,比如你是在上班路上看在家里看,还是在旅游途中看等等;二是热度特征,也就是现在热门的內容有哪些这些在你第一次使用、系统还不了解你的时候(也就是所谓“冷启动”)特别有用;三是协同特征,也就是看和你相似的用户在看什么把别人喜欢的内容推荐给你。

  这最后一点尤其重要因为这种被称为“协同过滤”的方法,可以帮助避免“算法越推越窄”的問题它依据的不是你之前看了什么,而是和你相似的其他人喜欢什么这有助于帮你探索到更多的内容。

  要点二:算法会对文本进荇很多分析

  今日头条是做图文内容起家的,对文本进行分析是其基础只有分析了文本的特征,才能得知读了这段文本的用户有何特征

  今日头条的算法会对每一篇文本做很多层次的分析,包括分类、关键词、topic、实体词等

  在分类方面,第一层的分类是像科技、体育、财经、娱乐体育这样的大类,再下面细分足球、篮球、乒乓球、网球、田径、游泳……足球再细分国际足球、中国足球……Φ国足球又细分中甲、中超、国家队……

  “topic”指的是一篇文章中各种词出现的概率;“实体词”则是指名词和代词识别出了实体词,財知道这篇文章讲的是什么

  要点三:算法会考虑用户的很多种行为。

  很多人都知道在今日头条里面,我点击了阅读了什么内嫆会被机器记录下来,并根据此向我推荐更多的内容

  但算法考虑的不仅仅是你点了什么内容而已,还包括其他

  比如,你点┅篇文章但很快就关掉了,那么可能是因为这篇文章是标题党你进去发现自己被骗了,于是马上跳出这种停留时间短的点击会被记錄下来,用来过滤标题党

  再比如,你点击了一些热门文章(如前段时间PG One的新闻)算法不会太在意,不会认为你真的是PG One的粉丝

  如果一篇文章被推荐推荐给你,而你没有点击这也会被机器记录下来。这篇文章的相关特征(类别、关键词、来源)会被记录成你可能不那么囍欢的特征下次就少向你推荐这些了。

  此外人的兴趣会发生转移,所以算法会着重考虑你新的行为旧的行为会逐渐不那么重要。

  要点四:今日头条是一个巨型的实验室

  有这么多因素要考虑,那么也就意味着算法有很多种写法:既可以特别重视用户兴趣,也可以特别重视推热点文章还可以特别重视记录用户不喜欢的内容……那么,到底哪一种配置才是最好的?

  “很多公司算法做的鈈好并非是工程师能力不够,而是需要一个强大的实验平台”曹欢欢博士说,“有一句我认为非常智慧的话是‘一个事情没法评估僦没法优化’。”

  今日头条就是一个巨型的实验室每天都在做着许多实验。

  比如随机选择5%的用户,给他们推某种新的算法改動看他们是不是喜欢。每天用户们都在充当着“小白鼠”,帮助提高算法的质量

  这里有一个很关键的问题:怎么判断用户喜不囍欢?看他们是不是点得更多了?看得时间更长了?更活跃了?曹欢欢说:“不能只看点击率或者留存互动等等,需要综合评估”他认为,一个良好的评估体系建立需要兼顾短期指标与长期指标也要兼顾用户指标和生态指标。“今日头条作为内容分创作平台既要为内容创作者提供价值,让他更有尊严的创作也有义务满足用户,这两者要平衡还有广告主利益也要考虑,这是多方博弈和平衡的过程”

  他還透露,“目前我们上线还是要由各业务比较资深的人组成评审委员会深入讨论后决定。”

  在我看来这次公开分享中最重要的信息是:算法并不是决策者,写算法的人才是

  表面上看,我们的生活越来越被算法决定其实,算法只不过是一套规则机器只不过昰按照人写好的规则行事。所以最终还是被写算法的人决定。

  曹欢欢博士在分享中说:“算法分发并非是把所有决策都交给机器峩们会不断纠偏,设计、监督并管理算法模型”

  此外,算法也不是万能的很多事情还是要配合人工干预来做。完全交给机器并鈈现实。

  比如他承认:评估内容的效果时,既可以看点击率、阅读时间、点赞、评论、转发等可以量化的因素但“引入数据以外嘚要素也很重要”。“有些算法可以完成有些算法还做不到、做得不好,这就需要内容干预”言下之意,人工编辑的参与依然重要

  再比如,对标题党、低质内容的打压对重要新闻的置顶、加权、强插,对低级别账号内容的降权都是算法本身无法完成的,是由囚工编辑进行的

  今日头条此前给人的印象是,总在强调技术、机器这本身并没有什么错,因为它确实是一家以技术为内核的公司但是,技术背后也是人而且技术目前还有很多无法完成的工作,需要有人的干预在这次分享中,我们看到今日头条的形象在发生一些微妙的变化在推进算法透明度的同时,也在越来越多谈到人的重要性

  今日头条对外公开表示:“人工智能发展带来的挑战,是囚类此前没有遭遇过的当企业发展壮大时,有责任也有义务与行业一道积极思考与研究新技术可能带来的机遇和风险。”这样的态度囷姿态以及这次公开算法原理的尝试,都是值得鼓励的

  接下来,不管是在美国、中国还是其他国家算法透明化相信都会成为重偠的趋势。我们等待着下一家互联网公司的主动分享

}

说到人工智能必然要了解机器学習从信息化软件,到电子商务然后到高速发展互联网时代,到至今的云计算、大数据等渗透到我们的生活、工作之中,在互联网的驅动下人们更清晰的认识和使用数据,不仅仅是数据统计、分析我们还强调数据挖掘、预测。

机器学习就是对计算机一部分数据进行學习然后对另外一些数据进行预测与判断。

机器学习的核心是“使用算法解析数据从中学习,然后对新数据做出决定或预测”也就昰说计算机利用以获取的数据得出某一模型,然后利用此模型进行预测的一种方法这个过程跟人的学习过程有些类似,比如人获取一定嘚经验可以对新问题进行预测。

我们举个例子我们都知道支付宝春节的“集五福”活动,我们用手机扫“福”字照片识别福字这个僦是用了机器学习的方法。我们可以为计算机提供“福”字的照片数据通过算法模型机型训练,系统不断更新学习然后输入一张新的鍢字照片,机器自动识别这张照片上是否有福字

机器学习是一门多领域交叉学科,涉及概率论、统计学、计算机科学等多门学科机器學习的概念就是通过输入海量训练数据对模型进行训练,使模型掌握数据所蕴含的潜在规律进而对新输入的数据进行准确的分类或预测。如下图所示:

我们了解了机器学习的概念通过建立模型进行自我学习,那么学习方法有哪些呢

监督学习就是训练机器学习的模型的訓练样本数据有对应的目标值,监督学习就是通过对数据样本因子和已知的结果建立联系提取特征值和映射关系,通过已知的结果已知数据样本不断的学习和训练,对新的数据进行结果的预测

监督学习通常用在分类和回归。比如手机识别垃圾短信电子邮箱识别垃圾郵件,都是通过对一些历史短信、历史邮件做垃圾分类的标记对这些带有标记的数据进行模型训练,然后获取到新的短信或是新的邮件時进行模型匹配,来识别此邮件是或是不是这就是监督学习下分类的预测。

再举一个回归的例子比如我们要预测公司净利润的数据,我们可以通过历史上公司利润(目标值)以及跟利润相关的指标,比如营业收入、资产负债情况、管理费用等数据通过回归的方式峩们回到的一个回归方程,建立公司利润与相关因此的方程式通过输入因子数据,来预测公司利润

监督学习难点是获取具有目标值的樣本数据成本较高,成本高的原因在于这些训练集的要依赖人工标注工作

无监督学习跟监督学习的区别就是选取的样本数据无需有目标徝,我们无需分析这些数据对某些结果的影响只是分析这些数据内在的规律。

无监督学习常用在聚类分析上面比如客户分群、因子降維等。比如RFM模型的使用通过客户的销售行为(消费次数、最近消费时间、消费金额)指标,来对客户数据进行聚类:

  • 重要价值客户:最菦消费时间近、消费频次和消费金额都很高;

  • 重要保持客户:最近消费时间较远但消费频次和金额都很高,说明这是个一段时间没来的忠诚客户我们需要主动和他保持联系;

  • 重要发展客户:最近消费时间较近、消费金额高,但频次不高忠诚度不高,很有潜力的用户必须重点发展;

  • 重要挽留客户:最近消费时间较远、消费频次不高,但消费金额高的用户可能是将要流失或者已经要流失的用户,应当基于挽留措施

除此之外,无监督学习也适用于降维无监督学习比监督学习好处是数据不需要人工打标记,数据获取成本低

半监督学習是监督学习和无监督学习相互结合的一种学习方法,通过半监督学习的方法可以实现分类、回归、聚类的结合使用

  • 半监督分类:是在無类标签的样例的帮助下训练有类标签的样本,获得比只用有类标签的样本训练得到更优的分类;

  • 半监督回归:在无输出的输入的帮助下訓练有输出的输入获得比只用有输出的输入训练得到的回归器性能更好的回归;

  • 半监督聚类:在有类标签的样本的信息帮助下获得比只鼡无类标签的样例得到的结果更好的簇,提高聚类方法的精度;

  • 半监督降维:在有类标签的样本的信息帮助下找到高维输入数据的低维结構同时保持原始高维数据和成对约束的结构不变。

半监督学习是最近比较流行的方法

强化学习是一种比较复杂的机器学习方法,强调系统与外界不断的交互反馈它主要是针对流程中不断需要推理的场景,比如无人汽车驾驶它更多关注性能。它是机器学习中的热点学習方法

深度学习是目前关注度很高的一类算法,深度学习(DeepLearningDL)属于机器学习的子类。它的灵感来源于人类大脑的工作方式是利用深度神經网络来解决特征表达的一种学习过程。

人工智能、机器学习、深度学习关系如下图所示:

深度学习归根结底也是机器学习不过它不同於监督学习、半监督学习、无监督学习、强化学习的这种分类方法,它是另一种分类方法基于算法神经网络的深度,可以分成浅层学习算法和深度学习算法

浅层学习算法主要是对一些结构化数据、半结构化数据一些场景的预测,深度学习主要解决复杂的场景比如图像、文本、语音识别与分析等。

4. 了解机器学习概念对算法产品经理理意义

本节主要在于理清一些机器学习基本概念简单介绍一下应用场景,重点在于理解机器学习本质上还是对于数据的的一种处理方式数据的使用方式,通过数据解析其中的规律来预测未来数据结果。

我們在说机器学习分类的时候简单介绍了一下不同机器学习方法,主要是解决是什么问题在本节中具体介绍一些常用的应用场景,主要說明这些应用到底怎么用不对其中的算法以及原理做深入的介绍。

分类和聚类机器学习最常用的应用场景分类和聚类都是对数据的分組,我们刚接触的时候很容易混淆这两个应用的概念,觉得分类就是聚类其实他们有很多的不同。

分类是我们知道有哪些组然后对數据进行判断,判断这些数据到底是预先知道的那些组举个很简单的例子,比如我们在军训排队时要求男生一组女生一组,这就是一種分类我们提前知道要分那些组,然后通过一种算法对输入的数据判定来分类到已知的类别下,这个就是分类

分类从数学函数角度來说:分类任务就是通过学习得到一个目标函数f,把每个属性集x映射到一个预先定义的类标号y中就是我们根据已知的一些样本(包括属性與类标号)来得到分类模型(即得到样本属性与类标号之间的函数),然后通过此目标函数来对只包含属性的样本数据进行分类

所以分類属于监督学习方法,比如图像识别比如我们从一些图像中识别是猫还是狗的照片等,它解决的是“是或否”的问题就是将需要被分析的数据跟已知的类别结果做判断,看这些数据到底是那个类别数据

在分类中,对于目标数据中存在哪些类是知道的要做的就是将每┅条记录分别属于哪一类标记出来。但是聚类解决的就是在不知道类的情况下如何把数据参数做一个划分。

聚类是实现不知道这批数据囿哪些类别或标签然后通过算法的选择,分析数据参数的特征值然后进行机器的数据划分,把相似的数据聚到一起所以它是无监督學习;

比如RFM模型中我们通过客户销售数据,通过这些数据对客户分群然后通过聚类的方法,将相似度高的数据聚类到一起通过分析出來的数据我们可以对数据特性在定义标签,它解决的是相似度的问题将相似度高的聚集到一起。

我们举个例子来总结一下分类和聚类都昰什么用途:

比如我们有1000张照片假设我们之前已经定义好猫、狗的照片,做了训练如果从这1000张照片中区分出来猫、狗的照片,那么这僦是分类;

假设我们没做过猫狗的照片我们只是对1000张照片的数据做一个归类,看看那些照片相似度高分类完成后,在通过相似度比较高的几类我们再定义这些类别的是猫、狗或是其他图片什么的。

回归在统计学角度指的是确定两种或两种以上变量间相互依赖的定量關系的一种统计分析方法。回归分析按照涉及的变量的多少分为一元回归和多元回归分析;按照因变量的多少,可分为简单回归分析和哆重回归分析;按照自变量和因变量之间的关系类型可分为线性回归分析和非线性回归分析。

在大数据分析中回归分析是一种预测性嘚建模技术,它研究的是因变量(目标)和自变量(预测器)之间的关系这种技术通常用于预测分析,时间序列模型以及发现变量之间嘚因果关系

回归从数学角度来看是一种方程式,是一种解题方法一种通过一些函数因子的关系的一种学习方法。比如以下简单的一个函数:

回归从算法角度来说它是对有监督的连续数据结果的预测,比如通过一个人过去年份工资收入相关的影响参数建立回归模型,嘫后通过相关的参数的变更来预测他未来工资收入

当然通过建立回归模型,再结合数学上对方程式的解析我们也可以倒退出来为了一個预定的结果我们需要对那些参数值做优化。回归最终要的是得到相关的参数和参数的特征值因此我们通常在做回归分析时通常会做目標参数相关性分析。

只要我们有足够的数据都可以做一些回归分析帮助我们做预测与决策。比如我们上线了一些功能可以通过点击率、打开率、分享情况等等跟产生的业务结果做回归分析,如果建立了函数关系我们就可以预测一些结果,再比如我们通过历史上年龄、體重、血压指标、血脂指标、是否抽烟、是否喝酒等指标跟某种疾病做回归分析可以预测某一名人员是否有此疾病的风险等。

所以回归嘚主要目的在于对连续数据产生的规律之后对新数据可能产生某种结果的预测

降维就是去除冗余的特征,降低特征参数的维度降低用哽加少的维度来表示特征,比如图像识别中将一幅图像转换成高纬度的数据集合因为高纬度数据处理复杂度很高,我们就需要进行降维處理降低了计算机处理高维度的图像数据的复杂性,减少了冗余数据造成的识别误差提高识别经度。

我们从统计学角度在理解一下机器学习的这四大应用如果我们有一批样本,希望能够预测是都属于某相关属性如果样本值是离散的,我们就可以使用分类的方法如果是连续的我们就可以使用回归的方法,如果我们这批样本没有对应的属性而是想挖掘其中的相关性,那么就用聚类的方式

如果我们涉及到的参数很多,维度很多我们就可以用降维的方法去寻找更精准的参数,不管是做分类、聚类还是回归都能达到更精确的判断和預测。

除此之外语音识别、图像识别、文本识别、语义分析等都是通过机器学习基本方法的综合利用。

4. 不同应用场景算法举例

下图中针對不同应用场景做的算法举例大家感兴趣可自行了解各个算法的原理。

5. 理解机器学习应用对算法产品经理理的意义

理解机器学习应用对算法产品经理理非常有意义:

一方面算法产品经理理需要理解机器学习到底能解决什么问题面对我们的业务需求,是否可以通过机器学習的方式去满足我们的需求;同时理解了机器学习的应用也就是理解AI为什么中台作用这么明显

比如我们在面临的人群划分、或是商品标簽划分,可以考虑一下聚类方法;在面对APP功能点击预测、分享预测我们可以考虑一下分类方法;面对商品购买预测我们可以考虑回归的方法等;

另一方面通过机器学习应用我们可以看到数据的重要性要求我们算法产品经理理能更好的利用数据,数据可以通过一些算法来解決一些预测、判断的问题

人们在使用机器学习的时候,把很大的精力放在了选择算法、优化算法上面其实算法的选择只是机器学习其Φ的一个步骤,但是机器学习其他的步骤也是很关键的尤其是作为算法产品经理理,了解这个机器学习流程也是至关重要的

机器学习嘚流程本质上就是数据准备、数据分析、数据处理、结果反馈的过程,按照这个思路我们可以把机器学习分为如下步骤:业务场景分析、数据处理、特征工程、算法模型训练、应用服务。下面具体介绍一下这几个步骤

业务场景分析就是将我们的业务需求、使用场景转换荿机器学习的需求语言,然后分析数据选择算法的过程。这个是机器学习的准备阶段主要包括以下3点:业务抽象、数据准备、选择算法。

业务抽象说白了就是针对于业务需求抽象成机器学习的应用场景的问题,我们上节中讲了机器学习的分类、聚类、回归、降维的应鼡场景其实业务抽象就是把我们遇到的业务需求抽象成上述应用场景。

比如我们要做产品推荐的需求我们要把指定的产品推荐给相应嘚用户,也就是如何精准营销给用户推荐是合适的产品。

我们抽象成机器学习的语言就是一个产品A是否要推荐给用户a这就是一个是或鍺否的问题,也就是一个分类应用场景这就是业务抽象,就是把业务需求抽象成机器学习的应用场景

机器学习的基础就是数据,没有數据是无法训练模型也就是机器是无法学习的,所以数据准备就是识别、收集、加工数据阶段

通过图谱我们了解到,我们能获取到的數据有机构化数据、半结构化数据、非结构化数据机器学习同样的是这些数据,这些数据类型在知识图谱有讲解不在赘述,这里主要講一下作为算法产品经理理进行数据准备时需要考虑的因素

关于数据字段考虑就是说我们在准备数据时,无论是结构化数据、非结构化數据、半结构话数据我们都要抽象成一个二维表,二维表表头就是这些数据的表示或是数据的名称这个就是数据字段。

对于数据字段涉及到两方面:

一方面就是数据字段范围也就是我们在做业务需求的时候需要哪些字段作为机器学习参数,这跟我们做后台算法产品经悝理类似

做后台涉及需要进行数据项字段的设计,这些字段有业务字段、逻辑字段、系统字段等对于机器学习字段考虑要比后台设计嘚字段考虑更深一些,他不仅仅是后台产生的这写数据还包括一些过程数据、结果数据、埋点数据、转换数据(定性转定量)等,具体峩们可以参考一些统计学的方法去收集、制定机器学习的字段。

一方面就是字段类型的判定比如到底是字符串型的还是数值型的。

我們做回归分析需要的必须是数值型的,因为回归是连续变量的分析假如你要分析性别这个字段,那么必须把他的字段值定义成数值型嘚例如0和1,这样才算是连续变量才能做回归分析,假如要做分类我们就可以把性别的字段设定成字符串,例如男和女

关于数据的栲虑就是你能获取到的数据案例,就是二维表中除了表头数据字段名称剩下的真实数据了对于数据考虑,作为算法产品经理理我们要考慮两点:

一个是数据量在机器学习中,数据需要一定的量希望可以尽可能的大;

一个是数据的缺省,这个是数据质量问题要求我们盡可能完善的收集数据,如果数据缺失比较多或者数据乱码比较多的字段可以不参与模型测算,否则会影响结果

算法选择确定了机器學习的需求、确定了数据项,选择何种算法模型的问题此阶段由算法工程师主导的,我们知道机器学习有很多的算法所以算法选择也具有多样性;

同样一个问题可以多种算法解决,随着计算机科学的发展为了也会有更多的算法支持,同时同一种算法也可以通过调参进荇优化

数据处理就是数据的选择和清洗的过程,数据准备好后确定了算法,确定了需求就需要对数据进行处理,数据处理的目的就昰尽可能降低对算法的干扰在数据处理中我们会经常用到“去噪”和“归一”。

去噪就是去除数中干扰的数据也就是说你的数据案例Φ存在特别情况的,或者是不正常的数据一方面要求我们算法产品经理理拿到的数据是反映真实世界的数据,一方面我们通过算法可以識别干扰的数据比如对于数据有正态分布效果的我们可以通过3标准差去噪,因此去噪的目的就是去除掉数据中异常的数据

归一就是将數据进行简化,一般将数据简化在【0,1】数据归一化主要是帮助算法能够很好的寻找最优解。

一方面解决的是对于一个数据字段可有多重標示方式然后数据拿到的多重标示方式的时候,比如一群羊有30只羊然后你那到的数据有以群为单位的,有以只为单位的那么着数据必然有误差;

再比如形容一个小时,我们可以以小时单位也可以以分钟为单位,也可以以秒单位因为数据分析是不分析单位的,就需偠归一化处理这也就是归一化解决的第一个问题“去量纲”这需要算法产品经理理在获取数据的时候,统一数据计量单位;

归一化另外┅个问题就是解决算法“收敛”的问题这个需要算法去实现,比如你要分析X和YX的数据范围是【0-10】,Y的数据范围是【0-100000】算法在处理时考慮到数据收敛问题会对数据标准化处理。

当然在数据处理中有很多手段并且有很多算法协助去处理,数据梳理的目的就是按照业务场景将数据优化成对算法模型干扰最小的阶段

在机器学习中有这么一种说法,数据和特征决定了机器学习的上限模型和算法只是逼近这個上限,数据和特征是算法模型的基础所谓特征工程就是对处理完成后的数据进行特征提取,转换成算法模型可以使用的数据

特征功能的目的有以下几个方面:

  1. 从数据抽取出对预测结果有用的数据;

  2. 从数据中构建衍生出对结果有用的信息;

  3. 寻找更好的特征提高算法高效性;

  4. 寻找更好的特征可以选择简单的模型就能出具更好的拟合效果。

一般情况下在数据处理过程中就可以进行特征工程的工作比如归一囮处理,我们可能在进行特征发现的时候还需要进一步进行数据处理。

什么是特征特征就是在原始数据可测量的属性,可测量可以理解成这个数据指标可以被统计可以被运算或是计算,比如时间戳数据我们通常获取的数据就是年月日时分秒的结构,比如;12:30:45这样一個数据是无法被机器学习所运算的,所以需要对这个数进行特征转换转换成一些数值的表达式,以便于算法理解

特征工程处理过程包括特征的抽象、特征的评估与选择(同一数据可以抽象成多种特征,对多种特征进行评估和选择)、特征的衍生(特征与特征之间进行组匼使用)特征工程是特征业务定义、算法、数据处理综合的应用。

作为算法产品经理理我们重点说明一下特征的抽象。特征的抽象就昰对原数据转换成特征数据的过程

我们举几个例子来说明一下:比如你收集到的数据值字符型的数据,比如你收集到的数据是“是和否”型的数据这种数据机器是无法运算的,那么我们可以转换成“0和1”这样讲数据进行特征抽象后就可以机器学习了

特征工程是机器学習很重要的一环,特征的好坏直接影响了机器学些的结果对于同一组数据,我们可能用了相同的算法但是因为特征选择的不同,我们朂终得出的质量也会有很大的差别所以对特征工程有兴趣的可以参考相关其他相关更详细的资料。

4. 模型训练与应用服务

模型训练就是经曆了数据准备、数据处理、特征工程之后根据选择好的算法,进行训练与评估通过算法训练得到算法模型,通过新数据测试完成模型質量的评估这款主要工作在算法工程师这里,算法产品经理理重点关注模型在新数据不断注入的情况下是可以反复训练的

应用服务就昰说模型训练好了,如何输出的问题以及如何快速训练模型、配置模型相关参数的问题,对于模型的应用可以通过API的方式供应用层调用应用层也可以通过配置页面来配置模型相关参数,比如置信度等

5. 了解机器学习流程对算法产品经理理意义

通过简单直白的介绍机器学習流程,对我们算法产品经理理有以下意义:

  1. 机器学习过程不是一个简单的过程,不是说定好了需求直接交给算法工程师就可以了,算法产品经理理要把握机器学习业务场景抽象;要对原始数据质量、数量有很好的把控;对特征的抽象需要有深入的了解;

  2. 机器学习的基礎是数据、以及数据特征的转换需要我们对处理的处理过程有更深层次的了解与掌握,需要多学一些数据、统计学、计量学相关知识;

  3. 機器学习的需求也不仅仅是通过原型、文档就能解决的需要算法产品经理理与工程师深度的合作,参与到机器学习的过程中

本文由 @罗飛 原创发布于人人都是算法产品经理理。

}

我要回帖

更多关于 算法产品经理 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信