自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 推荐系统之协同过滤算法

1、介绍协同过滤算法(Collaborative Filtering) 是比较经典常用的推荐算法,从1992年一直延续至今。所谓协同过滤算法,基本思想是根据用户的历史行为数据的挖掘发现用户的兴趣爱好,基于不同的兴趣爱好对用户进行划分并推荐兴趣相似的商品给用户。协同过滤算法主要分为两类:- 基于物品的协同过滤算法:给用户推荐与他之前喜欢的物品相似的物品- 基于用户的协同过滤算法:给用户推荐与他兴趣相似的用户喜欢的物品2、基于用户的协同过滤算法(UserCF)UserCF,思想其实比较简单,当一个用户

2022-01-07 17:24:18 74685 21

原创 python生成requirements.txt的两种方法

python生成requirements.txt的方法

2021-12-08 16:20:09 847

原创 python 正则去除括号以及里边的内容

#1、去除括号及括号里的内容import retext = "房地产开发及商品房销售;房地产信息咨询(中介除外);"text1 = re.sub('\(.*?\)','',text)print(text1)'''text1 = "房地产开发及商品房销售;房地产信息咨询;"'''#2、只去除括号text2 = re.sub("[()]", "", text)print(text2)'''text2 = "房地产开发及商品房销售;房地产信息咨询中介除外;"'''...

2021-07-07 15:53:43 3766 1

原创 通俗理解GRU网络原理

GRU介绍上篇文章提到了RNN(循环神经网络)的变体LSTM(长短期记忆网络),现在说一下它们的另一个变体GRU(Gate Recurrent Unit)——门控循环单元。虽然LSTM能够解决循环神经网络因长期依赖带来的梯度消失和梯度爆炸问题,但是在LSTM中引入了三个门函数:输入门、遗忘门和输出门来控制输入值、记忆值和输出值,参数较多,训练起来比较困难。而在GRU模型中只有两个门:分别是更新门和重置门,且在超参数全部调优的情况下,二者性能相当,GRU结构更为简单,训练样本较少,易实现。GRU的结构

2021-06-04 18:03:08 8857

原创 通俗理解LSTM网络原理

LSTM上节讲到的RNN循环神经网络有一个弊端,无法处理长距离依赖的问题,而RNN的变种长短时记忆网络(Long Short Term Memory Network, LSTM),可以解决这个问题。原始RNN的隐藏层只有一个状态,即h,它对于短期的输入非常敏感。LSTM在此基础上又增加一个状态,即c,让它来保存长期的状态,称为单元状态(cell state)。新增加的状态c,称为单元状态。我们把上图按照时间维度展开:如图在 t 时刻,LSTM 的输入有三个:当前时刻网络的输入值 Xt、上一时刻 L

2021-06-03 17:51:47 1653 3

原创 通俗讲解bert原理

bert与GPT一样均是采用transformer的结构,与GPT不同的是,bert是双向的,而GPT是单向的。如图所示:bert结构先看下bert的内部结构,官网最开始提供了两个版本,L表示的是transformer的层数,H表示输出的维度,A表示mutil-head attention的个数:如今已经增加了多个模型,其中包括中文模型:从模型的层数来说其实已经很大了,但是由于transformer的残差(residual)模块,层数并不会引起梯度消失等问题,但是并不代表层数越多效果越好,有论

2021-06-03 16:58:57 2847

原创 通俗理解RNN循环神经网络原理

1、RNN的简单介绍       我们前面提到的无论是人工神经网络还是CNN卷积神经网络,他们的前提都是:元素之间是相互独立的,前一个输入与后一个输入是没有关系的。但现实世界中,很多元素都是相互连接的,比如:某人说:我喜欢美食,其中最喜欢的吃的是肉蟹煲,以后有钱了一定要每天吃___.这里填空,人应该都知道是填“肉蟹煲“。因为我们是根据上下文的内容推断出来的,但机器要做到这一步就比较难了。因此,我们就需要使用循环神经网络了,他的本质是:像

2021-06-02 15:31:33 5218

原创 CNN卷积神经网络详解

1、cnn卷积神经网络的概念卷积神经网络(CNN),这是深度学习算法应用最成功的领域之一,卷积神经网络包括一维卷积神经网络,二维卷积神经网络以及三维卷积神经网络。一维卷积神经网络主要用于序列类的数据处理,二维卷积神经网络常应用于图像类文本的识别,三维卷积神经网络主要应用于医学图像以及视频类数据识别。2、卷积神经网络结构卷积神经网络通常包含以下几层:卷积层:卷积神经网路中每层卷积层由若干卷积单元组成,每个卷积单元的参数都是通过反向传播算法优化得到的。卷积运算的目的是提取输入的不同特征,第一层卷积层

2021-05-31 10:15:20 11682

原创 Transformer模型讲解

Transrofmer模型讲解接下来我将介绍《Attention is all you need》这篇论文。这篇论文是google机器翻译团队在2017年6月放在arXiv上,最后发表在2017年nips上,到目前为止google学术显示引用量为2203,可见也是受到了大家广泛关注和应用。这篇论文主要亮点在于1)不同于以往主流机器翻译使用基于RNN的seq2seq模型框架,该论文用attention机制代替了RNN搭建了整个模型框架。2)提出了多头注意力(Multi-headed attention)

2021-05-20 13:48:50 2335

原创 通俗理解word2vector词向量模型

1、word2vector简介2013年,Google团队发表了word2vec工具。word2vec工具主要包含两个模型:跳字模型(skip-gram)和连续词袋模型(continuous bag of words,简称CBOW),以及两种高效训练的方法:负采样(negative sampling)和层序softmax(hierarchical softmax)。2、词向量比如有一个城市的词汇表(北京,上海,宁夏,纽约,巴黎,,,,,南京),One-Hot Encoder按照如下方式表示:杭州 [

2021-05-12 16:47:16 3681

原创 文本向量—使用bert预训练模型获取中文的词向量

使用了肖涵博士的bert-as-service,详情请参考https://github.com/hanxiao/bert-as-service1、使用的环境python=3.6,tensorflow=1.13.2,tensorflow版本不能太高,2.x不支持bert-as-service。安装需要的包:pip install bert-serving-serverpip install bert-serving-client2、同时还需要下载训练好的Bert中文模型:https://stor

2021-04-25 09:34:48 3614 11

原创 RestFul风格

概念Restful是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种风格。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。功能资源:互联网所有的事物都可以被抽象为资源资源操作:使用POST、DELETE、PUT、GET,使用不同方法对资源进行操作。分别对应 添加、 删除、修改、查询。区别 //传统方式的: http://localhost:8080/spring_04/add?a=1&b=2 //Restful风格的: http://lo

2021-04-14 09:10:40 92

原创 通过命令行更新代码到Github

打开git终端,到项目所在目录,输入以下命令:1.git status ,查看有无修改过的文件,如图红色框中为修改过的文件。2.git commit -a -m “解决bug”,回车,如图显示1个文件已经改变。3.git push origin master,然后回车,这样代码就更新成功了。4.如果执行第三步的时候出现如下错误:出现这个问题是因为github中的README.md文件不在本地代码目录中,可以通过如下命令进行代码合并git pull --rebase origin maste

2021-04-09 09:40:45 193

原创 使用Git将项目上传到Github

1.进入GitHub新建一个项目,然后点击clone or download会出现一个地址,copy这个地址,如图:2.本地操作,右击你的项目,会出现Git Bash here 和Git Gui here(git的安装步骤就不介绍了,不会的话网上找一下),这里我们选择Git Bash here,如图所示:3.然后在此终端下输入命令,通过此命令把GitHub上的仓库克隆到本地git clone https://github.com/wind-liang/leetcode.git(此命令后边跟的地址为

2021-04-07 18:55:19 122

原创 anaconda 创建删除环境

打开终端输入命令:创建test环境并指定python版本为3.8conda create -n test python=3.8删除test环境的命令:conda remove -n test --all 成功删除!!!

2021-03-25 16:54:46 219

原创 SpringBoot操作ES进行增删改查

idea新建springboot项目:在创建项目的时候添加依赖:web依赖选上:ElasSearch最重要的选上:在如图目录下新建config包和ElasticSearchClientConfig配置文件:ElasticSearchClientConfig文件代码:package com.example.demo.config;import org.apache.http.HttpHost;import org.elasticsearch.client.RestClient;i

2021-03-22 14:13:22 1457 3

原创 ElasticSearch基本操作

关于文档的基本操作1、基本操作,插入几条数据2、查询获取数据 GET3、更新数据 PUT4、POST _update5、简单的搜索GET kuangshen/user/1简单的条件查询,可以根据默认的运算规则产生基本的查询6、复杂操作查询select(排序,分页,高亮,模糊查询,精准查询!)输出的结果,不想要那么多!排序:分页:布尔值查询must(and),所有的条件都要符合where id=1 and name=xxxshuold(or),所有的条件都要

2021-03-19 17:43:12 107

原创 Rest风格操作ES

关于索引的基本操作Rest风格说明一种软件架构风格,不是标准,只是提供了一组这几原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计可以更简洁,更有层次,更易于实现缓存等机制。基本Rest命令说明:methodurl描述PUTlocalhost:9200/索引名称/类型名称/文档id创建文档(指定文档id)POSTlocalhost:9200/索引名称/类型名称创建文档(随机文档id)POSTlocalhost:9200/索引名称/类型名

2021-03-19 15:22:55 201

原创 ElasticSearch和Solr

先简单说一下LuceneLucene是一套信息检索工具包!jar包!不包含搜索引擎系统!包含的:索引结构!读写索引的工具!排序,搜索规则…工具类!Lucene和ElasticSearch关系:ElasticSearch是基于Lucene做了一些封装和增强。ElasticSearch概述ElasticSearch,简称es,es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储,检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据,es也可以使用Java开发并使用Luce

2021-03-19 10:20:05 120 2

原创 Java SpringBoot连接多个数据库

Java SpringBoot连接多个数据库1、idea新建springboot项目,在根目录下的pom.xml文件种添加相关依赖 //web <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependen

2021-03-17 11:10:58 1205 3

空空如也

空空如也

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

TA关注的人

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