自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(97)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this st

突然密码不可用,服务没问题,mysql命令行用老密码进入可以,然后执行命令报错。mac 重设置mysql 密码 版本 5.7。

2022-08-05 17:53:07 333 1

原创 电商商品分类设计

商品前台类目:展示给用户看的类目信息,一般分三级即可 商品后台类目:后台商品维护的时候需要的,这个小公司有时候设计的和前台一致。 为什么要区分设计,主要是因为更好的扩展性,和后期做活动等后台运营营销时候更精确 后台分类和前台类目是多对多的关系,就表而言要维护一个中间表商品的属性:一般品类多,不垂直的最好要引入,他是用来给商品的,比如屏幕尺寸,手机分类才有,衣服就没有,所以他和类目(后台类目)是直接关联的,他可以给不同的类目定义不同的属性,属性是可以根据分类来继承的 ...

2021-06-25 11:34:36 851

原创 springboot配置oracle数据源Error creating bean with name ‘jdbcConverter‘ defined in class path resource

2021-06-10 11:38:46.463 INFO 10760 --- [ main] o.s.d.j.r.config.DialectResolver : Couldn't determine Dialect for "oracle"2021-06-10 11:38:46.471 WARN 10760 --- [ main] s.c.a.AnnotationConfigApplicationContext : Exception enco...

2021-06-10 15:15:16 1123 1

原创 tomcat发版war包zip.ZipException: error in opening zip file

org.apache.catalina.startup.ContextConfig.beforeStart Exception fixing docBase for context []java.util.zip.ZipException: error in opening zip file at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init>(ZipFile....

2021-06-02 09:55:15 439

原创 SpringBoot Thymeleaf This application has no explicit mapping for /error, so you are ..

Whitelabel Error PageThis application has no explicit mapping for /error, so you are seeing this as a fallback.如果确定路径没错,就试一下调整controller所在目录。。。。当Application启动类未被放置在其他被调用类的根包时,部分根包可能不被搜索和加载。在这个例子中,要保证Controller类位于Application所在的包,或者子包中。...

2021-02-25 15:54:27 467

原创 centos7 安装 Anaconda安装报错: bunzip2: command not found

centos7 安装 Anaconda安装报错:bunzip2: command not foundtar: This does not look like a tar archivetar: Exiting with failure status due to previous errorsAnaconda安装报错:bunzip2: command not foundtar: This does not look like a tar archivetar: Exiting wit..

2021-01-02 17:38:00 579

原创 Unable to install python extensions for VSCode!

centos7 安装anaconda3 提示错误ms-python.anaconda-extension-pack Unable to install python extensions for VSCode!解决方案: yum install -y bzip2 然后在重新安装

2020-12-28 14:24:26 3205

原创 人工智能学习之python三剑客Matplotlib

Matplotlib主要用来绘图,是机器学习模型的时候,做一些分析。比如可以绘图直观的分析机器学习的模型,可以画一下图,看一下数据的分部情况,还可以分析函数的拟合情况。常用图:折线图散点图柱状图子图绘制...

2020-10-21 15:10:59 162

原创 人工智能学习之python三剑客Pandas

数据分析用的,可以将数据读入后做数据处理。常用的数据结构是DataFrame(表格型)。他是有一定顺序排列的多列数据组成的,既有行索引(index)也有列索引(column),都是从0开始创建DataFrame我们常用的是 字典来创建以字典的键作为每一列的名称,以字典值(数组)作为每一列。同时DataFrame会自动加上每一行的索引,从0开始。使用字典创建的DataFrame,columns参数是不可以被使用的,如果传入的列和字典键不匹配,相应的值为NaNdic = {.

2020-10-20 18:26:04 372

原创 人工智能学习之python三剑客Numpy

三贱客是指python的一些工具库:Numpy、Pandas、Matplotlib, 在人工智能学习中应用非常广泛numpy 主要是用来快速科学计算,支持一个强大的N维数组对象处理,有成熟的函数库。Pandas用来解决数据分析问题,可以将本地数据读入处理,人工智能是基于大数据的基础上做数据分析,模型搭建。Matplotlib主要是用来绘制图形,几行代码就能表示直方图、功率谱、条形图、错位图、散点图等,方便观察函数的拟合度和数据分类情况。...

2020-10-20 15:39:14 1079

原创 五分钟搞定人工智能数学之概率论

概率表述一件随机事件发生的可能性,数学意义上讲是0---1之间的数。两个随机事件A/B。 A./ B 发生的概率分别是P(A)和P(B), AB事件同时发生的概率为P(AB)如果P(A)*P(B)=P(AB),则A和B相互独立。 A发生的概率不影响B发生的概率条件概率,往往做分类的时候用的多一些,指事件A在另一个事件B已经发生的条件下发生的概率。条件概率表述为:P(A|B),读作“在B的条件下的A的概率”。 条件概率可以用决策树进行计算。条件概率的谬论是假设P(A|B) 大致等于P...

2020-10-20 10:16:48 642

原创 五分钟搞定人工智能数学之高等数学

大学就学过了,没学过也没关系,现在学也不晚,先了解意义1. 导数(derivative)微积分中的基础概念,xxx补习一下就好了常见的导数计算: 经常用的常数和幂函数求导2. 链式求导:函数是复合函数的时候,如,y对x求导,要对(x+1)求导,然后在对x求导dy =(x+1)3. 求偏导函数多元的,机器学习多元特征的时候肯定都是多元的,要对多个函数求导,才能取到函数的最大、最小,即极值4.幂级数,常用在类似拟合股票趋势这种场景...

2020-10-19 14:10:56 718

原创 五分钟搞定人工智能数学之线性代数

线性代数是我们初高中就学会的知识了,现在回头在去看一下,你会发现,太简单了吧.1. 要求知识标量:就是一个数值,没有方向向量:有方向的数值矩阵:按长方阵列排列的复数或实数集合复数实数不了解,可以记住就行,等需要的时候你在去研究2. 计算直接加减法乘法:对位乘,对应位置相乘,乘完还是向量 点乘,对应位置相乘后相加,乘完是个标量...

2020-10-19 11:29:18 909

原创 人工智能数学要求有多高,别走弯路了

一说到人工智能,很多人都觉得非常高深,对技术人员的要求非常高,尤其是数学的要求太高。我们常说,人工智能两条腿,一是python一是数学,python今天先不说,如果你就是要转行做人工智能,前期我想要说的是,数学真的没那么高要求,懂了这三个就够了。1. 线性代数2. 高等数学3. 概率论看完了,你就可以考虑一下自己转人工智能会不会被数学给拦下来了...

2020-10-19 11:16:04 5203

原创 2020-09-16

61、Java 中的 ReadWriteLock 是什么?读写锁是用来提升并发程序性能的锁分离技术的成果。62、volatile 变量和 atomic 变量有什么不同?Volatile 变量可以确保先行关系,即写操作会发生在后续的读操作之前, 但它并不能保证 原子性。例如用 volatile 修饰 count 变量那么 count++ 操作就不是原子性的。 而 AtomicInteger 类提供的 atomic 方法可以让这种操作具有原子性如 getAndIncrement()方法会原子性的进行

2020-09-16 09:52:46 74

原创 面试之 Java 并发编程(七) 高级java

51、Java 中的同步集合与并发集合有什么区别?同步集合与并发集合都为多线程和并发提供了合适的线程安全的集合, 不过并发集合的可 扩展性更高。在 Java1.5 之前程序员们只有同步集合来用且在多线程并发的时候会导致争 用, 阻碍了系统的扩展性。Java5 介绍了并发集合像 ConcurrentHashMap,不仅提供线程安全还用锁分离和内部分区等现代技术提高 了可扩展 性。52、什么是线程池? 为什么要使用它?创建线程要花费昂贵的资源和时间, 如果任务来了才创建线程那么响应时间会变 长, 而

2020-09-16 09:48:04 132

原创 面试之 Java 并发编程(六)

44、如何在两个线程间共享数据?在两个线程间共享变量即可实现共享。 一般来说, 共享变量要求变量本身是线程安全的, 然后在线程内使用的时候, 如果有 对共享变量的复合操作, 那么也得保证复合操作的线程安全性。45、Java 中 notify 和 notifyAll 有什么区别?notify() 方法不能唤醒某个具体的线程, 所以只有一个线程在等待的时候它才有用武之 地。而 notifyAll()唤醒所有线程并允许他们争夺锁确保了至少有一个线程能继续运行。46、为什么 wait, notify

2020-09-08 09:56:19 97

原创 面试之 Java 并发编程(五)

37、CopyOnWriteArrayList 可以用于什么应用场景?CopyOnWriteArrayList(免锁容器)的好处之一是当多个迭代器同时遍历和修改这个列表 时, 不会抛出 ConcurrentModificationException。在 CopyOnWriteArrayList 中,写入将导致创建整个底层数组的副本,而源数组将保留在原 地, 使得复制的数组在被修改时, 读取操作可以安全地执行。 1、由于写操作的时候, 需要拷贝数组, 会消耗内存, 如果原数组的内容比较多的情况 下,

2020-09-06 23:12:41 81

原创 面试之 Java 并发编程(四)

28、java 中有几种方法可以实现一个线程?继 承 Thread 类实现 Runnable 接口实现 Callable 接口, 需要实现的是 call() 方法29、如何停止一个正在运行的线程?使用共享变量的方式 在这种方式中, 之所以引入共享变量, 是因为该变量可以被多个执行相同任务的线程用 来作为是否中断的信号, 通知中断线程的执行。 使用 interrupt 方法终止线程 如果一个线程由于等待某些事件的发生而被阻塞, 又该怎样停止该线程呢? 这种情况经 常会发生, 比如当一个线程

2020-09-05 22:21:46 111

原创 面试之 Java 并发编程(三)

17、多线程同步和互斥有几种实现方法,都是什么线程同步是指线程之间所具有的一种制约关系, 一个线程的执行依赖另一个线程的消息, 当它没有得到另一个线程的消息时应等待, 直到消息到达时才被唤醒。线程互斥是指对 于共享的进程系统资源, 在各单个线程访问时的排它性。当有若干个线程都要使用某一共 享资源时, 任何时刻最多只允许一个线程去使用, 其它要使用该资源的线程必须等待, 直到占用资源者释放该资源。线程互斥可以看成是一种特殊的线程同步。 线程间的同步方法大体可分为两类: 用户模式和内核模式。顾名思义, 内核

2020-09-04 22:34:52 139

原创 面试之 Java 并发编程(二)

7、为什么使用Executor 框架?什么是Executor框架?我们知道线程池就是线程的集合,线程池集中管理线程,以实现线程的重用,降低资源消耗,提高响应速度等。线程用于执行异步任务,单个的线程既是工作单元也是执行机制,从JDK1.5开始,为了把工作单元与执行机制分离开,Executor框架诞生了,他是一个用于统一创建与运行的接口。Executor框架实现的就是线程池的功能。每次执行任务创建线程 new Thread()比较消耗性能, 创建一个线程是比较耗时、耗资源 的。 调用 new Th.

2020-09-03 22:38:51 109

转载 Linux上查找线程使用的CPU时间最长 java语言

Linux上查找线程使用的CPU时间最长ZhaoYingChao882018-04-18 16:58:352140收藏3分类专栏:java文章标签:java版权1. 找出cpu耗用厉害的进程pid终端执行top命令,然后按下shift+p 查找出cpu利用最厉害的pid号:pid号:313652.根据上面第一步拿到的pid号,top -H -p pid 。然后按下shift+p,查找出cpu利用率最厉害的线程号线程号:3...

2020-09-03 22:24:33 300

原创 面试之 Java 并发编程(一)

1、在java 中守护线程和本地线程区别? java 中的线程分为两种: 守护线程( Daemon) 和用户线程( User)。学过Unix开发但是没有细致学习Java的同学们会疑惑了,操作系统里面是没有所谓的守护线程的概念,只有守护进程一说,但是Java语言机制是构建在JVM的基础之上的,意思是Java平台把操作系统的底层给屏蔽起来,所以它可以在它自己的虚拟的平台里面构造出对自己有利的机制,而语言或者说平台的设计者多多少少是收到Unix思想的影响任何线程都可以设置为守护线程和用户线程,通过方法 T

2020-09-02 23:01:22 81

原创 如何将一个神经网络当卷积核来用

可以使用多个小的卷积核,来代替一个大卷积核,而且更加偏向于多个小卷积组成一个网络,来代替一个大卷积核。如处理一个5*5的图片,我们可以直接用一层5*5的卷积核来处理一次得到1*1的特征图,也可以用多层网络(小卷积)来代,用两层3*3来替代,在不考虑网络深度造成的像素融合的情况下,两者提取的特征一致。我们如何用一个神经网络,当做一个卷积核,去卷任意大小的图片。1. 只需要做一个卷积...

2020-04-16 11:42:44 194

原创 var.detach().numpy() instead. pytorch Tensor 转 numpy 报错

exec(compile(contents+"\n", file, 'exec'), glob, loc) File "F:/GPAI/secondTimes/CatchYou/Train.py", line 49, in <module> pre_rect = out[0].numpy()RuntimeError: Can't call numpy() on V...

2020-04-13 17:41:01 3445 1

原创 神经网络 梯度消失 梯度弥散 网络欠拟合 过拟合

梯度消失,没法反向传播了,网络就无法训练了。原因,激活函数的饱和区间,常用的有饱和区间的激活函数,sigmoid,tanh,softmax, 所以中间层尽量不适用这种激活函数,使用Relu系列的解决; 奇异样本引起, 可以使用标准化(零中心化>数据 - 平均值 , 和 归一化>数据变小,分布不变,奇异样本影响就小了)来解决;层数太深的话,反向传播时(数学角度看的话,是梯度连乘),浅...

2020-04-02 13:36:19 190

原创 杂项

L2 (w^2)正则化导数是2*w,到后期变化是比较平缓的,很难达到0L1 (|w|) 正则化导数是1,到后期会震荡,有可能会把权重压到0如果权重为0了,网络梯度消失无法训练,所以神经网络一般用L2,dropout 是在当前批次中随机的抑制神经元,让其不参与训练。在测试网络时,要调用evel(),不做神经元抑制...

2020-03-27 11:51:03 212

原创 强化学习(Reinforcement Learning, RL)

强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习。描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。强化学习的常见模型是标准的马尔科夫链,马尔科夫决策过程(Markov Decision Process, MDP),他是在假设下一个状态由上一个确定的状态来决定(条件概率),每一步都是上一步状态...

2020-03-27 10:12:59 658

原创 自编码与变分自编码

神经网络的本质是信息压缩,神经网络公式h = w * x , 做内积,所以神经网络是个相关性判断研究AI顶级公司研究损失。无监督学习是在没有数据标签的情况下,寻找数据特征。但是无监督学习的标签是自身,自监督学习,是无监督学习的一种特殊情况,他是将数据切分N块,然后用各个块来预测其他块。弱监督学习,是将无监督和有监督结合,先用无监督学,使得网络有提取特征能力,然后让有监督学习去矫正,...

2020-03-23 22:54:16 165

原创 pytorch学习 残差

残差能很好的解决网络梯度弥散的问题。将网络假设成水管的话,网络层表示为阀门,越往后水管的水量越小,加入残差后,可以理解为,将水管并行,保证每个阀门都能有足够多的水量。残差实际上是做加法,加入以图像为例, pytorch输入图片是[n,c,h,w]的张量,经过一层网络计算后得到的是[n,c',h',w'],如果做张量加法的话必须保证形状一致,n为批次不会变化,如果用卷积我们可以设计...

2020-03-18 10:17:36 699

原创 网络归一化 入门

整个网络都要做最大归一化,有均值归一化,最大值归一化,首先要在输入数据上的归一化,对网络内部数据也要归一化15年之前手动调参做归一化,手动调参除了慢,还很难做出深层的网络,网络层深要调的参越多。批归一化batchnormal(BN),2015年提出,用在激活之前,保证梯度不消失,跟残差一样可以保证梯度不消失的同时,他还能解决数据爆炸,他是在通道上做的归一化操作,对应通道上的对应像素做归一...

2020-03-17 11:51:44 380

原创 网络如何学习的

神经网络就是个概率,万事无绝对。数据信息瓶颈结构,是信息有多到少,然后由少变多处理一个视别时,并不是需要所有的数据,而是一个信息提取过程,特征提取过程要留下的必须是需要的特征,是能解决当前面临问题的特征,网络如何保证留下的数据是有用的,是根据PCA主成分分析,特征稀疏处理,降维,反向传播将梯度调优之后,就是保留的有用信息稀疏到稠密的情况(图像生成,输入简单信息生成图片),稠密信息...

2020-03-16 14:59:20 127

原创 经典网络设计

残差网络resNet(Bottleneck版本)1*1卷积:用1*1的卷积对像素是没帮助,但是可以快速的将通道融合,对通道进行缩放,3*3卷积:快速进行像素的融合1*1卷积:通道还原回去(resnetXt版本)1*1卷积:用1*1的卷积对像素是没帮助,但是可以快速的将通道融合,对通道进行缩放,3*3卷积:加入分组,快速进行像素的融合1*1卷积:通道还原回去...

2020-03-16 14:06:44 120

原创 卷积设计

神经网络的深度决定什么? (提取特征的能力,提取特征的抽象程度,他是由于反向的梯度更新决定的,权重更新次数和网络的层数是有关的)每层神经元的个数决定的是(该网络的非线性能力)网络设计深更利于特征提取,但是会有梯度消失(反向时每层神经网络连乘),梯度弥散。相应的何凯明提出了,残差网络,作用是保证后面的反向过程的网络层梯度不为零,反向时加输入值卷积空间层面(理解为图片rgb...

2020-03-16 09:30:34 213

原创 基础网络 递归神经网络RNN (recurrent neural networks) 处理时间序列的网络

数据: 图片(数据的载体) 文字的数据需要有顺序能力,比如(我爱中国和中国爱我)翻译现在基于RNN跟CNN一样是权重共享的,状态是有记忆的神经元是同一个,新数据会和上一次细胞的数据状态想成序列,也就有了时间序列,输出时,每次神经元都可以输出信息。如果输入过长,序列过长,会有长期依赖问题,越远数据关联会丢失。LSTM,long short memor...

2020-03-14 21:51:19 672

原创 全连接 CNN 基础网络总结

pytorch里,无论哪种网络,输出都是一个Tensor张量。网络设计损失时,是label 和 out相减输出层常用的激活函数: SIGMOiD,二分类 softmax,多分类时,二分类时,退货为SIGMOD,二者输出都是0-1的数据,softmax输出是概率分布,和为1 做二分类时,sigmoid输出1个数,softmax因为是个概率分布,所以会...

2020-03-14 14:13:10 383

原创 卷积神经网络 CNN

传统机器学习,是数学模型;深度学习是仿生学,从人自身开始思考,人学习和计算机学习都是通过对比来学习的,数据要有差异学习才有意义,人的大脑会有一个完整的样子(特征,比如猫狗),这种完整的样子,先教给计算机认识(以往经验,先验概率模拟给计算机),也就是训练,然后就拿到特征。训练过程中,会有正样本(包含目标的)和负样本(不包含目标的),正样本就是为了让神经网络认识目标,负样本就是返利,就是为了...

2020-03-11 12:03:11 371

原创 感知机

感知机的演变:一、 可以当做线性分类器二、 加入线性分类器三、加入激活函数

2020-03-02 16:40:40 111

原创 人工智能 神经网络 激活函数

激活函数,提供非线性能力。1. SIGMOD函数,二分类将数据压缩到0-1之间, 横轴0点对称,以用来做二分类,有饱和区间所以一般用在输出层优点:平滑、易于求导。缺点:激活函数计算量大,反向传播求误差梯度时,求导涉及除法;反向传播时,很容易就会出现梯度消失的情况,从而无法完成深层网络的训练。Sigmoid函数由下列公式定义其对x的导数可以用自身表示:S...

2020-02-28 09:56:55 1089

原创 Python 文件操作 写入成功 读不出数据

import ostestFile = open("test.txt","w+",encoding='utf-8')testFile.write("test")#将指针移动到文件首,防止读不到数据;# 因为write完成后,指针在最后录入信息的位置,读的时候指针会向后读取数据,这样造成不到数据testFile.seek(0,0)str = testFile.read()print(...

2019-12-09 13:56:23 1211

mybatis入门

最最基础的mybatis入门程序; 含有注释,帮助了解开发详情; 不清楚请留言

2016-03-07

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

TA关注的人

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