
大道至简系列
文章平均质量分 92
用大道至简的哲学观,看懂算法本质
五点钟科技
机器学习、深度学习、自然语言处理、PLC、哲学、国学、音乐、书法……
展开
-
浅谈自然语言处理(NLP)学习路线(一)--- 概述
好了,告一段落,对NLP基础学习路线做个总结:1. 数学基础:重点是函数性质、导数(特别是对矩阵求偏导)、不同概率的定义和性质、数学期望、参数估计、梯度下降法2. 机器学习:重点是LR、Xgboost、HMM、CRF3. 传统文本算法: n-gram、tf-idf、textrank、lda4. 经典神经网络语言模型:LSTM、NNLM、word2vector、fasttext5. 进阶神经网络语言模型:elmo、transformer、gpt、bert。原创 2022-08-19 12:11:08 · 8215 阅读 · 9 评论 -
浅谈自然语言处理(NLP)学习路线(二):N-Gram模型,一文带你理解N-Gram语言模型
你现在在看我的文章,这是一些文字,但是这些文字实质上是以像素点的形式呈现给你的,所以不要以为这些文字是计算机理解的元素,它不过是一些像素点组合出的可视化图像而已。可是我们现在有很多时候不仅仅是想让文字呈现在我们计算机屏幕上这么简单,更多的是想让计算机接收到一些文字信息后能够在它“心里”对这些文字信息进行理解、分析和处理,怎么办呢?这个时候,语言模型就派上用场了。我们知道,计算机接收到的所有类型的信息,本质上都是转化成“0、1”这两个数进行存储或者处理的,语言文字也不例外。原创 2023-03-25 23:09:48 · 2589 阅读 · 7 评论 -
用Python自己写一个分词器,python实现分词功能,隐马尔科夫模型预测问题之维特比算法(Viterbi Algorithm)的Python实现
用python实现一个分词器,基于隐马尔科夫模型HMM预测问题之维特比(viterbi)算法的分词功能python实现。事实上维特比算法属于隐马尔科夫模型的“应用篇”,特别是在NLP的分词领域,维特比算法无处不在。我们先需要根据HMM的学习算法来学习得到一个模型λ=(π,A,B),然后再通过这个模型,利用维特比算法对数据进行预测。本篇基于维特比算法实现一个简单的分词器,有助于大家深入理解。也是利用python实现维特比(viterbi)算法的实战。原创 2023-03-02 10:15:05 · 1852 阅读 · 4 评论 -
隐马尔科夫模型HMM之Baum-Welch算法Python代码实现
隐马尔科夫模型学习问题Baum Welch算法python代码实战原创 2023-02-21 11:18:21 · 2862 阅读 · 4 评论 -
隐马尔科夫模型HMM之前后向算法Python代码实现,包括2个优化版本
利用python实现隐马尔科夫模型HMM中前向算法和后向算法实战原创 2023-02-19 21:14:49 · 1513 阅读 · 0 评论 -
【大道至简】机器学习算法之隐马尔科夫模型(Hidden Markov Model, HMM)详解(3)---预测问题:维特比算法(Viterbi Algorithm)详解及Python代码实现
其实到本篇文章,关于HMM三个基本问题中最难的部分已经在前两篇介绍过了,但第三个问题却又是HMM中最具实际应用价值的,本文即将介绍的维特比算法,不严格的说,实际上都有我们熟悉的影子:概率计算和动态规划,我对该算法的理解是,并不难,但最重要。我尝试着从《统计学习方法》一书的角度出发来构思该算法的讲解,但我发现并不可行,原因是教科书总是喜欢把复杂的问题简单讲,把简单的问题复杂化,但是书中的例子还是值得一品的。学习本算法,强烈建议读者们先行学习HMM的定义以及前两个基本问题,最后好好学一下动态规划的思想。原创 2023-02-12 10:11:17 · 2152 阅读 · 7 评论 -
【大道至简】机器学习算法之隐马尔科夫模型(Hidden Markov Model, HMM)详解(3)---学习问题:Baum-Welch算法推导及Python代码实现
求解含有隐变量的模型,其实就是求解含有隐变量的模型参数估计问题。学过EM算法的同学一定对这句话特别熟,没错,Baum-welch算法本质上就是EM算法,EM算法就是要解决这种含有隐变量的参数估计问题。所以要学懂Baum-welch算法,还是需要先学好EM算法的基础,大家可以参考我写过关于EM算法原理介绍的博客。当然,Baum-welch算法提出的时候,还没有提出EM算法,但是很多教科书基本上都是把EM的学习放在前,Baum-welch算法放在后,因为EM更加通用更加基础。隐马尔科夫模型Python实现原创 2023-02-07 11:09:47 · 2588 阅读 · 3 评论 -
【大道至简】机器学习算法之隐马尔科夫模型(Hidden Markov Model, HMM)详解(2)---计算问题:前向算法和后向算法原理详解公式推导及Python实现
对于后向算法的理解,从定义出发非常重要。我看网上包括很多教学视频,对这部分内容的讲解几乎是一笔带过,基本上都是说:和前向算法类似,只不过这边是反过来计算而已,这里不再多说了,大家自己看书。我觉得这么说是很不负责任的,因为对于大多数数学天赋没那么好的人真的仔细理解后向算法,还是需要花点时间的,如果没有人指点,可能真的就需要费很大劲(我就是)。为了让大伙不再走太多弯路,我接下来尽最大可能把自己已经搞明白的知识给大家分享。原创 2022-12-17 13:10:53 · 3587 阅读 · 5 评论 -
【大道至简】机器学习算法之隐马尔科夫模型(Hidden Markov Model, HMM)详解(1)---开篇:基本概念和几个要素
欢迎各位小伙伴来到本阶段新模型的学习之旅~接下来我要介绍一下一个非常重要应用非常广泛的模型---隐马尔科夫模型(HMM)的相关原理。该模型我会分四篇文章来讲这个模型,本篇为开篇,主要介绍一下隐马尔科夫模型的基本概念以及模型组成的几个重要元素。目录总结一、概念二、隐马尔科夫模型三要素(1)状态序列I、观测序列O(2)状态转移概率矩阵A、观测概率矩阵B(3)初始状态概率向量π三、例子四、观测序列的生成五、总结图1 隐马尔科夫模型图示定义:结构:状态序列以及对应的状态集合Q,以及每个状态互相转换的概率矩阵A;观测原创 2022-12-07 23:13:04 · 2604 阅读 · 2 评论 -
【大道至简】机器学习算法之EM算法(Expectation Maximization Algorithm)详解(附代码)---通俗理解EM算法。
通过上面的分析,我们终于可以总结一下EM算法啦!总的来说,EM算法分为E步和M步:(1)给参数θ即第0步赋初值;(2)如果是第一轮迭代,那么令θ=来计算Q函数;如果是>1轮迭代,则θ的值由上一次M步计算出的θ值决定。由于E步时θ已知,所以只需要计算Q,公式如下:也就是给定θ和已知的观测数据x的条件下,求一下隐变量z的条件概率。(3)根据E步计算出来的Q,按如下公式计算θ:也就是固定Q(z也固定)和已知的观测数据x,算一下θ。(4)重复(3)和(4)直至收敛。原创 2022-10-25 21:21:43 · 26637 阅读 · 39 评论 -
【大道至简】机器学习算法之逻辑回归(Logistic Regression)详解(附代码)---非常通俗易懂!
逻辑回归详细推导,一文让你彻底搞懂逻辑回归LR,附github代码原创 2022-08-10 15:06:50 · 7246 阅读 · 5 评论