指针网络模型在PYNQ上的实现及广义仿射缩放轨迹分析
指针网络模型在PYNQ上的实现
指针网络模型主要由编码器网络和解码器网络组成。编码器将输入序列转换为代码,然后输入到解码器中。对于旅行商问题(TSP),输入序列 $P = {P_1, …, P_n}$ 是表示城市的笛卡尔坐标,输出 $CP = {C_1, …, C_n}$ 是从1到n的整数排列,表示最优路径。
基于Theano实现TSP指针网络模型
实现指针网络模型的步骤如下:
1. 生成TSP训练数据集 :
- 设置一组数据中节点的最大和最小数量。
- 生成最大和最小数量之间的随机数作为节点数量。
- 在 $[0, 1]×[0, 1]$ 正方形中随机生成平面坐标。
- 对于小规模TSP,使用动态规划算法获得精确解;对于大规模TSP,使用TSP基准创建样本。
- 将训练数据保存为 tsp.pkl.gz 。
2. 参数初始化模块 :配置神经网络的权重和偏置的初始值。
3. 构建指针网络模型 :
- 定义LSTM单元函数模块。
- 根据指针网络架构,使用LSTM单元创建编码器网络和解码器网络。
- 输出层使用softmax函数,其定义为:
[
\sigma(z) j = \frac{\exp (z_j)}{\sum {k=1}^{K} \exp (z_k)} \quad j \in 1, …, K
]
- 使用交叉熵
超级会员免费看
订阅专栏 解锁全文
9761

被折叠的 条评论
为什么被折叠?



