首页 文章 精选 留言 我的

精选列表

搜索[智能配置],共10000篇文章
优秀的个人博客,低调大师

Spark技术在京东智能供应链预测的应用——按照业务进行划分,然后利用scikit learn进行单机训练并预测

3.3 Spark在预测核心层的应用 我们使用Spark SQL和Spark RDD相结合的方式来编写程序,对于一般的数据处理,我们使用Spark的方式与其他无异,但是对于模型训练、预测这些需要调用算法接口的逻辑就需要考虑一下并行化的问题了。我们平均一个训练任务在一天处理的数据量大约在500G左右,虽然数据规模不是特别的庞大,但是Python算法包提供的算法都是单进程执行。我们计算过,如果使用一台机器训练全部品类数据需要一个星期的时间,这是无法接收的,所以我们需要借助Spark这种分布式并行计算框架来将计算分摊到多个节点上实现并行化处理。 我们实现的方法很简单,首先需要在集群的每个节点上安装所需的全部Python包,然后在编写Spark程序时考虑通过某种规则将数据分区,比如按品类维度,通过groupByKey操作将数据重新分区,每一个分区是一个样本集合并进行独立的训练,以此达到并行化。流程如下图所示: 伪码如下: repartitionBy方法即设置一个重分区的逻辑返回(K,V)结构RDD,train方法是训练数据,在train方法里面会调用Python算法包接口。saveAsPickleFile是Spark Python独有的一个Action操作,支持将RDD保存成序列化后的sequnceFile格式的文件,在序列化过程中会以10个一批的方式进行处理,保存模型文件非常适合。 虽然原理简单,但存在着一个难点,即以什么样的规则进行分区,key应该如何设置。为了解决这个问题我们需要考虑几个方面,第一就是哪些数据应该被聚合到一起进行训练,第二就是如何避免数据倾斜。 针对第一个问题我们做了如下几点考虑: 被分在一个分区的数据要有一定的相似性,这样训练的效果才会更好,比如按品类分区就是个典型例子。 分析商品的特性,根据特性的不同选择不同的模型,例如高销商品和低销商品的预测模型是不一样的,即使是同一模型使用的特征也可能不同,比如对促销敏感的商品就需要更多与促销相关特征,相同模型相同特征的商品应倾向于分在一个分区中。 针对第二个问题我们采用了如下的方式解决: 对于数据量过大的分区进行随机抽样选取。 对于数据量过大的分区还可以做二次拆分,比如图书小说这个品类数据量明显大于其他品类,于是就可以分析小说品类下的子品类数据量分布情况,并将子品类合并成新的几个分区。 对于数据量过小这种情况则需要考虑进行几个分区数据的合并处理。 总之对于后两种处理方式可以单独通过一个Spark任务定期运行,并将这种分区规则保存。 摘自:http://www.infoq.com/cn/articles/application-of-spark--in-jingdong-supply-chain-forecasting 本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/bonelee/p/7349702.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

看人工智能将如何颠覆传统购物体验

为服务好今天的顾客,仅仅强调在线渠道的简单方便已经远远不能满足。良好的客户体验对每次成功的购物来说已经必不可少。根据IBM的研究,70%的客户会不再购买那些给他们带来很差购物体验的品牌。他们中的许多人甚至会因为没有买到他们感兴趣的产品而非常失落。 鉴于上面这些问题,满足客户需求的速度是至关重要的,因为人们很容易产生即时的满足感和冲动的购买欲。因此电子商务需要一个快速个性化引擎来提高客户体验。每个给予客户的建议都应该是动态的和个性化。机器学习已经被电子商务巨头如亚马逊用来提供定制化产品推荐和畅销排行榜服务。这不仅为客户节省了时间,它还可以根据它们的关联性区分它们,以一种更加无缝快捷的方式完成交易。 大多数的传统算法都是首先利用以前的关键词搜索、客户特点、历史点击等来排名最相关的项目。 不仅仅是文本描述,图像识别也已经被用来提升客户体验。一

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册