自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (3)
  • 收藏
  • 关注

原创 MAC终端及连接ssh服务器出现中文乱码

目录MAC终端中文乱码MAC ssh连接服务器后,服务器上的中文乱码MAC终端中文乱码失败的尝试:在~/.zshrc中写入这两行,还是乱码cat ~/.zshrcexport LC_ALL=en_US.UTF-8 export LANG=en_US.UTF-8失败的尝试:把终端的偏好设置改成简体中文成功的尝试:$vim ~/.bash_profile$source ~/.bash_profile$locale#locale的output#LANG="en_US.UTF-8

2021-08-19 13:50:52 1182 1

原创 【matplotlib复杂的频数分布直方图】多子图,共享横纵坐标名,横坐标位置居中及标签显示,显示每个bar的频数

hist的官方文档,下面的例子值得学习在一个图上画三个数据集下述图的问题:都不咋好看由于第二个length太高了,导致其他的length区分度不大了不同数据集有些length重合了……横坐标的位置和bar不匹配方法1fig, ax = plt.subplots(nrows = 1, ncols = 1)colors = ['red', 'green', 'orange']ax.hist(train_length, n_bins, color = 'red')ax.hist(

2021-05-03 11:07:52 1490 2

原创 【matplotlib复杂热图绘制】自定义元素注释,对数渐变色标,不显示色标,去掉留白,LZW压缩

我的最终图形式元素注释为该元素的name+value无color bar颜色分明创建带注释的热图function详见官方文档,下面是我自己的图,修改了官方例子。def heatmap(data, ax=None, cbar_kw={}, cbarlabel = "", **kwargs): """ Create a heatmap from a numpy array and two lists of labels. Parameters --------

2021-05-03 02:16:57 800 4

原创 【Linux CentOS系统】Matplotlib不显示Times New Roman

CentOS系统是没有Times New Roman字体的。(其他字体类似操作)步骤把本地电脑里C:\windows\fonts中的Time New Roman文件夹/4个文件拷贝到CentOS系统中的/usr/share/fonts目录下。(我不确定是把整个文件夹拷过来,还是把4个文件直接放进去,我都试了一下,不知道是哪个成功的。)执行下面三条命令刷新字体缓存mkfontscalemkfontdirfc-cache -fv可以执行“fc-list”来查看安装了那些字体(看每一个小段

2021-05-02 08:00:27 1513

原创 keras搭建二分类神经网络代码:不平衡,AUC和AUPR,画图

代码定义性能评估指标def performances(y_true, y_pred, y_prob): tn, fp, fn, tp = confusion_matrix(y_true, y_pred, labels = [0, 1]).ravel().tolist() accuracy = (tp+tn)/(tn+fp+fn+tp) try: recall = tp / (tp+fn) except: recall = 0

2021-02-01 21:55:38 2700 1

原创 linux下用psiblast批量生成pssm矩阵

目录在linux上安装psiblast下载并编译用于比对的大型蛋白质数据库生成pssm批量生成方法文章中看到的手动生成pssm的方法在linux上安装psiblast最好新建一个python环境,因为我发现conda安装blast默认的是python==3.6.11,可能会不小心把你的python版本改掉…然后你写好的代码全die了……conda create -n blast python==3.6.11source activate blastconda install -c bioconda

2021-01-28 22:06:15 2754 5

原创 关于CompileError: command ‘gcc‘ failed with exit status 1解决:gcc g++版本

http://c.biancheng.net/view/7933.htmlhttps://blog.csdn.net/mou_it/article/details/79842193报错:ImportError: Building module norm_aggr failed: [“distutils.errors.CompileError: command ‘gcc’ failed with exit status 1\n”]注意:看上面#include查看gcc和g++版本是否一致,查看c

2020-10-07 15:02:43 5622 1

原创 在线社交网络的影响力最大化算法

1. 病毒式营销针对社交网络中最有影响力的用户(例如,通过向他们提供免费或价格优惠的样本),人们可以通过口碑利用网络效应的力量,从而将营销信息传递到网络的很大一部分。2. 影响力最大化:病毒式营销的关键算法在一个在线社交网络中选择一组k个用户,即选出具有最大影响力传播的种子集,然后通过信息传播中的种子集来影响用户的预期数量最大。2.1. 定义:扩散模型和影响扩散给定社交图 G=(V,E)G = (V,E)G=(V,E),一个用户集 S⊆VS⊆ VS⊆V,扩散模型MMM捕获SSS在GGG上传播信息的

2020-09-02 17:10:23 3296

原创 图数据处理:当每个user包含多个样本时,将其视为不同的样本,为每个sample赋予一个id,并更新边关系

文章目录1. 原始数据2. 数据处理思路2.1. 步1和步22.2. 步32.3. 步42.4. 步51. 原始数据node_data: 节点数据,其中node_data[‘vroleid’]列为用户id,其他列包括node label和node feature。同一个用户id可能有多条样本,如果直接去重则会造成数据损失,随之带来的正负样本不平衡问题会进一步导致其与真是数据分布不符。** edge_data:** 节点关系数据,edge_data[‘vroleid’]和edge_data[‘frie

2020-08-20 11:29:23 315

原创 GraphSAINT和基于源码的pytorch实现(从数据处理到训练)

目录1.论文资料2.传统GNN挑战:邻居爆炸(Neighbor Explosion)3.现有方法:图采样4.GraphSAINT:截然不同的采样的视角4.1.算法流程4.2.子图采样4.3.实验结果:优于GCN, SAGE...参考文献1.论文资料作者:曾涵清博士,南加州大学论文:在 ICLR 2020 上发表了GraphSAINT: Graph Sampling Based Inductive Learning Method代码:https://github.com/GraphSAINT/Grap

2020-08-06 20:54:04 3292 5

原创 Cluster-GCN:子图划分,特别适合大规模的同质图数据

1. Cluster-GCN聚类GCN:一种对大而深的图卷积网络训练的高效算法发表时间: 2019年8月4日发表在KDD 2019上。1.1.参考资料论文链接:Cluster-GCN: An Efficient Algorithm for Training Deep and Large Graph Convolutional NetworksGitHub链接:ClusterGCN: A PyTorch implementationDGL链接:DGLexamples1.2.GCN面临的挑战:大规

2020-08-04 21:13:53 5192 3

原创 图网络:从数据处理到DGL模型构建(GCN, GraphSAGE, RGCN)

DGL异构图教程:https://docs.dgl.ai/tutorials/hetero/1_basics.htmlDGL v0.4 更新笔记:https://github.com/dmlc/dgl/releasesDGL-KE代码及使用说明:训练知识图谱嵌入(Knowledge Graph Embedding)专用包https://github.com/dmlc/dgl/tree/master/apps/kgDGL-Chem 模型库: 包括分子性质预测和分子结构生成等预训练模型。https

2020-08-03 19:59:00 8205 9

原创 注意力机制分类、原理、应用

神经网络在进行特征提取的时候,会将所有的输入进行处理,提取得到的特征并没有进行特别的处理。那么,如果神经网络能够像人一样,并不是“观察”到所有的特征,而是只“注意”到那些真正关心的特征呢?...

2020-05-31 20:52:13 15266 3

原创 【自监督算法】自编码器(autoencoder, AE)

 十分建议先读keras文档 看完之后感觉好像普通的自编码器好像没啥用啊? 使用自编码器做数据压缩,性能并不怎么样…… 做逐层预训练训练深度网络吧,现在好的初始化策略、Batch Normalization、残差连接啥的都很有效了…… 那自编码器岂不是只有数据去噪、为进行可视化而降维这两个可应用的点了!配合适当的维度和稀疏约束,自编码器可以学习到比PCA等技术更有意思的数据投影。当然了,变分自编码器用于生成模型还是挺好的!1.简介自编码器是一类在半监督学习和非监督学习中使用的人工神经网络。.

2020-05-30 16:18:25 6658

原创 残差连接skip connect

文章目录1. 来源1.LSTM的控制门2.ResNet进一步简化和实验验证2.解决:梯度消失2.1.梯度消失2.2.使用残差连接3.解决:网络权重矩阵的退化3.1.网络退化3.2.使用残差连接4.残差连接的有效性5.解释角度5.1.使得信息前后向传播更加顺畅5.2.集成学习5.3.解决梯度破碎问题参考Skip block:将输出表述为输入X和输入的一个非线性变换F(X)的线性叠加。解决了深层网络的训练问题。1. 来源1.LSTM的控制门2.ResNet进一步简化和实验验证公式:y=H(x,WH)

2020-05-29 21:22:04 7069

原创 购物篮分析(Apriori算法):Mlxtend实现

目录1.基础概念2.购物篮分析:指标用法3.规则生成基本流程3.1.找出频繁项集3.2.找出上步中频繁项集的规则4.Python实现:mlxtend参考1.基础概念项集: 购物篮也称为事务数据集,它包含属于同一个项集的项集合。在一篮子商品中的一件消费品即为一项(Item),则若干项的集合为项集(items),如{啤酒,尿布}构成一个二元项集。关联规则: X为先决条件,Y为相应的关联结果,用于表示数据内隐含的关联性。如:尿布−>啤酒[支持度=8%,置信度=80%]尿布->啤酒[支持度=8\

2020-05-29 18:56:08 5098

原创 图神经网络综述

1.为什么出现图神经网络GNN?近年来,人们对深度学习方法在图上的扩展越来越感兴趣。在多方因素的成功推动下,研究人员借鉴了卷积网络、循环网络和深度自动编码器的思想,定义和设计了用于处理图数据的神经网络结构:图神经网络(Graph Neural Networks,GNN) 传统的深度学习方法在提取欧氏空间数据(如Image) 的特征方面取得了巨大的成功,但在处理非欧式空间数据(如Graph) 上的表现却仍难以使人满意。许多实际应用场景中的数据是从非欧式空间生成的,如推荐系统中的图。 图是不规则的,每

2020-05-28 18:17:22 1198 1

原创 【NLP面试】简述RNN、LSTM、NLP

目录1.RNN:处理序列数据1.1.为什么需要RNN?1.2.基本原理1.3.缺点1.3.1.短期记忆、训练成本大1.3.2.梯度消失/爆炸1.4.LSTM:RNN的优化算法1.4.1.与RNN相比1.4.2.核心步骤(前向计算过程)1.4.3.反向传播算法BPTT1.4.4.python实现1.4.5.LSTM变体1.4.5.1.在门上增加窥视孔1.4.5.2.整合遗忘门和输入门1.5.GRU:LSTM 的变体1.6.应用3.【科普】NLP3.1.核心任务3.1.1.自然语言理解 – NLU | NLI3

2020-05-25 13:37:46 564

转载 【CV面试】简述CNN、计算机视觉、人脸识别

CNN:图像、视频 卷积神经网络是一类包含卷积计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一 。 由于卷积神经网络能够进行平移不变分类,因此也被称为平移不变人工神经网络(Shift-Invariant Artificial Neural Networks, SIANN)。1.CNN解决了什么问题?在CNN出现之前,图像对于人工智能来说是一个难题。原因如下。1.1.将大数据量的图片降维成小数据量 图像需要处理的数据量太大,导致成本很高,效率很低。 图像是由像素构成的,每个像素又是由颜

2020-05-24 18:38:29 685 1

原创 特征工程的方法和步骤

目录0.示意图1.特征类别1.1.类别特征1.2.数值特征1.3.时间特征1.4.空间特征1.5.自然语言处理1.6.深度学习/神经网络1.7.图特征1.7.Leakage1.8.统计聚合1.9.自动化特征工程2.数据预处理2.1.无量纲化方法2.2.归一化2.3.定性特征One-hot/哑编码2.4.定量特征二值化2.5.缺失值填充2.6.数据变换3.特征选择3.1.Filter过滤法3.1.1.方差选择法3.1.2.相关系数法3.1.3.卡方检验3.1.4.互信息法3.2.Wrapper包装法3.2.1

2020-05-24 15:11:54 3293

原创 神经网络调参经验【多个大神的经验整理】

目录1.基本概念2.可调参数3.调参技巧3.1.Random Search代替Gird Search3.2.搜索过程:粗调→细调3.3.超参数的选取尺度3.3.1.对数尺度3.3.2.线性尺度4.调参4.1.学习率4.2.Epoch4.3.mini-batch size4.4.激活函数4.5.优化器4.6.权重初始化4.7.Batch Normalization批量归一化5.泛化5.1.欠拟合5.2.过拟合Dropout层:λ\lambdaλ调参参考1.基本概念超参数: 如学习率ααα、adam方法的β

2020-05-24 12:01:55 2233

原创 CPU核心、进程、线程

进程一个在内存中运行的应用程序。每个进程都有自己独立的一块内存空间,一个进程可以有多个线程,比如在Windows系统中,一个运行的xx.exe就是一个进程。线程 进程中的一个执行任务(控制单元),负责当前进程中程序的执行。一个进程至少有一个线程,一个进程可以运行多个线程,多个线程可共享数据。 与进程不同的是同类的多个线程共享进程的堆和方法区资源,但每个线程有自己的程序计数器、虚拟机栈和本地方法栈,所以系统在产生一个线程,或是在各个线程之间作切换工作时,负担要比进程小得多,也正因为如此,线程也被称.

2020-05-23 20:45:40 1620

原创 查找算法、python实现

目录0.概述0.1.分类0.2.平均查找长度1. 顺序查找、线性查找2. 二分查找3. 插值查找4. 斐波那契查找5. 树表查找6. 分块查找7. 哈希查找参考0.概述0.1.分类静态查找和动态查找:针对查找表而言的。动态表指查找表中有删除和插入操作的表。无序查找和有序查找:无序查找:被查找数列有序无序均可;有序查找:被查找数列必须为有序数列。0.2.平均查找长度Average Search Length,ASL需和指定key进行比较的关键字的个数的期望值,称为查找算法在查找成功时的平

2020-05-22 21:12:40 180

原创 神经网络模型不收敛原因、解决办法

目录0.可能原因汇总1.检查1.1.确保:数据干净、标注正确1.2.样本的信息量太大1.3.确保:归一化、标准化1.4.确保:数据Shuffle1.5.数据预处理1.6.确保:y与loss是搭配的1.7.确保输出层的激活函数正确2.模型优化2.1.learning rate设大了2.2.batchsize2.3.网络设定不合理2.4.数据正则化2.5.ReLU激活函数导致坏梯度2.6.正确初始化权重参考理论上,只要训练样本足够多,神经网络可以拟合原始数据分布。0.可能原因汇总没有对数据进行归一化忘

2020-05-22 19:06:40 15734

原创 梯度弥散、梯度爆炸及解决方案

2020-05-22 15:11:40 628

转载 排序算法(动图演示、python代码)

冒泡排序(Bubble Sort) 冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。算法步骤比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每

2020-05-21 20:07:44 251

原创 过拟合/欠拟合、偏差/方差

目录基本概念机器学习的泛化能力过拟合、欠拟合概念模型复杂度↑\uarr↑的变化与【偏差/方差】的关系偏差方差方差和偏差的关系【过/欠拟合】与【方差/偏差】的关系偏差-方差折衷【解决办法】欠拟合【解决办法】过拟合参考基本概念偏差:度量了学习算法的期望预测与真实结果的偏离程度, 即刻画了学习算法本身的拟合能力。方差:度量了同样大小的训练集的变动所导致的学习性能的变化, 即刻画了数据扰动所造成的影响。噪声:描述了在当前任务上,任何学习算法所能达到的期望泛化误差的下界,即刻画了学习问题本身的难度。经验误

2020-05-21 17:47:06 2803 1

原创 【NLP】Word2vec

目录相比one-hot?One-hot把词向量的维度变小?Word2vecCBOW:给定上下文预测target wordSkip-Gram:给定input word来预测上下文。获取训练数据模型训练训练技巧句子、文档层面的任务实现:Gensim 和 NLTK扩展参考相比one-hot?One-hot优点:(1)解决了分类器不好处理离散数据的问题(2)在一定程度上起到了扩充特征的作用缺点: 尤其是在文本特征表示上(1)是一个词袋模型,不考虑词与词之间的顺序,丢失词的顺序信息。(2)假设词与词

2020-05-20 21:27:12 424

原创 【有监督分类】k-NearestNeighbor (kNN)

KNN算法思路 kNN是通过测量不同样本之间的距离进行分类,认为样本可以最接近它的k个邻居来代表。思路: 如果一个样本在特征空间中的k个邻居样本中的大多数属于某一个类别,则该样本也属于这个类别,通常k⩽20k\leqslant20k⩽20 。kNN算法中,所选择的邻居都是已经正确分类的对象。算法过程:Input:Xtrain,Ytrain,XtestInput:X_{train},Y_{train},X_{test}Input:Xtrain​,Ytrain​,Xtest​Output:Ytes

2020-05-20 17:11:40 371

原创 【原理】变分自编码器

VAE是一种隐变量模型隐变量模型 广义上的隐变量主要就是指“不能被直接观察到,但是对系统的状态和能观察到的输出存在影响的一种东西”。 隐变量(latent variable)代表了隐因子(latent factor)的组合关系。已知: 数据集DXD_XDX​,其中每个点都属于空间XSX_SXS​。隐变量Z∈ZSZ∈Z_SZ∈ZS​。假设: 有两个变量,z∈ZSz∈Z_Sz∈ZS​和x∈XSx∈X_Sx∈XS​。存在一个确定性函数族f(z;θ)f(z;θ)f(z;θ),族中的每个函数由θ∈Θ\t

2020-05-18 20:20:36 400

原创 深度学习的发展历程(思维导图、时间轴)

机器学习和深度学习的关系事实上,很多PGM也可从神经网络的方面来解释。尤其是VAE,它可看做二类的混合模型。当PGM的层太多时,学习和推断都很难。因此,Deep learning往往偏向于指代Deep neural network。从感知机到深度学习目前所说的深度学习实际上多指2006年开始的一系列模型。深度学习大火的原因:逐渐增加的数据量并行计算、分布式系统的发展硬件GPU等的发展最重要的是,其效果好,优于之前大火的SVM虽然目前深度学习的理论稍滞后,但其效果好呀~未来说比对

2020-05-10 18:23:07 5335 1

原创 用python群发邮件(显示图片+图片附件)

目录先获取邮箱授权码函数部分运行部分先获取邮箱授权码QQ邮箱授权码获取方式其他的百度搜啦~函数部分import smtplibimport os.pathimport mimetypesfrom email.mime.text import MIMETextfrom email.mime.base import MIMEBasefrom email.mime.image import MIMEImagefrom email.mime.multipart import MIMEMulti

2020-05-09 22:18:52 805

原创 SVM:软间隔SVM(原理)

目录示意图1示意图2二分类问题描述1. 硬间隔SVM2. 软间隔SVM(1)Hinge Loss(2)松弛向量(3)最终优化形式3. 求解同硬间隔SVM:对偶+KKT示意图1示意图2值得注意的是:distance(Margin)=2∥ω∥distance(Margin)=\frac 2 {\parallel\omega\parallel}distance(Margin)=∥ω∥2​设两条直线方程为Ax+By+C1=0,Ax+By+C2=0Ax+By+C_1=0,Ax+By+C_2=0Ax+By+

2020-05-09 21:21:36 1471 1

原创 SVM:硬/最大间隔SVM(手撕原理)

示意图二分类问题描述Data={(xi,yi)}i=1N,xi∈Rp,yi∈{−1,+1}Data=\{(x_i, y_i)\}_{i=1}^N,x_i\in\R^p,y_i\in\{-1,+1\}Data={(xi​,yi​)}i=1N​,xi​∈Rp,yi​∈{−1,+1}由于超平面ωTx+b\omega^Tx+bωTx+b有很多个,要找到最好的一个超平面,以得到最低的泛化误差(或测试误差、期望损失)。hard-margin SVM判别模型,与概率无关:f(ω)=sign(ωTx+b)={ω

2020-05-08 20:43:31 373 1

原创 多标签分类算法

本文图片摘自https://www.zhihu.com/question/35486862中景略集智的回答。1. 问题转换(将多标签问题转换为单标签问题)1.1.二元关联(Binary Relevance)将每个标签看作一个单独的类分类问题缺点:它没有考虑标签之间的关联,因为它是单独处理每个目标变量。1.2.分类器链(Classifier Chains)第一个分类器...

2020-02-18 11:28:15 2649

原创 BingdingDB数据库

BindingDB是一个公开的,可通过网络访问的测量结合亲和力的数据库,主要关注被认为是药物靶标的蛋白质与类似药物的小分子之间的相互作用。 BindingDB包含1,735,582个结合数据,涉及7,352个蛋白质靶标和770,124个小分子。There are 2291 protein-ligand crystal structures with BindingDB affinity me...

2019-10-10 14:46:21 3617 1

原创 SuperTarget数据库详解

SuperTarget:http://insilico.charite.de/supertarget/index.phpSuperTarget是一个收集有关药物-靶点关系的信息的数据库。SuperTarget整合了DrugBank,BindingDBandSuperCyp。蛋白-蛋白相互作用:来自ConsensusPathDB 复合物信息:来自Corum它主要由三种不同...

2019-10-08 21:23:25 3709

原创 DrugBank数据库Downloads详解(版本5.1.4,2019-7-2)

Drugbank开放数据集是公共域数据集,可以在您的应用程序或项目中自由使用(包括商业用途)。它是根据Creative Common的CC0国际许可证发布的。在法律允许的范围内,将CC0与药房银行公开数据关联的人放弃了对药房银行公开数据的所有版权和相关或相邻权利。发表于:加拿大。https://www.drugbank.ca/目录1. Drug Sequences(以Approve...

2019-10-08 17:25:42 14419 10

原创 强化学习

强化学习是从直接的实验中进行学习。Reinforcement learning is learning from direct experiments.The goal of the learner is to find out the optimal behavior or actions to maximize the reward or the cost function。...

2019-09-04 21:22:38 329

原创 【gcforest】源代码修改

gcForest/lib/gcforest/utils/win_utils.py1.源代码如下:nh = (h - win_y) / stride_y + 1nw = (w - win_x) / stride_x + 1修改方法:把x和y互换2.源代码如下:src = X[:, k, di:di+nh*stride_y:stride_y, dj:dj+nw*stride_...

2019-07-31 20:35:12 351

深度学习发展的时间轴绘制图.vsdx

资源为本人使用Visio绘制的【深度学习发展的时间轴】。支持修改!详情可见https://blog.csdn.net/weixin_41171061/article/details/106039242

2020-05-12

机器学习和深度学习的关系-思维导图.vsdx

本人绘制的【机器学习和深度学习的关系】思维导图。是Visio文件,可以进行修改的,非常简单方便。也可直接看https://blog.csdn.net/weixin_41171061/article/details/106039242

2020-05-12

豆瓣爬虫_评分评星_短评及词云_简易用户版(内含教程)

自己写的一个简易用户版,给剧名即可得到想要的豆瓣信息。内含详细的操作视频教程。

2018-10-30

空空如也

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

TA关注的人

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