- 博客(54)
- 收藏
- 关注
原创 统计学习方法第十八章——概率潜在语义分析
18.2 概率潜在语义分析的算法生成模型的对数似然函数是:L=∑i=1M∑j=1Nn(wi,dj)logP(wi,dj)=∑i=1M∑j=1Nn(wi,dj)log[∑k=1P(wi∣zk)P(zk∣dj)P(dj)]=∑i=1M∑j=1Nn(wi,dj)[logP(dj)+log(∑k=1P(wi∣zk)P(zk∣dj))]=∑i=1M∑j=1Nn(wi,dj)logP(dj)+∑i=1M∑j=1Nn(wi,dj)log(∑k=1P(wi∣zk)P(zk∣dj))\begin{aligned}L&
2022-05-06 14:48:06
237
原创 统计学习方法第十六章——主成分分析
式子(16.3)和(16.4)的推导由式子(16.2)和Σ=cov(x,x)=E[(x−μ)(x−μ)T]\Sigma=\operatorname{cov}(\boldsymbol{x}, \boldsymbol{x})=E\left[(\boldsymbol{x}-\boldsymbol{\mu})(\boldsymbol{x}-\boldsymbol{\mu})^{\mathrm{T}}\right]Σ=cov(x,x)=E[(x−μ)(x−μ)T]得var(yi)=E[(yi−E(yi))(y
2022-05-03 13:56:56
655
原创 统计学习方法第十一章——条件随机场
11.1 概率无向图模型11.1.1 模型定义式子(11.3)推导补充P(Yv,YO∣YW)=P(Yv∣YW,YO)P(YO∣YW)=P(Yv∣YW)P(YO∣YW)\begin{aligned}P(Y_v,Y_O|Y_W)&=P(Y_v|Y_W,Y_O)P(Y_O|Y_W)\\&=P(Y_v|Y_W)P(Y_O|Y_W)\end{aligned}P(Yv,YO∣YW)=P(Yv∣YW,YO)P(YO∣YW)=P(Yv∣YW)P(YO∣YW)两边
2022-04-29 19:16:48
603
原创 统计学习方法第十章——隐马尔可夫模型
10.2 概率计算算法10.2.1 直接计算法P(I∣λ)=P(i1,i2,…,iT∣λ)=P(iT∣i1,i2,…,iT−1,λ)P(i1,i2,…,iT−1∣λ)P(I \mid \lambda)=P\left(i_{1}, i_{2}, \ldots, i_{T} \mid \lambda\right)=P\left(i_{T} \mid i_{1}, i_{2}, \ldots, i_{T-1}, \lambda\right) P\left(i_{1}, i_{2}, \ldots, i_{T
2022-04-29 14:44:45
385
原创 统计学习方法第八章——AdaBoost
8.2 AdaBoost算法的训练误差分析对该不等式证明的补充说明,先证前部分。当G(xi)≠yiG(x_i)\neq y_iG(xi)=yi时,说明分类错误,yi和f(xi)y_i和f(x_i)yi和f(xi)其中一个大于0,其中小于0,因此yif(xi)<0y_if(x_i)<0yif(xi)<0,因而exp(−yif(xi))>1exp(-y_if(x_i))>1exp(−yif(xi))>1,所以前部分证明完毕。接下来补充后半部分的证明
2022-04-26 17:05:07
289
原创 统计学习方法第七章——支持向量机
7.1线性可分支持向量机和硬间隔最大化7.1.1 线性可分支持向量机给定线性可分训练集,通过间隔最大化或等价地求解相应的凸二次规划问题学习得到的分离超平面为w∗⋅x+b∗=0w^*\cdot x+b^*=0w∗⋅x+b∗=0以及相应的分类决策函数f(X)=sign(w∗⋅x+b∗=0)f(X)=sign(w^*\cdot x+b^*=0)f(X)=sign(w∗⋅x+b∗=0)称为线性可分支持向量机。7.1.2 函数间隔和几何间隔首先要知道点到超平面w⋅x+b=0w\cdot x+b
2022-04-26 17:03:02
465
原创 统计学习方法第二章——感知机
2.1 感知机模型形如f(X)=sign(w⋅x+b)f(X)=sign(w\cdot x+b)f(X)=sign(w⋅x+b)的函数称为感知机,其中w和b为感知机模型参数,w叫作权值,b叫作偏置,w⋅xw\cdot xw⋅x表示w和x的内积。sigh是符号函数,即sign(x)={+1,x⩾0−1,x<0\operatorname{sign}(x)= \begin{cases}+1, & x \geqslant 0 \\ -1, & x<0\end{cases}sig
2022-04-26 17:01:22
393
原创 中缀表达式转后缀表达式_简单实现
本篇博客源于自己在做王道考研数据结构复习书的习题,只介绍解法,不说原理哦~(原理我也不知道)先看一道简单的的题目:将中缀表达式a/b+(c∗d−e∗f)/ga/b+(c*d-e*f)/ga/b+(c∗d−e∗f)/g转换成后缀表达式,当然用手来推,还是相对简单的,那怎么设计程序来自动实现呢?思想如下:从左到右开始扫描中缀表达式:遇到数字时,加入后缀表达式:遇到运算符时:若为'(',则入栈;若为')',则依次把栈中的运算符加入后缀表达式,直到出现'(',从栈中删除'(';若为除括号外的其他
2021-03-23 20:17:59
570
原创 Wide&Deep模型
Wide & Deep Learning for Recommender Systems论文链接:https://arxiv.org/pdf/1606.07792.pdf动机:在CTR预估任务中利用手工构造的交叉组合特征来使线性模型具有“记忆性”,使模型记住共现频率较高(frequent co-occurrence)的特征组合,往往也能达到一个不错的效果,且可解释性强。但这种方式有着较为明显的缺点:特征工程成本太高。对于未曾出现过的特征组合,权重系数为0,无法进行泛化。所以为了加强模型
2021-03-04 22:27:08
446
1
原创 Transformer翻译
Attention is all you needAbstract主流的序列转换模型基于复杂的递归或卷积神经网络,其中包括一个编码器和一个解码器。表现最好的模型还通过注意力机制连接编码器和解码器。我们提出了一个新的简单的网络框架,即——Transformer,它完全基于注意力机制,丢弃了recurrence和卷convolutions。在两个机器翻译任务上的实验表明,这些模型有着更好的表现,同时具有更高的可并行性,并且所需的训练时间大大减少。我们的模型在WMT 2014 English-to-Germa
2021-02-19 23:48:02
830
原创 使用TensorBoard遇到的一些坑
如果是打开一个终端,然后直接在命令行下面输入tensorboard --logdir=runs这个时候就会报错,错误如下:原因在于,你并没有到当前目录下:所以需要先cd到当前工作目录下,在运行上述代码,比如说我到代码文件在这:我就得先:cd documents/code/notebook/learn_Pytorch这个时候在输入:tensorboard --logdir=runs然后打开http://localhost:6006/就可以正常使用了...
2021-01-31 13:40:55
2139
原创 灰度图像增强部分
本篇博客简要介绍线性、分段线性变换和直方图均衡化灰度变换空域增强是指在由像素组成的空间直接对像素进行增强的方法,可表示为。dst(x,y)=T[src(x,y)]dst(x,y) = T[src(x,y)]dst(x,y)=T[src(x,y)]简单解释下,dst(x,y)dst(x,y)dst(x,y)是增强后的图像,src(x,y)src(x,y)src(x,y)是增强前的图像,而T(⋅)T(\cdot)T(⋅)是增强的操作,举个简单的例子,T(m)=2mT(m)=2mT(m)=2m,就.
2020-12-06 20:51:59
463
原创 @HandlerChain(file=“handler-chain.xml“) 报错找不到文件
博主今天遇到下面这个问题,也是苦恼了很久,最后总算是找到解决方法了。把hander-chain.xml复制到对应项目到targrt下面所对应的包,这样将能运行了,不会报错误了,可能是编译器不会去解析xml文件,而解析了java文件。因此缺失了xml文件。...
2020-11-23 23:13:15
761
原创 百面机器学习笔记(更新ing~~~)
第一章 特征工程01 特征归一化 Q:为什么需要对数值类型的特征做归一化? A:对数值类型的特征做归一化可以将所有的特征都统一到一个大致相同的数值区间内。最常用的方法主要有以下两种。线性函数归一化Xnorm=X−XminXmax−XminX_{norm} = \frac{X-X_{min}}{X_{max}-X_{min}}Xnorm=Xmax−XminX−Xmin其中X为原始数据,Xmax、XminX_{max}、X_{min}Xmax、Xmin分别为数据最大值和数.
2020-11-21 09:58:09
374
原创 【读书笔记】Progit——起步
什么是版本控制?版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。本地版本控制系统许多人习惯用复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间以示区别。 这么做唯一的好处就是简单,但是特别容易犯错。 有时候会混淆所在的工作目录,一不小心会写错文件或者覆盖意想外的文件。为了解决这个问题,人们很久以前就开发了许多种本地版本控制系统,大多都是采用某种简单的数据库来记录文件的历次更新差异。其中最流行的一种叫做 RCS,现今许多计算机系统上都还看得到它的踪影。
2020-10-27 22:11:45
217
原创 【学习笔记】统计学习方法——无监督学习概论
无监督学习的基本原理 无监督学习是从无标注的数据中学习数据的统计规律或者说内在结构的机器学习,主要包括聚类、降维、概率估计。无监督学习可以用于数据分析或者监督学习的前处理。 无监督学习使用无标注数据 U={x1,x2,⋯ ,xN}U=\left\{x_{1}, x_{2}, \cdots, x_{N}\right\}U={x1,x2,⋯,xN} 学习或训练,其中 xi,i=x_{i}, i=xi,i= 1,2,⋯ ,N,1,2, \cdots, N,1,2,⋯,N, 是样本 (实例),由特征
2020-10-27 22:10:58
704
原创 【学习笔记】统计学习方法——条件随机场
摘要: 条件随机场(Conditional Random Field,CRF)是自然语言处理的基础模型,广泛应用于中文分词、命名实体识别、词性标注等标注场景。下面通过一个小问题来引入: 假设你有许多小明同学一天内不同时段的照片,从小明提裤子起床到脱裤子睡觉各个时间段都有(小明是照片控!)。现在的任务是对这些照片进行分类。比如有的照片是吃饭,那就给它打上吃饭的标签;有的照片是跑步时拍的,那就打上跑步的标签;有的照片是开会时拍的,那就打上开会的标签。问题来了,你准备怎么干?一个简单直观的办法就是,不管
2020-10-27 22:09:55
277
原创 【学习笔记】统计学习方法——聚类方法
摘要: 聚类是针对给定的样本,依据它们特征的相似度或距离,将其归并到若干个“类”或“簇”的数据分析问题。一个类是样本的一个子集。直观上,相似的样本聚集在相同的类,不相似的样本分散在不同的类。这里,样本之间的相似度或距离起着重要作用。聚类的基本概念首先定义一个矩阵X用来表示n个样本的m个属性。X=[xij]m×n=[x11x12⋯x1nx21x22⋯x2n⋮⋮⋮xm1xm2⋯xmn]X = [x_{ij}]_{m\times n}=\begin{bmatrix}x_{11} & x_{12
2020-10-27 22:07:33
427
原创 Netbeans通过maven创建web项目一直卡在下载jar包
Maven是当前流行的项目管理工具,但官方的库在国外经常连不上,连上也下载速度很慢。国内oschina的maven服务器很早之前就关了。所以这里通过添加阿里云的镜像。首先来到安装netbeans的安装目录,如何在搜索框中,搜索settings.xml文件如下图所示然后用记事本打开或者其它编辑器打开,都行。这里我用vscode打开的。同样按Ctrl+F搜索mirros。没添加之前是这个样子的。然后再中间插入<mirror> <id>alimaven<
2020-10-14 20:32:35
790
原创 idea部署Tomcat,启动成功了,但是页面出现404
来说一个折磨了我几个小时的一个小问题,我在idea中Tomcat启动成功了,但是页面却显示404。百度了很久,最后得出了答案。首先选择你要启动的服务器,然后点击圈中的那个最下面只能是根目录,也就是 / 。...
2020-09-27 23:51:25
5366
3
原创 金融风控-贷款违约预测
**摘要:**赛题以金融风控中的个人信贷为背景,要求选手根据贷款申请人的数据信息预测其是否有违约的可能,以此判断是否通过此项贷款,这是一个典型的分类问题。赛题以预测用户贷款是否违约为任务,数据集报名后可见并可下载,该数据来自某信贷平台的贷款记录,总数据量超过120w,包含47列变量信息,其中15列为匿名变量。为了保证比赛的公平性,将会从中抽取80万条作为训练集,20万条作为测试集A,20万条作为测试集B,同时会对employmentTitle、purpose、postCode和title等信息进行脱敏。比赛
2020-09-14 16:26:31
4627
1
原创 【学习笔记】统计学习方法——HMM
摘要: 隐马尔可夫模型(hidden Markov model,HMM)是可用于标注问题的统计学习模型,描述由隐藏的马尔可夫链随机生成观测序列的过程,属于生成模型。隐马尔可夫模型在语音识别,自然语言处理,生物信息,模式识别等领域有着广泛的应用。1、马尔科夫模型与HMM 要讲隐马尔科夫模型,需要先从马尔科夫模型讲起。已知N个有序随机变量,根据贝叶斯定理,他们的联合分布可以写成条件分布的连乘积:P(x1,x2,⋯ ,xN)=∏n=1NP(xn∣xn−1,⋯ ,x1)(1)P(x_1,x_2,\cdot
2020-09-09 14:39:58
339
原创 【学习笔记】统计学习方法——EM算法
title: 统计学习方法——EM算法及其推广mathjax: truedate: 2020-09-02 16:38:15tags: 统计学习方法categories: 算法1、摘要EM算法是一种迭代算法,1977年由Dempster等人总结提出,用于含有隐变量(hidden variable)的概率模型参数的极大似然估计,或极大后验概率估计。EM算法的每次迭代由两步组成:E步,求期望(expectation);M步,求极大(maximization)。所以这一算法称为期望极大算法(expe.
2020-09-04 15:35:11
793
原创 动态规划
1 概念 **动态规划**算法是通过拆分问题,定义问题状态和状态之间的关系,使得问题能够以递推(或者说分治)的方式去解决。在学习动态规划之前需要明确掌握几个重要概念。**阶段:**对于一个完整的问题过程,适当的切分为若干个相互联系的子问题,每次在求解一个子问题,则对应一个阶段,整个问题的求解转化为按照阶段次序去求解。**状态:**状态表示每个阶段开始时所处的客观条件,即在求解子问题时的已知条件。状态描述了研究的问题过程中的状况。**决策:**决策表示当求解过程处于某一阶段的某一状态时,可以根据当
2020-08-21 12:51:41
346
原创 泰坦尼克号生存预测(多种模型实现)python
泰坦尼克号生成预测这是kaggle上面比较入门的一个比赛。今天让我们来看看怎么做吧。kaggle传送门。首先报名,下载数据集。数据载入及概述首先导入从Kaggle上面下载的数据集,在导入的过程中就需要先导入一些必备的包了。import numpy as npimport pandas as pd# 接着导入我们的训练数据filename = 'titanic/train.csv' # 这是我存放的文件路径,这边换成你们自己的train = pd.read_csv(filename)然
2020-08-21 00:31:09
4605
2
原创 分治
分治算法的原理分治算法的原理可以用二叉树表示。假设给定的问题不能够被直接了当地解决。这时,我们可以将原问题分成相互独立的两个子问题。如果能将这两个子问题解决,那我们就离原问题的解不远了。如果子问题还是复杂问题的话,我们就继续分解,直到子问题满足边界条件,小到可以直接得出答案为止。得到最小子问题的解后,我们往上递回,将子问题的解层层合并,最终获得原问题的解。我们不一定每一次都将原问题分成两个子问题。根据问题的需要,我们可以将原问题分成 k 个子问题, k>1。分治法适用的情况原问题的计算复杂
2020-08-19 13:34:02
121
原创 seaborn几种图的解释
首先来看看seaborn这个库的用法,因为我们在作分析的时候,会频繁的使用这个库。Seaborn是一种基于matplotlib的图形可视化python libraty。它提供了一种高度交互式界面,便于用户能够做出各种有吸引力的统计图表。Seaborn其实是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,在大多数情况下使用seaborn就能做出很具有吸引力的图,而使用matplotlib就能制作具有更多特色的图。应该把Seaborn视为matplotlib的补充,而不是替代物
2020-08-18 16:52:50
2386
原创 资金流入流出预测实践
一、数据探索与分析首先来看看seaborn这个库的用法,因为我们在作分析的时候,会频繁的使用这个库。Seaborn是一种基于matplotlib的图形可视化python libraty。它提供了一种高度交互式界面,便于用户能够做出各种有吸引力的统计图表。Seaborn其实是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,在大多数情况下使用seaborn就能做出很具有吸引力的图,而使用matplotlib就能制作具有更多特色的图。应该把Seaborn视为matplotlib
2020-08-18 16:51:16
533
原创 (二)数据处理及特征清理
2.1 缺失值观察与处理我们拿到的数据经常会有很多缺失值,比如我们可以看到Cabin列存在NaN,那其他列还有没有缺失值,这些缺失值要怎么处理呢。2.1.1 缺失值观察还是以泰坦尼克号的数据为例。查看各个特征缺失值个数# 首先导入库和数据import numpy as npimport pandas as pddf = pd.read_csv('train.csv')方法1:df.info()不过这样显示的是非缺失值的数据,不够直观。方法2:df.isnull().sum()
2020-08-18 15:00:40
313
原创 (一)数据加载及探索性数据分析
导入numpy和pandas# 如果没安装这两个库可以通过# conda install numpy 或者 pip install numpy# conda install pandas 或者 pip install pandasimport numpy as npimport pandas as pd载入数据虽然有上面那么多种用法,不过用的最多的还是read_csv和read_table这两个。这次学习使用的是泰坦尼克号的数据,kaggle链接——https://www.kaggle.
2020-08-16 12:04:03
192
原创 常见的神经网络模型
LeNet-5(1998)AlexNet(2012)VGG-16(2014)Inception-v1 (2014)ResNet-50 (2015)来源Datawhale组队学习中的街景字符编码识别。
2020-08-12 14:08:35
270
原创 图像处理插值算法(python实现)
在图像处理中,平移变换、旋转变换以及放缩变换是一些基础且常用的操作。这些几何变换并不改变图象的象素值,只是在图象平面上进行象素的重新排列。在一幅输入图象[u,v][u,v][u,v]中,灰度值仅在整数位置上有定义。然而,输出图象[x,y]的灰度值一般由处在非整数坐标上的(u,v)(u,v)(u,v)值来决定。这就需要插值算法来进行处理,常见的插值算法有最近邻插值、双线性插值和三次样条插值。1、最近邻插值算法原理最近邻插值,是指将目标图像中的点,对应到源图像中后,找到最相邻的整数点,作为插值后的输出。
2020-08-10 13:18:49
5525
原创 【学习笔记】Python-文件与文件系统
打开文件open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True) Open file and return a stream. Raise OSError upon failure.file: 必需,文件路径(相对或者绝对路径)。mode: 可选,文件打开模式buffering: 设置缓冲encoding: 一般使用utf8errors: 报错级别newline
2020-08-04 13:53:06
150
原创 【学习笔记】Python-datatime模块
datetime 是 Python 中处理日期的标准模块,它提供了 4 种对日期和时间进行处理的类:datetime、date、time 和 timedelta。1. datetime类class datetime(date): def __init__(self, year, month, day, hour, minute, second, microsecond, tzinfo) pass def now(cls, tz=None): pass
2020-08-04 13:52:20
237
原创 【学习笔记】Python-类和对象
类与对象1. 对象 = 属性 + 方法对象是类的实例。换句话说,类主要定义对象的结构,然后我们以类为模板创建对象。类不但包含方法定义,而且还包含所有实例共享的数据。封装:信息隐蔽技术我们可以使用关键字 class 定义 Python 类,关键字后面紧跟类的名称、分号和类的实现。【例子】class Turtle: # Python中的类名约定以大写字母开头 """关于类的一个简单例子""" # 属性 color = 'green' weight = 10
2020-08-04 13:51:30
130
原创 【学习笔记】Python-函数和Lambda表达式
1、函数Python 的函数具有非常灵活多样的参数形态,既可以实现简单的调用,又可以传入非常复杂的参数。从简到繁的参数形态如下:位置参数 (positional argument)默认参数 (default argument)可变参数 (variable argument)关键字参数 (keyword argument)命名关键字参数 (name keyword argument)参数组合1. 位置参数def functionname(arg1): "函数_文档字符串"
2020-07-31 22:09:54
303
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人