在Keras中导入Attention包会产生ModuleNotFoundError:没有名为“ attention”的模块

时间:2019-07-12 18:16:09

标签: python python-3.x keras installation install

作为导入的一部分,我将导入AttentionLayer包,如下所示:

from attention import AttentionLayer

我收到以下错误:

ModuleNotFoundError: No module named 'attention'

我认为这可能是因为我需要进行点子安装,因此我根据网上发现的其他答案尝试了一些点子安装:

pip install AttentionLayer
pip install Attention 
pip install keras-self-attention

所有这三个给我:

Could not find a version that satisfies the requirement keras-self-attention (from versions: ) No Matching distribution found for....

为什么我无法使它正常工作,如何解决?

我怀疑这可能与设置pythonpath有关,但是我没有管理员权限才能在工作时对其进行编辑。

谢谢。

4 个答案:

答案 0 :(得分:0)

尝试使用名称keras-attention

pip install keras-attention

您可以在pip中搜索像这样的软件包:

pip search attention
keras-attention (1.0.0)                      - Attention Mechanism Implementations for NLP via Keras
.
.
.
(other stuff)

答案 1 :(得分:0)

尝试一下:

  1. 安装keras-self-attention:pip install keras-self-attention

  2. 导入SeqSelfAttention:from keras_self_attention import SeqSelfAttention

对我有用!

答案 2 :(得分:0)

我在 google collab 上工作,此代码在 2021 年 2 月对我有用 pip install keras-self-attention

答案 3 :(得分:-1)

这是因为您没有关注模块,请转到此链接https://github.com/thushv89/attention_keras/blob/master/layers/attention.py并使用此关注模块。问候。