中企动力 > 商学院 > 数据分析系统算法
  • ?

    36氪首发 | 今日头条推荐算法原理全文详解

    凝旋

    展开

    如今,算法分发已经逐步成为信息平台、搜索引擎、浏览器、社交软件等几乎所有软件的标配,但同时也开始面临各种不同的质疑、挑战与误解。

    2018年1月,今日头条资深算法架构师曹欢欢博士,首次公开今日头条的算法原理,以期推动整个行业问诊算法、建言算法。通过让算法透明,来消除各界对算法的误解。

    据悉,今日头条的信息推荐算法自2012年9月第一版开发运行至今,已经经过四次大调整和修改。目前服务全球亿万用户。

    以下为曹欢欢关于《今日头条算法原理》的分享内容(已授权):

    本次分享将主要介绍今日头条推荐系统概览以及内容分析、用户标签、评估分析,内容安全等原理。

    一、系统概览

    推荐系统,如果用形式化的方式去描述实际上是拟合一个用户对内容满意度的函数,这个函数需要输入三个维度的变量。

    第一个维度是内容。头条现在已经是一个综合内容平台,图文、视频、UGC小视频、问答、微头条,每种内容有很多自己的特征,需要考虑怎样提取不同内容类型的特征做好推荐。第二个维度是用户特征。包括各种兴趣标签,职业、年龄、性别等,还有很多模型刻划出的隐式用户兴趣等。第三个维度是环境特征。这是移动互联网时代推荐的特点,用户随时随地移动,在工作场合、通勤、旅游等不同的场景,信息偏好有所偏移。

    结合三方面的维度,模型会给出一个预估,即推测推荐内容在这一场景下对这一用户是否合适。

    这里还有一个问题,如何引入无法直接衡量的目标?

    推荐模型中,点击率、阅读时间、点赞、评论、转发包括点赞都是可以量化的目标,能够用模型直接拟合做预估,看线上提升情况可以知道做的好不好。但一个大体量的推荐系统,服务用户众多,不能完全由指标评估,引入数据指标以外的要素也很重要。

    比如广告和特型内容频控。像问答卡片就是比较特殊的内容形式,其推荐的目标不完全是让用户浏览,还要考虑吸引用户回答为社区贡献内容。这些内容和普通内容如何混排,怎样控制频控都需要考虑。

    此外,平台出于内容生态和社会责任的考量,像低俗内容的打压,标题党、低质内容的打压,重要新闻的置顶、加权、强插,低级别账号内容降权都是算法本身无法完成,需要进一步对内容进行干预。

    下面我将简单介绍在上述算法目标的基础上如何对其实现。

    前面提到的公式y = F(Xi ,Xu ,Xc),是一个很经典的监督学习问题。可实现的方法有很多,比如传统的协同过滤模型,监督学习算法Logistic Regression模型,基于深度学习的模型,Factorization Machine和GBDT等。

    一个优秀的工业级推荐系统需要非常灵活的算法实验平台,可以支持多种算法组合,包括模型结构调整。因为很难有一套通用的模型架构适用于所有的推荐场景。现在很流行将LR和DNN结合,前几年Facebook也将LR和GBDT算法做结合。今日头条旗下几款产品都在沿用同一套强大的算法推荐系统,但根据业务场景不同,模型架构会有所调整。

    模型之后再看一下典型的推荐特征,主要有四类特征会对推荐起到比较重要的作用。

    第一类是相关性特征,就是评估内容的属性和与用户是否匹配。显性的匹配包括关键词匹配、分类匹配、来源匹配、主题匹配等。像FM模型中也有一些隐性匹配,从用户向量与内容向量的距离可以得出。

    第二类是环境特征,包括地理位置、时间。这些既是bias特征,也能以此构建一些匹配特征。

    第三类是热度特征。包括全局热度、分类热度,主题热度,以及关键词热度等。内容热度信息在大的推荐系统特别在用户冷启动的时候非常有效。

    第四类是协同特征,它可以在部分程度上帮助解决所谓算法越推越窄的问题。协同特征并非考虑用户已有历史。而是通过用户行为分析不同用户间相似性,比如点击相似、兴趣分类相似、主题相似、兴趣词相似,甚至向量相似,从而扩展模型的探索能力。

    模型的训练上,头条系大部分推荐产品采用实时训练。实时训练省资源并且反馈快,这对信息流产品非常重要。用户需要行为信息可以被模型快速捕捉并反馈至下一刷的推荐效果。我们线上目前基于storm集群实时处理样本数据,包括点击、展现、收藏、分享等动作类型。模型参数服务器是内部开发的一套高性能的系统,因为头条数据规模增长太快,类似的开源系统稳定性和性能无法满足,而我们自研的系统底层做了很多针对性的优化,提供了完善运维工具,更适配现有的业务场景。

    目前,头条的推荐算法模型在世界范围内也是比较大的,包含几百亿原始特征和数十亿向量特征。整体的训练过程是线上服务器记录实时特征,导入到Kafka文件队列中,然后进一步导入Storm集群消费Kafka数据,客户端回传推荐的label构造训练样本,随后根据最新样本进行在线训练更新模型参数,最终线上模型得到更新。这个过程中主要的延迟在用户的动作反馈延时,因为文章推荐后用户不一定马上看,不考虑这部分时间,整个系统是几乎实时的。

    但因为头条目前的内容量非常大,加上小视频内容有千万级别,推荐系统不可能所有内容全部由模型预估。所以需要设计一些召回策略,每次推荐时从海量内容中筛选出千级别的内容库。召回策略最重要的要求是性能要极致,一般超时不能超过50毫秒。

    召回策略种类有很多,我们主要用的是倒排的思路。离线维护一个倒排,这个倒排的key可以是分类,topic,实体,来源等,排序考虑热度、新鲜度、动作等。线上召回可以迅速从倒排中根据用户兴趣标签对内容做截断,高效的从很大的内容库中筛选比较靠谱的一小部分内容。

    二、内容分析

    内容分析包括文本分析,图片分析和视频分析。头条一开始主要做资讯,今天我们主要讲一下文本分析。文本分析在推荐系统中一个很重要的作用是用户兴趣建模。没有内容及文本标签,无法得到用户兴趣标签。举个例子,只有知道文章标签是互联网,用户看了互联网标签的文章,才能知道用户有互联网标签,其他关键词也一样。

    另一方面,文本内容的标签可以直接帮助推荐特征,比如魅族的内容可以推荐给关注魅族的用户,这是用户标签的匹配。如果某段时间推荐主频道效果不理想,出现推荐窄化,用户会发现到具体的频道推荐(如科技、体育、娱乐、军事等)中阅读后,再回主feed,推荐效果会更好。因为整个模型是打通的,子频道探索空间较小,更容易满足用户需求。只通过单一信道反馈提高推荐准确率难度会比较大,子频道做的好很重要。而这也需要好的内容分析。

    上图是今日头条的一个实际文本case。可以看到,这篇文章有分类、关键词、topic、实体词等文本特征。当然不是没有文本特征,推荐系统就不能工作,推荐系统最早期应用在Amazon,甚至沃尔玛时代就有,包括Netfilx做视频推荐也没有文本特征直接协同过滤推荐。但对资讯类产品而言,大部分是消费当天内容,没有文本特征新内容冷启动非常困难,协同类特征无法解决文章冷启动问题。

    今日头条推荐系统主要抽取的文本特征包括以下几类。首先是语义标签类特征,显式为文章打上语义标签。这部分标签是由人定义的特征,每个标签有明确的意义,标签体系是预定义的。此外还有隐式语义特征,主要是topic特征和关键词特征,其中topic特征是对于词概率分布的描述,无明确意义;而关键词特征会基于一些统一特征描述,无明确集合。

    另外文本相似度特征也非常重要。在头条,曾经用户反馈最大的问题之一就是为什么总推荐重复的内容。这个问题的难点在于,每个人对重复的定义不一样。举个例子,有人觉得这篇讲皇马和巴萨的文章,昨天已经看过类似内容,今天还说这两个队那就是重复。但对于一个重度球迷而言,尤其是巴萨的球迷,恨不得所有报道都看一遍。解决这一问题需要根据判断相似文章的主题、行文、主体等内容,根据这些特征做线上策略。

    同样,还有时空特征,分析内容的发生地点以及时效性。比如武汉限行的事情推给北京用户可能就没有意义。最后还要考虑质量相关特征,判断内容是否低俗,色情,是否是软文,鸡汤?

    上图是头条语义标签的特征和使用场景。他们之间层级不同,要求不同。

    分类的目标是覆盖全面,希望每篇内容每段视频都有分类;而实体体系要求精准,相同名字或内容要能明确区分究竟指代哪一个人或物,但不用覆盖很全。概念体系则负责解决比较精确又属于抽象概念的语义。这是我们最初的分类,实践中发现分类和概念在技术上能互用,后来统一用了一套技术架构。

    目前,隐式语义特征已经可以很好的帮助推荐,而语义标签需要持续标注,新名词新概念不断出现,标注也要不断迭代。其做好的难度和资源投入要远大于隐式语义特征,那为什么还需要语义标签?有一些产品上的需要,比如频道需要有明确定义的分类内容和容易理解的文本标签体系。语义标签的效果是检查一个公司NLP技术水平的试金石。

    今日头条推荐系统的线上分类采用典型的层次化文本分类算法。最上面Root,下面第一层的分类是像科技、体育、财经、娱乐,体育这样的大类,再下面细分足球、篮球、乒乓球、网球、田径、游泳...,足球再细分国际足球、中国足球,中国足球又细分中甲、中超、国家队...,相比单独的分类器,利用层次化文本分类算法能更好地解决数据倾斜的问题。有一些例外是,如果要提高召回,可以看到我们连接了一些飞线。这套架构通用,但根据不同的问题难度,每个元分类器可以异构,像有些分类SVM效果很好,有些要结合CNN,有些要结合RNN再处理一下。

    上图是一个实体词识别算法的case。基于分词结果和词性标注选取候选,期间可能需要根据知识库做一些拼接,有些实体是几个词的组合,要确定哪几个词结合在一起能映射实体的描述。如果结果映射多个实体还要通过词向量、topic分布甚至词频本身等去歧,最后计算一个相关性模型。

    三、用户标签

    内容分析和用户标签是推荐系统的两大基石。内容分析涉及到机器学习的内容多一些,相比而言,用户标签工程挑战更大。

    今日头条常用的用户标签包括用户感兴趣的类别和主题、关键词、来源、基于兴趣的用户聚类以及各种垂直兴趣特征(车型,体育球队,股票等)。还有性别、年龄、地点等信息。性别信息通过用户第三方社交账号登录得到。年龄信息通常由模型预测,通过机型、阅读时间分布等预估。常驻地点来自用户授权访问位置信息,在位置信息的基础上通过传统聚类的方法拿到常驻点。常驻点结合其他信息,可以推测用户的工作地点、出差地点、旅游地点。这些用户标签非常有助于推荐。

    当然最简单的用户标签是浏览过的内容标签。但这里涉及到一些数据处理策略。主要包括:一、过滤噪声。通过停留时间短的点击,过滤标题党。二、热点惩罚。对用户在一些热门文章(如前段时间PG One的新闻)上的动作做降权处理。理论上,传播范围较大的内容,置信度会下降。三、时间衰减。用户兴趣会发生偏移,因此策略更偏向新的用户行为。因此,随着用户动作的增加,老的特征权重会随时间衰减,新动作贡献的特征权重会更大。四、惩罚展现。如果一篇推荐给用户的文章没有被点击,相关特征(类别,关键词,来源)权重会被惩罚。当然同时,也要考虑全局背景,是不是相关内容推送比较多,以及相关的关闭和dislike信号等。

    用户标签挖掘总体比较简单,主要还是刚刚提到的工程挑战。头条用户标签第一版是批量计算框架,流程比较简单,每天抽取昨天的日活用户过去两个月的动作数据,在Hadoop集群上批量计算结果。

    但问题在于,随着用户高速增长,兴趣模型种类和其他批量处理任务都在增加,涉及到的计算量太大。2014年,批量处理任务几百万用户标签更新的Hadoop任务,当天完成已经开始勉强。集群计算资源紧张很容易影响其它工作,集中写入分布式存储系统的压力也开始增大,并且用户兴趣标签更新延迟越来越高。

    面对这些挑战。2014年底今日头条上线了用户标签Storm集群流式计算系统。改成流式之后,只要有用户动作更新就更新标签,CPU代价比较小,可以节省80%的CPU时间,大大降低了计算资源开销。同时,只需几十台机器就可以支撑每天数千万用户的兴趣模型更新,并且特征更新速度非常快,基本可以做到准实时。这套系统从上线一直使用至今。

    当然,我们也发现并非所有用户标签都需要流式系统。像用户的性别、年龄、常驻地点这些信息,不需要实时重复计算,就仍然保留daily更新。

    四、评估分析

    上面介绍了推荐系统的整体架构,那么如何评估推荐效果好不好?

    有一句我认为非常有智慧的话,“一个事情没法评估就没法优化”。对推荐系统也是一样。

    事实上,很多因素都会影响推荐效果。比如侯选集合变化,召回模块的改进或增加,推荐特征的增加,模型架构的改进在,算法参数的优化等等,不一一举例。评估的意义就在于,很多优化最终...

  • ?

    大数据正在改变金融行业的三种方式 实时分析 算法建模 深度学习

    叶静蕾

    展开

    大数据在今天造成的影响力绝对是一石激起千层浪。热度正在以指数级速度扩展,影响深远。随着日益增加的、复杂的数据生成,将改变所有行业运作方式。金融业也不例外。目前每天都有新的2.5万亿字节的金融数据产生,这代表了以大数据的方式处理分析和利用信息的独特机会。深度学习和ai算法越来越多地被用于金融交易,以计算大量的结果,并做出普通人无法做到的预测和决策。现在金融和交易更多依赖于精准数据应用到商业决策模型中。传统根据从计算出的风险和趋势中得出的推论作出决定。今天这个功能被大数据改写。他可以大规模计算,并从众多的资源中得出更准确的结论。

    算法建模

    金融分析不再仅仅是价格和行为的考察,更重要的是结合影响价格因素,社会和政治趋势等原则。大数据分析可用于预测模型,以估计投资回报率和可能的结果。增加对大数据的访问可以使数据更精确的预测,从而更有效地减轻与金融交易相关的固有风险。到目前为止,高频交易已经相当成功地被使用,大数据通常意味着增加处理时间。已经认识到利用大数据分析实现准确推断的价值和优势。

    实时分析

    算法交易是目前金融界的热门词汇。机器学习使计算机能够做出类似于人类的决定,以人们无法做到的速度和频率执行交易。商业原型包含了在特定时间交易的最佳价格,并减少了由于行为影响而产生的人为错误。实时分析有潜力提高高频交易公司和个人的投资能力,因为通过算法分析收集到的见解使竞争环境提供了所有人都可以访问的强大信息。算法交易的力量在于几乎无限的能力。你可以使用结构化和非结构化的数据,因此可以使用社交媒体,股市信息和新闻分析做出直观的判断。这种情景分析是非常有价值的,因为股市是一个容易受到影响的原型。

    深度学习

    深度学习的潜力还没完全发挥出来,创新应用的前景是不可估量的。深度学习使计算机能够通过从过去的错误中学习和使用逻辑,来基于新的信息来多次学习和做出决定。这样,这些技术可以提供超准确的认知。技术仍在发展,这种研究的特殊途径是从模型中消除人的情绪反应,并根据信息作出决定而没有情绪化。

    大数据在金融交易中扮演着越来越重要的角色

    在不久的将来大数据很有可能接管金融领域。大数据可以将更多的信息输入一个系统,大数据分析革命使得交易更加准确和透明; 随着大数据不断改革各行业的框架,金融行业正在采用大数据分析来保持交易的竞争优势。

    本文参考

    Gary EastwoodIDG

  • ?

    数据分析师告诉你数据分析的结构体系

    Ramya

    展开

    大数据从几年前的概念演变为现在是落地数据,越来越多的人感受的数据的价值,目前全国各大高校同样陆续开设数据科学与大数据专业,企业也已开展招聘数据分析相关的职位。

    之前想成为数据分析师的人大致有三类:

    第一类是非计算机专业的在校生,不知道怎么回事,反正就是对数据感兴趣了,然后想毕业之后从事相关工作,但对职位要求、该做什么准备一无所知,处于懵懂期; 第二类是互联网公司的产品经理和运营经理,及少数的市场经理。这些人在实际工作中,发现确实数据很有用,但对自己的数据分析能力感到不满意,进而想做出提升;

    第三类是传统企业的业务人员,也是不知道怎么就对数据感兴趣了,想要从事数据分析相关的岗位,但缺少时间系统学习,工作经历又不足以支撑自己跳到数据分析职位。

    而现如今随着互联网大数据应用的广泛展开,越来越多的企业、政府机构等开始设立数据相关的角色以及职责。

    围绕数据分析工作,也划分了几类职责区域。从平台建设线上,包括:

    数据平台工程师:负责数据平台的研发,牵涉到从数据采集到分析的相关组件开发。

    数据挖掘工程师:利用机器学习/数据挖掘相关技术,研发算法模型,用于个性化推荐、用户画像、精准广告等。

    数据产品经理:把数据相关的需求抽象为数据平台的功能产品。

    从数据流向的角度,包括:

    ETL 工程师:把工程团队的模块产生的数据,不管是日志、数据表,还是埋点的数据,进行清洗、转换,建模成利于数据分析的数据。ETL 是 Extract – Transform – Load 的缩写。

    数据分析师:利用 ETL 工程师处理好的数据,满足业务人员的数据需求。

    业务人员:产品、运营、市场、管理层等,因为产品改进、运营活动、商业决策等,有数据需求。

    数据分析师的基本要求

    对数据感兴趣:是不是看到一行行的数字就头大,选择直接跳过?还是愿意花些时间研究这些数字背后意味着什么?如果你看苹果的发布会的话,会看到乔布斯的幻灯片里出现最多的就是数字,卖了多少部,分了多少钱,厚度减少到多少毫米之类的,他相信数字简单明了。

    如果对数据不感兴趣,这个角色一定不适合你。

    良好的理解和抽象能力:把业务人员说的只言片语,抽象为明确的数据需求,清楚怎么从基础数据中实现出来。还有把一些重复性的需求,抽象出模式来,用机器来替代。

    良好的表达能力:数据分析师有个天然的优势,能够直接和老板打交道,这就要求你能站在老板的层面来表达。把一堆堆的数据,很好的呈现给业务人员,帮助他们做出正确的决策。

    快速动手能力:业务人员提的数据需求,巴不得下一秒都拿到。

    数据分析的专业能力。

    兴趣是可以培养的,既然愿意看这篇文章,说明有兴趣。理解、表达、动手能力,是要有意识的训练。数据分析的专业能力,是可以通过学习提升的。

    作为数据分析师,无论最初的职业定位方向是技术还是业务,最终发到一定阶段后都会承担数据管理的角色。因此,一个具有较高层次的数据分析师需要具备完整的知识结构。

    1. 数据采集

    了解数据采集的意义在于真正了解数据的原始面貌,包括数据产生的时间、条件、格式、内容、长度、限制条件等。这会帮助数据分析师更有针对性的控制数据生产和采集过程,避免由于违反数据采集规则导致的数据问题;同时,对数据采集逻辑的认识增加了数据分析师对数据的理解程度,尤其是数据中的异常变化。

    2.数据存储

    无论数据存储于云端还是本地,数据的存储不只是我们看到的数据库那么简单。

    3.数据提取

    数据提取是将数据取出的过程,数据提取的核心环节是从哪取、何时取、如何取。

    o 从哪取,数据来源——不同的数据源得到的数据结果未必一致。

    o 何时取,提取时间——不同时间取出来的数据结果未必一致。

    o 如何取,提取规则——不同提取规则下的数据结果很难一致。

    4.数据挖掘

    数据挖掘是面对海量数据时进行数据价值提炼的关键,以下是算法选择的基本原则:

    o 没有最好的算法,只有最适合的算法,算法选择的原则是兼具准确性、可操作性、可理解性、可应用性。

    o 没有一种算法能解决所有问题,但精通一门算法可以解决很多问题。

    o 挖掘算法最难的是算法调优,同一种算法在不同场景下的参数设定相同,实践是获得调优经验的重要途径。

    5.数据分析

    数据分析相对于数据挖掘更多的是偏向业务应用和解读,当数据挖掘算法得出结论后,如何解释算法在结果、可信度、显著程度等方面对于业务的实际意义,如何将挖掘结果反馈到业务操作过程中便于业务理解和实施是关键。

    6.数据展现

    数据展现即数据可视化的部分,数据分析师如何把数据观点展示给业务的过程。数据展现除遵循各公司统一规范原则外,具体形式还要根据实际需求和场景而定。

    7.数据应用

    数据应用是数据具有落地价值的直接体现,这个过程需要数据分析师具备数据沟通能力、业务推动能力和项目工作能力。

    数据沟通能力。深入浅出的数据报告、言简意赅的数据结论更利于业务理解和接受,打比方、举例子都是非常实用的技巧。

  • ?

    数据科学?数据分析?两者差异有多大,是什么关系?

    宫翠安

    展开

    编者按:数据科学和数据分析,在技术领域或其他相关行业工作的人可能会经常看到这两个术语,虽然他们俩看起来挺像,但是这两个术语是完全不同的,对业务有不同的影响。

    || 数据科学 ||

    就像包含了许多专业和领域的科学一样,数据科学也是获取信息的各种模型和方法的广义术语。在数据科学的范畴内,科学方法、数学、统计学和其他工具用来分析和操纵数据。如果一个工具或过程通过数据分析,从中获取某种信息,那么,它可能属于数据科学。实践数据科学归结为连接信息和数据点,以找到可用于业务的连接。数据科学通过尝试找到新的模式和视角,深入了解未知世界。数据科学试图建立连接并为未来做好计划,而不是像数据分析所做的那样,检查假设。数据科学通常通过提供数据上的新观点,或以前没看到不知道的所有的连接,帮助组织从查询数据转移到洞察力上。|| 数据分析 ||

    如果数据科学是掌握工具和方法的房子,那么数据分析就是该房屋的特定空间。它与数据科学有关系,但是更具体和集中。数据分析通常比数据科学更受到关注,因为数据分析师不仅仅寻找数据之间的连接,而是关注一个特定的目标,通过数据排序来寻找支持的方法。数据分析通常是自动化的,可以在某些领域提供意见和见解。数据分析包括梳理数据,找出可用于帮助实现组织目标的巨大财富。基本上,分析将数据分类成组织知道自己了解的数据和知道自己不了解的数据,并且可以用来衡量过去,现在或将来的事件。数据分析通过将趋势和模式与公司的真实目标联系起来,从精准分析转移到会给公司带来什么影响,并逐渐转向提升业务率和寻找战略重点。|| 数据科学家和数据分析师的差异 ||

    数据科学和数据分析之间看起来只有微妙的差异,但是实际上两者可能对公司产生很大的影响。一开始,数据科学家和数据分析师就有不同的背景,履行不同的职责,所以能正确使用这些术语有助于公司聘请合适的人员来处理各自的任务。数据分析和数据科学可以用来找到不同的东西,对于企业来说这些都是有用的,两者都不能单独应用于所有情况。数据分析常用于如医疗保健,游戏和旅游等行业,而数据科学常用于互联网搜索和数字广告中。数据科学在人工智能和机器学习的发展中也发挥着越来越重要的作用。许多公司正在转向允许他们使用计算机筛选大量数据的系统,例如在企业闪存系统上,使用算法来找到最有助于其组织实现目标的连接。机器学习在许多行业具有巨大的潜力,无疑在未来如何运作企业方面发挥巨大的作用。因此,组织和员工了解数据科学与数据分析之间的区别,以及对每个学科的作用至关重要。虽然存在差异,但数据科学和数据分析都是未来工作和数据的重要组成部分。这两个术语应该被希望理解数据,并能引领技术变革的公司所接受。

    来源:insidebigdata

    作者:Rick Delgado智能观 编译

  • ?

    大数据与人工智能算法实现的痛点分析

    贺新瑶

    展开
    作者:互联网专家 职业经理人

    大数据带着无数的企业信息、个人信息,尤其是财富信息,率先得到了银行业的重视与青睐。大数据+人工智能带来的对财富信息、个人诚信、投资风险、风险偏好等挖掘、整理、聚类、分析与推荐等,极大的改善了银行的工作效率,也极大地促进了社会的发展。

    面向财富投资、面向投资理财的银行柜台的从业人员,将再减少50%。数据服务、理财分析、风险分析、资金画像、移动推荐、实时查询等大数据应用将彻底改变客户对银行的服务需求,基于大数据、人工智能+专家系统,完成科学、全面、快速的个性化定制理财、投资服务将成为未来银行发展的方向。传统的众多银行通过对一类或一维数据进行人工分析,借助客户的某项隐私数据,完成对客户财富信息、联系信息的获取,然后进行大范围的短息、电话等营销,使得双方的需求难以对接,各自的风险和顾虑难以消除。缺乏系统性、必然性、长期性、科学性。

    比如准备“十一”长假金融行业一般则是这样运作的: 为达到好的营销效果,市场部已经与京东等电商平台、携程等OTA平台、滴滴等出行平台、美团等O2O平台、多家保险和理财企业,以及线下多家影院、餐馆等达成合作,获得了许多有竞争力的权益。那么权益在手,如何将效果最大化?在投资规划、个人风险分析、产品选择、服务对接上,在算法上存在着巨大的真空。

    首先是基于市场需求,建立价值模型、消费模型、用户画像、产品画像、给出营销模型及数据,构建市场营销方案和产品投放,根据效果进行参数调整,修正运维KPI,是一个消费背景调查、家庭消费量化、消费习惯分析等,甚至引入哲学、心理学等模型的痛苦过程。正常的数据标签化、轻度清洗、重度清洗、构建标准对象模型、进行预测模型分析、评估、修正等方法、途径和效果实在繁杂、细致和难以收敛。

    在现有的基础上,如何利用大数据分析功能结合人工智能分析,将所有用户进行分类,采用自动信息推荐、互动咨询培育、潜在心里引导这些都是技术上、样本实现上,特征提取上、个体画像上、推荐算法上,难以量化和评估的方面。利用在线专家系统,对过程、数据、算法、参数等进行调优,同时需要将各种数据充分闭合,最大程度利用实时数据进行效果和行为比对。做到这一点,不论技术团队、营销团队、运营团队等都是难以实现和达到的。

    人工智能算法实现涵盖感知、认知、分析、情感、决策等领域,涉及复杂的非线性学习、记忆、思考、分析、判断能力。这是所有大数据公司正在尝试,正在努力试图突破和解决的工作。

  • ?

    大数据是什么?超全的大数据分析工具

    缪哲瀚

    展开

    大数据是什么?大数据处理分析的工具有哪些?不管是即将学习大数据的人亦或是转型向学大数据的人都想要了解的。

    1,什么是大数据

    简言之,从各种各样类型的数据中,快速获得有价值信息的能力,就是大数据技术。

    2,大数据最核心的价值

    大数据最核心的价值就是在于对于海量数据进行存储和分析。相比起现有的其他技术而言,大数据的“廉价、迅速、优化”这三方面的综合成本是最优的。

    3,大数据处理分析的六大最好工具

    一、 Apache Hadoop

    Hadoop 是一个能够对大量数据进行分布式处理的软件框架。Hadoop 是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。Hadoop 是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。Hadoop 还是可伸缩的,能够处理 PB 级数据。此外,Hadoop 依赖于社区服务器,因此它的成本比较低,任何人都可以使用。

    Hadoop是一个能够让用户轻松架构和使用的分布式计算平台。用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序。它主要有以下几个优点:

    ⒈高可靠性。Hadoop按位存储和处理数据的能力值得人们信赖。

    ⒉高扩展性。Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。

    ⒊高效性。Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。

    ⒋高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。

    Hadoop带有用 Java 语言编写的框架,因此运行在 Linux 生产平台上是非常理想的。Hadoop 上的应用程序也可以使用其他语言编写,比如 C++。

    二、HPCC

    HPCC,High Performance Computing and Communications(高性能计算与通信)的缩写。1993年,由美国科学、工程、技术联邦协调理事会向国会提交了“重大挑战项目:高性能计算与 通信”的报告,也就是被称为HPCC计划的报告,即美国总统科学战略项目,其目的是通过加强研究与开发解决一批重要的科学与技术挑战问题。HPCC是美国 实施信息高速公路而上实施的计划,该计划的实施将耗资百亿美元,其主要目标要达到:开发可扩展的计算系统及相关软件,以支持太位级网络传输性能,开发千兆 比特网络技术,扩展研究和教育机构及网络连接能力。

    该项目主要由五部分组成:

    1、高性能计算机系统(HPCS),内容包括今后几代计算机系统的研究、系统设计工具、先进的典型系统及原有系统的评价等;

    2、先进软件技术与算法(ASTA),内容有巨大挑战问题的软件支撑、新算法设计、软件分支与工具、计算计算及高性能计算研究中心等;

    3、国家科研与教育网格(NREN),内容有中接站及10亿位级传输的研究与开发;

    4、基本研究与人类资源(BRHR),内容有基础研究、培训、教育及课程教材,被设计通过奖励调查者-开始的,长期 的调查在可升级的高性能计算中来增加创新意识流,通过提高教育和高性能的计算训练和通信来加大熟练的和训练有素的人员的联营,和来提供必需的基础架构来支 持这些调查和研究活动;

    5、信息基础结构技术和应用(IITA ),目的在于保证美国在先进信息技术开发方面的领先地位。

    三、Storm

    Storm是自由的开源软件,一个分布式的、容错的实时计算系统。Storm可以非常可靠的处理庞大的数据流,用于处理Hadoop的批量数据。 Storm很简单,支持许多种编程语言,使用起来非常有趣。Storm由Twitter开源而来,其它知名的应用企业包括Groupon、淘宝、支付宝、阿里巴巴、乐元素、Admaster等等。

    Storm有许多应用领域:实时分析、在线机器学习、不停顿的计算、分布式RPC(远过程调用协议,一种通过网络从远程计算机程序上请求服务)、 ETL(Extraction-Transformation-Loading的缩写,即数据抽取、转换和加载)等等。Storm的处理速度惊人:经测 试,每个节点每秒钟可以处理100万个数据元组。Storm是可扩展、容错,很容易设置和操作。

    四、Apache Drill

    为了帮助企业用户寻找更为有效、加快Hadoop数据查询的方法,Apache软件基金会近日发起了一项名为“Drill”的开源项目。Apache Drill 实现了 Google's Dremel.

    据Hadoop厂商MapR Technologies公司产品经理Tomer Shiran介绍,“Drill”已经作为Apache孵化器项目来运作,将面向全球软件工程师持续推广。

    该项目将会创建出开源版本的谷歌Dremel Hadoop工具(谷歌使用该工具来为Hadoop数据分析工具的互联网应用提速)。而“Drill”将有助于Hadoop用户实现更快查询海量数据集的目的。

    “Drill”项目其实也是从谷歌的Dremel项目中获得灵感:该项目帮助谷歌实现海量数据集的分析处理,包括分析抓取Web文档、跟踪安装在Android Market上的应用程序数据、分析垃圾邮件、分析谷歌分布式构建系统上的测试结果等等。

    通过开发“Drill”Apache开源项目,组织机构将有望建立Drill所属的API接口和灵活强大的体系架构,从而帮助支持广泛的数据源、数据格式和查询语言。

    五、RapidMiner

    RapidMiner是世界领先的数据挖掘解决方案,在一个非常大的程度上有着先进技术。它数据挖掘任务涉及范围广泛,包括各种数据艺术,能简化数据挖掘过程的设计和评价。

    功能和特点

    免费提供数据挖掘技术和库

    100%用Java代码(可运行在操作系统)

    数据挖掘过程简单,强大和直观

    内部XML保证了标准化的格式来表示交换数据挖掘过程

    可以用简单脚本语言自动进行大规模进程

    多层次的数据视图,确保有效和透明的数据

    图形用户界面的互动原型

    命令行(批处理模式)自动大规模应用

    Java API(应用编程接口)

    简单的插件和推广机制

    强大的可视化引擎,许多尖端的高维数据的可视化建模

    400多个数据挖掘运营商支持

    耶鲁大学已成功地应用在许多不同的应用领域,包括文本挖掘,多媒体挖掘,功能设计,数据流挖掘,集成开发的方法和分布式数据挖掘。

    六、 Pentaho BI

    Pentaho BI 平台不同于传统的BI 产品,它是一个以流程为中心的,面向解决方案(Solution)的框架。其目的在于将一系列企业级BI产品、开源软件、API等等组件集成起来,方便商务智能应用的开发。它的出现,使得一系列的面向商务智能的独立产品如Jfree、Quartz等等,能够集成在一起,构成一项项复杂的、完整的商务智能解决方案。

    Pentaho BI 平台,Pentaho Open BI 套件的核心架构和基础,是以流程为中心的,因为其中枢控制器是一个工作流引擎。工作流引擎使用流程定义来定义在BI 平台上执行的商业智能流程。流程可以很容易的被定制,也可以添加新的流程。BI 平台包含组件和报表,用以分析这些流程的性能。目前,Pentaho的主要组成元素包括报表生成、分析、数据挖掘和工作流管理等等。这些组件通过 J2EE、WebService、SOAP、HTTP、Java、JavaScript、Portals等技术集成到Pentaho平台中来。 Pentaho的发行,主要以Pentaho SDK的形式进行。

    Pentaho SDK共包含五个部分:Pentaho平台、Pentaho示例数据库、可独立运行的Pentaho平台、Pentaho解决方案示例和一个预先配制好的 Pentaho网络服务器。其中Pentaho平台是Pentaho平台最主要的部分,囊括了Pentaho平台源代码的主体;Pentaho数据库为 Pentaho平台的正常运行提供的数据服务,包括配置信息、Solution相关的信息等等,对于Pentaho平台来说它不是必须的,通过配置是可以用其它数据库服务取代的;可独立运行的Pentaho平台是Pentaho平台的独立运行模式的示例,它演示了如何使Pentaho平台在没有应用服务器支持的情况下独立运行;Pentaho解决方案示例是一个Eclipse工程,用来演示如何为Pentaho平台开发相关的商业智能解决方案。

    Pentaho BI 平台构建于服务器,引擎和组件的基础之上。这些提供了系统的J2EE 服务器,安全,portal,工作流,规则引擎,图表,协作,内容管理,数据集成,分析和建模功能。这些组件的大部分是基于标准的,可使用其他产品替换之。

    4. 大数据特点

    第一,数据体量巨大。从TB级别,跃升到PB级别。

    第二,数据类型繁多,如前文提到的网络日志、视频、图片、地理位置信息,等等。

    第三,价值密度低。以视频为例,连续不间断监控过程中,可能有用的数据仅仅有一两秒。

    第四,处理速度快。1秒定律。最后这一点也是和传统的数据挖掘技术有着本质的不同。物联网、云计算、移动互联网、车联网、手机、平板电脑、PC以及遍布地球各个角落的各种各样的传感器,无一不是数据来源或者承载的方式。

    如果对于大数据还有更多的疑问,可以持续关注作者,也可以留言或者私信问题。

  • ?

    怎样搭建一个大数据分析平台?内附资料福利

    彭澜

    展开

    一般的大数据平台从平台搭建到数据分析大概包括以下几个步骤:

    1、Linux系统安装

    一般使用开源版的Redhat系统--CentOS作为底层平台。为了提供稳定的硬件基础,在给硬盘做RAID和挂载数据存储节点的时,需要按情况配置。比如,可以选择给HDFS的namenode做RAID2以提高其稳定性,将数据存储与操作系统分别放置在不同硬盘上,以确保操作系统的正常运行。

    2、分布式计算平台/组件安装

    当前分布式系统的大多使用的是Hadoop系列开源系统。Hadoop的核心是HDFS,一个分布式的文件系统。在其基础上常用的组件有Yarn、Zookeeper、Hive、Hbase、Sqoop、Impala、ElasticSearch、Spark等。

    使用开源组件的优点:1)使用者众多,很多bug可以在网上找的答案(这往往是开发中最耗时的地方);2)开源组件一般免费,学习和维护相对方便;3)开源组件一般会持续更新;4)因为代码开源,如果出现bug可自由对源码作修改维护。

    常用的分布式数据数据仓库有Hive、Hbase。Hive可以用SQL查询,Hbase可以快速读取行。外部数据库导入导出需要用到Sqoop。Sqoop将数据从Oracle、MySQL等传统数据库导入Hive或Hbase。Zookeeper是提供数据同步服务, Impala是对hive的一个补充,可以实现高效的SQL查询

    3、数据导入

    前面提到,数据导入的工具是Sqoop。它可以将数据从文件或者传统数据库导入到分布式平台。

    4、数据分析

    数据分析一般包括两个阶段:数据预处理和数据建模分析。

    数据预处理是为后面的建模分析做准备,主要工作时从海量数据中提取可用特征,建立大宽表。这个过程可能会用到Hive SQL,Spark QL和Impala。

    数据建模分析是针对预处理提取的特征/数据建模,得到想要的结果。如前面所提到的,这一块最好用的是Spark。常用的机器学习算法,如朴素贝叶斯、逻辑回归、决策树、神经网络、TFIDF、协同过滤等,都已经在ML lib里面,调用比较方便。

    5、结果可视化及输出API

    可视化一般式对结果或部分原始数据做展示。一般有两种情况,行数据展示,和列查找展示。

    以上就简单介绍这么多,如果有小伙伴想了解和学习更多的大数据技术,可以私信小编索要资料

  • ?

    9种常用数据分析方法

    Wenda

    展开

    数据分析是从数据中提取有价值信息的过程,过程中需要对数据进行各种处理和归类,只有掌握了正确的数据分类方法和数据处理模式,才能起到事半功倍的效果,以下是数据分析员必备的9种数据分析思维模式:

    1. 分类

    分类是一种基本的数据分析方式,数据根据其特点,可将数据对象划分为不同的部分和类型,再进一步分析,能够进一步挖掘事物的本质。

    2. 回归

    回归是一种运用广泛的统计分析方法,可以通过规定因变量和自变量来确定变量之间的因果关系,建立回归模型,并根据实测数据来求解模型的各参数,然后评价回归模型是否能够很好的拟合实测数据,如果能够很好的拟合,则可以根据自变量作进一步预测。

    3. 聚类

    聚类是根据数据的内在性质将数据分成一些聚合类,每一聚合类中的元素尽可能具有相同的特性,不同聚合类之间的特性差别尽可能大的一种分类方式,其与分类分析不同,所划分的类是未知的,因此,聚类分析也称为无指导或无监督的学习。

    数据聚类是对于静态数据分析的一门技术,在许多领域受到广泛应用,包括机器学习,数据挖掘,模式识别,图像分析以及生物信息。

    4. 相似匹配

    相似匹配是通过一定的方法,来计算两个数据的相似程度,相似程度通常会用一个是百分比来衡量。相似匹配算法被用在很多不同的计算场景,如数据清洗、用户输入纠错、推荐统计、剽窃检测系统、自动评分系统、网页搜索和DNA序列匹配等领域。

    5. 频繁项集

    频繁项集是指事例中频繁出现的项的集合,如啤酒和尿不湿,Apriori算法是一种挖掘关联规则的频繁项集算法,其核心思想是通过候选集生成和情节的向下封闭检测两个阶段来挖掘频繁项集,目前已被广泛的应用在商业、网络安全等领域。

    6. 统计描述

    统计描述是根据数据的特点,用一定的统计指标和指标体系,表明数据所反馈的信息,是对数据分析的基础处理工作,主要方法包括:平均指标和变异指标的计算、资料分布形态的图形表现等。

    7. 链接预测

    链接预测是一种预测数据之间本应存有的关系的一种方法,链接预测可分为基于节点属性的预测和基于网络结构的预测,基于节点之间属性的链接预测包括分析节点资审的属性和节点之间属性的关系等信息,利用节点信息知识集和节点相似度等方法得到节点之间隐藏的关系。与基于节点属性的链接预测相比,网络结构数据更容易获得。复杂网络领域一个主要的观点表明,网络中的个体的特质没有个体间的关系重要。因此基于网络结构的链接预测受到越来越多的关注。

    8. 数据压缩

    数据压缩是指在不丢失有用信息的前提下,缩减数据量以减少存储空间,提高其传输、存储和处理效率,或按照一定的算法对数据进行重新组织,减少数据的冗余和存储的空间的一种技术方法。数据压缩分为有损压缩和无损压缩。

    9. 因果分析

    因果分析法是利用事物发展变化的因果关系来进行预测的方法,运用因果分析法进行市场预测,主要是采用回归分析方法,除此之外,计算经济模型和投人产出分析等方法也较为常用。

    以上是数据分析员应熟练掌握的9种数据分析思维方法,数据分析员应根据实际情况合理运用不同的方法,才能够快速精确的挖掘出有价值的信息!

  • ?

    大数据探索:大数据预测与算法

    朱维妙

    展开

    虽然你并没有见到过买彩票中奖的算命先生,但几乎每个中奖的人都会吹嘘自己拥有了算命先生的能力。有些中奖者,就像赵本山的小品中的人物那样,会声称自己是从梦中获得的灵感来选择号码,还有一些中奖者则会声称自己拥有某种超级预测的能力。

    但不管这些人如何声称自己拥有超能力,但我们可以相信,还是很少有正常的企业会高薪聘请这类人来帮助企业做市场预测分析。

    随着互联网和计算机的普及,人们做决策时越来越注重“数据驱动”,也就是说更加依赖于客观的统计数据而不是某些人的所谓“判断”。在这个以事实为基础的领域中,常见的词汇都是“分析学”、“大数据”、“商业情报”以及“数据科学”等。

    统计科学的任务就是在大量微观个体的相互作用中发现可以被辨识的宏观模式,这些模式可以是数学公式,可以是图标,也可以是若干个更为直观的指标或指数,如均值,方差,CPI和PPI等。

    在传统的统计学中,数据是“混合的”(mixed),就像容器内的分子。因此,我们关心的是大量数据中呈现出的宏观量,就像容器内气体的温度。

    但是大数据预测分析则更近了一步,它不仅仅是要搞清楚宏观统计规律,更要弄清宏观数据中的精细结构,例如,大数据分析既关心某款手机的销售量,更关心是哪个群体的人会更有可能购买该款手机。

    因此,在大数据分析的视野中,数据不再是混合的,而是“聚块的”(assorted)。表面上看是混杂的,但放大了看,则有精细的结构:华为手机用户产生的数据;鹿晗粉丝留下的数据;克罗地亚球迷留下的数据;等等。

    所谓的大数据,我将其定义为与人的行为相关的所有数据。人们几乎所有的行为都会留下痕迹,这些痕迹就是所谓的数据。这就意味着,在大数据的视野里,所有的数据就像道路上的脚印,虽然看上去杂乱却是“有迹可循”的。

    数据的“前后相随”形成了“足迹”,大数据分析技术可以帮助我们辨识出无数不同的“足迹”。但是我们一定要注意,这些“足迹”不是相互独立的而是相互影响相互关联的。有些足迹会“殊途同归”而有些足迹则会“分道扬镳”。

    由于人是有限理性的,因此对于问题类型的兴趣各不相同,即使对于同一个问题也会形成不同的看法。不同类型的数据虽然都被埋在了网络中海量的数据库里,但是具有不同兴趣不同知识背景的人们总是能够在其中“嗅出”自己所需要的特殊“信息素”,并进而引发五花八门的聚集行为。

    以维基百科为例。在维基百科的发展过程中,万维网构成了信息聚集和信息流的物理环境。如果有某位作者在维基百科中新增了一个词条,则该词条就会成为一个标识,它所包含的特殊的“信息素”会引导着那些对这个词条感兴趣的读者或编辑的聚集行为。在聚集过程中,他们以网页为媒介间接地进行交往,或增加内容,或修改内容,或激烈争论,持续不断地进行着信息和知识的交流。有时候他们会很快就达成共识,有时候则会在交流和反馈中产生“无中生有”的涌现,形成新的观念和新的词条,从而留下新的“信息素”而引发新的聚集。有时则会因为意见不合或者兴趣衰减而一哄而散。

    人们在由维基百科提供的工作环境基于stigmergic机制的间接交往,使得维基百科涌现出了巨大的“智慧”,其内容的广泛性、专业性、包容性、多样性和时代性都超过了任何一本由少数专家“精心编撰”的百科全书。然而,尽管维基百科呈现出多样性、不断变化、缺乏中央指挥,但无论是从短期看还是从长期看,它都始终保持了协调性。

    不过,实际上我们面对的绝大多数数据并不像维基百科那样有清晰的结构。如何才能在表面杂乱的数据中发现隐藏的结构和秩序,需要的是合适的算法。

    互联网和计算机的普遍使用每天都为我们留下海量的数据。数据仿佛只是无数事实和数字的堆砌,每条数据都显得无聊,有的人看到数据就头疼。然而正如库瓦尼先生所说的“数据是一种新型石油”那样,数据中蕴含着巨大的财富。

    不过数据本身还不是财富,作为原材料的数据只是一个枯燥无味的代码组合。只有通过合理有效的方法提炼出来的规律和知识才是如黄金般珍贵的财富。

    人的能力有限,不可能同时处理如此海量的数据,幸好现在有了计算机。但是,再强的计算机面对着每天都在指数式增长的海量数据也会感到“内存”有限,再强的CPU都会担心在某一时刻是否会因为温度太高而“自焚”。

    写到这里,想到了人的免疫系统。由于病毒或者细菌具有超强的变异能力,这使得新的病毒和细菌层出不穷,从理论上会趋于无限。很显然人的免疫系统中不可能储存如此多的病毒或细菌信息。面对这样的一种情况,密执根大学的John H. Holland教授产生了这样的想法:大自然一定有自己的算法。

    这个想法的伟大之处在于,只要拥有了好的算法(软件),有限的硬件就可以做无限的事情。

    Holland教授指出:“正是由于适应行为而导致的复杂性,阻碍了当今世界许多重大问题的解决。”

    事实上,免疫系统遵循着大自然的“节约”原则,任何一个时刻储存的信息都是有限。那些长期没有出现的细菌和病毒将会被淡忘甚至遗忘,而那些最近出现在身体的疾病信息则会被储存。因此,大多数人在感冒痊愈后的一段时间不再感冒,这是因为免疫系统记住了这些细菌或病毒的特征,只要出现就坚决消灭。而过了一段时间以后,这些病毒或细菌变异后将以陌生的面孔出现在免疫系统面前,从而蒙混过关,让人的病。

    Holland教授根据新达尔文主义的基本观点,抽象地分析了自然系统的自适应过程,提出了遗传算法(Genetic algorithm,简称GA),并以此来实现系统结构的演化过程。

    继遗传算法之后,很快有了进化算法、蚁群算法、鱼群算法、涌现算法和stigmergy算法等等自适应的算法。中国古代先哲老子的“道法自然”的理念在各种适应性算法中得到了完美的实现。

    适应性算法的出现,为一个新的学科——机器学习的诞生奠定了基础。

    机器学习,就是让电脑自动获取新知识和新能力,持续不断地输入现代社会最重要的非自然资源:数据。

    输入数据→机器学习→预测→通过经验数据的反馈再学习,通过这样的一个过程将会不断提高机器的预测能力。

    例如,好莱坞的影视公司会预测,如果某剧本被制作成影片,它是否会受欢迎。如果受欢迎,主要是什么年龄阶层或社会阶层的人会更加欢迎。

    对于足球队教练来说,他要知道哪些运动员会在关键比赛的关键时刻更容易“掉链子”,从而做出有效的换人安排。

    对于美国总统候选人来说,那些摇摆不定的选民更容易接受什么样宣传媒体和宣传口号,从而提高获胜的机会。

    机器学习会从这些发现中尝试建立预测能力,通过对数字的挖掘和试错,运用统计学方法和计算机科学方法实现这种预测。

    接下来,需要讨论的问题是,机器学习能否替代人们的自主学习?机器预测能否替代人的判断?还有一个更大的问题是,在强大的人工智能面前,人怎么实现真正的自由?

    本文作者 龚小庆

数据分析系统算法

所有视频需要登录后,才能观看

请先登录您的帐号,即可完整播放,如果您尚未注册帐号,请先点击注册。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP