GCN 图卷积神经网络用来提取拓扑图的空间特征
——————————————————–对比CNN——————————
处理数据结构不同CNN:矩阵(像素点) –欧拉结构GCN:图结构(拓扑结构)–非欧拉结构
特征提取CNN:卷积GCN:谱方法
———————————————————-图卷积理论基础————————————————-
图的拉普拉斯矩阵L
常用 (D:对角阵矩阵(顶点的度)A:邻接矩阵)
意义:图的性质可以表示在拉普拉斯矩阵之中,即我们将图的分析,可以变为对拉普拉斯矩阵的谱分析
傅立叶变换与拉普拉斯矩阵的关系:拉普拉斯矩阵的特征向量是傅立叶变换的基
理解:在GCN中对图进行卷积操作是先将图和卷积核傅里叶变换后相乘再变换回来,但有了上述的关系后,可以将傅里叶变换的求解转换为求拉普拉斯矩阵的特征向量
拉普拉斯矩阵的谱分解(特征分解)
特征分解复习:将矩阵分解为由其特征值和特征向量表示的矩阵之积
从传统的FT、卷积 à graph上的FT、卷积
graph上的FT
定义
矩阵形式
3. graph上的卷积
⊙:维度相同两矩阵对应元素相乘
卷积核 h 的傅里叶 变换可写成 对角矩阵:
Read more
也叫网路嵌入network embedding: 将网络中的结构(节点 边 子图)映射到一个低维空间的稠密向量表示【高维稀疏的邻接矩阵à低维稠密的向量空间】理由:我们身边存在各种网络结构型数据:社交网络、引文网络、生物信息网..如果要对这些数据进行机器学习任务,通常我们知道需要向量形式的输入,因此对于这类网络结构数据就需要进行网络表示学习来得到优质的网络节点表示(embedding)总的方法可以分为基于网络结构和基于网络属性的含义:利用network学习数据表示的过程目的:将网络中的节点表示成低维、实值、稠密的向量形式模型主要结构:Encoder + Decoder以下是embedding的例子—————图谱嵌入表示学习—————————–知识图谱:语义网络(实体+关系) be like三元组结构Knowledge Graph Embedding:将知识图谱映射到一个低维向量空间中,用低 维、稠密的向量表示实体和关系模型:双层注意力编码器 + ConvP解码器
Read more
前驱知识Opencv
pytroch
pyqt5
系统功能以使用者在人脸识别设备上的数据比对作为基础,以计算机为后台处理工具,通过单片机终端实施对宿舍门锁的物理控制。同时在用户端可以生成图形化界面便于人员面部信息的录入和修改,以及记录开门时刻。在前期计划中,会利用外部设备进行信息的采集,以及实施相应控制操作,但设计过程中发现缺乏硬件条件,因此硬件部分的设计更改为利用电脑摄像头采集数据并进行实时检测反馈,将检测结果发送到单片机,并用对应信号灯亮起代替相应控制信号输出。
系统组成
人员信息管理模块(更新与删除)
人脸检测与识别模块
UI交互模块
终端控制模块
模块设计
Read more
参考:https://blog.csdn.net/jancis/article/details/80824793https://blog.csdn.net/qq_45769063/article/details/108773998
概念先导特征匹配一幅图像中总存在着其独特的像素点,这些点我们可以认为就是这幅图像的特征,称为特征点。而CV中很重要的图像特征匹配就是以特征点为基础而进行的,一般来讲进行特征匹配的步骤如下:
图像预处理
创建特征检测器
获取特征点及特征描述符
创建特征匹配器
选取优良匹配点
绘制相应的匹配线
本文重点介绍检测算法SIFT和匹配算法单应性检测
尺度空间
高斯金字塔
Read more
pyinstaller常用命令
打包步骤
先cd到项目目录下,在命令行中先用python xxx.py测试,看看有没有缺什么模块——
很多时候会出现错误:ImportError: No module named xxx(但在IDE中可以运行,这时由于路径的原因)
解决:在报错模块中添加
import sys
import os
curPath = os.path.abspath(os.path.dirname(__file__))
rootPath = os.path.split(curPath)[0]
sys.path.append(rootPath)
运行通过后
执行pyinstaller -F xx.py --workpath temp --distpath Release
(最开始不要隐藏命令行 不然出错情况看不到) 即不要添加 -w
workpath:可以自定义临时文件(一些缓存)的路径,文件名是temp(自定)
distpath:可以自定义生成的文件路径,文件名是release(自定)
不自定义路径的话,默认在当前路径下生成
把生成的exe拖进来运行测试
问题记录
exe在运行时出现错误**”Failed to execute script xxx.exe”**
问题解决方案
exe过大
压缩exe的大小
Read more
实现功能在信息管理模块中,我需要增加删除用户的功能,每次点击下拉框时可以实时扫描当前用户信息(每个用户是单独放在文件夹内,相当于扫描一个大文件夹下的文件夹名),然后选择对应的id进行删除。
comboBox初步想法是为cBox添加点击事件,每次点击都调用一个函数去扫描指定文件夹下的文件名。
QComboBox类中的常用方法如表
方法
描述
addItem()
添加一个下拉选项
addItems()
从列表中添加下拉选项
Clear()
删除下拉选项集合中的所有选项
count()
返回下拉选项集合中的数目
currentText()
返回选中选项的文本
itemText(i)
获取索引为i的item的选项文本
currentIndex()
返回选中项的索引
setItemText(int index,text)
改变序列号为index的文本
QComboBox类中的常用信号
信号
含义
Activated
当用户选中一个下拉选项时发射该信号
currentIndexChanged
当下拉选项的索引发生改变时发射该信号
highlighted
当选中一个已经选中的下拉选项时,发射该信号
Read more
主要模块OpenCV中的函数接口大体可以分为如下部分:
- core:核心模块,主要包含了OpenCV中最基本的结构(矩阵,点线和形状等),以及相关的基础运算/操作。
- imgproc:图像处理模块,包含和图像相关的基础功能(滤波,梯度,改变大小等),以及一些衍生的高级功能(图像分割,直方图,形态分析和边缘/直线提取等)。
- highgui:提供了用户界面和文件读取的基本函数,比如图像显示窗口的生成和控制,图像/视频文件的IO等。
如果不考虑视频应用,以上三个就是最核心和常用的模块了。针对视频和一些特别的视觉应用,OpenCV也提供了强劲的支持:
- video:用于视频分析的常用功能,比如光流法(Optical Flow)和目标跟踪等。
- calib3d:三维重建,立体视觉和相机标定等的相关功能。
- features2d:二维特征相关的功能,主要是一些不受专利保护的,商业友好的特征点检测和匹配等功能,比如ORB特征。
Read more
网格策略首先要注意:所选产品都是ETF(属于场内基金) 买入、卖出时是按照实时价格计算的,而场外基金是按照每天公布的净值来计算
网格策略是一个中短期波段策略
策略1.0第一步:确定交易品种最佳品种,当然是那些没完没了的上下折腾,几年后回头一看我去你怎么一点都没动啊第二步:列出网格表格。表格中包括交易价格、交易金额、交易日期价格部分,如果从1开始,以5%幅度为一网,则买入价格分别为:1、0.95、0.9、0.85、0.8……卖出价格除第一网1.0买入的要在1.05卖出外,其它每一网都是上一网的买入价格。即,0.95买入的一网,1元卖出;0.9买入的,0.95卖出,依次类推。
注意:这个每一格价格是往下走的
所以,你1元买入的部分,在1.05清仓,赚到5%利润。0.95买到的,在1元清仓,赚到5.26%……最终,在0.7元买入的部分,0.75清仓,则这部分收益率就可以到7.14%
1.0系统中,普通的品种我一般给5%。波动大的品种,比如券商指数,我给10%。供参考
走势相似的品种不要重复开
第三步:做压力测试穷鬼没有压力🤞第四步:设置交易提醒第五步:按照交易提醒进行交易
Read more
通过继承nn.Module类来实现
在_init_构造函数中申明各个层的定义.
在forward中实现层之间的连接关系,实际上就是前向传播的过程.
注意:pytorch里面一般是没有层的概念,层也是当成一个模型来处理的
例如:
# 全连接层
class Linear(Module):
__constants__ = ['bias']
def __init__(self, in_features, out_features, bias=True):
super(Linear, self).__init__()
self.in_features = in_features
self.out_features = out_features
self.weight = Parameter(torch.Tensor(out_features, in_features))
if bias:
self.bias = Parameter(torch.Tensor(out_features))
else:
self.register_parameter('bias', None)
self.reset_parameters()
def reset_parameters(self):
init.kaiming_uniform_(self.weight, a=math.sqrt(5))
if self.bias is not None:
fan_in, _ = init._calculate_fan_in_and_fan_out(self.weight)
bound = 1 / math.sqrt(fan_in)
init.uniform_(self.bias, -bound, bound)
# 卷积层
class Conv2d(_ConvNd):
def __init__(self, in_channels, out_channels, kernel_size, stride=1,
padding=0, dilation=1, groups=1,
bias=True, padding_mode='zeros'):
kernel_size = _pair(kernel_size)
stride = _pair(stride)
padding = _pair(padding)
dilation = _pair(dilation)
super(Conv2d, self).__init__(
in_channels, out_channels, kernel_size, stride, padding, dilation,
False, _pair(0), groups, bias, padding_mode)
基本步骤简单来讲就是:先继承,再构建组件,最后组装
其中基本组件可从 torch.nn 中获取,或者从 torch.nn.functional 中获取,同时为了方便重复使用组件,可以使用 Sequential 容器将一系列组件包起来,最后在 forward() 函数中将这些组件组装成你的模型
Read more
选基金==谨记:理财不是发财==
货币—>余额宝 几乎不会亏 替代现金债券 替代定期存款股票—> 低买高出 分红混合 √
7日年化收益:如果过去7天平均每天的收益率持续1年,投资者能赚 x%万份收益:每1万块,在过去的一天产生了多少收益收益率:最近10年的平均风险:持有越长 风险越低 收益越高货币基金平均年化收益率在 2.56%债券型基金平均年化收益率在 6.4%混合型基金平均年化收益率在 13.16% 战胜通货膨胀起码10%以上股票型基金平均年化收益率在 14.11%
筛选指标收益率 : 越高越好成立时间: 3年以上规模: 2亿~110亿手续费:越低越好基金经理更换频率:越低越好基金公司盈利能力:同类排名+跑赢沪深300经理选股择时能力:任期 评分(>50 星级 收益排名
天天基金平台交易mm:****以上只是所谓经验人士给出的经验方法,在学习了伍治坚的投资生存丛林法则后,我发现在真实数据下的统计表明,基金的业绩与经理与过去成绩的关系并没有一个显著联系,以下是一些摘录,一些观念,为目前市场下的选基思路提供一些指南
广大投资者要对自己是否拥有通过择时来获取投资回报的能力有清醒的认识!!!研究表明连基金经理提供的阿尔法主要来自于他们挑选股票的能力,而非择时能力
不要当风口上的猪!!
Read more