- 博客(58)
- 收藏
- 关注
原创 LLM应用实现个人知识问答
最近ChatGpt太火热了,赶紧来了解一波相关情况…目前来说ChatGpt只有2021年之前的知识,如果想让它回答比较新的知识或者自己领域内的知识还是不太行的,通过了解发现OpenAI提供了相关的API让我们能够快速实现,真不戳,来吧!!!对了,还没用过的童鞋赶紧去注册一下,体验一下Chatgpt的强大的语义理解和回复能力!!!GPT是“Generative Pre-trained Transformer”的缩写,是一种基于Transformer模型的预训练语言模型,由OpenAI公司开发。
2023-02-15 23:34:56
7302
5
原创 将字符串“123456“ 转化成数字123456
将字符串"123456" 转化成数字123456object HomeWorkTest { def main(args: Array[String]) { var strInt = 0 //定义一个可变的整型用来接收转换后的数字 val str = "123456" //定义一个不可变的数字字符串 val result: Int = str.toCharArray.map(ch => ch - '0').reduce((v1, v2) => v1 * 1
2021-12-17 12:22:46
650
1
原创 大数据框架
大数据框架LinuxLinux:无论你做的是后端还是大数据,Linux已经成为企业筛选人才的一个标准。我极力推荐观看尚硅谷韩顺平老师的Linux入门视频教程,清华大学的学霸,课程逻辑清晰,讲解透彻。国内入门Linux课程几乎选择该门课程。这也是我学习印象最深刻的一门课,看完后,只能一句卧槽,居然还能讲的的这么清晰!尚硅谷韩顺平Linux链接:https://www.bilibili.com/video/av21303002可以结合《Linux就该这么学》这本术一起学习,加深对 Linux 理解!
2021-10-12 18:25:39
415
原创 Aurora中出现报错Problems running LaTex,已解决
输入公式,刷新后并未成功显示,而是出现Problems running LaTex错误解决方法:1、点击properties2、点击弹出的窗口选path选项找出自己电脑上Miktex安装的路径,对应的三个框应该分别填上即可C:\Program Files\MiKTeX 2.5\miktex\bin\latex.exeC:\Program Files\MiKTeX 2.5\miktex\bin\dvipng.exeC:\Program Files\MiKTeX 2.5\miktex\bin\p
2021-01-25 17:13:42
3680
原创 SphereFace: Deep Hypersphere Embedding for Face Recognition论文阅读
SphereFace1、介绍2、背景3、实验方法4、实验结果参考1、介绍人脸识别领域,这两年的发展都偏向于1、创造轻量级的网络用于移动端2、对模型的loss进行改进。本篇文章就是对于angular margin来进行loss的约束了,也取得了很明显的效果。2、背景先普及一下人脸领域两个重要方向——人脸识别(face identification)、人脸验证(face verification)。前者将一张脸归为一个特定的身份,后者则决定一对脸是否属于同一个身份。相关的测试可以在闭集(close
2020-07-27 20:17:09
216
原创 tensorflow中checkpoint各个文件存放的是啥
tensorflow 模型文件checkpointmodel.ckpt-200.data-00000-of-00001model.ckpt-200.indexmodel.ckpt-200.meta1、checkpoint文件checkpoint是一个文本文件,记录了训练过程中在所有中间节点上保存的模型的名称,首行记录的是最后(最近)一次保存的模型名称。checkpoint是检查点文件,文件保存了一个目录下所有的模型文件列表;2、data文件model.ckpt-200.data-0000
2020-07-22 16:47:17
5012
1
原创 tf.keras中如何为训练的模型创建checkpoint
深度学习模型的训练可能需要几个小时,几天甚至几周的时间来训练。如果中途意外停止,那就白训练了。本文教你如何检查你的深度学习模型以及如何建立Checkpoint1、Checkpoint设置成当验证数据集的分类精度提高时保存网络权重(monitor=’val_acc’ and mode=’max’)。权重存储在一个包含评价的文件中(weights-improvement – { val_acc = .2f } .hdf5)。 model = Sequential() model.add(Dense(1
2020-07-22 16:29:51
864
原创 EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks论文解读
背景本篇论文的题目是《EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks》,翻译过来就是 EfficientNet:对卷积神经网络模型缩放的再思考论文作者:Mingxing Tan;Quoc V . Le研究问题这篇论文发布时间是 2014 年,它具有比较重要的意义。文章总结了在CV领域,想要提升网络模型的精度,一般从网络的深度:是指网络模型的层数,从初始的被VGG到现在的resnet,网络层数已经从
2020-07-20 17:33:45
477
原创 常用git操作命令
git clone (-b wanghongchao) http://git.lianjia.com/ke_fr/KeFaceRecognition.gitgit checkout -b wanghongchao //创建分支git add * // 修改或添加所有git commit -a -m”wanghongchao” // 提交修改git push origin wanghongchao // 把你自己分支的内容提交到远程自己的分支...
2020-07-20 16:00:09
151
原创 激活函数——Swish
β是个常数或可训练的参数.Swish 具备无上界有下界、平滑、非单调的特性。Swish 在深层模型上的效果优于 ReLU。例如,仅仅使用 Swish 单元替换 ReLU 就能把 Mobile NASNetA 在 ImageNet 上的 top-1 分类准确率提高 0.9%,Inception-ResNet-v 的分类准确率提高 0.6%。导数:swish-derivation当β = 0时,Swish变为线性函数f(x)=x2f(x)=x2.β → ∞, σ(x)=(1+exp(−x))−1σ(x
2020-07-08 15:53:03
1598
原创 CV(MobileNet,ResNet,FPN)网络参数量比较
MobileNet::5,347,520MobileNet+fpn:13,344,960ResNet:23,561,152ResNet+fpn:31,558,592这里的MobileNet我为了和ResNet拉到一齐,在最后又加了一层CONV2D,将通道数提升到2048dim,在使用fpn最后输出通道数256dim,所以参数量会比原始MobileNet会多一些,原始MobileNet参数量大概在300多万,相比于两三千万的resnet,真的很轻量级,方便在移动端有更好的体验。大模型有大模型的好处,
2020-07-01 20:31:17
5368
2
原创 RetinaNet(基于resnet50和fpn)的tensorboard网络架构图
采用网络的backbone部分,为了能运行tensorboard,所以必须要是完整的网络,所以结尾采用提取有效特征层P7(tensor类型),进行Flatten拉平,然后接了一层全连接,使用虚拟数据进行空跑,才能进入tensorboard。Keras和TF是可以互通,使用tf.keras更加方便,中间可以嵌套tf,使用with tf.name_scope(‘stage5’): 可以将网络部分隐藏在name_scope下,更方便对主体网络进行观察...
2020-07-01 20:18:44
1812
2
原创 ResNet解读和实现
ResNet又名残差神经网络,指的是在传统卷积神经网络中加入残差学习(residual learning)的思想,解决了深层网络中梯度弥散和精度下降(训练集)的问题,使网络能够越来越深,既保证了精度,又控制了速度。随着网络的加深,梯度弥散问题会越来越严重,导致网络很难收敛甚至无法收敛。梯度弥散问题目前有很多的解决办法,包括网络初始标准化,数据标准化以及中间层的标准化(Batch Normalization)等。但是网络加深还会带来另外一个问题:随着网络加深,出现训练集准确率下降的现象残差学习的思想:
2020-06-22 20:15:08
472
原创 Docker学习笔记(一)
Docker学习笔记一、Docker ToolBox安装docker toolbox 来安装,国内可以使用阿里云的镜像来下载,下载地址:http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/遇到问题:手动更新boot2docker.iso常用docker指令:docker info 显示docker的系统信息镜像命令:docker imagesdocker search [string]docker pull
2020-06-16 11:43:19
140
原创 连续特征离散化
有以下几点:0. 离散特征的增加和减少都很容易,易于模型的快速迭代;1.稀疏向量内积乘法运算速度快,计算结果方便存储,容易扩展;2.离散化后的特征对异常数据有很强的鲁棒性:比如一个特征是年龄>30是1,否则0。如果特征没有离散化,一个异常数据“年龄300岁”会给模型造成很大的干扰;3. 逻辑回归属于广义线性模型,表达能力受限;单变量离散化为N个后,每个变量有单独的权重,相当于为模型引入了非线性,能够提升模型表达能力,加大拟合;4. 离散化后可以进行特征交叉,由M+N个变量变为M*N个变量,
2020-05-27 15:07:05
338
原创 缺失数据预处理
1. 保留缺失数据不予处理:不对缺失数据做任何处理2. 直接丢弃含缺失数据的记录,也就是将存在遗漏信息属性值的对象(元组、记录)删除,从而得到一个完备的信息表.个案剔除法(Listwise Deletion)最常见、最简单的处理缺失数据的方法,也是很多统计软件(如SPSS)默认的缺失值处理方法。注意:如果缺失值所占比例比较小,这一方法十分有效。至于具体多大的缺失比例算是“小”比例,专家们意见也存在较大的差距。有学者认为应在5%以下,也有学者认为20%以下即可。局限性: 以减少样本量来换
2020-05-26 20:34:42
402
原创 Resource punkt not found 已解决
LookupError:Resource punkt not found.Please use the NLTK Downloader to obtain the resource:import nltknltk.download(‘punkt’)Searched in:- ‘C:\Users\Numpy/nltk_data’- ‘C:\nltk_data’- ‘D:\nlt...
2020-04-24 11:24:38
17098
17
原创 必须掌握的几种最优化方法极其区别
梯度下降法(Gradient Descent)牛顿法和拟牛顿法(Newton’s method & Quasi-Newton Methods)共轭梯度法(Conjugate Gradient)启发式优化方法解决约束优化问题——拉格朗日乘数法梯度下降法(Gradient Descent)梯度下降法是最早最简单,也是最为常用的最优化方法。梯度下降法实现简单,当目标函数是凸函数时...
2020-04-17 17:52:00
4052
原创 机器学习必备知识——凸优化
定义凸优化问题(OPT,convex optimization problem)指定义在凸集中的凸函数最优化的问题。尽管凸优化的条件比较苛刻,但仍然在机器学习领域有十分广泛的应用。凸优化问题的优势1、凸优化问题的局部最优解就是全局最优解2、很多非凸问题都可以被等价转化为凸优化问题或者被近似为凸优化问题(例如拉格朗日对偶问题)3、凸优化问题的研究较为成熟,当一个具体被归为一个凸优化问题,基...
2020-04-17 16:28:09
1007
1
原创 如何来判断一个函数是否是凸函数
对于一元函数f(x)f(x),我们可以通过其二阶导数f′′(x)f″(x) 的符号来判断。如果函数的二阶导数总是非负,即f′′(x)≥0f″(x)≥0 ,则f(x)f(x)是凸函数对于多元函数f(X)f(X),我们可以通过其Hessian矩阵(Hessian矩阵是由多元函数的二阶导数组成的方阵)的正定性来判断。如果Hessian矩阵是半正定矩阵,则是f(X)f(X)凸函数...
2020-04-15 11:21:02
6873
原创 分类中解决类别不平衡问题?(解决样本不平衡的问题?)
解决不平衡问题?类别不平衡(class-imbalance)就是指分类任务中不同类别的训练样例数目差别很大的情况。在现实的分类学习任务中,我们经常会遇到类别不平衡,例如在通过拆分法解决多分类问题时,即使原始问题中不同类别的训练样例数目相当,在使用OvR(一对其余,One vs. Rest,简称OvR)、MvM(多对多,Many vs. Many,简称MvM)策略后产生的二分类任务扔可能出现类别不...
2020-04-13 11:28:58
2671
原创 情景分析通用—海量数据中统计最热门查询TOP10
情景描述:云音乐中,每天有几千万的用户搜索歌曲,搜索引擎会通过日志文件把用户每次检索使用的所有检索query都记录下来,每个查询串的长度为1-255字节。问题:目前我们云音乐准备开发热搜榜功能;假设目前每天有一千万个query记录(这些查询串的重复度比较高,虽然总数是1千万,但如果除去重复后,不超过3百万个。一个查询串的重复度越高,说明查询它的用户越多,也就是越热门。)请你统计最热门的10个搜索...
2020-04-11 16:50:05
904
1
原创 如何利用产生0-7的随机函数,产生1-10的随机数
设我们拥有一个随机数发生器rand7均匀产生1-7之间随机整数,如何构造rand10均匀产生1-10之间的整数由于rand7是均匀产生,因此由均匀分布的概念来说,产生1-7之间的概率是相同的分别是1/7,因此在该条件下,为了满足计算需要可以适当丢弃1-7之间的数字,而不会影响其他数字获取的概率第一步:将1-7数字中的7移除掉,剩下1-6分别为一半奇数一半偶数,奇偶概率相同第二步:将1-6数据...
2020-04-11 16:43:44
3102
原创 Dijkstra算法和Floyd算法的区别之处:
1、Dijkstra不能处理负权图;Flyod能处理负权图,但不能有回路;2、Dijkstra处理单源最短路径;Flyod是处理多源最短路径3、Dijkstra时间复杂度为O(n^2)Flyod时间复杂度为O(n^3) 空间复杂度为O(n ^ 2);所以题目中如果是单源点正权图,就用Dijkstra如果是任意两个点之间的最短路径或者是负权图,就用Floyd;...
2020-04-11 16:10:11
2540
原创 递归、记忆化搜索、动态规划之间的联系
相信很多童鞋在上学的时候虽然学习过动态规划,但是实际上对动态规划还是模糊的。下面以LintCode343题为例,详细分析,如何使用动态规划一步一步求解,帮助大家了解动态规划的概念:整数拆分:给定一个正整数 n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化。 返回你可以获得的最大乘积。示例:输入: 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1。分析:首先...
2020-04-10 10:05:01
253
原创 特征数据进行对数变换
平时在一些数据处理中,经常会把原始数据取对数后进一步处理。之所以这样做是基于对数函数在其定义域内是单调增函数,取对数后不会改变数据的相对关系,取对数作用主要有:1、缩小数据的绝对数值,方便计算。例如,每个数据项的值都很大,许多这样的值进行计算可能对超过常用数据类型的取值范围,这时取对数,就把数值缩小了,例如TF-IDF计算时,由于在大规模语料库中,很多词的频率是非常大的数字。2、取对数后,可以...
2020-04-04 22:15:40
1746
1
原创 Logistic回归相关知识
1、简单阐述一下LR?虽然逻辑回归能够用于分类,不过其本质还是线性回归。它仅在线性回归的基础上,在特征到结果的映射中加入了一层sigmoid函数(非线性)映射,即先把特征线性求和,然后使用sigmoid函数来预测。逻辑回归假设数据服从伯努利分布,通过极大化似然函数的方法,运用梯度下降来求解参数,来达到将数据二分类的目的。逻辑回归:线性回归可以预测连续值,但是不能解决分类问题,我们需要根据预测...
2020-03-30 10:52:42
831
原创 神经网络与卷积神经网络
神经网络对特征通过隐藏层进行升维或降维。sigmoid作为激活函数,会导致梯度消失。使用relu激活函数,使某些神经元失活,有点类似于dropout。未失活的神经元看起来是线性,但是每个样本失活不同,所以整体起来就是非线性的。卷积神经网络1、判断一个图案的特征并不需要太多2、判断一盒图案,可能的特征不一定在同一像素点上3、图案像素点的抽离(1080720——>2020 图片压缩...
2020-03-27 23:43:00
700
原创 Adaboost算法实例讲解,通俗易懂
Adaboost算法思想:提高那些被前一轮弱分类器错误分类的样本的权值,降低那些被正确分类的样本的权值;采用加权多数表决的方法。具体的,加大分类误差率小的弱分类器的权值,使其在表决中起较大的作用;减小分类误差率大的弱分类器的权值,使其在表决中起较小的作用。Adaboost算法流程以简单二分类为例:...
2020-03-27 15:04:51
587
原创 解决Hash冲突四种方法
1.开放定址法(线性探测再散列,二次探测再散列,伪随机探测再散列)2.再哈希法3.链地址法(Java hashmap就是这么做的)4.建立一个公共溢出区
2020-03-25 23:43:26
184
原创 偏差和方差
当我们的模型表现不佳时,通常是出现两种问题,一种是 高偏差 问题,另一种是 高方差 问题。识别它们有助于选择正确的优化方式,所以我们先来看下 偏差 与 方差 的意义。偏差: 描述模型输出结果的期望与样本真实结果的差距。方差: 描述模型对于给定值的输出稳定性。就像打靶一样,偏差描述了我们的射击总体是否偏离了我们的目标,而方差描述了射击准不准。接下来让我们通过各种情况下 训练集 和 交叉验证...
2020-03-25 20:47:47
163
原创 机器学习问题零散整理(持续更新...)
1、为什么要做数据归一化,在梯度下降时有什么好处?规避不同特征的数值大少带来的差异影响。不做归一化的话,每一个特征所对应的的数据规模是不一样的。那么在求导数的时候,求得的很可能会导数比较大(比较小),最终即使乘以学习率后的步长比较大,导致整体不收敛。或者要进行多次迭代2、梯度下降法和随机梯度下降法的区别?梯度下降时,每个样本都会参与梯度的计算,那么在大样本情况下,提低下降的计算量将非常大;...
2020-03-25 17:10:51
130
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人