tidb和窃电分析的故事

那些数据统计和tidb的故事

小时候我爸干过一件非常有意思的事情。
那时候我们住单元楼里面。表还是一户一表加上一个总表。电费是每户人家轮着收取的。反正从我有记忆时候总表和每户人家的电表之和就没对上过。永远是差了20元 30元。那是要统计那户人家承担的。或者你平摊到每户上去,说总表对不上。也就是说单元楼里面有人偷电。
后来发现是302 这户人家偷电。他家养了两个大学生。钱不够用。就用自己学到的电工知识偷了点电。
这就是简单的加减法抓出了贼。为啥怀疑是他呢。他们一个月用1度电。
真是离谱妈妈给离谱开门——离谱到家
阿里云上学机器学习的时候有个文章是讲窃电分析的。

tidb来预测股票的收益率,对于股票周期性分析

用户窃电识别

  1. 进入Designer页面。
  2. 登录PAI控制台
  3. 在左侧导航栏单击工作空间列表,在工作空间列表页面中单击待操作的工作空间名称,进入对应工作空间内。
  4. 在工作空间页面的左侧导航栏选择模型开发与训练 > 可视化建模(Designer),进入Designer页面。
  5. 构建工作流。
  6. 在Designer页面,单击预置模板页签。
  7. 在模板列表的用户窃电识别区域,单击创建
  8. 新建工作流对话框,配置参数(可以全部使用默认参数)。

其中:工作流数据存储配置为OSS Bucket路径,用于存储工作流运行中产出的临时数据和模型。

  1. 单击确定

您需要等待大约十秒钟,工作流可以创建成功。

  1. 在工作流列表,双击用户窃电识别工作流,进入工作流。
  2. 系统根据预置的模板,自动构建工作流,如下图所示。

区域 描述
统计分析:
* 通过**相关系数矩阵**组件,观察各特征对是否窃漏电的影响。
* 通过**数据视图**,查看各特征列与目标列的数据分布关系。本工作流中,**特征列**为power_usage_decline_level、line_loss_rate及warning_num,**目标列**为is_theft。|

|②|将数据集按照8:2拆分为训练数据集和预测数据集。|
|③|通过逻辑回归二分类组件对训练数据集进行回归建模。本工作流的训练特征列为power_usage_decline_level、line_loss_rate及warning_num,目标列为is_theft。|
|④|通过预测组件预测该模型在预测数据集上的效果,并通过二分类评估组件评估该模型预测的准确性。|
3. 运行工作流并查看输出结果。

  1. 单击画布上方的运行按钮image
  2. 工作流运行结束后,右键单击画布中的相关系数矩阵,在快捷菜单,单击可视化分析
  3. 相关系数矩阵对话框,查看各特征对是否窃漏电的影响。

power_usage_decline_level、line_loss_rate及warning_num特征对于是否为窃电用户(is_theft)的关系并不明显,即决定用户是否为窃电用户的特征并非具有单一性。

  1. 右键单击画布中的二分类评估,在快捷菜单,单击可视化分析
  2. 评估报告对话框,单击评估图表页签,查看模型评估指标。

AUC取值越接近1,表示模型的预测准确率越高。本文中的AUC取值达到0.8以上,即用户窃漏电模型的预测准确率很高。

我回头写写如何用tidb 来做窃电分析。毕竟我们也是ai数据库了嘛 哈哈。

那些年我被唐成派到电力去打工的时候我很奇怪为啥电表统计要到秒级别?一天要生产40t数据。postgresql 不够用,还需要hive去计算数据。也就是同一份数据 oracle存一份, pg一份,bigtable还有一份。数据中心占了一幢楼。
后来才发现。原来电力公司才是机器学习的大户。
电力是不可存储的必须生产多少用多少。需要预测波峰浪谷。这才是我们就业的大方向呀。

不说了 我去交我那5000 6000的电费了


哈哈哈 有意思

:yum:有意思~

1 个赞

这个不是电表的入户电流和出户电流差来统计吗

大佬为何能如此高产

下一步燃气 :smiley:

:+1: :+1: :+1:

厉害的

这是数据思路做的哈,数据分析相关性,不错

:+1:

:+1: