epoch

Istio polit-agent & envoy启动流程

六眼飞鱼酱① 提交于 2020-08-06 02:35:10
开篇 通过上一篇 Istio Sidecar注入原理 文章可以发现,在应用提交到kubernate部署时已经同时注入了Sidecar应用。 细心的话应该还可以发现,除了注入了 istio-proxy 应用外,另外还有注入一个 istio-init 的 Init Containers 。接下来一起来看看在这两个注入的容器中分别都有做一些什么操作。 istio-init istio-init init 容器 用于设置 iptables 规则,以便将入站/出站流量通过 sidecar 代理。初始化容器与应用程序容器在以下方面有所不同: 它在启动应用容器之前运行,并一直运行直至完成。 如果有多个初始化容器,则每个容器都应在启动下一个容器之前成功完成 我们可以看下sleep对应的pod kubectl describe pod sleep-54f94cbff5-jmwtf Name: sleep-54f94cbff5-jmwtf Namespace: default Priority: 0 Node: minikube/172.17.0.3 Start Time: Wed, 27 May 2020 12:14:08 +0800 Labels: app=sleep istio.io/rev= pod-template-hash=54f94cbff5 security.istio.io

[转]用深度学习给黑白照片上色

坚强是说给别人听的谎言 提交于 2020-08-05 20:37:33
用深度学习给黑白照片上色 觉得有用的话,欢迎一起讨论相互学习~ 转载自 https://www.jianshu.com/p/ab1a003f2275#4 真诚感谢简书博主氧化反应的分享,让我学习到了很多! 深度学习里面有很多看起来很简单但是实际却有大用场的算法。Autoencoder作为其中的一种就是。作为一种无监督学习的手段,autoencoder在维度灾难里为数据降维有着深远的意义。 什么是Autoencoder呢?我大概的理解是这样的,比如说我们提取一张500x500的彩色图片的时候,按照每个像素来算就有500x500x3(RGB颜色)=750000个像素,这么多的像素就得对应这么多的权重,如果再是大一点的数据那训练的时候用的资源就海了去了。但是,图片里每一个像素都是有用的么?不尽然,比如我想要一个模型,来感知一张人脸是开心还是不开心,除了面部的那些像素,其余的很多像素都是浪费的,或者说对判别人的表情不是那么重要的,而且这些有用的像素分布在一个三维的空间里,就像一大袋米里面的几颗绿豆,这种稀疏性也会给训练带来不必要的麻烦。那我怎么能把图中的信息浓缩起来?用极少甚至一个维度的向量就能表示最重要的信息呢? Autoencoder就是很好的一个工具。给一个图。 假设我们用cnn的方法对一张图做autoencoding, 大家知道cnn网络是提取图里的有效信息

Tensorflow实现ResNet50残差神经网络,进行图像分类

拜拜、爱过 提交于 2020-08-05 09:03:04
在图像分类领域内,其中的大杀器莫过于Resnet50了,这个残差神经网络当时被发明出来之后,顿时毁天灭敌,其余任何模型都无法想与之比拟。我们下面用Tensorflow来调用这个模型,让我们的神经网络对Fashion-mnist数据集进行图像分类.由于在这个数据集当中图像的尺寸是28*28*1的,如果想要使用resnet那就需要把28*28*1的灰度图变为224*224*3的RGB图,我们使用OpenCV库可以很容易将图像进行resize。 首先我们进行导包: import os,sys import numpy as np import scipy from scipy import ndimage import tensorflow as tf import matplotlib.pyplot as plt from tensorflow.keras.applications.resnet50 import ResNet50 from tensorflow.keras.preprocessing import image from tensorflow.keras.applications.resnet50 import preprocess_input, decode_predictions from PIL import Image import random 加载数据集:

Callback API

三世轮回 提交于 2020-08-04 23:46:34
Callback API 用于跟踪epoch期间各种状态的回调函数。主要有6个类: 1. mxnet.callback. module_checkpoint ( mod , prefix , period=1 , save_optimizer_states=False ) [source] 参数: mod:BaseModule的子类。需要做checkpoint的module prefix:字符串,该checkpoint文件的前缀 period:在做checkpoint之前需要等多少个epoch,默认为1 save_optimizer_states:布尔型,表明是否保存优化器状态用于继续训练 返回: callback:callback函数,可被作为iter_end_callback参数传递到fit函数里。 2. mxnet.callback. do_checkpoint ( prefix , period=1 ) 这个callback函数用于每隔几个epoch来保存以下模型checkpoint,每个checkpoint由几个binary files组成:一个模型描述文件和一个参数(权重和偏置)文件。模型描述文件名字为prefix-symbol.json,参数文件名字为prefix-epoch_number.params 参数: prefix:同上 period:整型,可选

深度学习趣谈:什么是迁移学习?(附带Tensorflow代码实现)

戏子无情 提交于 2020-08-04 15:11:47
一.迁移学习的概念 什么是迁移学习呢?迁移学习可以由下面的这张图来表示: 这张图最左边表示了迁移学习也就是把已经训练好的模型和权重直接纳入到新的数据集当中进行训练,但是我们只改变之前模型的分类器(全连接层和softmax/sigmoid),这样就可以节省训练的时间的到一个新训练的模型了! 但是为什么可以这么做呢? 二.为什么可以使用迁移学习? 一般在图像分类的问题当中,卷积神经网络最前面的层用于识别图像最基本的特征,比如物体的轮廓,颜色,纹理等等,而后面的层才是提取图像抽象特征的关键,因此最好的办法是我们只需要保留卷积神经网络当中底层的权重,对顶层和新的分类器进行训练即可。那么在图像分类问题当中,我们如何使用迁移学习呢?一般使用迁移学习,也就是预训练神经网络的步骤如下; 1.冻结预训练网络的卷积层权重 2.置换旧的全连接层,换上新的全连接层和分类器 3.解冻部分顶部的卷积层,保留底部卷积神经网络的权重 4.同时对卷积层和全连接层的顶层进行联合训练,得到新的网络权重 既然我们知道了迁移学习的基本特点,何不试试看呢? 三.迁移学习的代码实现 我们使用迁移学习的方法来进行猫狗图像的分类识别,猫猫的图像在我的文件夹里如下图所示: 然后导包: import tensorflow as tf from tensorflow import keras import matplotlib

【OCR技术系列之八】端到端不定长文本识别CRNN代码实现

五迷三道 提交于 2020-07-29 09:10:34
CRNN是OCR领域非常经典且被广泛使用的识别算法,其理论基础可以参考我 上一篇文章 ,本文将着重讲解CRNN代码实现过程以及识别效果。 数据处理 利用图像处理技术我们手工大批量生成文字图像,一共360万张图像样本,效果如下: 我们划分了训练集和测试集(10:1),并单独存储为两个文本文件: 文本文件里的标签格式如下: 我们获取到的是最原始的数据集,在图像深度学习训练中我们一般都会把原始数据集转化为lmdb格式以方便后续的网络训练。因此我们也需要对该数据集进行lmdb格式转化。下面代码就是用于lmdb格式转化,思路比较简单,就是首先读入图像和对应的文本标签,先使用字典将该组合存储起来(cache),再利用lmdb包的put函数把字典(cache)存储的k,v写成lmdb格式存储好(cache当有了1000个元素就put一次)。 import lmdb import cv2 import numpy as np import os def checkImageIsValid(imageBin): if imageBin is None: return False try: imageBuf = np.fromstring(imageBin, dtype=np.uint8) img = cv2.imdecode(imageBuf, cv2.IMREAD_GRAYSCALE) imgH,

Curve-GCN:图卷积网络用于活动轮廓演变

﹥>﹥吖頭↗ 提交于 2020-07-29 02:28:55
CNN做分割需要处理数据量很大的grid数据,需要对所有点的label进行预测,而且传统CNN并不会结合点与点之间的联系。 使用图结构建模分割轮廓或分割曲面,然后采用GCN,仿照传统的deformable model的方法对曲线或曲面进行迭代演变实现分割 ,是一种可行的方案。如何将曲线、曲面和它的演变过程,建模到GCN框架中?本文提到的论文提供了一种实现思路。 本文直接相关的应用场景虽然不涉及医学图像分割,但是其思想,比如3D组织的分割和组织编辑,都可以借助该文章的思路。deformation model的方法在医学图像分割领域应用是非常广泛的,本文本质就是deformation model和GCN的结合。 论文:Fast Interactive e Object Annotation with Curve-GCN 网址: https://arxiv.org/pdf/1903.06874.pdf ​ arxiv.org github: https://github.com/fidler-lab/curve-gcn ​ github.com 摘要 本文提出的新框架,通过使用图卷积网络(GCN)同时预测边界上每个顶点的演变方向。 端到端训练框架和模型; 通过该方法,可实现:画一个多边形,快速完成物体的轮廓标注。 Curve-GCN比现有的方法性能都要好,包括PSP-DeepLab

【OCR技术系列之八】端到端不定长文本识别CRNN代码实现

拈花ヽ惹草 提交于 2020-07-28 11:12:34
CRNN是OCR领域非常经典且被广泛使用的识别算法,其理论基础可以参考我 上一篇文章 ,本文将着重讲解CRNN代码实现过程以及识别效果。 数据处理 利用图像处理技术我们手工大批量生成文字图像,一共360万张图像样本,效果如下: 我们划分了训练集和测试集(10:1),并单独存储为两个文本文件: 文本文件里的标签格式如下: 我们获取到的是最原始的数据集,在图像深度学习训练中我们一般都会把原始数据集转化为lmdb格式以方便后续的网络训练。因此我们也需要对该数据集进行lmdb格式转化。下面代码就是用于lmdb格式转化,思路比较简单,就是首先读入图像和对应的文本标签,先使用字典将该组合存储起来(cache),再利用lmdb包的put函数把字典(cache)存储的k,v写成lmdb格式存储好(cache当有了1000个元素就put一次)。 import lmdb import cv2 import numpy as np import os def checkImageIsValid(imageBin): if imageBin is None: return False try: imageBuf = np.fromstring(imageBin, dtype=np.uint8) img = cv2.imdecode(imageBuf, cv2.IMREAD_GRAYSCALE) imgH,

深度学习趣谈:什么是迁移学习?(附带Tensorflow代码实现)

只谈情不闲聊 提交于 2020-07-28 09:44:44
一.迁移学习的概念 什么是迁移学习呢?迁移学习可以由下面的这张图来表示: 这张图最左边表示了迁移学习也就是把已经训练好的模型和权重直接纳入到新的数据集当中进行训练,但是我们只改变之前模型的分类器(全连接层和softmax/sigmoid),这样就可以节省训练的时间的到一个新训练的模型了! 但是为什么可以这么做呢? 二.为什么可以使用迁移学习? 一般在图像分类的问题当中,卷积神经网络最前面的层用于识别图像最基本的特征,比如物体的轮廓,颜色,纹理等等,而后面的层才是提取图像抽象特征的关键,因此最好的办法是我们只需要保留卷积神经网络当中底层的权重,对顶层和新的分类器进行训练即可。那么在图像分类问题当中,我们如何使用迁移学习呢?一般使用迁移学习,也就是预训练神经网络的步骤如下; 1.冻结预训练网络的卷积层权重 2.置换旧的全连接层,换上新的全连接层和分类器 3.解冻部分顶部的卷积层,保留底部卷积神经网络的权重 4.同时对卷积层和全连接层的顶层进行联合训练,得到新的网络权重 既然我们知道了迁移学习的基本特点,何不试试看呢? 三.迁移学习的代码实现 我们使用迁移学习的方法来进行猫狗图像的分类识别,猫猫的图像在我的文件夹里如下图所示: 然后导包: import tensorflow as tf from tensorflow import keras import matplotlib

pointnet++之scannet/train.py

混江龙づ霸主 提交于 2020-07-28 08:42:54
1.作者可能把scannet数据集分成了训练集和测试集并处理成了.pickle文件。 2.在代码运行过程中,作者从.pickle文件中读出训练集1201个场景的x、y、z坐标和测试集312个场景的x、y、z坐标。 3.考虑把点存到.txt文件中,用cloudcompare可视化一下。 2--地板 3--椅子 8--沙发 20--靠枕 单独存入训练数据到txt文件 : TRAIN_DATASET = scannet_dataset.ScannetDataset( root=DATA_PATH , npoints=NUM_POINT , split= 'train') for i in range(len(TRAIN_DATASET.scene_points_list)): filename = '' .join([ " TRAIN_DATASET_ " ,str(i+1), ' .txt ' ]) np.savetxt(filename, TRAIN_DATASET.scene_points_list[i],fmt = " %.8f " , delimiter= ' , ' ) 单独存入训练数据的标签到txt文件 : for i in range(len(TRAIN_DATASET.semantic_labels_list)): filename = '' .join([ "