- 博客(85)
- 收藏
- 关注
原创 【MySQL事务】MySQL事务初识
redo log采用的是WAL(Write-ahead logging,预写式日志),所有修改先写入日志,再更新到Buffer Pool,保证了数据不会因MySQL宕机而丢失,从而满足了持久性要求。(2)层次不同:redo log是InnoDB存储引擎实现的,而binlog是MySQL的服务器层(可以参考文章前面对MySQL逻辑架构的介绍)实现的,同时支持InnoDB和其他存储引擎。脏读与不可重复读的区别在于:前者读到的是其他事务未提交的数据,后者读到的是其他事务已提交的数据。
2024-01-26 19:49:04
954
原创 【大模型应用】小白借助chatgpt开发谷歌插件
基于本插件,我感受到了chatgpt赋能的力量。对于我这样完全不懂前端代码的开发者,最终能够通过对话就把插件完成了,算是完成我一直以来的一个小愿望。相信不久的将来,我连复制粘贴代码都不需要了。
2024-01-15 15:53:04
864
1
原创 【手写数字识别】CNN卷积神经网络入门案例
下载地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/作为Python Interpreter,即可正常开发。在 tf 环境中安装TensorFlow。安装完成后,在CMD窗口 输入。在pycharm中选择。使用conda创建环境。安装Anaconda。
2023-10-19 17:02:34
201
原创 【解决问题思路分析】记录hutool默认使用服务端上次返回cookie的问题解决思路
本次问题的解决最终找到hutool缓存上一次服务端返回的Cookie是不容易的,中间甚至还用抓包解决,这些解决思路值得记录。通过复盘分析, wireShark是个很好的定位问题工具,需要花点时间学习;开源包的issue是个解决问题的好思路,可以在上面搜索一下;当然还有复现问题,第三方协助,这些都很重要。
2023-10-10 11:32:54
1272
原创 leetcode768最多能完成排序块2
题目地址(768. 最多能完成排序的块 II)https://leetcode-cn.com/problems/max-chunks-to-make-sorted-ii/题目描述这个问题和“最多能完成排序的块”相似,但给定数组中的元素可以重复,输入数组最大长度为2000,其中的元素最大为10**8。arr是一个可能包含重复元素的整数数组,我们将这个数组分割成几个“块”,并将这些块分别进行排序。之后再连接起来,使得连接的结果和按升序排序后的原数组相同。我们最多能将数组分成多少块?示例&nbs
2021-03-30 00:23:06
199
原创 leetcode394字符串解码记录
题目地址(394. 字符串解码)https://leetcode-cn.com/problems/decode-string/题目描述给定一个经过编码的字符串,返回它解码后的字符串。编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数 k ,例如
2021-03-29 16:02:48
186
原创 异常处理
认识异常类中的异常信息不用System.out.println(),而是使用e.printStackTrace()java中引入异常是因为不希望程序一报错就结束,而是希望程序能够继续执行完毕。异常类最高的继承类是Throwable,并且通过JavaDOC文档可以发信啊在Throwable下有两个子类Error : JVM 错误,这个时候的程序并没有执行,无法处理Exception : 程序运行中产生的异常,用户可以使用异常处理格式处理。程序中可以处理的异常是Exception类
2021-03-28 22:29:27
146
原创 类结果扩展-包
命名规范包包的定义package com.mldn.demo;包的导入,当包定义在不同的目录之后,我们就需要import关键字去使用其他包中的程序类.package com.mldn.demo;import com.mldn.util.Message//导入其他包的类public class TestMessage{}注意上面面程序编译顺序是先编译Message再编译TestMessage。我们可以使用javac -d . *.java由jdk自动编译。另外,impo.
2021-03-28 20:56:50
116
原创 抽象类与接口学习
抽象类抽象类的子类和普通类的子类相比最大的区别就在于:抽象类可以明确的要求子类覆写哪些特定的方法,,在实际的项目开发过程中,对于extends类继承来讲,更多的时候继承的不是普通类(功能完善的类),而是抽象类。# 定义抽象类abstract class Book{ //如果一个类中定义有抽象方法,那么这个类必须声明为抽象类 public abstract void read();//抽象方法,没有方法体}- 需要注意的是抽象类不能实例化对象- 抽象类必须要有子类,可以通过子类实例化对象,
2021-03-28 15:33:46
80
原创 继承、多态 部分知识点记录
final关键字final定义的类不能有子类String类就使用了final关键字,所以String类不能被继承final定义的方法不能被覆写final定义的变量为常量,所以必须初始化内容,且不能修改。public static final定义全局常量多态依赖于继承与方法覆写,所谓的多态性严格意义上来将指的是对象所描述范围会随着其转型的因素而有所不同,或者是同样第一种操作方法也会根据不同的情况而有所不同。对象向上转型(90%使用):利用向上转型可以实现参数的统一配置,并且使用.
2021-03-27 13:53:10
101
原创 java自学教程-面向对象
面向对象java面向对象的设计中有三大特性:封装性:程序内部的处理结构对外不可见(结构内部不可见、实现结构不可见)实现结构不可见:不同的层之间进行处理的时候可以完全不知道具体的实现细节;内部结构不可见: 内部的相关的核心定义,外部 无法直接访问,这与访问权限相关。继承性:在先人的基础上继续发展,就好比如果参考进化论,每一代都要比上一代要强。利用击沉给的结构划分出不同的类关系,同时保证一些公共的特征存留下来。多态性:多态是一种不确定的执行模式,同样的一个功能不同的人干,会有不同的方法,但
2021-03-26 21:02:19
149
原创 Java自学教程-基础认识
课程链接:https://www.bilibili.com/video/BV1PE41187Vd?p=1认识JAVAJAVA前身是OAK,最初编程语言是为了一个GREEN的项目提供服务。该项目用email控制家电。Java语言特点JavaSE 单机版程序的开发JavaME 嵌入式设备的开发JavaEE 企业客户端Java相对于C++:良好的垃圾回收处理去掉C、C++的指针,使用引用多线程的编程支持(java真谛)适合分布式计算、具有很强的网络吞吐力安全性较高,java本.
2021-03-13 10:31:50
88
原创 北京大学生物信息学第八周随笔笔记
课程笔记第八周非编码RNA相关背景非编码RNA鉴定第八周非编码RNA相关背景非编码RNA:不需要翻译为蛋白就可以行使其生物学功能的RNA功能,microRNA,作为肿瘤等多种疾病治疗靶点Long ncRNAs目前大约有2000多非编码RNA非编码RNA鉴定identification:也就是根据特征进行分类,那么有什么特征呢生物学特性特征遗传进化信息特征序列特征...
2021-03-07 17:24:55
137
原创 《终身成长》《刻意练习》阅读分享
这里写自定义目录标题第一章 思维模式为什么人会有不同两种思维模式意味着什么第二章 思维模式解析第一章 思维模式为什么人会有不同物理依据:基因、头骨突起家庭背景、接受教育、成长环境。两种思维模式意味着什么第一种思维模式是固定型思维。即相信自己的才能一成不变,会使你急于一遍一遍地证明自己的能力。第二种是成长型思维,你的基本能力是可以通过你的努力来培养的。本章告诉我,思维模式是可以改变的,智力同样是可以成长的。以成长型思维,学习者的心态去面对困难与挑战,了解自己的能力边界,去做的更好。第
2021-03-06 13:35:23
401
1
原创 keras小应用(神经网络、CNN、RNN、绘制网络结构)
课程链接:https://www.bilibili.com/video/BV1Ct411H7rm?p=12&t=3这里写目录标题01线性回归02非线性回归03mnist数据集分类04 交叉熵和Dropout06正则化+07优化器08CNN手写数字识别09RNN应用10绘制网络结构01线性回归import tensorflow.kerasimport numpy as npimport matplotlib.pyplot as plt# Sequential按顺序构成的模型from .
2021-03-05 09:56:51
225
2
原创 keras入门-训练准确率出现不同的值
# 评估模型loss,accuracy = model.evaluate(x_test,y_test)print('\ntest loss',loss)print('\ntest accuracy',accuracy)loss,accuracy = model.evaluate(x_train,y_train)print('\ntrain loss',loss)print('\ntrain accuracy',accuracy)都是训练数据集,出现两个不同的值原因:0.9542是在Do
2021-03-05 09:47:20
390
2
原创 bedtools从剪切位点两边提取序列
目录下载数据(人类)NCBIGenCodebedtools获取内含子位置获取内含子序列获取上下游位置和序列参考文章下载数据(人类)NCBI由于我需要获取剪切位点两边的序列,那么我需要下载参考基因组数据和注释文件。参考基因组下载常用的有ncbi、ucsc和ensemble。下图是参考基因组版本对应信息。我是从NCBI下载链接(https://www.ncbi.nlm.nih.gov/)点击搜索之后,就可以在页面中找到了。GenCode我的注释文件是在GenCode下载,下面为版本信息
2021-01-11 20:55:03
2628
原创 RNAseq数据分析第13-15课
目录FAQcufflinks分析流程cufflinks软件使用注意事项新转录本分析LncRNAFAQcufflinks分析流程步骤1、7、8可以直接得到差异表达的结果步骤1、3、4、6、7、8使用了一个新的GTF文件转录本重构容易造成误差基因表达量为0如何提取差异表达基因topat中有GTFtofastaA功能关于生物学重复试验样本间基因表达水平相关性,绘制样本表达散点图。如果重复试验样本表达一致,则可以说明是服从生物学重复试验。cufflink
2021-01-11 09:39:17
473
原创 RNAseq生物信息分析第11课
目录基因差异表达筛选cufflinkscufflinks案例cuffmergecuffcomparecuffdif基因差异表达筛选计算每个基因的RPKM值,通过基因表达量以区分基因差异表达下面三个案例哪种才是较大的基因差异表达呢?通常基因差异表达有两个标准fold-change2. FDR校正首先计算p-valuecufflinks根据tophat比对结果,输入到cufflinks,依托或不依托参考基因组注释文件计算每个转录本的FPKM值,并给出注释结果。根据toph
2021-01-10 16:13:40
460
原创 RNAseq数据分析第9-10课
目录RNAseq数据评估序列比对FAQ基因表达量的计算计算基因表达量软件rpkm计算(rpkmgorgenes.py)RNAseq数据评估主要包括测序饱和度和测序随机性两个指标横坐标是读段数量,纵坐标是检测到表达基因的数量;对于下图,如果只以150万条reads做检测,结果是基因表达了4200个,而还有100个表达基因检测不到却被说没表达,得到的结论不准确。序列比对FAQ测序数据量测序不饱和的影响可以比对到基因组,比对不到基因集基因集是指具有遗传特性的基因编码的集合,
2021-01-07 08:28:26
703
原创 RNAseq数据分析--read比对
目录Bowtie比对sam文件格式samtools工具tophat比对工具比对案例Bowtie比对tophat和Bowie是同一个作者,tophat调用了Bowtie比对。Bowtie1针对50bp以下的reads比较好,但不适合长度大于1k的片段,不支持空位比对,不支持压缩格式。Bowtie2针对50bp以上的reads比较好Bowtie比对也是需要先对目标建立索引才能比对,建立索引需要使用Bowtie2的build工具。当建立完索引之后再比对即可,比对后可能生成sam文件。Bowt
2021-01-06 15:21:52
1743
原创 RNAseq数据分析--第5-7课
目录RNAseq有无参考序列的差别真核RNAseq和原核RNAseq的差别参考序列的下载GTF和BED文件格式RNAseq有无参考序列的差别RNAseq分析流程图RNAseq分类RNA比对回到基因上,最好是同一个个体,因为可能存在个体差异,一个人中存在而在参考基因组上不存在,那就没办法比对回去。由于个体是非常难得到的,所以选择参考基因组。但如果某物种未存在参考基因组,那就只能用RNAseq Denovo有无参考序列的差别基因融合是通过不同染色体的外显子组合成为新的转录本真核RNAse
2020-12-29 21:08:07
519
原创 RNAseq数据分析--RNA-Seq数据质控
目录RNA-seq数据质控测序数据处理RNAseq测序FAQRNA-seq数据质控在数据分析之前,需要对数据质量控制数据质控指标碱基含量分布(应该满足碱基互补配对)碱基质量分布质量值>=Q20 : 好碱基质量值<Q20: 坏碱基测序质量软件测序数据处理adapter接头去除N碱基过多的reads去除低质量如下图所示,低于20的值转为0;高于20的值转为1;计算0的个数占比高于30%,那么去掉该reads数据过滤,注意是pair
2020-12-29 17:20:43
3820
原创 RNA_seq生物分析学习--RNA-seq实验
目录第五课 RNAseq样品提取与处理第六课 RNAseq建库测序第7课 链特异性文库第五课 RNAseq样品提取与处理RNA-Seq实验流程总RNA提取样品检测(主要检测样品是否合格,是否发生降解等)样品要求合格的样品(只有1-2个峰,且长度在1000-4000)不合格的样品样品检测等级,A最好,D最差低质量样品影响总RNA提取,(由于总RNA中包含各种类型的RNA,而常用的是对mRNA进行处理,因此需要在总RNA中提取这1%-5%的mRNA)而提取mRNA方
2020-12-29 14:55:41
2359
原创 RNA_seq生物分析学习--RNA-seq介绍
目录第一课 课程介绍第二课 RNAseq技术第三课 RNAseq发展历史第四课 关于基因的概念第五课 RNAseq样品提取与处理第一课 课程介绍RNAseq捕获了细胞某一状态下所有的转录信息DNA是静态信息、RNA是动态信息,是某一时刻DNA表达谱的快照课程大纲RNAseq的应用第二课 RNAseq技术转录组概念中心法则(高通量测序验证了中心法则是正确的)mRNA是编码RNA、其余RNA称为非编码RNA。(非编码RNA由基因组上非基因区转录出来)人类基因组上只有10%是基因区,
2020-12-25 15:12:15
16984
原创 生物序列生成onehot编码
定义生成onehot类每次读入一行描述行和一行序列生成csv文件import pandas as pdfrom numpy import arrayfrom numpy import argmaxfrom sklearn.preprocessing import LabelEncoderfrom sklearn.preprocessing import OneHotEncoderimport re# fasta = ">description\nAAAAAAAAAAAAAAAC.
2020-10-19 09:02:52
1844
原创 整个文件生成onehot编码-sklearn方法
把生物序列转化为onehot编码读取文件(注意这个文件没有fasta文件的描述行,只有序列行)保存为csv,每行表示一个字符from numpy import arrayfrom numpy import argmaxfrom sklearn.preprocessing import LabelEncoderfrom sklearn.preprocessing import OneHotEncoderimport pandas as pdimport numpy as npflag =.
2020-10-19 08:58:31
849
原创 python生成序列的weblogo图
记忆力越来越差了,用个logo图都忘。还是写下来吧!奥利给~首先,如果是想立即看下logo图的话,我们可以用在线版,链接如下:http://weblogo.threeplusone.com/create.cgi如果是本地命令行的话,可自定义参数较多。python 安装weblogo包pip install weblogo安装好之后就可以使用,命令如下# Donor_Positive.fasta是输入序列文件# Donor_Positive.png 输出的logo图#.
2020-10-15 14:06:11
2203
原创 拟合matlab
目录最小二乘法最小二乘法解释最小二乘法求解最小二乘法求解评价拟合的好坏拟合优度R^2(前提:参数线性)R^2应用条件(线性函数)拟合优度计算与插值问题不同,拟合问题不需要曲线一定经过给定的点。拟合问题的目标是寻求一个函数(曲线),使得该曲线在某种准则下与所有的数据点最为接近,即曲线拟合的最好。也就是说,插值是经过给定的散点,拟合是总体距离最优,不一定经过所有的点。所以,样本量多的话,是采用拟合的。最小二乘法最小二乘法解释最小二乘法求解这里的拟合函数是线性函数,我们可以看到推理过程,其中的推
2020-09-16 20:52:48
1998
原创 插值法
插值的意思就是,通过已有的x和y构造函数,然后求F(x*) 即可得到Y*。在实际建模过程中,常有多项式插值、分段插值、三角插值。我们来看插值法的原理:如下图所示,只要n+1个节点互异,满足方程的的多项式是唯一存在的。接下来介绍常用的插值方法,拉克朗日插值法具体证明过程单独看一下搜索一下资料看吧,这里主要记录一下。但是出现拉格朗日插值法会出现龙格现象(Runge phenomenon)所以我们采用常采用的是分段线性插值法另外牛顿插值法是优化 拉格朗日插值法计算的一种插值方法.
2020-09-15 22:29:06
7504
原创 TOPSIS 优劣解距离法
目录举例介绍TOPSIS步骤第一步将原始矩阵正向化极小型指标-->极大型指标中间型指标-》极大型区间型--》极大型第二步正向化矩阵标准化第三步计算得分并归一化TOPSIS模型改进TOPSIS是一种常用的综合评价方法,能充分利用原始数据的信息,其结果能精确地反映各评价方案之间的差距。主要应用于评价类的模型。举例介绍常用构造计算评分指标公式,下面三点解释了我们采用已给数据的最大最小值来计算,而不是用例如成绩就用max=100,min=0来计算的原因增加指标的个数,以及对指标的分类统一指标类
2020-09-15 19:50:19
2352
3
原创 层次分析法MATLAB
层次分析法首先当我们遇到需要确定评价指标,形成评价体系的题目时,我们需要想到的是以下三个方面:评价的目标是什么?达到这个目标有哪几种可选方案评价的准则、指标是什么评价指标可以通过论文和谷歌当我们确定评价指标之后,还存在一个问题,一次性考虑这五个指标之间的关系,往往考虑不周,所以解决办法就是 两个两个指标之间进行比较,最终根据两两比较的结果推算权重 如下图所示通过查阅资料,分别填写判断矩阵,也就是上图确定景色、花费、居住、饮食和交通的权重。另外,我们在景色中,如何选择苏杭、北戴河
2020-09-15 16:14:39
347
原创 linux Ubuntu安装及更新升级R教程
Distributor ID: UbuntuDescription: Ubuntu 18.04.3 LTSRelease: 18.04Codename: bionic目录安装更新升级走过的坑安装今天下午安装了一下午的R,稍微记录一下吧。由于之前都是在window上安装R和Rstudio,傻瓜式next安装即可,由于实验室老服务器之前重装了,一直没有R,正好这两天在帮师兄跑一下svm,加上考虑到以后师弟师妹可能也要用,那就在服务器上安装一下吧。首先来到R官网链接: link,
2020-09-07 20:43:41
10610
1
原创 tensorflow笔记第六讲RNN
我们通过上一讲的CNN,可以知道,CNN是依据于尺寸不变性,平移不变性,旋转不变性。空间共享,通过不同位置的参数共享那么接下来,我们来学习时间共享,通过不同时刻的参数共享。目录循环核循环横向 按时间展开循环计算层TF描述循环计算层循环计算过程Embedding编码RNN实现股票预测LSTMGRU网络循环核循环核:参数时间共享,循环层提取时间信息。记忆体内存储的状态信息ht,在每个时刻都被更新循环横向 按时间展开循环计算层TF描述循环计算层return_sequences.
2020-09-05 11:56:34
387
原创 tensorflow笔记第五讲CNN
目录引入卷积感受野全零填充tensorflow描述卷积层函数tf.ketas.layers.conv2D批标准化池化Poolingtf.keras.layers.MaxPool2D函数舍弃 DropoutCNN总结Cifar10数据集搭建卷积网络经典卷积网络LeNetLeNet核心代码AlexNetAlexNet核心代码VGGNet 2014InceptionNet 2014InceptionNet核心实现ResNet两个相加维度不同代码展示总结引入全连接NN参数过多,待优化参数过多容易导致模型过拟合
2020-09-04 12:38:49
174
原创 tensorflow学习笔记第四讲
目录数据增强tf.keras.preprocessing.image.ImageDataGenerator()断点续训提取可训练参数可视化准确率上升和损失下降训练代码给图识物数据增强tf.keras.preprocessing.image.ImageDataGenerator()断点续训把上次训练好的模型保存起来,然后再执行一遍代码,可以在上次的结果基础上继续寻找最好的。提取可训练参数查看保存模型的参数是多少可视化准确率上升和损失下降画图代码# 显示训练集和验证集的a
2020-09-03 15:55:34
169
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人