学习笔记
文章平均质量分 87
lankuohsing
自动化研究生
展开
-
条件概率相关公式笔记
条件概率P(A∣B)=P(AB)P(B)P(A|B)=\frac{P(AB)}{P(B)}P(A∣B)=P(B)P(AB)P(AB)=P(A∣B)∗P(B)P(AB)=P(A|B)*P(B)P(AB)=P(A∣B)∗P(B)如果B1,B2,⋯ ,BnB_1,B_2,\cdots,B_nB1,B2,⋯,Bn是样本空间Ω\OmegaΩ的一个划分,即B1,B2,⋯ ,BnB_1,B_2,\cdots,B_nB1,B2,⋯,Bn不相容且它们的并集是Ω\OmegaΩ,则对于任意的A有:P原创 2022-04-14 00:40:48 · 1198 阅读 · 0 评论 -
中文分词算法及python代码实现(持续更新中)
文章目录1. 机械分词算法1.1. 正向最大匹配算法参考链接:https://blog.csdn.net/lcwdzl/article/details/78493637代码源码地址:https://github.com/lankuohsing/Study_NLP1. 机械分词算法1.1. 正向最大匹配算法# In[]custom_dict = set(["机械","分词","方法","机械分词方法", "又","叫","基于","字符串","匹配", .原创 2021-12-05 23:13:35 · 3077 阅读 · 0 评论 -
数据结构与算法之原地操作数组相关
1. 在数组中删除符合指定条件的元素,空间复杂度O(1)1.1. leetcode-27. 移除元素给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。思路:用两个指针从起始位置开始往后走,一个j用于记录当前有效位置,另一个i用于遍历数组所有元素。当i指向的元素不需要移除,则放到i处,并让i+1;原创 2021-12-05 20:44:56 · 470 阅读 · 0 评论 -
集成学习之梯度提升树(GBDT)原理详解
文章目录1. 梯度提升(Gradient Boosting)的思想2. gradient boosting的通用算法流程3. 将回归树作为基学习器,得到GBDT算法3.1. 回归树介绍3.2. 将回归树应用到gradient boosting中3.3. GBDT算法流程参考https://www.cnblogs.com/massquantity/p/9174746.html1. 梯度提升(Gradient Boosting)的思想Gradient Boosting和Adaptive Boostin.原创 2021-11-17 23:59:38 · 1024 阅读 · 0 评论 -
集成学习之AdaBoost原理详解
文章目录1. AdaBoost的思想2. 数学定义和推导2.1. 决策推理过程的输出表达式定义2.2. 优化训练过程中的迭代表达式推导2.3. 由迭代过程表达式得到的几个结论2.3.1. 基学习器GM(x)G_M(x)GM(x)2.3.3. 下一轮样本权重wi(M+1)w_i^{(M+1)}wi(M+1)2.3.4. 各基学习器的系数αM\alpha_MαM3. Adaboost流程图参考:https://www.cnblogs.com/massquantity/p/9063033.html1.原创 2021-11-13 23:43:24 · 1553 阅读 · 0 评论 -
通俗理解信息熵
文章目录1. 信息熵的概念2. 信息熵和信息量之间的关系https://zh.wikipedia.org/wiki/%E7%86%B5_(%E4%BF%A1%E6%81%AF%E8%AE%BA)https://www.zhihu.com/question/274997106https://www.zhihu.com/question/274997106/answer/1055696026https://cs.nyu.edu/~roweis/csc310-2005/lectures.html1. .原创 2021-07-28 23:18:52 · 3336 阅读 · 0 评论 -
通俗理解误差、偏差、方差以及它们和过拟合、欠拟合之间的关系.
文章目录0. 引言1. 误差、偏差和方差的数学定义2. 偏差与方差的直观理解3. 偏差、方差与欠拟合、过拟合的关系4. 欠拟合、欠拟合的产生原因及解决方案0. 引言作为一名算法工程师,在利用算法模型解决实际问题时,模型的欠拟合、过拟合问题是无论如何都无法回避的。这两个问题的表象相比很多人都知道,但是涉及到它们背后的产生原因、本质以及解决方法,要说清楚还是不容易的。1. 误差、偏差和方差的数学定义误差(error)的概念有两类,一类是数据本身带来的噪声,一般假设服从均值为0的高斯分布,记为ϵ∼N(0.原创 2021-07-11 23:26:43 · 2319 阅读 · 0 评论 -
数据结构基础——链表相关操作及应用(含python代码,更新中)
文章目录0. 链表的数据结构描述1. 常见操作1.1 删除链表中的结点1.2 合并有序链表1.3. 反转链表众所周知,计算机中的数据结构底层无非是链表(linked list)或者线性表(linear list)。因此,掌握这些基本的数据结构的结构和常用操作是很重要的。本文我们来介绍一下链表的常用操作,主要采用经典算法题的形式来加以呈现说明0. 链表的数据结构描述略1. 常见操作1.1 删除链表中的结点leetcode-237 237. 删除链表中的节点请编写一个函数,使其可以删除某个链表中.原创 2021-07-06 22:17:34 · 280 阅读 · 1 评论 -
二叉树遍历相关算法代码实现
文章目录0. 二叉树的定义:1. 前序遍历1.1. 递归方式前序遍历:1.2. 非递归方式前序遍历2. 中序遍历2.1. 递归方式中序遍历:2.2. 非递归方式中序遍历3. 后序遍历3.1. 递归方式后序遍历:3.2. 非递归方式后序遍历完整版python代码见https://github.com/lankuohsing/DataStructureInPython/blob/main/tree/binary_tree/binary_tree.py欢迎给star!0. 二叉树的定义:Python版实.原创 2021-05-07 20:34:09 · 290 阅读 · 0 评论 -
神经网络量化压缩学习笔记
文章目录0. 前言1. 量化压缩方法简介2. 量化压缩原理2.1. 定点数与浮点数https://jackwish.net/2019/neural-network-quantization-introduction-chn.htmlhttps://zhuanlan.zhihu.com/p/1496596070. 前言近年来,基于神经网络的深度学习在图像处理、自然语言处理、语音识别等领域取得了显著效果。一般情况下,一个神经网络模型越大(一般指参数量越大),模型的拟合能力更强,准确度越高。这将进一步导.原创 2021-02-15 22:33:26 · 936 阅读 · 0 评论 -
TensorFlow/PyTorch中张量(Tensor)的底层存储方式
文章目录0. 张量(Tensor)基本概念回顾1. tensor在计算机内存中的存储方式0. 张量(Tensor)基本概念回顾张量(Tensor)其实就是多维数组,类似于NumPy里面的np.array。这里的维度,更准确的讲法应该叫阶(rank),这是为了跟向量(vector)的维度区分开的。vector其实就是rank为1的张量,我们说一个vector是n维的其实是说它有n个分量(标量)。而如果张量的维度(阶)是n维的,并不是说它有n个标量分量,而是说在表示这个张量时需要用n个坐标轴。每个轴上都.原创 2021-02-03 00:39:25 · 1934 阅读 · 2 评论 -
从logistic回归到神经网络——理论与实践
1.logistic回归详解2.损失函数的选取2.1.最大化后验概率与极大似然估计3.梯度下降方法求解最优的参数www和bbb3.1.前向传播3.2.反向传播4.示例代码1.logistic回归详解logistic回归模型是用来解决二分类问题的,因此我们将首先在概率的框架下描述什么是分类问题。分类问题的一般描述如下图所示: 图1.1 分类问题的...原创 2018-06-06 11:59:43 · 1381 阅读 · 1 评论 -
pytorch教程之自动求导机制(AUTOGRAD)-从梯度和Jacobian矩阵讲起
文章目录0. Jacobian矩阵参考资料https://pytorch.org/tutorials/beginner/blitz/autograd_tutorial.html#sphx-glr-beginner-blitz-autograd-tutorial-pyhttps://zhuanlan.zhihu.com/p/29923090https://zhuanlan.zhihu.com/p/656095440. Jacobian矩阵在pytorch和TensorFlow中,是不支持tens.原创 2021-01-13 23:48:46 · 1764 阅读 · 2 评论 -
雅思口语学习笔记
文章目录0. Overview1. Part 1: Yourself, family, work and your interests1.1. What is your job?1.2. Why did you choose that job?2. Part 2: Speak about a particular topic3. The examiner judges your language ability with further questions based on the topic in pa.原创 2021-01-04 22:42:12 · 329 阅读 · 0 评论 -
An Introduction to Text Representation
文章目录1. Definition of Text Classification Task and Its Application Scenarios2. Text Representation2.1. Word Representation2.1.1. Discrete Word Representation2.1.1.1. One-hot Encoding2.1.1.2. Frequency Encoding1. Definition of Text Classification Task and .原创 2020-12-13 23:39:11 · 243 阅读 · 0 评论 -
雅思写作学习笔记
文章目录1. 图表类作文1.1. 八种典型的图表1.2. 数据分析必备词汇1.3. 数据分析必备句式1.4. Sample Article1.4.1. The graph shows rates of smoking in men and women in the UK from 1960 to 2000.1.4.1.1. 视频教程里面的范文1.4.1.2. www.ielts-exam.net里面的范文1.4.1.3. 我写的范文1.4.2. The graph below shows the numb.原创 2020-12-08 00:04:33 · 3438 阅读 · 0 评论 -
TensorFlow学习笔记之tensorboard
文章目录1. anaconda多个环境下tensorboard的安装和使用1. anaconda多个环境下tensorboard的安装和使用如果anaconda中有一个环境,例如叫tf_1_15,里面安装了tensorboard,那么在base环境里面列出所有包的list里面是没有tensorboard的,所以在base里面无法使用tensorboard(无论是anaconda命令行还是cmd命令行,无论是不是在tensorboard.exe的路径下),但是如果你尝试在base环境下安装tensorb.原创 2020-12-06 15:32:42 · 141 阅读 · 0 评论 -
TensorFlow学习笔记之DataSet中shuffle,batch和repeat的用法详解
话不多说,看代码代码git链家:https://github.com/lankuohsing/TensorFlowStudy/blob/master/dataset_usage/shuffle_batch_repeat.py# -*- coding: utf-8 -*-"""Created on Fri Dec 4 21:08:13 2020@author: lankuohsing"""import tensorflow as tfimport numpy as np# In[]原创 2020-12-05 16:48:01 · 1605 阅读 · 0 评论 -
算法基础之回溯与深度优先遍历
文章目录1. 回溯算法的三要素2. 回溯算法的例子2.1. 求子集问题 “回溯法”也称“试探法”。它是从问题的某一状态出发,不断“试探”着往前走一步,当一条路走到“尽头”,不能再前进(拓展出新状态)的时候,再倒回一步或者若干步,从另一种可能的状态出发,继续搜索,直到所有的“路径(状态)”都一一试探过。回溯算法可以看做是深度优先遍历算法的一种。深度优先搜索可以采用递归(系统栈)和非递归(手工栈)两种方法实现。往往需要记录整颗搜索树。回溯算法一般不用记录整颗搜索树。1. 回溯算法的三要素回.原创 2020-09-29 00:12:47 · 1993 阅读 · 2 评论 -
算法基础之递归与动态规划
文章目录1. 递归算法的适用场景2. 递归的三要素3. 递归的缺点4. 递归算法的例子4.1. Fibonacci数列4.1.1. 解法一:原始的递归不做任何优化4.1.2. 带备忘录的递归算法1. 递归算法的适用场景当一个大规模的问题与小规模的问题有着相同的形式,解决大规模的问题和解决小问题的方法是同一个方法时,就可能可以用递归的算法来解决。递归算法的特点为:一个函数递归调用本身(由后向前),通过递归调用来缩小问题的规模,直到组中遇到退出条件,再由前向后组装出目标解。2. 递归的三要素明确函数.原创 2020-09-19 00:32:55 · 1466 阅读 · 2 评论 -
机器学习之特征离散化
文章目录1. 特征离散化的作用2. 特征离散化可以引入非线性的证明李沐曾说过,模型是使用离散特征还是连续特征,其实是一个“海量离散特征+简单模型” 同 “少量连续特征+复杂模型”的权衡。既可以离散化用线性模型,也可以用连续特征加深度学习。就看是喜欢折腾特征还是折腾模型了。通常来说,前者容易,而且可以n个人一起并行做,有成功经验;后者目前看很赞,能走多远还须拭目以待。1. 特征离散化的作用在实际工作中,需要使用譬如LR这种线性分类器的时候,往往需要将特征离散化成0/1特征,之后再进行模型训练。这样的好.原创 2020-09-15 23:08:05 · 947 阅读 · 0 评论 -
Sequence to sequence入门详解:从RNN, LSTM到Encoder-Decoder, Attention, transformer
文章目录1. 前馈神经网络的缺点2. 循环神经网络RNN2.1. RNN的基本结构与数学定义2.2. 输入输出长度的讨论2.2.1. nx=ny=nn_x=n_y=nnx=ny=n2.2.2. nx=n,ny=1n_x=n,n_y=1nx=n,ny=12.2.3. nx=1,ny=nn_x=1,n_y=nnx=1,ny=n2.2.4. nx=n,ny=mn_x=n,n_y=mnx=n,ny=m,Encoder-Decoder模型3. RNN的复杂变种3.1. GRU(Gated Recur.原创 2020-09-15 22:50:33 · 1728 阅读 · 1 评论 -
数据结构基础之栈与队列
文章目录1. Java中的栈Stack1.1. Stack的应用之括号匹配2. Java中的队列Queue1. Java中的栈Stack栈是Vector的一个子类,它实现了一个标准的后进先出的栈。序号方法描述1boolean empty()测试堆栈是否为空。2Object peek( )查看堆栈顶部的对象,但不从堆栈中移除它。3Object pop( )移除堆栈顶部的对象,并作为此函数的值返回该对象。4Object push(Object element.原创 2020-09-09 23:05:57 · 139 阅读 · 0 评论 -
机器学习之概率图模型
文章目录0. 背景介绍1. 隐马尔科夫模型(Hidden Markov Model, HMM)1.1. HMM的数学定义1.2. HMM的实际应用问题描述1.3. 马尔科夫随机场(Markov Random Field, MRF)2. 条件随机场(Conditional Random Field, CRF)2.1. CRF的数学定义2.2. 特征函数的例子参考资料:《机器学习》——周志华https://blog.csdn.net/continueoo/article/details/7789358.原创 2020-08-26 22:47:29 · 503 阅读 · 0 评论 -
算法基础之二分查找
二分查找文章目录二分查找1.二分查找的一般场景2.二分查找的简单场景-升序不重复数组查找指定元素3.二分查找思想的高阶应用(待更新)源代码链接:https://github.com/lankuohsing/LeetCode-Java/tree/master/LeetCodeInJava/src/binary_search1.二分查找的一般场景给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target,返回target在nums中的下标;如果目标值不存在,则返回-1;如果目标值原创 2020-07-21 23:10:47 · 214 阅读 · 0 评论 -
RNN,GRU,LSTM及其变种详解
文章目录1. 普通神经网络的缺点2. RNN的基本结构与数学表达参考Coursera-Sequence Modelshttps://www.coursera.org/learn/nlp-sequence-models/notebook/X20PE/building-a-recurrent-neural-network-step-by-step1. 普通神经网络的缺点对于不同的样本,输入...原创 2020-04-27 00:23:24 · 921 阅读 · 0 评论 -
假设检验之t检验详解
假设检验之t检验详解文章目录假设检验之t检验详解0. 背景故事1. 从一个例子引入t检验的思路3. t分布参考:https://blog.csdn.net/Tonywu2018/article/details/838978060. 背景故事t检验又叫学生t检验(Student‘s t test),它是由20世纪爱尔兰的一家啤酒厂-健力士酒厂的一名员工(戈斯特)采用笔名“Student”发...原创 2020-03-20 00:02:18 · 10104 阅读 · 0 评论 -
假设检验入门详解
假设检验入门详解文章目录假设检验入门详解0. 背景1. 从一个硬币的例子来引入假设检验2. P值参考:https://cosx.org/2010/11/hypotheses-testing/0. 背景在实际生产生活中,我们经常需要对一些逻辑推理进行真假判断,例如如果你打了某种疫苗P,就不会得某种流行病Q如果一个疑似病人隔离了14天还没确诊,那他就没有被感染新冠肺炎在统计学里面,...原创 2020-03-18 23:40:27 · 990 阅读 · 0 评论 -
统计学基础之样本方差和总体方差
统计学基础之样本方差与总体方差文章目录统计学基础之样本方差与总体方差1. 方差(variance)的定义2. 样本方差3. 总体方差公式的有偏性证明4. 样本方差公式分母为n-1的推导参考资料:https://www.cnblogs.com/zzdbullet/p/10087196.html1. 方差(variance)的定义方差是用来度量随机变量和其数学期望(均值)之间的偏离程度的一个...原创 2020-03-14 00:17:36 · 20990 阅读 · 1 评论 -
排序模型入门详解(未完待续)
排序模型入门详解文章目录排序模型入门详解1. 排序模型的应用场景point-wise排序模型pair-wise排序模型Ranknethttps://yq.aliyun.com/articles/181. 排序模型的应用场景当商家需要向用户提供多个商品供选择时,往往会遇到这个问题:如何将商品按照一定的顺序呈现给用户,以便使用户能够尽可能地完成购买流程?这就涉及到对商品的排序,用到的模型称排...原创 2019-10-31 00:13:52 · 5697 阅读 · 0 评论 -
隐马尔科夫模型(HMM)入门详解
隐马尔科夫模型(HMM)文章目录隐马尔科夫模型(HMM)1. HMM的数学定义1. HMM的数学定义对于i=1,2,⋯ ,ni=1,2,\cdots,ni=1,2,⋯,n时刻,HMM中有两组变量序列,用x={x1,x2,⋯ ,xn},xi∈{o1,o2,⋯ ,oM}x=\{x_1,x_2,\cdots,x_n\},x_i\in \{o_1,o_2,\cdots,o_M\}x={x1,x2...原创 2019-10-29 00:14:22 · 430 阅读 · 0 评论 -
NLP基础之词向量(Word2Vector)
NLP基础之词向量(Word2Vector)文章目录NLP基础之词向量(Word2Vector)0. 前言1. one-hot向量2. SVD分解3. Word2Vec3.1. 语言模型——n-gram3.2. Continuous Bag of Words Model(CBOW)0. 前言与图像或相比,语言是一种经过人类智力处理后的、更为抽象的数据对象,因此nlp相比cv相比有许多独特之处...原创 2019-10-28 23:02:14 · 1819 阅读 · 1 评论 -
奇异值分解(SVD)推导证明与应用
SVD分解推导证明文章目录SVD分解推导证明0. 线性代数与矩阵基础知识回顾0.1. 正交向量组0.2. 正交矩阵0.3. 正定矩阵0.4. 特征值1. 奇异值分解(Singular Value Decomposition)1.1. svd的数学描述1.2. svd的证明0. 线性代数与矩阵基础知识回顾本文讨论的范围实数空间,不涉及复数空间,因此各种术语和定理都以实空间下的名称为准,当然也...原创 2019-10-15 22:55:48 · 4910 阅读 · 2 评论 -
神经网络中的优化方法
1. Mini-batch decent方法1.1. Batch vs. mini-batch1.2. Choosing mini-batch size2. 指数加权平均方法(exponentially weighted averages)2.1. Bias Correction(偏差修正)3. Gradient descent with momentum(动量梯度下降...原创 2018-06-15 22:22:31 · 678 阅读 · 0 评论 -
RNN教程
@(深度学习)[神经网络, RNN]RNN教程RNN教程Introduction to RNNIntroduction to LSTMLSTM VariantsIntroduction to RNN在传统的前馈神经网络中,我们假定所有的输入(和输出)相互之间都是独立的。因此,前馈神经网络不能记住最近的历史训练信息,于是在处理序列模型时效果不佳。循环神经网络的提出就是为了解决这个问题的(Jord原创 2018-02-02 22:08:25 · 739 阅读 · 0 评论 -
链表带环的问题研究及代码实现
链表带环的问题研究及代码实现[TOC] 注:如无特别说明,本文中的链表均含有附加表头结点first1. 如何判断链表是否有环?思路是让两个指针slow和fast同时从链表头出发遍历链表,fast的速度是slow的两倍(为简单起见我们可以让slow每次走一个节点,fast每次走两个节点),若slow和fast相遇,则说明有环。代码如下:bool::Linked_List_with_Loop::isL原创 2017-09-03 00:24:08 · 439 阅读 · 0 评论 -
机器学习之感知机与SVM详细推导
感知机与SVM详细推导原创 2017-07-28 01:10:50 · 2390 阅读 · 0 评论 -
机器学习之logistic回归
@(机器学习)[回归]logistic回归在《机器学习中的线性回归模型》一章中,我们学习了如何使用线性模型进行回归学习。如果要将线性模型用来分类,就要用到该章结尾介绍的广义线性模型了。 logistic回归模型采用logistic函数来将线性回归产生的预测值z=wTx+bz=\boldsymbol{w}^T\boldsymbol{x}+b转化为一个接近0或1的yy值; y=11+e−z(1)y...原创 2017-06-28 00:30:12 · 488 阅读 · 0 评论 -
机器学习之线性回归模型
@(机器学习)[回归]线性回归模型(本章内容是后续logistic回归和softmax回归的基础) 给定数据集D={(x1,y1),(x2,y2),…,(xm,ym)}D=\{(\mathbf{x}_1,y_1),(\mathbf{x}_2,y_2),\dots ,(\mathbf{x}_m,y_m)\},其中xi={xi1;xi2;…;xid}\mathbf{x}_i=\{x_{i1};x_{i原创 2017-06-27 23:20:01 · 375 阅读 · 0 评论 -
参数估计之最大似然估计入门详解
参数估计之最大似然估计(此文为后续学习softmax函数等内容提供基础) 基本思路:对于离散总体,设有样本观测值x1,x2,⋯,xnx_1,x_2,\cdots ,x_n,我们写出该观测值出现的概率,它一般依赖于某个或某些参数,用θ\theta表示,将该概率看成θ\theta的函数,用L(θ)L(\theta)表示,称为似然函数: L(θ)=P(X1=x1,⋯,Xn=xn;θ)(1)L(\the原创 2017-06-27 11:34:26 · 1397 阅读 · 0 评论