随机算法部分复习总结

随机算法:算法步骤往往非常简单,但是要验证其有效性,需要很多数学知识。往往实现简单,但是设计复杂。

这个学期的『随机算法』课程收获非常大,不仅巩固了之前所学的算法知识,还对复杂度分析、概率论都有了更加深入的了解,还学习到了利用随机性打破复杂问题求解的下界的方法。在准备考试的同时,写下这篇文章留给读者和未来的自己看,希望能让大家有所收获。

阅读更多
信息隐藏基础总结

哈工大《信息隐藏基础》总复习。

阅读更多
微博表情数据爬取

由于百度人工智能比赛的需要,我们需要爬取新浪微博的微博数据,得到带表情的微博,将数据进行适当地处理,便于后续深度学习模型的训练使用。本文章用到的所有源代码请见 https://github.com/upupming/weiboAPI 。注意本文是一个探索过程,并不是一个总结。

阅读更多
哈工大 2019 春编译原理考试总结

大学的考试所剩不多,而现在的自己也懂得了凡事做笔记的好处,不仅能促进自己做得更好,还能记录自己所做过的事情,不做过后即忘之人。记录一下今天的编译原理考试。

考试科目 考试时间 考试教室
编译原理 2019 年 5 月 18 日
15:45 - 17:45
正心 12

阅读更多
Windows 下 Git SSH 连接方式配置 Socks 代理

最近从 GitHub clone 仓库速度极慢,遂查阅资料解决之。本文主要介绍 Git 使用 SSH 克隆时如何走 Socks 代理,因为使用 HTTPS 克隆的话目前基本上很容易找到资料,比如 Using a socks proxy with git for the http transport | Stackoverflow

阅读更多
随机算法作业 2

随机算法作业 2,主要是『球和箱子模型』的相关题目。

阅读更多
科学上网原理与方案

这次给大家分享一下自己平时『科学上网』的一些经验,主要为了:

  1. 理解 GFW 的工作原理,从而引出相关对策
  2. 分享一些解决方案,常用工具等等
阅读更多
切尔诺夫界、鞅

之前老师讲过两个不等式

  1. 马尔科夫不等式

    P(Xt)E(X)tP(X \ge t) \le \frac{E(X)}{t}

  2. 切比雪夫不等式

    Y=[XE(X)]2Y = [X-E(X)]^2

    P(Yt2)E(Y)t2=D(X)t2P(Y \ge t^2) \le \frac{E(Y)}{t^2} = \frac{D(X)}{t^2}

随机变量偏离它的期望一个给定的值的概率,被称为偏差的尾概率(tail probability)。尾概率的计算方式除了利用已知条件直接计算以外,还有很多『模板』可以使用,就包括:

  1. 马尔科夫(Markov)不等式
  2. 切比雪夫(Chebyshev)不等式
  3. 切尔诺夫(Chernoff)界

简单来说尾概率就是 P(X>t)P(X > t) 的范围主要由计数计算概率法和利用数字特征计算的方法。

这篇文章将详细介绍切尔诺夫界,以及鞅的相关概念和应用。

  • 切尔诺夫界:『独立随机变量的和』的分布的尾概率的一般的界,通过矩生成函数得到,有『切尔诺夫型』、『指数形式』尾概率界等。
  • 鞅:对不能抽象为『独立随机变量的和』的应用场景,鞅可以得到随机变量偏离期望的程度的界。
阅读更多
小工具:算数编码 npm 库

最近花了 4 天时间写了一个算数编码的库 arithmetic-coding,算是自己开发的第一个比较规范的 npm 库,在此分享详一些相关的经验,希望能帮助到朋友们。

ari-coding-test.gif
file-size-before-and-after-compress

阅读更多
科学上网小插曲

这几天网络出了一点小问题,又访问不了谷歌啦,因为花了比较多的时间解决这个问题,所以特地在这里分享一下。

阅读更多
随机算法常用不等式

随机算法常用不等式,持续更新中。

阅读更多
随机算法习题 1

随机算法里面的 Las Vegas 算法、Monte Carlo 算法、姚期智不等式等等的习题。

随机算法分类-3种不同的随机算法.png

阅读更多
2019 美赛 MCM A 题总结

2019 年数学建模,从 1.25 到 1.29 这 4 天零 3 个小时的时间里,我们组三人一行合作,顺利完成了 A 题『真实世界的虚构龙』的建模。整个过程收获很大,主要是这几个方面:

  1. 合作。这次的合作非常成功,写作、建模、写代码三人齐头并进,少了任何一个人都是不行的。
  2. 建模。如何建模,如何查找文献,吸收前人的思想,以前我很少考虑,这次从学长身上学到了一些经验。
  3. 写代码。从这个学期学习机器学习、随机过程时只是会用一下 numpy 的矩阵计算,用 matplotlib 画简单的图,到现在 5 天基本掌握 numpymatplotlibsympyscipy 的核心思想,运用自如。
  4. 数学。这学期学的数学(机器学习、随机过程)让我对数学有了更深刻的认识,现在通过数学建模,这些认识更加深刻。
阅读更多
概率论基础

本文总结了概率论的基础知识,主要是一些定义。

阅读更多
行列式

行列式的物理(几何)意义、计算方式、拉普拉斯展开证明等等。

阅读更多
特征值和特征向量

特征值、特征向量、特征根相关知识。

阅读更多
傅里叶变换、{能量,功率,互}谱密度、白噪声随机过程

一篇文章详细搞懂傅里叶变换的数学推导及其本质、应用等等。

阅读更多
逻辑回归

本文是根据逻辑回归实验总结的数学推导和实验结果。

阅读更多
KaTeX Test with hexo-theme-melody

Why KaTeX\KaTeX

  1. Much more faster than MathJax.
  2. No issues such as #93, #108.

How to configure KaTeX\KaTeX

Change your melody.yml to load KaTeX\KaTeX css:

katex:
enable: true
cdn:
css: https://cdn.jsdelivr.net/npm/[email protected]/dist/katex.min.css

To use KaTeX\KaTeX in melody, you need to uninstall your old hexo render, and then install hexo-renderer-markdown-it-plus:

# Replace `hexo-renderer-kramed` with `your installed renderer`
# You can check your installed renderer in your package.json
npm un hexo-renderer-kramed --save
# install `hexo-renderer-markdown-it-plus`
npm i @upupming/hexo-renderer-markdown-it-plus --save
阅读更多
小程序开发经验总结

本文主要介绍了小程序客户端、服务器端开发(RESTful API)的相关经验。

阅读更多
微信小程序语言切换(国际化)

微信小程序对没有对多语言的支持,不过我们可以自行加入。

在实现过程中,主要考虑到如下几点:

  1. 语言是全局变量,一旦修改语言,其它页面应该立即作出变化。
  2. 保存用户选择的语言,用户下次重新打开小程序能够恢复用户的选择。
阅读更多
信息安全导论基础知识

本文记录了哈工大信息安全概论课基础知识点。

阅读更多
Abstraction Functions and Rep Invariants

This is an easy-to-understand note for Reading 13: Abstraction Functions & Rep Invariants.

阅读更多
软件的多维度视图

软件构造(software construction)的核心就是从不同角度审视软件系统,做到在各方面的兼顾。先要搞清楚我们要关注的点,才有软件构造可言。

软件构造视图主要分为 Build-time 视图和 Run-time 视图。他们又分为了 Monment 和 Peroid 两部分,每部分都要考虑到 Code-level 和 Component-level 的细节。

阅读更多
Java 设计模式 (2)

本系列主要介绍了常用的面向复用的设计模式,包括创建型模式(Creational Patterns)、结构型模式(Structural Patterns)和行为型模式(Behavioral Patterns)。

23 个经典设计模式
阅读更多
Java 设计模式 (1)

本系列主要介绍了常用的面向复用的设计模式,包括创建型模式(Creational Patterns)、结构型模式(Structural Patterns)和行为型模式(Behavioral Patterns)。

23 个经典设计模式
阅读更多
Notes for MIT 6.031 Locks and Synchronization

This is an easy-to-understand note for Reading 21: Locks and Synchronization.

Exercises are very important, do not skip them. On the contrary, you can read this article in an exercises-driven way if you just want to review the key ideas.

阅读更多
Notes for MIT 6.031 Thread Safety

This is an easy-to-understand note for Reading 20: Thread Safety.

Exercises are very important, do not skip them. On the contrary, you can read this article in an exercises-driven way if you just want to review the key ideas.

阅读更多
Notes for MIT 6.031 Concurrency

This is an easy-to-understand note for [Reading 19: Concurrency][1].

Exercises are very important, do not skip them. On the contrary, you can read this article in an exercises-driven way if you just want to review the key ideas.

阅读更多
Java UML 类图、Delegation

本文定义了一个 Java UML 标准,同时详细分析了各种 Delegation 及其 UML 表示。

阅读更多
管理 Git 仓库内的子仓库

本文主要介绍了在一个仓库内部克隆另外一个仓库,后续该如何进行管理。

阅读更多
GitHub Pages 自定义域名已支持 https,不必再依赖 Cloudflare

2018 年 5 月 1 日 GitHub Blog 宣布增加了 Github Pages 对自定义域名的 https 支持

阅读更多
java try-catch 示例

异常被捕获后,程序是否会继续执行 try-catch 块后的语句?

__答案:__会。

阅读更多
Hexo 博客美化、SEO优化、Travis CI 自动化持续集成构建

欢迎 Fork 我的博客@GitHub

这阵子我把 hexo 博客新换了一个主题 melody,主要就是为了让博客更加美观、简洁。换好主题之后发现有好多可以继续提升的地方,主要包括图标美化、 SEO 优化、自动构建这三个方面。

阅读更多
Gradle + Travis CI 学习笔记

本文主要介绍了 Gradle 的使用,同时对相应的用于持续集成构建的 travis.yml 文件配置进行解读。

阅读更多
解决 Unchecked cast from Object to Edge

对于从Object到泛型的类型转换,遇到警告Type safety: Unchecked cast from Object to Edge,解决方案是修改转换的类型为通配符类型:

Edge<?> other = (Edge<?>) otherObject;

具体分析见下文。

阅读更多
文章翻译:The Nature of Research

文章来自Connecting with Cornell,文中的 Introduction 、 Summary 、 Conclusion 是笔者自己加的。

启示:研究是一项有意思的工作,你身处其中会收获很多知识与欣喜,也会体会到责任的重大,努力的做一个合格的研究人员吧。


作者:Joseph A. Burns (Vice Provost, Physical Sciences and Engineering)
阅读更多
文章翻译:Blurring disciplinary boundaries

文章来自Science,由于本人翻译水平有限,仅供参考;若有错误之处(肯定不少),还请读者不吝赐教。

作者: Gordon McBean, Alberto Martinelli
Science 2017年11月24日

阅读更多
Hexo配置遇到的问题及解决

我的 hexo 博客 hello world,探索一些小问题。

阅读更多