专栏名称: DBAplus社群
围绕数据库、大数据、PaaS云,顶级大咖、技术干货,运营几个月受众过十万!成为运维圈最专注围绕“数据”的学习交流和专业社群!欢迎投稿,加入探讨。
目录
相关文章推荐
AustinDatabases  ·  云数据库产品应改造PostgreSQL逻辑复 ... ·  4 小时前  
AustinDatabases  ·  泉城济南IvorySQL 2025 ... ·  昨天  
AustinDatabases  ·  泉城济南IvorySQL 2025 ... ·  昨天  
数据中心运维管理  ·  2025年度国家数据中心节能监察任务清单印发 ... ·  2 天前  
数据中心运维管理  ·  弱电智能化中究竟有多少个子系统? ·  3 天前  
51好读  ›  专栏  ›  DBAplus社群

【独家】用Redis-ML模块实现实时机器学习!

DBAplus社群  · 公众号  · 数据库  · 2017-06-23 06:39

正文

请到「今天看啥」查看全文



随机森林模型


  • 一个决策树集合

  • 支持分类和回归

  • 分离节点

    按类别(例如:day == “sunday”)

    按数值(例如:age < 43)

  • 决策是由大多数决策树所决定的


Gini impurity:基尼不纯度准则


【充电】在实际训练中, 需要根据不同的需求选择适当的损失函数是必须的,损失函数的形式即是我们选择最优分支函数的优化目标。损失函数形式设定分为两类:分类树损失函数和回归树损失函数,其中分类树损失函数又分为4种准测:基尼不纯度准则、信息熵准则、对数价值准则和经过Kass调整的对数价值准则;回归树损失函数分为方差的最大似然估计准则、绝对偏差准则和分支规则的F检验准则。


公式



按其定义式所表达的,它的含义是“任意取两个观测其属于不同类的概率”。



在分支时的基尼不纯度公式改进为:



分别为当前节点与其分支节点的观测数;基尼不纯度改进越大,说明分支后各个子节点任取两个观测数与不同类的概率越低。


在一个决策树上的泰坦尼克号的生存预测




在一个随机森林上的泰坦尼克号的生存预测



举一个例子:John的特征是:


{male, 34, married + 2, US, CA, 1.78m, 78kg, 110iq, blue eyes}


那么根据上面的随机森林的计算,John会生存下来吗?


Tree#1  -  Survived

Tree#2  -  Died

Tree#3  -  Survived


结果:根据随机森林决策是Survived。


真实世界的挑战


广告服务的公司需要在数据中心50ms的延迟的条件下完成每秒20000次广告服务。运行1000次活动需要1000个随机森林,每一个森林有15000棵决策树,平均每一棵树的深度有7层。可以想象计算量是很庞大的。针对这个案例,广告模型服务在基于Homegrown和Redis-ML的机器学习计算中的比较:




真实世界的一个案例:电影推荐系统


(1)概述



(2)用到的工具集



(3)Docker中运行Redis-ML 和spark-redis-ml


# docker pull shaynativ/redis-ml

# docker run --net=host shaynativ/redis-ml

# docker pull shaynativ/spark-redis-ml

# docker run --net=host shaynativ/spark-redis-ml


(4)一棵森林对应一个电影



数据处理的过程分为以下几步:







请到「今天看啥」查看全文