- 博客(24)
- 资源 (5)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Attention机制与Self-Attention机制的区别
本文主要讲解Attention机制与Self-Attention机制的区别,默认读者已经了解过Attention、Self-Attention、Transformer、seq2seq model。 传统的Attention机制在一般任务的Encoder-Decoder model中,输入Source和输出Target内容是不一样的,比如对于英-中机器翻译来说,Source是英文句子,Target是对应的翻译出的中文句子,Attention机制发生在Target的元素Query和...
2020-09-08 15:33:20
47151
2
原创 搜索二维矩阵
描述写出一个高效的算法来搜索m×n矩阵中的值 target 。这个矩阵具有以下特性:每行中的整数从左到右是排序的。 每行的第一个数大于上一行的最后一个整数。样例样例 1:输入:矩阵 = [[5]]target = 2输出:false解释:矩阵中没有包含2,返回false。样例 2:输入:矩阵 = [ [1, 3, 5, 7], [10, 11, 16, 20], [23, 30, 34, 50]]target = 3...
2021-04-16 17:44:59
181
原创 列表扁平化
描述给定一个列表,该列表中的每个元素要么是个列表,要么是整数。将其变成一个只包含整数的简单列表。如果给定的列表中的要素本身也是一个列表,那么它也可以包含列表。样例样例 1:输入:列表 = [[1,1],2,[1,1]]输出:[1,1,2,1,1]解释:将其变成一个只包含整数的简单列表。样例 2:输入:列表 = [1,2,[1,2]]输出:[1,2,1,2]解释:将其变成一个只包含整数的简单列表。样例 3:输入:列表 =
2021-04-15 14:36:15
254
原创 子集 II
描述给定一个可能具有重复数字的列表,返回其所有可能的子集。子集中的每个元素都是非降序的 两个子集间的顺序是无关紧要的 解集中不能包含重复子集样例样例 1:输入:nums = [0]输出:[ [], [0]]解释:[0]的子集只有[]和[0]。样例 2:输入:nums = [1,2,2]输出:[ [2], [1], [1,2,2], [2,2], [1,2], []]解释:[1,2,2]不重复的子集有
2021-04-15 14:33:40
167
原创 子集
描述给定一个含不同整数的集合,返回其所有的子集。子集中的元素不能以降序排列,解集不能包含重复的子集。样例样例 1:输入:nums = [0] 输出:[ [], [0] ] 解释:[0]的子集只有[]和[0]。样例 2:输入:nums = [1,2,3] 输出:[ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], [] ] [1,2,3
2021-04-15 09:49:00
136
原创 带重复元素的排列
描述给出一个具有重复数字的列表,找出列表所有不同的排列。样例样例 1:输入:nums = [1,1] 输出:[ [1,1] ] 解释:[1,1]的不同排列只有[1,1]。样例 2:输入:nums = [1,2,2] 输出:[ [1,2,2], [2,1,2], [2,2,1] ] 解释:[1,2,2]的不同排列有[1,2,2],[2,1,2],[2,2,1]。这里由于带有重复的元素,因此进行去重操作,最简单的
2021-04-15 09:41:11
120
原创 Maven资源导出
构建maven项目时会遇到自己写的配置文件在运行时无法加载到classpath路径下,这是由于maven中规定约定大于配置造成的,直接在pom.xml配置资源导出即可。 <!--在build中配置resources,来防止我们资源导出失败的问题--> <build> <resources> <!--选择需要导出资源的路径,可以选择多个--> <resource>
2021-04-15 09:03:33
454
原创 全排列
描述给定一个数字列表,返回其所有可能的排列。你可以假设没有重复数字。样例样例 1:输入:[1]输出:[ [1]]样例 2:输入:[1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]签到题,直接贴代码public class Solution { /* * @param nums: A list of integers. .
2021-04-14 19:07:06
241
3
原创 二叉查找树中搜索区间
描述给定一个二叉查找树和范围[k1, k2]。按照升序返回给定范围内的节点值。样例样例 1:输入:tree = {5}k1 = 6k2 = 10输出:[]解释:没有数字介于6和10之间样例 2:输入:tree = {20,8,22,4,12}k1 = 10k2 = 22输出:[12,20,22]解释:[12,20,22]介于10和22之间题目较简单,直接贴代码/** * Definition of TreeNode:
2021-04-14 19:00:17
105
原创 旋转字符串
描述给定一个字符串(以字符数组的形式给出)和一个偏移量,根据偏移量原地旋转字符串(从左向右旋转)。offset >= 0str的长度 >= 0说明原地旋转意味着需要在函数中更改字符串s。你不需要返回任何东西。样例样例 1:输入:str = "abcdefg"offset = 3输出:"efgabcd"解释:注意是原地旋转,即str旋转后为"efgabcd"样例 2:输入:str = "abcdefg"offset = 0输
2021-04-14 18:54:36
244
原创 第K大元素
描述在数组中找到第 k 大的元素。你可以交换数组中的元素的位置。样例样例 1:输入:k = 1nums = [1,3,4,2]输出:4解释:第一大的元素是4。样例 2:输入:k = 3nums = [9,3,2,4,8]输出:4解释:第三大的元素是4。题目比较简单,直接上代码。public class Solution { public int kthLargestElement(int n, int[] nu
2021-04-14 18:50:57
86
原创 集群,分布式,微服务概念和区别
概念:集群是个物理形态,分布式是个工作方式。分布式:一个业务分拆多个子业务,部署在不同的服务器上 集群:同一个业务,部署在多个服务器上1:分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器集中在一起,实现同一业务。分布式中的每一个节点,都可以做集群。而集群并不一定就是分布式的。举例:就比如新浪网,访问的人多了,他可以做一个群集,前面放一个响应服务器,后面几台服务器完成同一业务,如果有业务访问的时候,响应服务器看哪台服务器的负载不是很重,就将给哪一台去完成。而分布式,从窄
2021-04-13 09:20:58
125
1
原创 二叉查找树中搜索区间
描述给定一个二叉查找树和范围[k1, k2]。按照升序返回给定范围内的节点值。样例样例 1:输入:{5},6,10输出:[]解释: 5它将被序列化为 {5}没有数字介于6和10之间样例 2:输入:{20,8,22,4,12},10,22输出:[12,20,22]解释: 20 / \ 8 22 / \ 4 12它将被序列化为 {20,8,22,4,12}[12,20,22]介于10和22之间.
2021-04-12 10:33:19
127
1
原创 Oracle同义词
Oracle同义词:即现有对象的别名,使用同义词有如下好处 1.简化sql语句; 2.隐藏对象名称和所有者; 3.提供对象的公共访问 具体解释如下: 1.当表的名称很长的时候用同义词简化代码量 eg:select * from my_table_student 这个时候给my_table_student起一个别名:create
2020-11-29 19:12:45
364
原创 深入理解GloVe
在读本文前默认读者已经懂得了词向量的基本常识。GloVe瞄准的是word2vec的缺点,我们知道word2vec进行训练词向量时只考虑了窗口内的单词,对于窗口外的词则没有考虑到,GloVe通过构建共现矩阵的方式使得训练词向量时考虑了全局信息,同时GloVe的训练没有采用神经网络,而是计算共现矩阵,使得训练的速度更快,适合大规模语料。GloVe模型分两步:1.构建共现矩阵;2.构建损失函数并训练直接举例子:假如语料库中有N个单词,则共现矩阵是一个形状为N*N的二维向量,其中每个元素代表单词x和y共
2020-11-27 10:12:10
234
原创 如何选电脑
选电脑第一步看CPU 主选inter系列 amd的最近在笔记本发热严重 对比下CPU的性能 并不是I7大学I5 要看更重要的参数 先看同级i5之间如何比较 假如有i5 8250u 和i5 8220u 这里8代表第8代 250和220这里一般数字越大性能也就越好 但仅限于同为8代 看下i5 10210u和i5 8250u 这里因为第一个是第10代所以不能这样比 要查一下他们的核数和线程数 越大越好 还有就是主频和超频 同样越大越好 还有就是缓存内存 越大越好 具体可以
2020-11-12 23:20:13
25024
1
原创 机器学习中的偏差和方差
偏差度量了学习算法的期望预测和真实结果的偏离程度,刻画的是算法本身的拟合能力;方差度量了同样大小的数据集下数据变动导致学习性能的变化,刻画的是数据扰动造成的影响。当数据集小时,此时偏差占据主导地位,误差是由偏差决定的,当学习算法学习能力过强时,这时学到了整个训练数据集的所有特点,此时进行预测,即使一个很小特征的波动都会对最终结果产生很大的影响,这个时候是方差占据主导地位。...
2020-11-07 19:18:26
30485
原创 tensorflow2.0三种建模方式
1.顺序建模方式1.model = tf.keras.Sequential()model.add(tf.keras.layers.LSTM(100,activation="relu"))model.add(tf.keras.layers.Dense(2,activation="sigmoid"))model.compile(optimizer=tf.keras.optimizers.Adam(0.01),loss=tf.keras.losses.CategoricalCrossentrop
2020-11-07 15:55:28
31557
原创 tensorflow 2.1 自定义训练
常常会遇到自定义网络结构的情况,自定结构后往往会有多个输入,或者还需要自定义loss或者accuracy函数,那么keras的fit就无法使用了,因此需要自定义训练步骤下面则自定义一次batch的训练步骤,包含了计算loss,accuracy和梯度下降。tensorflow2.0 主推eager模式,那么tf.GradientTape则是eager模式下的利器,自动计算梯度并传递最后别忘了加@tf.function进行封装,使train函数在tensorflow框架下加速运行然后就可以把
2020-11-07 13:49:18
24867
原创 机器学习常见损失函数,二元交叉熵,类别交叉熵,MSE,稀疏类别交叉熵
一 损失函数介绍损失函数用于描述模型预测值与真实值的差距大小。一般有有两种常见的算法——均值平方差(MSE)和交叉熵。下面来分别介绍每个算法的具体内容。1 均值平方差均值平方差(Mean Squared Error,MSE),也称“均方误差”,在神经网络中主要是表达预测值和真实值之间的差异,在数理统计中,均方误差是指参数估计值与参数真值之差平方的预期值,主要用于回归问题。公式如下:主要是对每一个真实值与预期值相减的平方取平均值均方误差的值越小,表明模型越好,拟合程度也越好,泛化性能也
2020-11-06 14:44:44
38295
1
原创 分类问题中类别加权和样本加权
分类问题中常常会用到类别和样本加权,具体应用场景如下:类别加权 当样本预测的结果影响不同时,一般会用到类别加权,比如进行癌症的检测,这时我们更期望尽可能的发现真实患有癌症的患者,此时就要对癌症患者的类别进行加权,使得对癌症患者进行预测时的结果对损失函数造成更大的影响。样本加权 与上述同理,样本加权指的是我们对一些样本有99%概率知道他是正样本或者负样本,而另外一些样本我们有80%概率知道他是正负样本,这个时候样本的权重就要进行修改,把99%概率的样本的权重设置要比...
2020-11-05 16:10:24
35020
1
原创 深入浅出极大似然估计
最大似然估计是利用已知的样本的结果,在使用某个模型的基础上,反推最有可能导致这样结果的模型参数值。在理解极大似然估计之前我们首先要了解概率和似然,概率是事件未发生前预测事件发生的概率,当事件发生时这个概率就已经确定,不在改变,而似然是事实已经发生去推测发生的条件,当事件与条件一一对应时似然值大小等于概率值大小,即 L(&|x) = P(x|&)。举例说明:假设一个袋子装有白球与红球,比例未知,现在抽取10次(每次抽完都放回,保证事件独立性),假设抽到了7次白球和3次红球,在此...
2020-10-15 16:38:31
33063
原创 大话Seq2Seq模型
Seq2Seq模型虽然具有局限性,但是作为入门级别的Nlper,我们应该深入的了解他,如下图这里encoder和decoder部分我们采用的是传统的RNN,这并不影响我们理解这个模型,你也可以把他看成LSTM或者GRU。以我爱计算机为例进行讲解,开始时我们把“我爱计算机”输入到encoder网络中,这里hi为隐藏状态,oi为RNN的输出,这里一定要注意的是RNN不能进行并行处理,虽然我们是一次性的把文字输入到网络中,但是在处理的时候RNN是把之前的一个文字处理完成之后再处理后面的文字。enco.
2020-09-12 15:34:08
33107
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人