
机器学习
思考熊
这个作者很懒,什么都没留下…
展开
-
图神经网络(GNN)总结
使用GNN的原因:图结构数据的表示一般是不规则,传统的CNN等模型无法直接运用在图数据上,所以需要在图上重新定义卷积操作。其中要着重考虑感受野如何定义,节点的顺序性如何定义,如何进行池化操作。具体有以下三点:CNN无法处理Non Euclidean Structure的数据,学术上的表达是传统的离散卷积在Non Euclidean Structure的数据上无法保持平移不变性。通俗理解就是在拓扑图中每个顶点的相邻顶点数目都可能不同,那么当然无法用一个同样尺寸的卷积核来进行卷积运算 由于CNN无法处转载 2020-06-30 15:08:57 · 2054 阅读 · 0 评论 -
在文件夹下检索多个文件内容
import osimport re# 遍历指定目录,显示目录下的所有文件名def eachFile(filepath): pathDir = os.listdir(filepath) for allDir in pathDir: child = os.path.join('%s\%s' % (filepath, allDir)) if os.path.isfile(child): readFile(child) print(child.decode('gbk'))原创 2020-06-30 15:07:03 · 1764 阅读 · 0 评论 -
Rouge的安装与使用
这个坑实在太深了,总结几位大佬博客,汇总了可能出现的问题。愿为后人照福吧。步骤1. 需要安装perl解释器(ubuntu 系统已自带, 通过perl -v可查看当前版本);2. 需要额外安装perl解释器的XML::DOM模块以及DB_File模块,而XML::DOM的安装又需要XML::RegExp、XML::Parser、LWP::UserAgent和XML::Parser::Pe...转载 2019-08-20 16:11:01 · 4020 阅读 · 6 评论 -
json & pickle & shelve
1. json的序列化与反序列化json的使用需要导入该模块,一般使用import json即可。json的序列化方法1:json.dumps(obj)例如:f = open('file.txt','w') json.dumps(f.write([1,2,3,])) f.close()#使用该方法把内存数据以字符串的格式存储到文件中。方法2:json.dump(obj,f...转载 2018-06-19 14:40:23 · 187 阅读 · 0 评论 -
TensorFlow训练神经网络解决二分类问题
import tensorflow as tffrom numpy.random import RandomState#### 1. 定义神经网络的参数,输入和输出节点。batch_size = 8w1= tf.Variable(tf.random_normal([2, 3], stddev=1, seed=1))w2= tf.Variable(tf.random_normal([3, 1原创 2017-12-28 15:23:19 · 3931 阅读 · 0 评论 -
感知器--代码实现
import numpy as npfrom functools import reduceclass Perceptron(object): def __init__(self, input_num, activator): self.activator = activator self.weights = [0.0 for _ in range(inp原创 2017-12-28 15:22:14 · 800 阅读 · 0 评论 -
线性单元和梯度下降--代码实现
import numpy as npfrom functools import reduceclass Perceptron(object): def __init__(self, input_num, activator): self.activator = activator self.weights = [0.0 for _ in range(inpu原创 2017-12-28 15:18:14 · 436 阅读 · 0 评论 -
长短时记忆网络--代码实现
import matplotlib.pyplot as pltimport numpy as npclass IdentityActivator(object): def forward(self, weighted_input): return weighted_input def backward(self, output): return 1c原创 2017-12-28 15:12:55 · 2443 阅读 · 0 评论 -
循环神经网络--代码实现
import numpy as npfrom functools import reducedef element_wise_op(array, op): for i in np.nditer(array, op_flags=['readwrite']): i[...] = op(i)class ReluActivator(o原创 2017-12-28 14:58:02 · 1824 阅读 · 0 评论 -
卷积神经网络--代码实现
import tensorflow as tffrom numpy.random import RandomState#### 1. 定义神经网络的参数,输入和输出节点。batch_size = 8w1= tf.Variable(tf.random_normal([2, 3], stddev=1, seed=1))w2= tf.Variable(tf.random_normal([3, 1原创 2017-12-26 16:19:54 · 4531 阅读 · 12 评论 -
BP神经网络--代码实现
import randomfrom numpy import *from functools import reducedef sigmoid(inX): return 1.0 / (1 + exp(-inX))class Node(object): def __init__(self, layer_index, node_index): self.layer_原创 2017-12-28 15:00:38 · 1038 阅读 · 0 评论 -
浅谈CNN与RNN
CNN:1)卷积:对图像元素的矩阵变换,是提取图像特征的方法,多种卷积核可以提取多种特征。一个卷积核覆盖的原始图像的范围叫做感受野(权值共享)。一次卷积运算(哪怕是多个卷积核)提取的特征往往是局部的,难以提取出比较全局的特征,因此需要在一层卷积基础上继续做卷积计算,这也就是多层卷积。2)池化:降维的方法,按照卷积计算得出的特征向量维度大的惊人,不但会带来非常大的计算量,而且容易出现过拟合,解决过原创 2017-12-14 09:27:13 · 13185 阅读 · 2 评论 -
递归神经网络--代码实现
import numpy as npclass IdentityActivator(object): def forward(self, weighted_input): return weighted_input def backward(self, output): return 1class TreeNode(object): def原创 2017-12-20 14:38:32 · 1932 阅读 · 0 评论 -
Hopfield神经网络详解
起源根据神经网络运行过程中的信息流向,可分为前馈式和反馈式两种基本类型。前馈网络的输出仅由当前输入和权矩阵决定,而与网络先前的输出状态无关。美国加州理工学院物理学家J.J.Hopfield教授于1982年提出一种单层反馈神经网络,后来人们将这种反馈网络称作Hopfield 网。网络的状态 :DHNN网中的每个神经元都有相同的功能,其输出称为状态,用 xj 表示。 所有神经元状态的集合就构原创 2017-12-11 22:42:55 · 25152 阅读 · 0 评论 -
BP神经网络-XOR运算
import numpy as npx = np.array([[1,0,0], [1,0,1], [1,1,0], [1,1,1]])y = np.array([[0,1,1,0]])v = np.random.random((3,4))*2-1w = np.random.random((4,1))*2-1pr原创 2017-12-03 15:48:02 · 1870 阅读 · 0 评论 -
Hopfield-数字识别
import numpy as npimport neurolab as nlimport matplotlib .pyplot as plttarget = np.array([[0,0,0,0,0,0,0,0, 0,0,0,1,1,0,0,0, 0,0,1,0,0,1,0,0,原创 2017-12-06 17:02:42 · 2001 阅读 · 0 评论