一张简单HIVE表的元数据信息

首先将数据传到hdfs上

创建hive表,没有指定数据库,则默认存在default库中。

在搭建环境时,我设置的mysql作为元数据存储,并设置了一个名为“hive”的数据库存储数据。在数据库存储HIVE元数据,包括HIVE数据库的表、分区、列等信息。如下图所示为启动hive metastore会生成的表。

数据库级

表DBS:存储HIVE数据库的相关信息,可以看到较为重要的信息就是数据库所属的hdfs位置。

数据表级

表TBLS:存储表的相关信息,会给表分配一个TBL_ID,还会关联所属数据库DB_ID。保存数据表的表名,表类型。

[……]

阅读更多

搭建hadoop集群

环境准备

虚拟机:VmWare Fusion12(用于安装系统,VmWare Fusion12安装系统时会固定好好ip地址,使用NAT访问网络,这里可以省去很多时间)
系统:Centos 7(本来想用的centos6,占用空间小一点。但是centos6源不在维护,使用起来很便秘,centos7的维护到2024年。。。)
hadoop版本:2.7.7
JDK:jdk-8u291-linux-x64.rpm
spark版本:spark-3.0.3-bin-hadoop-2.7.7
scala版本:scala-2.13.6
hive版本:apache-hive-2.3.9
mysql版本:mysql-com[……]

阅读更多

基于谱图的GCN

Graph

现在就来说说这个字母G,我们知道CNN对于图像处理是十分得心应手的,堪称是法宝,而CNN处理的图像是十分规则的,人们认为处理图像问题是在欧式空间上进行的,如果我们把图片的像素看做一个个独立的点相互连接,就可以看做是一个特殊的图结构。而GCN中的graph是指的抽象的图,就像离散数学中学的图结构以及数据结构中学的图结构。

graph是由点集合\(V\),边集合\(E\),以及两点相连边的权重集合\(W\)构成的集合,即\(G=(V, E, W)\)。对于图片而言,将像素点当做点集合,相邻像素连线形成边集合,边之间的权重都是平均分布,这样也可以将其看做一个图结构。

卷[……]

阅读更多

傅里叶变换-numpy

傅里叶变换,可以将函数表示成三角函数的的积分(线性组合)

傅里叶变换基本公式:
\(F(\omega)=F(f(t)) = \lmoustache ^\infty _{-\infty} f(t) e ^{-i \omega t} dt\)
\(f(t) = F^{-1}[F(\omega)] = \frac{1}{2 \pi}\lmoustache ^\infty _{-\infty} F(\omega e^{i \omega t}d\omega)\)

一般使用计算机进行傅里叶变换,采集的是一个离散的信号,所以一般使用的是离散傅里叶变换,但是离散傅里叶变换,时间复杂度是O(N*N),大[……]

阅读更多

Brain Storm Algorithm(头脑风暴)

头脑风暴算法,听着就很给力的亚子。。。

头脑风暴算法是一种智能算法,受人类创造性问题解决过程启发的优化算法,人为万物之灵,不同于动物群体的固有行为模式,我们个体有更好的独立性创造性,同时也有很好的协作能力,通过模仿(研究)人类自己本身行为来进行智能算法的开发,似乎是得比动物群体算法要好。

像许多团队进行开发,想idea时,会召开头脑风暴会议,各抒己见,本人以前就参加一个三人的头脑风暴会议,我主要就是提出想法,其他两人就自己的见解提出问题来,然后讨论这个想法的适用性,可拓展性等等,reference 1就头脑风暴这一人类群体行为进行了总结:
1. 召集一群头脑风暴的人,他们的背景应尽可[……]

阅读更多

PSO算法

最近实验的涉及到PSO算法(Particle Swarm Optimization),pso属于进化算法(pso也属于群智算法)。由Kennedy和Eberhart提出,模拟鸟群觅食进行优化。基本核心是利用群体中的个体对信息的共享从而使整个群体的运动在问题求解空间中产生从无序到有序的演化过程,从而获得问题的最优解。

假设一个粒子\(\vec x_i\)属于D维空间的向量,群体进行搜索食物,粒子开始行动,以速度\(\vec v_i\)飞出,进行搜索,整个过程粒子对比先前搜索到的最优点\(\vec pbest_i\),这个是粒子个体的搜索经验,放大到群体范围,粒子还可以参考全体粒子的最优值([……]

阅读更多

PageRank算法

看到许多图神经网络论文都会涉及到Rank算法,所以抽空来看看这个Rank经典算法PageRank,算法的发明人就是两位Google创始人,这个算法最初也是作为网页的排名算法。

PageRank算法是基于有向图的形式进行的,在其上定义一个随机游走模型(一阶马尔科夫链),通过马尔科夫链的n步转移概率,整个有向图的概率转移会趋于稳定,达到收敛值。也就是我们在访问网页时,由一个网页到另一个网页的概率是一个定值,这样通过定值来判断网页的重要度。

PageRank算法描述

将强连通且非周期性的有向图记作\(G=(V, E)\),其中V和E分别表示节点和有向边的集合。转移概率矩阵\(M=[[……]

阅读更多

tensorflow2学习(四)

这一篇是使用tensorflow2进行mnist数据集的分类。

MLP分类mnist

上面代码使用的是一个多层感知机进行识别mnist数据集。(一般tensorflow数据存储在.keras/datasets文件夹中,直接使用tensorflow的api下载可能比较慢,可以提前下载好数据放入.keras/datasets文件夹中)

输入使用的是keras.layers.Flatten将图片矩阵装换成MLP所要求的数据输入,这个Flatten相当于如下代码功能(tensorflow提供的数据类型是numpy.ndarray):

然后两个隐藏层使用Dense(全连接[……]

阅读更多

信息论基础知识cook

信息是对不确定性的消除

信息论对于机器学习的影响是广泛的,例如,概率图模型中的应用,对数线性模型等等。此篇博客也是整理一下相关内容作为一个类似于《matrix cookbook》的内容展示,方便查阅。

一个消息之所以会含有信息 , 正是因为它具有不确定性 , 一个不具有不确定性的消息 是不会含有任何信息的,而通信的目的就是为了消除或部分消除这种不确定性 .比如,在 得知硬币的抛掷结果前 , 我们对于结果会出 现正面 还是 反面 是不确 定的 , 通 过通信 , 我 们 得知了硬币的抛掷结果,消除了不确定性,从而获得了信息 .因此,信息是对事物运动状态 或存在方式的不确定性的描述 .[……]

阅读更多

支持向量机(svm)

去年暑假刷凌青老师的凸优化课(reference 1),做了几个习题之后就没怎么管了,凌青老师在课上说了整个凸优化的核心就是KKT条件,前面也帮老师做了一下支持向量机的ppt,简单地copy了书本的东西,知道svm涉及到凸优化的知识,放寒假了,复习复习知识,所以来仔细看下svm作为凸优化的复习。

优化问题

优化问题的一般形式:在满足不等式约束以及等式约束的条件下,最小化函数\(f_0 (x)\)(从下面式子可以看到,当约束条件越多问题会变得很难解决)

\(minimize f_0 (x)\)
\(s.t. f_i (x) \leq b_i, i = 1, \ldots, m\)[……]

阅读更多