https://mengqi92.github.io Blog posts | RSS Feed 2025-05-26T16:59:29.836Z Feed for Node.js Welcome to this blog posts! https://mengqi92.github.io/logo.png https://mengqi92.github.io/favicon.png All rights reserved 2025, Ibas <![CDATA[Ein 和 Eout,假设模型以及开放思维]]> https://mengqi92.github.io/posts/Ein-Eout 2015-10-13T01:32:18.000Z <![CDATA[机器学习公开课中 $E_{in}$和$E_{out}$分别表示模型假设对样本(已知)的错误率和对真实情况(未知)的错误率。这篇是一些发散的思考。]]> 2015-10-13T01:32:18.000Z <![CDATA[复数的几种表示形式]]> https://mengqi92.github.io/posts/complex 2015-10-06T14:47:16.000Z <![CDATA[研究傅里叶变换的过程中经常要和复数打交道,经常会遇到 $e^{ix}$ 这种形式。这里就总结一下复数的直角坐标、极坐标,以及复指数表示形式,也有对欧拉公式的直观解释,以便更好地理解傅里叶变换。]]> 2015-10-06T14:47:16.000Z <![CDATA[我对卷积的理解]]> https://mengqi92.github.io/posts/convolution 2015-10-06T20:05:00.000Z <![CDATA[在学习机器学习和图像处理的过程中,经常会遇到卷积这个概念。我每次遇到这个概念都有点似懂非懂的样子。有时候清楚它的直观解释,但又搞不清公式中是如何体现的。究其原因,还是我没有完全搞懂这个概念。 维基百科上有一个动态图来演示这个概念,但对于我来说还是有些复杂。于是自己在网上找了很多文章来研究,终于有了比较直观的印象,这里就趁热把我理解的解释一下,作为总结。]]> 2015-10-06T20:05:00.000Z <![CDATA[Gabor 特征总结]]> https://mengqi92.github.io/posts/gabor 2015-10-11T17:02:00.000Z <![CDATA[Gabor 特征是一种可以用来描述图像纹理信息的特征,Gabor 滤波器的频率和方向与人类的视觉系统类似,特别适合于纹理表示与判别。 Gabor 特征主要依靠 Gabor 核在频率域上对信号进行加窗,从而能描述信号的局部频率信息。 说到 Gabor 核,不能不提到傅里叶变换。正是靠傅里叶变换,我们才能将信号转换到频率域,才能让Gabor核在频率域去加窗。而在原本的空间域中,一个 Gabor 核实际上就是一个高斯核与正弦波调制的结果,可以看做是高斯核应用在了正弦波的频域部分。 上面说的还是比较笼统,下面我们一步一步介绍Gabor核是怎么对信号「加窗」的。]]> 2015-10-11T17:02:00.000Z <![CDATA[Git 仓库大扫除]]> https://mengqi92.github.io/posts/git-housekeeping 2018-09-18T23:09:02.000Z <![CDATA[Git 可以说是目前最受欢迎的版本管理工具了,很多团队也都在用它来管理自己的项目代码。在一个多人协作的项目中,往往采用的是一个分支一个特性进行开发,随着每天的代码提交、合并,仓库中会有越来越多的冗余分支。这么多死分支不仅会掩盖真正在使用的分支,而且也为管理带来不便。如果你像我一样,也经常被淹没在 `git branch` 或 `git branch -r` 返回的分支大海中,那么,就是时候考虑给你的 git 仓库做一次大扫除了!]]> 2018-09-18T23:09:02.000Z <![CDATA[Haskell 学习笔记 1:基本语法与类型类]]> https://mengqi92.github.io/posts/haskell-notes-1-basic-and-typeclass 2018-05-09T22:52:14.000Z <![CDATA[自己 Haskell 学习之旅的一个小小总结。]]> 2018-05-09T22:52:14.000Z <![CDATA[Git 小技巧 - 忽略不想要提交的本地修改]]> https://mengqi92.github.io/posts/hide-files-from-git 2020-07-17T20:22:32.000Z <![CDATA[在一个多人协作的 Git 仓库里,有些情况下远程仓库中可能会存放一些 IDE 或者 Build 工具的配置文件,以方便所有参与的同学获得一致的体验。当然这些文件会从大局出发,加入的通常都是比较通用的配置项,不一定能完全满足你个人的需求。一旦你自己对这些文件做了个人定制,它们就会被 Git 识别为本地修改,不但本地的 `git status` 或 `change list` 一直会进行恼人的提醒,而且每次 `git add` 文件时还要小心翼翼的避开。那么,有没有方法告诉 Git 我们可以忽略这些文件的本地修改呢?]]> 2020-07-17T20:22:32.000Z <![CDATA[线性代数拾遗(一):线性方程组、向量方程和矩阵方程]]> https://mengqi92.github.io/posts/linear-algebra-1 2016-05-03T22:55:27.000Z <![CDATA[线性代数在各大理工科,乃至经济金融领域的使用之广泛,毋庸置疑。 一直以来,我虽也知道线性代数的重要,但从内心上其实一直是犯怵的(尤其是学习论文、算法中,基本只要看到对方把算法向量化之后就蒙圈了),当年在学校学习过程中很多也是靠着死记硬背过来的,对它的直观意义一直都没能有很好的理解。 最近,这么一本书进入了我的视线:《线性代数及其应用》,听书名感觉平平,但只翻了几页就感觉十分过瘾,仿佛打通了任督二脉。以往很多死记硬背的知识点在这本书的解释下,变成了可以直观推导出来的结果。这本书不仅对线性代数的基本概念阐述地很直观形象,而且还有许多现实生活中的应用,特别是经济、物理、计算机领域,真正让人领略到线性代数作为现代数学的魅力。 我特将自己的读书总结和体会记录于此,也是希望借此加深自己的理解。]]> 2016-05-03T22:55:27.000Z <![CDATA[线性代数拾遗(二):线性方程组的解集及其几何意义]]> https://mengqi92.github.io/posts/linear-algebra-2 2016-05-14T00:00:00.000Z <![CDATA[上一章我们讲到三种等价形式:线性方程组、向量方程和矩阵方程。由于这三者之间的等价关系,我们解决现实问题时可以自由选取其中任意一个作为模型。我个人认为,线性方程组是最「质朴」的形式;向量方程则是与几何建立了关系,这将方便我们进行更直观的推理;矩阵方程则是向量方程的一种「封装」,是向量方程的一种抽象,它将具体的向量形式隐藏,提供给我们一个简洁的 API 形式——矩阵。未来将要介绍的很多概念就是基于对这一层封装的研究,如果到时候我们发现某个概念理解有困难,不妨转换思路到向量方程或线性方程组的形式进行分析。此外,我们之前还进行了关于线性方程组解集的讨论,在这章我们对其进一步探讨。]]> 2016-05-14T00:00:00.000Z <![CDATA[线性代数拾遗(三):线性变换以及矩阵的意义]]> https://mengqi92.github.io/posts/linear-algebra-3 2016-05-20T21:11:00.000Z <![CDATA[上一章我们讨论了齐次和非齐次两种线性方程组的解集,以及它们的几何意义。由齐次线性方程组,我们引入了零空间的概念;而由非齐次线性方程组,我们引入了列空间的概念。这两个空间目前是我们理解线性方程组的桥梁,未来还会对这些空间进行更进一步的讨论。在这之前,让我们先来研究一下矩阵的意义。之前的两章中,矩阵是在矩阵方程中出现的,当时我们理解它的意义为「对向量的一种封装」,也就是一种「数据」的形式理解矩阵的。这一章,我们引入矩阵的另一层意义:`线性变换`。]]> 2016-05-20T21:11:00.000Z <![CDATA[线性代数拾遗(四):线性方程组的应用]]> https://mengqi92.github.io/posts/linear-algebra-4 2016-06-20T00:00:00.000Z <![CDATA[前面几章,我们回顾了一遍线性方程组和矩阵的一些概念。线性代数的最原始问题是解线性方程组,为了解决这个问题,我们引入了向量和矩阵,继而对矩阵的一些特性也进行了一番分析,然后又发现矩阵不但可以表示数据,也可以表示变换。然而,这些概念是如何应用于现实生活呢,实际生活中有哪些线性方程组的例子?这一章我们来介绍一些线性代数的实际应用。总体上来说,牵涉到多个变量的相互约束,而且这些约束是「线性」的问题时,就有可能通过建立线性方程组从而得到解。]]> 2016-06-20T00:00:00.000Z <![CDATA[线性代数拾遗(五):矩阵变换的应用]]> https://mengqi92.github.io/posts/linear-algebra-5 2016-06-22T00:00:00.000Z <![CDATA[我们知道,矩阵不仅可以封装数据,还可以表示线性变换,那这一章就来介绍一下矩阵变换在现实生活中的应用。]]> 2016-06-22T00:00:00.000Z <![CDATA[线性代数拾遗(六):特征值与特征向量]]> https://mengqi92.github.io/posts/linear-algebra-6 2016-07-01T00:00:00.000Z <![CDATA[上一章最后,我们引入了`马尔可夫链`。`马尔可夫链`简单来说就是一个个状态组成的链,其中每个状态只于前一个状态有关。然而,除了这个简单定义之外,`马尔可夫链`还有一个有趣的性质:`平稳分布`。要解释`平稳分布`是什么,我们先从一个例子讲起。]]> 2016-07-01T00:00:00.000Z <![CDATA[Logistic 回归]]> https://mengqi92.github.io/posts/logistic-regression 2015-10-05T14:50:00.000Z <![CDATA[Andrew Ng 机器学习课程笔记 - Logistic 回归]]> 2015-10-05T14:50:00.000Z <![CDATA[个人财务 101 - 回报率]]> https://mengqi92.github.io/posts/personal-finance-101-rate-of-return 2020-07-19T20:30:36.000Z <![CDATA[作为经济社会的一员,我们必不可少地需要掌握投资理财的知识和技能。然而遗憾地发现,个人财务方面免费靠谱的中文资料比较匮乏,对于我这种几乎零基础的自学者来说,很难找到免费系统的对一些基础概念的解释。后来发现了 [Investopedia](https://www.investopedia.com) 这个宝藏,不仅有全面的词条,而且很多概念的解释都有公式和例子搭配,十分方便自学。因此特将学习笔记记录于此,希望能帮助到其他和我有同样困扰的小伙伴。]]> 2020-07-19T20:30:36.000Z <![CDATA[个人财务 101 - 用 Python 计算 NPV]]> https://mengqi92.github.io/posts/personal-finance-101-xnpv 2024-01-25T11:24:24.641Z <![CDATA[净现值 NPV 可以用来表示未来现金流在当前时刻的折现值。它是一个很方便的值,利用它,我们可以排除通货膨胀率(或者备选投资回报率)的干扰,将跨越时间的投资现金流投影到此时此刻,是真正收益还是亏损,看得清清楚楚。此外,NPV 的计算也能帮助我们理解内部回报率(IRR)的计算。这一篇,我们就尝试一下通过代码计算 NPV。]]> 2021-02-23T22:27:19.000Z <![CDATA[《统计思维:程序员数学之概率统计》读书摘录]]> https://mengqi92.github.io/posts/think-statistics-note 2015-10-03T15:20:00.000Z <![CDATA[《统计思维:程序员数学之概率统计》读书摘录]]> 2015-10-03T15:20:00.000Z <![CDATA[愿望思维]]> https://mengqi92.github.io/posts/wishful-thinking 2016-06-23T15:32:58.000Z <![CDATA[程序员的天敌是复杂度。从小的方面看,我们需要面对算法的复杂度,即如何用尽量少的开销实现一个计算过程;从大的方面看,我们需要面对系统的复杂度,即如何将一个现实中的复杂问题用各种计算模块相互搭配,组成一个系统来解决。如何控制软件开发中的复杂度,是计算机专业一直以来的热点话题。总的来说,解决系统复杂度,我们有几个武器:抽象、模块化、解耦合等等,我们今天介绍同样好用的武器:愿望思维。]]> 2016-06-23T15:32:58.000Z