自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 收藏
  • 关注

原创 LeetCode(2)

2021-07-1475、从前序与中序遍历序列构造二叉树递归,注意有列表为空的情况# Definition for a binary tree node.# class TreeNode:# def __init__(self, val=0, left=None, right=None):# self.val = val# self.left = left# self.right = rightclass Solution:

2021-07-14 10:39:55 476

原创 LeetCode

2021-06-071.两数之和给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。暴力遍历 :固定一个数,遍历剩下的数,时间复杂度O(N^2)class Solution: def twoSum(self, nums: List[int], target: int) -> List[i

2021-06-07 22:43:35 2561

原创 Seq2seq、Attention、Pointer Network

2021-01-24 17:29:53 425

原创 bert

2021-01-18 19:02:01 177

原创 Transformer小结

encoder从上到下依次解释:

2021-01-16 00:24:55 276 5

原创 ELMO

2021-01-12 12:03:35 301 1

原创 fastText

2020-12-28 16:27:54 117

原创 N-gram

2020-12-28 16:04:39 329

原创 RNN、LSTM、Char RNN

2020-12-23 11:13:17 237

原创 TextCNN:《Convolutional Neural Networks for Sentence Classification》

2020-12-14 18:21:48 212

原创 word2vec详解(CBOW、SG、hierarchical softmax、negative sampling)

word2vec用来干什么的解释,参见这篇博客一开始也是纯照论文《word2vec Parameter Learning Explained》推公式,到后来理解深了一点,所以后面和前面的公式间有点乱。

2020-12-01 17:39:43 708 3

原创 神经语言模型NNLM

2020-12-01 17:32:14 227

原创 with open() as和codecs.open()

基础读文件传统读取文件的方法是先使用Python内置的open函数打开文件,然后标示符’r’表示读,这样,我们就成功地打开了一个文件,获得到一个f文件句柄f = open('test.txt','r')如果文件打开成功,接下来,调用read()方法可以一次读取文件的全部内容f.read() # 'hello world'Python把内容读到内存,用一个str字符串表示type(f.read()) # str最后一步是是任何语言都一样的操作,调用close()方法关闭文件。文件使用完毕后

2020-11-13 17:51:12 1970

原创 统计学习方法(十):隐马尔可夫模型

生成模型,简称HMMHMM主要涉及:状态量和观察量(取球问题中,状态量为从哪个袋子里拿球,观察量为取到了什么颜色的球)HMM的参数:状态转移矩阵,也就是从t时刻的i值转移到t+1时刻的j值的概率矩阵。观测概率矩阵,也就是在t时刻状态为i时得到观测值为o的概率矩阵。初始状态概率,由于状态和观测都涉及由一个量推一个量,所以总有一个开始的量,在这里将状态的所有初始取值概率视为初始状态概率。HMM主要涉及三个问题:概率计算问题, 由以上三个参量求出出现某种观测序列的概率。学习参..

2020-09-16 22:09:36 231

原创 统计学习方法(九):EM算法

非监督学习、生成模型EM算法应用场景:含有隐变量的参数估计问题EM解析(以高斯分布为例):假设有一批数据x。x可能满足多种不同的模型,这些模型的分布服从高斯分布的概率密度函数形式(高斯混合模型)。这时,问题中就包含了三个变量:取到某种模型的概率w,以及在该高斯分布下的参数μ和σ\sigmaσ。我们最终求的是最好的模型的参数μ和σ\sigmaσ,所以取到某种模型的概率w就相当于是隐变量。若根据极大似然估计方法,该问题求解可以描述为:设有x个数据,表示为:xix_{i}xi​,i从1到N。设.

2020-09-13 17:04:05 294

原创 统计学习方法(八):提升方法

AdaBoost算法判别模型,是前向分步加法算法的特例,损失函数为指数函数。思想:多个弱分类器(分类规则粗糙简单)合成一个强分类器。简要:多个弱分类器对实例进行分类,对多个结果加权计算(相当于投票表决,只不过每个人投票的权重不同)得到最终结果。两个关键点:1、如何获得多个弱分类器。2、多个弱分类器的结果如何加权?步骤:1.首先初始化训练数据权值(对每一个训练数据赋予权值)2.对具有权值分布的数据集进行训练,得到一个分类器。a.计算该分类器在训练集上的分类误差率b.根据误分类率计算该分

2020-09-07 19:48:25 239

原创 统计学习方法(七):支持向量机(SVM)

支持向量机:判别模型种类:硬间隔、软间隔、核函数思想:感知机是线性分类器,对线性可分的数据集可以有无穷多个超平面将其分开。而支持向量机选择其中分类最为靠谱的一个,而这个靠谱的依据是:(重要思想):1.在分类准确的前提下,2.使得离超平面最近的点离超平面的距离最远,也就是说一个点可能是很多个超平面的最近点,但是我们对比这个点离其他超平面的距离,选择最远的那一个超平面作为最终的超平面。学习流程:输入空间映射特征空间,特征空间学习得到输出空间。硬间隔SVM:设超平面为:wx+b=0w x+b=0wx.

2020-09-05 16:58:55 334

原创 统计学习方法(六):逻辑斯蒂回归和最大熵模型

逻辑斯蒂回归:判别模型,分类二项逻辑斯蒂回归思路:线性回归的预测值为一系列实值,为了使输出值变成分类所需的0和1,需要有一个映射将线性回归的输出变在(0,1)之间。这个函数为sigmoid函数。sigmoid(x)=11+e−xsigmoid(x)=\frac{1}{1+\mathrm{e}^{-x }}sigmoid(x)=1+e−x1​将线性函数y = wx+b 先合并b到矩阵中:y = w’x’,代入到sigmoid函数中:y(x)=11+e−wxy(x)=\frac{1}{1+\math.

2020-09-03 17:39:10 229

原创 统计学习方法(五):决策树和随机森林

决策树:判别模型问题描述:假设要对一批样本分K类。其中这些样本又有A个特征。如何生成一个树形结构,按照特征一层一层往下分。决策树生成思路:有A个特征可供分类,但是先选哪个特征作为分类标准呢?决策树为了解决这个问题,首先会判断该特征的对样本的区分能力,比如在男宿舍这样一个条件下判断谁有ipad,如果用性别作为一个特征来判断分类,收益很小;如果我们用生活费多少来判断,那么对这个分类就有很大的帮助。决策树这里用信息增益来判断特征Ai对分类的影响大小,先选择对分类区分度大的特征,在用其他特征依次往下分。.

2020-09-03 16:50:40 513

原创 统计学习方法(四):朴素贝叶斯

朴素贝叶斯:生成模型预测思路:给定输入,生成在该输入的情况下各类发生的概率,然后选择概率最大的类。具体:结合贝叶斯公式、独立同分布的假设和极大似然估计,运用训练数据。

2020-09-03 16:20:42 160

原创 统计学习方法(三):k近邻法

k近邻法:判别模型模型:y=arg⁡max⁡cj∑xi∈Nk(x)I(yi=cj),i=1,2,⋯ ,N;j=1,2,⋯ ,Ky=\arg \max _{c_{j}} \sum_{x_{i} \in N_{k}(x)} I\left(y_{i}=c_{j}\right), \quad i=1,2, \cdots, N ; \quad j=1,2, \cdots, Ky=argmaxcj​​∑xi​∈Nk​(x)​I(yi​=cj​),i=1,2,⋯,N;j=1,2,⋯,K。III为指示函数,即当 yi=.

2020-09-03 16:13:09 237

原创 统计学习方法(二):感知机

感知机:判别模型、二分类线性模型模型形式:f(x)=sign⁡(w⋅x+b)f(x)=\operatorname{sign}(w \cdot x+b)f(x)=sign(w⋅x+b):w和b为感知机模型参数,sign是符号函数。要求:数据集线性可分目的:求将数据集线性划分为两部分的超平面经验损失函数:所有误分类的点到超平面距离之和L(w,b)L(w, b)L(w,b)极小化经验损失函数方法:梯度下降法算法流程:输入:训练数据集T={(x1,y1),(x2,y2),⋯ ,(xN,yN).

2020-09-03 15:54:52 138

原创 统计学习方法(一):统计学习与监督学习概论

统计学习的基本分类监督学习:从标注数据中学习预测模型的机器学习问题。输入空间与输出空间:在监督学习中,将输入与输出所有可能取值的集合分别称为输入空间与输出空间。特征空间:在监督学习中,每个具体的输入是一个实例,通常由特征向量表示。这时,所有特征向量存在的空间称为特征空间。其每一维对应一个特征。输入与输出为随机变量在输入与输出空间上的取值,变量用大写字母表示,如X,变量的具体取值用小写字母表示,如x:x=(x(1),x(2),⋯ ,x(i),⋯ ,x(n))Tx=\left(x^{(1)}, x^

2020-08-30 17:45:09 361

原创 服务器配置anaconda,创建python环境

打开Anaconda官网,复制要下载的链接。打开服务器,创建Anaconda自己的目录:cd 某现存目录;mkdir 文件夹名称下载安装包:在该目录下wget 下载链接安装:bash https://repo.anaconda.com/archive/Anaconda3-2020.07-Linux-x86_64.sh安装期间一路enter/yes直到出现安装路径,写入自己的安装路径安装成功后,配置环境变量:修改bashrc :vim ~/.bashrc进入vim后echo ‘exp.

2020-08-29 20:15:43 981

原创 sql去除括号和括号中内容

数据示例:在description_1文本后有(《焦点访谈》:blabla…)去除方法:update jdft_text set description_1 = replace(description_1,(reverse(substr(reverse(description_1) , instr(reverse(description_1),')')+1 , instr(reverse(description_1),'《')+1))),'') 表名为jdft_text更改表格数据内容

2020-08-06 21:46:23 6691 1

原创 sql删除重复数据(无rowid)、统计表行数、创建表、插入值

网上大部分都是抄一个人的,都有rowid,但有时候表中不一定有rowid,另一个简单的方法就是把重复数据先提取出来存入临时表,然后删除原表中的所有重复数据,最后将临时表中的加入到原表。步骤:寻找重复数据:select * from 原表 group by 重复字段名 having count(重复字段名)>1;创建临时表存取重复数据中的一条:create table 新表名 as (select * from 表名 group by 重复字段名 having count(重复字段名

2020-08-04 20:34:44 404

原创 CNN经典网络简要介绍

AlexNet进步:AlexNet是第一个在ImageNet分类上表现出色的大规模卷积神经网络体系结构。AlexNet在比赛中大大超越了以前所有基于非深度学习的模型。结构:特点:第一次使用ReLU激活函数,表达能力更强使用了Dropout函数,防止过拟合...

2020-06-24 19:38:22 805

原创 目标检测基础知识(2):CBAM,常用评价指标

CBAM目的:增强特征的表达,关注重要特征并抑制不重要特征。原理:CBAM有两个组成部分,第一部分是通道注意力模型,第二部分是空间注意力模型。提取通道注意力的时候,就把空间信息暂时忽略,因此在空间维度上分别进行最大值池化与平均值池化,得到两个只有通道维度的向量,然后将这两个向量分别通过一个两层的神经网络,两特征相加后经过sigmoid函数。然后用得到的这个通道注意力向量与特征图相乘,得到空间注意力处理的输入。提取空间注意力的时候,同样的道理,要将通道信息暂时忽略,因此在通道维度上进行最大值池化

2020-06-19 18:06:32 1654

原创 目标检测基础知识:卷积、池化、填充、采样、RPN、FPN

卷积目的:如果直接把原图像的全部信息输入网络中,那么冗余信息非常之多并且计算量会非常大,因此利用卷积可以减少冗余信息并且提取必要的特征。不同的卷积核可以提取不同的特征。原理:用卷积核在输入图像上滑动,对应像素点做运算。卷积核滑动运算池化目的:卷积操作会降低一定的信息冗余,但是相邻像素点的像素值信息会非常接近。池化操作就进一步解决了信息冗余的问题,通过减小输入的大小降低输出值的数量,通常有最大值、最小值或平均值池化。原理:如图所示,该池化为最大值池化ROI pooling

2020-06-18 18:00:49 3297 4

原创 yolo批量检测图片

接上篇博客~(基于google colab)由于训练集图片和想要检测图片的尺寸不一致的问题,需要将欲检测图片切割,将切割后的小图分别预测再合成大图。这时候涉及到了批量检测图片的问题,查询很多方法大都复杂且不易实现,后参考博客实现了该功能,总结如下:首先切割图片,根据自己的需求写一个切割图片的脚本,并将切割后的图片保存在一个文件夹下。生成一个包含该文件夹下所有图片名字的txt文件。# 这里我保存图片的路径为/mydrive/yolo/outimg!ls -R /mydrive/yolo/outi

2020-06-05 11:49:52 3580

原创 在colab上训练yolo

由于本地计算机速度有限,所以使用Colab进行训练。# 下载darknet框架,该框架用c语言编写,是yolo的基础!git clone https://github.com/AlexeyAB/darknetCloning into 'darknet'...remote: Enumerating objects: 5, done.remote: Counting objects: 100% (5/5), done.remote: Compressing objects: 100%

2020-05-20 19:26:48 2071 2

原创 jiagu、snownlp、jieba对比

jiaguimport jiagudir(jiagu)['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', 'analyze', 'any', 'cluster', 'cut', ...

2020-04-24 18:39:22 2772

原创 DataFrame的创建、基本属性、基本操作

DataFrame它是Pandas中的一个表格型的数据结构,包含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型等),DataFrame即有行索引也有列索引,可以被看做是由Series组成的字典。Series它是一种类似于一维数组的对象,是由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。仅由一组数据也可产生简单的Series对象。import pa...

2020-04-24 16:47:12 1376

原创 安装Anaconda后,“‘python’不是内部或外部命令,也不是可运行的程序或批处理文件”的问题解决

右击我的电脑,进入属性,进入高级系统设置,进入环境变量在系统变量中双击Path添加安装anaconda中的这三个路径一定要点击确定以保存更改重新打开cmd输入python即可...

2020-04-20 11:34:23 1131

原创 用Scrapy爬取一篇新闻

Scrapy简介Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。Scrapy入门主要完成以下几个步骤:创建一个Scrapy项目定义提取的Item编写爬取网站的 spider 并提取 Item编写 Item Pipeline 来存储提取到的Item(即数据)创建项目:在开始爬取之前,必须创建一...

2020-04-14 17:43:18 1134 2

原创 Windows10-Neo4j安装及JAVA_HOME环境变量的配置

neo4j的安装下载社区版的neo4jwin + R 进入到命令行窗口进入到下载的neo4j 的bin目录下:cd /d 路径输入:neo4j install-service输入:neo4j start打开浏览器输入:http://localhost:7474/neo4j安装过程中的问题在输入neo4j install-service后会提示报错:Invoke-Neo4j:U...

2020-04-09 20:25:44 2672

原创 VScode设置中文

第一步:打开应用商店第二步:搜索Chinese,安装第三步:重启vscode

2020-03-31 09:28:36 227 1

转载 Bi-LSTM学习

什么是LSTM与Bi-LSTMLSTM的全称是Long Short-Term Memory,它是RNN(Recurrent Neural Network)的一种。LSTM由于其设计的特点,非常适合用于对时序数据的建模,如文本数据。BiLSTM是Bi-directional Long Short-Term Memory的缩写,是由前向LSTM与后向LSTM组合而成。两者在自然语言处理任务中都常被用...

2020-03-30 16:50:57 28025 2

原创 SQLNet学习

SQLNet:不用强化学习从自然语言中产生结构化查询语句 摘要从自然语言合成数据库查询语言是一个长期存在的开放性问题,近来也吸引了人们非常多的兴趣。为了解决这个问题,实际的方法是使用seq2seq形式的模型。这种方法必然需要对SQL查询进行序列化。因为同一个SQL有许多等价的序列化,所以训练一个seq2seq形式的模型时,对序列的选择是十分敏感的。这个现象被记为"order-matters"问...

2020-03-27 17:41:33 4175

原创 Linux命令

指定GPU运行程序CUDA_VISIBLE_DEVICES=2 python name.py查看你GPU情况nvidia-smi查看当前有哪些指定进程以及进程的具体信息先用pgrep [str] 命令进行模糊匹配(正则匹配),找到匹配该特征串的进程ID;其次根据进程ID显示指定的进程信息,ps --pid [pid];因为查找出来的进程ID需要被作为参数传递给ps命令,故使用xar...

2020-03-25 16:54:47 145

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除