说明
接着建模杂谈系列10-AI Squad讨论AI团队的构建,本次讨论的基础假设是「人的服务不可靠」。
由于人生活在社会中,除了本身的生物周期(生老病死)之外,社会环境的变化也会极大的影响到人的态度,进而影响到服务和合作。例如,A原来是个特别积极的员工,后来发现薪资跟不上,就特别消极。这个时候站在资本家的角度应该怎么办?传统的方法是KPI考核,但是如何制定KPI是个很大的问题。
本篇讨论如何建立一个满意(但可能不完美)的KPI制度,一开始由人推动,之后完全自动化(赏罚由系统控制)。
内容
每个人都是一个镜像。
服务化 + 标准化 + 价值估计。
1.1 能力栈
围绕展示、服务、建模、计算、优化等五方面的能力体系
名称 | 涉及的技术 | 作用 |
---|---|---|
框架型前端 | React, VUE | 快速构建前端 |
代码型前端 | Jquery, Bootstrap, AwesomeFont | 更加灵活的前端 |
代码型前端 | D3.js , Echarts.js | 基于前端的可视化 |
IT架构 | Nginx, FRP | 内网穿透,反向代理,负载均衡 |
架构部署 | Docker, Docker-Compose, Docker Machine | 应用快速部署 |
分布式计算架构 | RabbitMQ, Pytorch, Numpy | 高性能计算 |
分布式服务架构 | RabbitMQ, Docker-Compose, Neo4j | 高稳定服务 |
数据分析 | Pandas, MySQL | 沟通业务 |
数据处理 | Pandas, MySQL, Mongo, Neo4j, Hive | 数据的存储与处理 |
经典数据建模 | Pandas, Numpy, Sklearn, XGBoost | 以逻辑回归为基础的建模 |
深度学习 | Pandas, Numpy, Pytorch | 处理图片、文字、语音 |
贝叶斯建模 | Pandas, Numpy,Scipy, Pymc3 | 基于贝叶斯的另一整套方法(= 经典数据建模+深度学习+概率推理) |
图建模 | Pandas, Py2Neo, Neo4j, Networkx , Pytorch | 基于图方法进行的聚类和分类 |
运筹优化 | Scipy | 运筹及优化 |
1.2 项目(APP)所需的服务分解
- 1 项目分析:价值、目标、时间线、构建、运行、迭代
- 2 项目服务分解:(有固定时间的服务)任务,(无固定时间的服务)维护
- 3 任务(服务)类型:计算密集、IO密集
- 4 服务开销:每样服务都有开销,例如执行某些计算密集任务(图模型),那么其载入知识和环境的时间就比较长。
1.3 人作为一个服务器(Man As A Server)
正如我们使用局域网/公网的机器构建了服务器:
- 1 服务器本身可能出现故障无法提供服务
- 2 服务器有不同类型,有的是cpu,有的是gpu
- 3 服务上安装的应用不同,有的是转发,有的是计算,有的是展现
要解决的问题,或者要运筹的内容是:始终保持有服务可用,即便有服务器down掉。当然如何合理的分散服务器和进行任务分派是重要的。
按照期望提供的SLA以及运筹学,我们可以预备足够多的”服务器“。
1.4 什么是人该做的?
人工智能的意义并不是取代人类,而是促进人类的进步。例如,把汉字抄一千遍,这事该人干吗?
如果事情/业务的规范性和重复性很高,那么就应该被抽取出来,再用机器去替代掉。人干这种事本能也会觉得疲劳和烦躁。
人类的工作应该是去做新的探索,思考算法/规则层面的问题,然后把一些无规律/无法控制的事慢慢变得清晰可控,再把这些成果交给人工智能进行最大化。
例如人为了解决某个问题花费了100的成本,再花100的成本变成人工智能,可以近乎无限的复用。然后只要能够对其他人有1的帮助,有1000个人使用并付费就很划算了。
人应该创新,发现,提炼规律,算法;找到新领域的价值=问题
人工智能(计算机+网络+工业控制+ 传感器)则负责工业化的实现这些价值