• 27 Jan 2019 » 大规模机器学习-2018的DataOps/MLOps
  • 动机 数据科学可以被概括为两个工作流: 模型开发 模型服务 当数据科学团队较小的时候,不会面临太多的问题,所有事情都相对较好。 需要维护的模型较少 关于模型的知识在数据科学家的头脑中 每个人有跟踪流程的方法 但是,随着数据科学需求的增长,将面临新的问题 数据流的复杂度增加 大量的数据处理工作流 数据没有在标准化的流程中修改 管理复杂的流和定时任务变得不可管理 每个数据科学家有他们自己的工具集 一些喜欢tensorflow...
    Read more...

  • 19 Jan 2019 » 从0开始制造一个docker自定义镜像
  • docker容器技术现在火的一塌糊涂,最近的工作刚好和这部分内容有交集,就动手搞了一下,这里记录下Docker使用的相关流程。 安装Docker 由于我用的是mac,docker是基于linux系统,因此需要下载docker desktop,是一个mac下的app,下载后放入应用程序中就可以运行。 运行起来会后在顶部的状态栏中常驻一个小鲸鱼的小图标,点击这个图标可以进行重启,退出等操作。 这iterm2中输入docker version,能看到docker相关信息就说明docker安装成功了,可以开始你的docker之旅吧。 自定义镜像是由基础镜像和自定义环境构成。这个例子使用的基础镜像是centos,自定义环境使用 tensorflow的模型例子 https://github.com/tensorflow/models 启动一个基础镜像  docker run -it --name...
    Read more...

  • 06 Jan 2019 » Uber机器学习平台米开朗基罗简介
  • Uber在自家的博客上用两篇文章的篇幅介绍了他们自己的机器学习平台(Michelangelo)Meet Michelangelo: Uber’s Machine Learning Platform 和 Michelangelo PyML: Introducing Uber’s Platform for Rapid Python...
    Read more...

  • 30 Dec 2018 » rancher搭建一个k8s集群
  • rancher是一个管理多k8s集群的开源工具,通过rancher可以快速创建和管理多个k8s集群,包括aws,gke,阿里云等公有云厂商及自身的基础设施。 安装rancher rancher自身也是基于docker,因此首先要在集群上安装docker。在centos安装docker可以使用yum install。 yum install docker 按照rancher官网的指导安装rancher镜像。 sudo docker run -d --restart=unless-stopped -p 80:80...
    Read more...

  • 21 Dec 2018 » 机器学习概念
  • 机器学习(ML)可以帮助你使用历史数据来作出更好的商业决策。机器学习算法发现数据中的模式,并且用这些发现构建数学模型。你可以用这些模型对未来的数据进行预测。例如,一个机器学习模型的可能应用可以根据消费者历史的行为预测他购买特定商品的可能性。 使用机器学习解决商业问题 你可以在带有真实答案的已有样例的问题上应用机器学习。例如,如果你想使用机器学习来预测一封email是否是垃圾邮件,你可以收集被正确标记为垃圾邮件或非垃圾邮件的样例。接下来你可以使用机器学习在这些email样例上进行归纳,以便预测新email是不是垃圾邮件。这种从带有标记的真实答案的数据上进行学习的方法被称为监督式机器学习。 你可以在这些特定的机器学习任务上使用监督式机器学习:二分类(从两个潜在结果中预测一个),多分类(从两个以上的结果中预测一个)以及回归(预测一个数值)。 二分类问题里的例子有: 客户会不会买这个产品? 这封邮件是不是垃圾邮件? 这个产品是书还是农产品? 这个评论是消费者写的还是机器人? 多分类问题的例子有: 这个产品是书、电影还是衣服? 这个电影是浪漫戏剧、纪录片或惊悚片? 这个消费者最关系哪类产品? 回归问题的例子有: 明天北京的天气是多少?...
    Read more...

  • 16 Dec 2018 » 使用requests和beautiful soup下载网页数据
  • Python中有很多方便的包,requests和beautiful soup可以很简单将一个网站直接下载下来。 Requests requests是一个非常简单的http库,比urllib2要人性化很多。官网很贴心的,对比了用两个模块来做同一件的数据的代码量。 requests代码样例 import requests r = requests.get('https://api.github.com', auth=('user', 'pass')) print r.status_code print...
    Read more...

  • 05 Feb 2018 » 使用金山云从零开始搭建一个搜索下拉推荐服务
  • 最近折腾了一下从零开始在金山云上搭建一个搜索下拉推荐,这里记录一下相关的流程,感谢未来的架构师丁神提供的咨询服务。 使用的数据是github上的bestbuy的产品数据大概4W+,和丁神讨论一下架构,本身数据量很小,其实直接上mysql就可以,因为是个demo为了扩展性,最终定下来的架构是nginx(用来承载搜索框静态页)+ flask(提供搜索建议的web服务)+ es(后端的数据查询)+ redis(用于缓存查询结果) 搭建相关环境 首先通过ssh登录服务器 ssh root@xxx.xxx.xxx.xxx 安装python3 一般linux服务器上都有安装python,不过都是python2版本,因为马上都要退休了,所以安装一个python3 我用的这台机器上yum,直接用yum安装python36 yum install python36...
    Read more...

  • 13 May 2017 » 服务器脚本开发效率神器jupyter notebook
  • 在本地上写python脚本通常使用的效率工具组合ipython + sublimetext,但是,当需要将本地开发的脚本部署到服务器上时,流程就略显复杂,一般的流程是先通过跳板机ssh上去,再从跳板机ssh到服务器,编写好的脚本则需要两次scp才能上传到服务器上,在服务器上调试脚本和修改脚本也相对麻烦,前者可以用ipython,后者则可以是在本地重新scp两次或者在服务器上通过vim来直接修改服务器文件,可能因为我不习惯这种编程模型一直觉得流程不是那么顺。刚好最近在服务器上打一个jupyter notebook,发现使用notebook会是整个流程顺畅很多,这里记录一下相关的一些经验。 安装python 一般linux服务器上都有安装python,不过版本可能较低,可以自己手动安装最新版本。 一般的流程是wget下载最新的python包,tar xvf解压tar包 cd进入所在目录 ./configure make make install 如果没有sudo权限,则需要直接prefix,比如 ./configure...
    Read more...

  • 12 Oct 2016 » 多维数据可视化
  • 多维数据可视化是指通过一些手段将高维的数据展示在二维的平面中,在进行探索性数据分析及对聚类或分类问题的验证中有着重要的应用。本文将介绍一些常用的多维数据可视化的方法。 首先请出万能的鸢尾花数据。 import pandas as pd data = pd.read_csv('https://raw.github.com/pydata/pandas/master/pandas/tests/data/iris.csv') data.head() 可以看到其中包含5列,前四列是特征,name是分类 SepalLength SepalWidth PetalLength PetalWidth...
    Read more...

  • 19 Sep 2016 » 禅宗三境界-数据分析篇
  • 最近经常听到禅宗三境界,百度了一下典故出处: 佛教禅宗参禅三重境界,常被引申用来形容看待事物的不同境界。 佛教禅宗史书《五灯会元》,唐代禅宗大师青原惟信语: 老僧三十年前未参禅时,见山是山,见水是水。及即至后来,亲见知识,有个入处;见山不是山,见水不是水。而今得个休歇处,依前见山只是山,见水只是水。 这类高度抽象认识论,往往是可以放之四海而皆准的真(zhuang)知(bi)灼(li)见(qi)。回想一下这些年的工作经验,在数据分析领域也是存在这三个阶段 见山是山,见水是水 往往初入职场的数据新人都处于这个阶段,这个阶段的数据新人对业务了解不多,对数据的解读往往只限于数据表现本身而不考虑其背后业务的意义,单纯的解读数据。 见山不是山,见水不是水 随着对业务了解的加深,这个阶段的分析师不仅仅关注数据,而是关注数据背后的业务意义。但是,其实一个数据可以从不同角度解读,如果带有太多的先入之见去解读,也就失去了 数据分析知识发现的作用,或对数据进行过渡解读,或者只是将数据作为验证某种业务经验的工具。 见山只是山,见水只是水 了解了先入之见的危害之后,就会再次回归数据本身,对应的数据分析认识论就是敬畏数据,不过多的去解读数据,而是应该大胆假设小心验证。至此为止,也就完成了认识论的一个否定之否定的螺旋上升过程。 在现实的工作中,真正能够达到第三阶段的是凤毛麟角。最佳的工作状态还是业务人员与数据人员的组合,数据人员从数据角度给到专业分析,业务人员根据业务经验与数据人员共同对分析结论进行修正。
    Read more...