常见I/O模型
堵塞I/O
执行read或write等系统调用时,应用程序会被堵塞

应用程序由用户态陷入内核态,内核检查文件描述符是否可读,存在数据时,OS内核将准备好的数据拷贝给应用程序并交回控制权
一旦执行I/O操作,应用程序会陷入堵塞状态等待I/O操作的结束
非堵塞I/O
进程把一个文件描述符设置为非堵塞时,执行read或write等I/O操作会立刻返回
Keep curious to the world, and do cool things that matter.
执行read或write等系统调用时,应用程序会被堵塞

应用程序由用户态陷入内核态,内核检查文件描述符是否可读,存在数据时,OS内核将准备好的数据拷贝给应用程序并交回控制权
一旦执行I/O操作,应用程序会陷入堵塞状态等待I/O操作的结束
进程把一个文件描述符设置为非堵塞时,执行read或write等I/O操作会立刻返回
加解密使用同一密钥
加密过程:明文通过加密算法和一个密钥加密成不可读的密文
解密过程:接收方使用相同密钥和解密算法解密成明文

今年3.12,刷公众号时看到腾讯技术推了个很有趣的公益活动,借着植树节的名义,活动名也很有意思叫「码上种树」,点开看了下还有奖励,整个页面上只有一个按钮「点我开始种树」,
这个比较简单,就不介绍了,其实最主要是我没有存界面,找不到原始代码了
这题很简单,没有任何运算,答案在pull的结果里,直接发请求提交即可
最近被问到如何在Linux环境下对文件进行批量重命名,仔细想了一下,好像平时也没关注过这个的写法,之前有过类似需求时,作为一个Python开发者,更多地会想到直接用写Python脚本去处理,虽然知道可能可以通过shell脚本或者有直接的Linux命令去做,但一直没试过,决定写这篇文章整理下
1 | cat /proc/version |
Linux version 4.13.0-45-generic (buildd@lgw01-amd64-011) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9)) #50~16.04.1-Ubuntu SMP Wed May 30 11:
针对这个问题,根据以往经验,以及网上搜索相关信息,和自己试验,大概可以通过Linux命令、shell脚本、Python脚本来解决
more >>1 | $ cat /proc/version |
1 | $ tensorflow_model_server -version |
1 | $ locale |
为了方便tensorflow serving的部署,我将tensorflow serving的配置信息以超级笔记模式下「代码块」暂时存在了Mac版印象笔记(Evernote)中,当我从笔记中直接复制内容并通过vim粘贴到tensorflow serving配置文件中时,tensorflow serving启动时报了如下错误提示
more >>给定由\(d\)个属性描述的示例\(\boldsymbol{x}=(x_1;x_2;…;x_d)\),其中\(x_i\)是\(\boldsymbol{x}\)在第\(i\)个属性上的取值,线性模型试图学得一个通过属性的线性组合来进行预测的函数,即
\[f(\boldsymbol{x})=w_1x_1+w_2x_2+…+w_dx_d+b \tag{3.1}\]
一般用向量形式写成
\[f(\boldsymbol{x})=\boldsymbol{w}^T\boldsymbol{x}+b \tag{3.2}\]
其中\(\boldsymbol{w}=(w_1;w_2;…;w_d)\)。\(\boldsymbol{w}\)和\(b\)学得之后,模型就得以确定
给定数据集\(D={(\boldsymbol{x}_1,y_1), (\boldsymbol{x}_2,y_2),…,(\boldsymbol{x}_m,y_m)}\),其中\(\boldsymbol{x}_i=(x_{i1}, x_{i2},…,x_{id}), y_i\in\mathbb{R}\),"线性回归"(linear regression)试图学得一个线性模型以尽可能准确地预测实值输出标记。
我们先考虑一种最简单的情形:输入属性的数目只有一个。为便于讨论,此时我们忽略关于属性的下标,即\(D=\{(x_i,y_i)\}_{i=1}^m\),其中\(x_i\in\mathbb{R}\),对于离散属性,若属性值之间存在"序"(order)的关系,可通过连续化将其转化为连续值;若属性值间不存在序关系,假定有\(k\)个属性值,则通常转化为\(k\)维向量。
线性回归试图学得
more >>学习器的实际预测输出与样本的真实输出之间的差异
可能将训练样本自身的一些特点当做了所有潜在样本都会具有的一般性质,导致泛化性能下降
无法避免,只能缓解,或者减小其风险
指对训练样本的一般性质尚未学好
What does the “yield” keyword do?
To understand what
yielddoes, you must understand what generators are. And before generators come iterables.
为了理解yield的作用,我们必须先理解生成器,而在生成器之前必须先理解迭代器
When you create a list, you can read its items one by one. Reading its items one by one is called iteration:
1
2
3
4
5
6 >>> mylist = [1, 2, 3]
>>> for i in mylist:
... print(i)
1
2
3
当我们创建一个list,我们只能一个个读取list,而挨个读取的这个过程就被称为迭代
mylistis an iterable. When you use a list comprehension, you create a list, and so an iterable:
1
2
3
4
5
6 >>> mylist = [x*x for x in range(3)]
>>> for i in mylist:
... print(i)
0
1
4
mylist就是一个迭代器,当我们使用列表推导时,也就创造了一个list,或者说是一个迭代器
more >>tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent:
meta: false
pages: false
posts:
title: true
date: true
path: true
text: false
raw: false
content: false
slug: false
updated: false
comments: false
link: false
permalink: false
excerpt: false
categories: false
tags: true