关于本文

 业余玩家的一些学习笔记(哈哈~ 浪起来吧~~~)

 微积分、线性代数、概率论 等知识可以参阅另一篇文章《人工智能

函数

函数正交

 正交是线性代数的概念,是垂直这一直观概念的推广。作为一个形容词,只有在一个确定的内积空间中才有意义。若内积空间中两向量的内积为 0,则称它们是正交的。如果能够定义向量间的夹角,则正交可以直观的理解为垂直。物理中:运动的独立性,也可以用正交来解释

(图片来源:wikipedia.org™,已确认版权为 CC BY 3.0 协议)

级数

级数

 在数学中,一个有穷或无穷的序列 $u_1, u_2, u_3, u_4 \ldots$ 的和 $s=u_1 + u_2 + u_3 + \ldots$ 称为级数。如果序列是有穷序列,其和称为有穷级数;反之,称为无穷级数(一般简称为级数)

格兰迪级数

 格兰迪级数(Grandi´s series),即 $1 − 1 + 1 − 1 + \cdots$,记做 $\sum_{n=0}^{+\infty}{(-1)^n}$。这是一种发散级数。在 1703 年由意大利数学家格兰迪发表,后来荷兰数学家丹尼尔·伯努利和瑞士数学家莱昂哈德·欧拉等人也都曾研究过它。格兰迪级数的欧拉和切萨罗和均为 $\frac{1}2$

 比较简单的一种证法如下(下文 $p$ 进数中也有一段印证):

$S = 1 - 1 + 1 - 1 + \cdots$
$1 - S = 1 - (1 - 1 + 1 - 1 + \cdots) = 1 - 1 + 1 - 1 + \cdots) = S$
$2S = 1$
$S = \frac{1}2$

傅里叶级数

 在数学中,傅里叶级数是把类似波的函数表示成简单正弦波的方式。更正式地说,它能将任何周期函数或周期信号分解成一个(可能由无穷个元素组成的)简单振荡函数的集合,即正弦函数和余弦函数(或者,等价地使用复指数

(图片来源:wikipedia.org™,已确认版权为 CC BY 3.0 协议)

 按照傅里叶的理论,任何周期性变化的信号量,都可以分解成对应的直流分量和许多交流分量的叠加。直流分量:幅值不随时间变化的量(也可以看作信号的时间均值);交流分量,幅值随时间做周期性变化的量

阅读全文 »

什么是 Docker?

Docker™ provides a way to run applications securely isolated in a container, packaged with all its dependencies and libraries.

环境搭建

MacOS

1
$ brew cask install docker

Windows

下载

 从 Toolbox 的 archive 页面找到 DockerToolbox-1.13.1.exe 并下载(官方地址

安装

 注意安装组件的时候,选择 Full installation,其他的均使用默认的选项,即可

配置

代理
1
$ vim ~/.docker/config.json
1
2
3
4
5
6
7
8
9
{
"proxies": {
"default": {
"httpProxy": "socks5://127.0.0.1:1080",
"httpsProxy": "socks5://127.0.0.1:1080",
"noProxy": "*.yuzhouwan.com"
}
}
}
阅读全文 »

介绍

InfluxDB™ is a time series database designed to handle high write and query loads. It is an integral component of the TICK stack. InfluxDB is meant to be used as a backing store for any use case involving large amounts of timestamped data, including DevOps monitoring, application metrics, IoT sensor data, and real-time analytics.

基本概念

DataBase

 类似于传统数据库中的 DataBase 概念

Measurement

 和 OLAP 中广义上的度量概念一致,某些 OLAP 数据库中又称为 metric

Tag

 和 OLAP 中广义上的维度概念一致,某些 OLAP 数据库中又称为 tagKV

Field

 数值

Timestamp

 时间戳

Points

 数据点

Series

 数据点组成的序列

Retention Policy

 数据过期策略,即 TTL

阅读全文 »

关于本文

 本文主要是为了,记录给 Apache Druid / Apache Eagle / Apache Flink / Apache HBase / Apache Kafka / Apache Superset / Apache Zookeeper & Apache Curator / TensorFlow / Alibaba DataX 开源项目贡献代码,尽自己一点绵薄之力的过程

 文章最后,总结了一些经验之谈,期冀能帮助到同样热爱开源、也想成为 PMC 的小伙伴们

阅读全文 »

什么是 JVM?

 A Java Virtual Machine(JVM)is an abstract computing machine that enables a computer to run a Java program.

为什么要有 JVM?

跨平台性

 JVM 的存在,使得 Java 程序 能够轻易地在多平台上移植,基本上脱离了对硬件的依赖性(这也满足了 David Parnas 的 “信息隐藏” 准则)

多语言性

 因为底层 JIT 编译优化、高效 GC、JUC 对多线程并发编程的支持,以及社区中海量成熟的库 等优点,使得很多语言都开发出可运行在 JVM 上的版本

 同时,多语言混合编程成为一种趋势,在需要快速开发、灵活部署 和 针对特定问题的 DSL 等场景下,选择恰当的 JVM-hosted language,可以最大化原有代码的价值

 那么,在日常的开发过程中,究竟应该如何运用 JVM 的知识,来逐步提高实际编程水平呢? 上下而求索后,找到了以下几个层面作为出发点

阅读全文 »