自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 Kubeflow Artifact Store简介

artifact作为结果信息展示的工具,主要服务于kubeflow notebook server和kubeflow pipelines,现结合artifact的应用作介绍。Metadatakubeflow artifact store最早称之为metadata store,它的定位是记录和管理kubeflow机器学习工作流中的元数据。想要记录工程中的metadata,你需要使用专用的Metadata SDK,在python中使用pip安装即可:pip install kubeflow-metada

2020-10-30 20:39:42 870 2

原创 使用kubeflow调参工具Katib

调参工具的工作原理是:将深度学习的训练、实验过程以kubeflow任务的形式发布,多次实验迭代会有多个任务发布;目前Katib能支持一些主流算法框架,如tensorflow、mxnet、pytorch、xgboost等。目前Katib调参功能细化为:超参数调节和神经网络结构搜索,开发者可以在kubeflow ui中实现配置和发布调参任务。Hyperparameter Tuning如下图所示,开发人员在ui中设置调参配置有两种方式:对k8s比较熟练的人员可以选择yaml文件配置;不熟练的人员可以选择

2020-10-30 20:30:48 57

原创 使用Kubeflow pipelines

pipelines简介pipelines是一个机器学习工作流的抽象概念,这个工作流可以小到函数的过程、也可以大到机器学习从数据加载、变换、清洗、特征构建、模型训练等多个环节。在kubeflow中,该组件能以ui界面的方式记录、交互、反馈实验、任务和每一次运行。pipelines各流程组件构建成功后,会依据事先定义好的组件依赖关系构建DAG(有向无环图)。在pipelines构建各流程组件前,需要将对应流程的业务代码打包成docker镜像文件(kubeflow中运行业务代码均以容器的方式实现)业务代

2020-10-28 09:50:47 78 1

原创 pipelines sdk简介

pipeline sdk是使用python配合kubeflow pipelines功能的工具包,文档在此进行了简单搬运,如果有想了解更多可以阅读原始文档:https://www.bookstack.cn/read/kubeflow-1.0-en/dc127d6c8622b832.md此外,为了简化用户使用kubeflow pipelines功能,对常用api做了使用封装。常用api简介将一个用dsl.pipeline装饰的工作流方法,编译成一个k8s任务.yaml配置的压缩文件:Compiler.

2020-10-28 09:49:30 56

原创 使用Kubeflow notebook servers

kubeflow中起notebook服务在kubeflow中使用notebook servers功能本质是起一个jupyter lab(当然,你可以选择其他jupyter的其他衍生产品)容器,在容器中起一个jupyter的服务。所以在kubeflow中构建自己的notebook服务,你只需要按照如下步骤即可:第一步:在ui界面中找到notebook servers的子界面第二步:新建个人notebook服务第三步:配置notebook服务notebook服务名称,默认是不能重复的。n

2020-10-28 09:48:09 60

原创 构建docker镜像基本教程

构建自定义kubeflow notebook镜像构建notebook镜像的基本要求,是在镜像的python环境中安装jupyter和notebook 的工具包。下面我以tensorflow/tensorflow:1.12.0-gpu-py3官方的基础镜像为例,构建用户自定义notebook镜像。第一步:下载基础镜像在公司办公网络的环境下,下载基础镜像会比较花时间,可以把下载基础镜像的工作放在晚上。基础镜像作为构建个性化镜像的基础,可以复用。接下来我们的操作是在基础镜像的基础进行的。第二步:构建镜

2020-10-28 09:45:51 27

原创 记一次python在代理环境中使用requests请求服务遇到的坑

坑!!!

2020-10-20 20:38:44 76 2

原创 使用dashboard查看k8s任务和资源使用

dashboard

2020-09-25 21:44:29 169

原创 安装kubeflow

此处为安装kubeflow 1.0.2版本的教程,其他版本仅作为参考。准备工作如果没有配置docker访问外网代理,可以参考离线安装docker配置代理部分如果没有安装kubernetes集群,可以参考离线使用kubeadm安装kubernetes集群下载需要的资源1.从https://github.com/kubeflow/kfctl/releases/下载v1.0.2版本对应的kfctl二进制文件:解压安装包并添加到执行路径:tar -xvf kfctl_v1.0.2-0-ga47628

2020-07-24 21:43:29 892 12

原创 离线使用kubeadm安装kubernetes集群

由于生产机器网络的原因,在这里安装工具和镜像均使用离线的方式环境准备准备至少满足2c1g性能的机器若干1.关闭防火墙systemctl stop firewalldsystemctl disable firewalld2.关闭selinuxsed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/configsetenforce 03.关闭swapswapoff -acp /etc/fstab /etc/fstab_bak

2020-07-24 20:57:46 396 2

原创 离线安装docker

生产服务器访问外网受限,此外使用yum源下载镜像的速度较慢,在此介绍离线安装的方法。第一步:准备docker离线包在这里选择的是官方离线包(docker官方离线包下载地址),在这里可以按自己的需求选择对应的版本。我安装使用的是docker-17.03.2-ce.tgz版本。第二步:准备配置文件和安装脚本为了方便查找,新建路径~k8s/docker,切换到该路径下。新建docker.service系统配置文件[Unit]Description=Docker Application Contain

2020-07-24 20:28:28 146

原创 Spark On Yarn的两种模式解析

使用yarn能对spark的运行资源调动进行动态划分,spark on yarn有yarn-client和yarn-cluster两种模式。这两种模式的作业虽然都运行在yarn上,但是运行方式不一样;下面解析一下这两种模式下提交作业到运行的全过程。运行中涉及到的名词Application: Appliction都是指用户编写的Spark应用程序,其中包括一个Driver功能的代码和分布在集群中多个节点上运行的Executor代码Driver: Spark中的Driver即运行上述Applicatio

2020-05-24 16:41:52 148

原创 jupyter平台中用户如何自定义magic

Magic Command简介Jupyter magic 命令形似%abc(line magic), %%abc(cell magic)我们常用的画图命令%matplotlib就是一种magic命令。magic命令是对jupyter功能的扩展,使用magic能简化在jupyter做实验编写代码工作,解决重复代码操作、新人编写和理解功能模块困难等问题。自定义Magic的方式目前官方推荐的有“...

2020-02-18 11:09:27 177

原创 2019年年终总结

收获1年坚持在博客上整理、记录稍有质量的知识,虽然是月更但是好歹坚持下来了。从python入门到接触大数据,最近开始深度学习入门。所幸找到了职业发展的路径,接下来找准自己的位置深度钻研。遗憾工作第2年工作内容增加了,要学的东西也多了,锻炼时间少了,身体脂肪明显增加了。展望不奢求增加锻炼频次提升塑形效果,维持现有体型、保持身体健康即可。博客技术内容向深度学习倾斜,至于要不要细化方向,暂...

2019-12-31 20:27:00 79

原创 python类中的隐藏方法

python类中的隐藏函数

2019-12-24 15:10:36 729

原创 MLflow机器学习工作流管理使用教程

MLflow简介机器学习不是一个单向的pipeline,而是一个迭代的循环。其中包括四大部分:数据预处理、模型训练、模型部署、数据更新。行业痛点:数据预处理和模型训练都涉及到参数调整,不同参数对应的代码、不同参数对应的效果只能手动记录,这种方式比较费时费力而且不能保证每次记录都保存下来。开发模型和模型部署是两个分开的环节,需要大量的沟通工作以及代码改写以及环境的配置,费时费力。MLflo...

2019-11-28 12:25:48 1274

原创 Spark Streaming任务中的容错机制盘点

spark之checkpoint

2019-11-04 11:30:23 138

原创 Virtualenv 的安装与配置

前言pip上拥有丰富的第三方包,这是使用Python做开发的一个优势,但是在一个 Python 环境下开发时间越久、安装依赖越多,就越容易出现依赖包冲突的问题(使用pyspark做开发时,pandas和numpy包版本冲突给我本人带来不少难忘的回忆)。Python的包只能同时安装一个版本,对一个开发多个复杂项目的环境来说,只有像Java系的Maven库那样,多个版本同时保留,依赖检查延迟到打包时...

2019-09-18 16:53:06 116

原创 python编程规范

说明代码的交互作用不能仅限于人与机器,更应该扩展到人与人,所以才有代码规范这一需求;一段好的代码不仅需要结构简单、功能块分工明确,而且别人能容易读懂。使用Pycharm等 IDE可以设置自己喜欢的代码风格,这种规范好的代码风格可以帮助新手规避掉很多很多常识性错误,本文档在此不做叙述(如果有兴趣可以通读python规范.pdf)。接下就“Imports 导⼊”、“注释”、“命名”、“代码结构”...

2019-06-28 17:12:20 132

原创 Spark DataFrame中使用window 函数报oom错误

故障发生背景和错误日志现有如下任务:多个小表与大表join后新产生的表有很多空值,使用window函数对空值进行分组填充。任务中途中中断,抛出oom错误。截取抛出来的主要的错误日志,日志的内容如下:19/05/16 10:11:39 WARN TaskMemoryManager: leak 32.0 KB memory from org.apache.spark.shuffle.sort....

2019-05-31 23:50:55 667

原创 Python高级运用之装饰器

Python高级运用之修饰器

2019-05-15 09:58:11 125

原创 Spark内存分配和管理模式

本文分为2个部分:第一部分介绍了Spark的内存分配和管理模式,第二部分是第一部分的运用,介绍了Spark UI中显示的Storage Memory含义。内存管理原理在执行Spark任务时,集群会启动Driver和Executor两种JVM进程,两个进程有各自的使命,但是内存管理模式却是一模一样。以下进程的内存管理均以Executor进程为例。进程的内存管理基于JVM,所以默认包括On-He...

2019-05-09 15:33:28 340

原创 Python面向对象中的old-style and new-style classes

old-style and new-style 区分问题的引出Python刚入门者或者因为业务接触Python的同学们,大多从Python3入手(现在很多的规范都是基于3展开)。但是由于历史原因,很多老旧业务的服务还是基于Python2,这就会造成很多不理解2与3版本差异的同学莫名碰到一些问题,old-style and new-style就是面向对象编程时会遇到的一个问题。问题描述子类El...

2019-04-24 19:38:26 320

原创 pyspark dataframe之udf

PySpark UDF概念引出在pandas中自定义函数,通过遍历行的方式,便捷实现工程师的需求。但是对于数据量较大的数据处理,会出现速度过慢甚至超内存的问题。Spark作为替代pandas处理海量数据的工具,参照 pandas udf 定义了名为PandasUDFType的类,通过自定义函数的方式spark处理数据的灵活度和高效率有很大亮点。从spark 1.3到2.3udf函数有row-a...

2019-02-14 11:09:12 8140

原创 Spark DataFrame 与Pandas DataFrame差异

Spark DataFrame 与Pandas DataFrame差异为何使用pyspark dataframepandas dataframe数据结构特性spark dataframe结构与存储特性spark toPandas详解参考文献为何使用pyspark dataframe使用pandas进行数据处理,dataframe常作为主力军出现。基于单机操作的pandas datafram...

2019-01-10 16:10:14 1436

原创 网易2017年暑期实习编程题之赶去公司

赶去公司题目描述:终于到周末啦!小易走在市区的街道上准备找朋友聚会,突然服务器发来警报,小易需要立即回公司修复这个紧急bug。假设市区是一个无限大的区域,每条街道假设坐标是(X,Y),小易当前在(0,0)街道,办公室在(gx,gy)街道上。小易周围有多个出租车打车点,小易赶去办公室有两种选择,一种就是走路去公司,另外一种就是走到一个出租车打车点,然后从打车点的位置坐出租车去公司。每次移动到相...

2017-04-11 09:05:11 382

空空如也

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除