摘要: 首先,在计算机科学中 routine 被定义为一系列的操作,多个 routine 的执行形成一个父子关系,并且子 routine 一定会在父 routine 结束前结束,也就是一个个的函数执行和嵌套执行形成了父子关系。 coroutine 也是广义上的 routine,不同的是 coroutine 阅读全文
posted @ 2022-11-28 17:16 pokpok 阅读(441) 评论(0) 推荐(0) 编辑
摘要: select * from "xxxxx$partitions" 阅读全文
posted @ 2022-05-16 19:49 pokpok 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 如果不使用任何同步机制(例如 mutex 或 atomic),在多线程中读写同一个变量,那么,程序的结果是难以预料的。简单来说,编译器以及 CPU 的一些行为,会影响到程序的执行结果: 即使是简单的语句,C++ 也不保证是原子操作。 CPU 可能会调整指令的执行顺序。 在 CPU cache 的影响 阅读全文
posted @ 2022-04-26 09:48 pokpok 阅读(408) 评论(0) 推荐(2) 编辑
摘要: 在 hive 中如何过滤掉逗号分割的字符串中存在某个值的字符串呢? 假设给定一个表: | col | | | | '1' | | '1,2,3,4,5' | | '1,2,4,5' | | '3,4,5' | 希望过滤掉行中带有 '3' 的数据,最开始的想法是用 string 的 split 产生一 阅读全文
posted @ 2022-04-22 19:38 pokpok 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 文章预先发布于:pokpok.ink 名词解释 移动语义:用不那么昂贵的操作代替昂贵的复制操作,也使得只支持移动变得可能,比如 unique_ptr,将数据的所有权移交给别人而不是多者同时引用。 完美转发:目标函数会收到转发函数完全相同类似的实参。 右值引用:是这两个机制的底层语言机制,形式是 Ty 阅读全文
posted @ 2022-04-19 09:54 pokpok 阅读(366) 评论(2) 推荐(1) 编辑
摘要: 神经元 神经网络由多个神经元组成,其中神经元由几个部分组成:输入、输入权重、输出和激活函数组成,类似于生物神经元的树突、轴突的组成。 神经元的输入由左边的神经元输出 \(x\) 乘以权重 \(w\) 并加和得到,输出的时候,类似于生物神经元的轴突,将神经元的输出通过激活函数才能传送给接下来的神经元。 阅读全文
posted @ 2022-04-10 19:54 pokpok 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 二分类问题 问题定义:给定一些特征,给其分类之一。 假设函数 \(h(x)\) 定义: \[ h(x) = g(\theta^Tx) \] \[ g(z) = \dfrac{1}{1 +e^{-z}} \] 决策边界: 当 \(h(x) >= 0.5\) 的时候,y 更有可能预测为 1。 当 \(h 阅读全文
posted @ 2022-03-23 00:14 pokpok 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 单元线性回归 1、定义假设函数 \(h(x) = \theta_1x + \theta_0\) 2、尝试用样本拟合假设函数,所有样本点到假设函数的距离,其中$m$为样本数量: \(sum = \dfrac{1}{2m} \sum_{1}^{m} (h(x_i) - y_i)^2\) 3、当 sum 阅读全文
posted @ 2022-03-12 14:28 pokpok 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 拉链法的 unordered_map 和你想象中的不一样 根据数组+拉链法的描述,我们很快能想到下面这样的拉链法实现的哈希表,但真的是这样吗?一起看下源码里的实现是怎么样的。 深入STL源码 代码不会骗人的,可以写一个简单的代码研究一下实现,然后通过gdb跟踪执行: #include <vector 阅读全文
posted @ 2022-01-30 16:46 pokpok 阅读(472) 评论(1) 推荐(0) 编辑
摘要: 当需要优化一个程序的时候,我们需要通过测量程序的运行时间来判断程序是不是真的优化成功了,最简单的方法就是记录一下程序运行开始的时间和结束的时间,然后计算两者的差值得到运行的时间,但是如果系统有其他因素干扰怎么办?程序运行的时候,CPU被抢占,导致外部记录的时间增长,就会导致测量的时间不准确。 测量时 阅读全文
posted @ 2022-01-28 14:17 pokpok 阅读(177) 评论(0) 推荐(0) 编辑