小编IS9*_*S92的帖子

在 Keras 中合并,类型错误:模块对象不可调用?

我正在尝试连接所有输入,但由于某种原因,我总是收到该错误:类型错误:模块对象不可调用,您能帮我解决吗?我试图用 Keras.layers.concatenate 替换合并,但没有成功。

def stack_latent_layers(n):
        #Stack n bidi LSTMs
        return lambda x: stack(x, [lambda : Bidirectional(LSTM(hidden_units,
                                                                  return_sequences = True))] * n )

def predict_classes():
        #Predict to the number of classes
        #Named arguments are passed to the keras function
        return lambda x: stack(x,
                                    [lambda : TimeDistributed(Dense(output_dim = num_of_classes(),
                                                                    activation = "softmax"))] +
                                    [lambda : TimeDistributed(Dense(hidden_units,
                                                                    activation='relu'))] * 3)

word_embedding_layer = emb.get_keras_embedding(
                                                    trainable = True,
                                                    input_length = sent_maxlen,   name='word_embedding_layer') 


pos_embedding_layer = Embedding(output_dim = pos_tag_embedding_size,
                         input_dim = len(SPACY_POS_TAGS),
                         input_length = sent_maxlen,
                         name='pos_embedding_layer')

latent_layers …
Run Code Online (Sandbox Code Playgroud)

python neural-network keras

4
推荐指数
1
解决办法
2634
查看次数

Scikit learn 的 AttributeError: 'LabelEncoder' 对象没有属性 'classes_'?

我正在尝试使用sklearn LabelEncoder,但它说它没有属性classes_,但它存在,我不知道是什么问题。这是我的代码片段

from sklearn.preprocessing import LabelEncoder
encoder =  LabelEncoder()

def classes_():
                #Return the classes which are classified by this model
                return encoder.classes_
def num_of_classes():
            """
            Return the number of ouput classes
            """
            return len(classes_())

X=TimeDistributed(Dense(output_dim = num_of_classes(),293,activation = "softmax")                                                               
Run Code Online (Sandbox Code Playgroud)

但是,我收到此错误 AttributeError: 'LabelEncoder' object has no attribute 'classes_'

python scikit-learn keras

4
推荐指数
1
解决办法
4535
查看次数

当 panda 列具有 NULL 值时,如何将其转换为 int?

所以我正在处理我的 CSV 文件,它在每个句子后面都有一个空白的单元格“”,如下图所示。

当我使用以下方式打印列类型时:

print(data.dtypes)

Run Code Online (Sandbox Code Playgroud)

我知道它们都是对象,但是我希望列 word_id、head_pred_id、sent_id 和 run_id 为 int64。

当我使用以下方法转换列数据类型时:

data.word_id = data.word_id.astype(int)

Run Code Online (Sandbox Code Playgroud)

我收到错误:以 10 为基数的 int() 的文字无效:' '

所以我认为空白的间隔单元格造成了问题,所以我在 CSV 文件本身中将它们替换为 NULL。

现在,4 列类型自动设置为“Float64”,但是当我对它们执行某些操作时,我收到相同的错误: ValueError: invalidliteral for int() with base 10: ''

我仔细检查了是否有我错过的单元格,但我没有错过任何空白单元格在我的 CSV 文件中全部设置为 NULL。

下面是出现错误的代码片段:

def encode_inputs(sents):
        """
        Given a dataframe which is already split to sentences,
        encode inputs for rnn classification.
        Should return a dictionary of sequences of sample of length maxlen.
        """
        word_inputs = []
        pred_inputs = []
        pos_inputs = []


        assert(all([len(set(sent.run_id.values)) == …
Run Code Online (Sandbox Code Playgroud)

python csv excel pandas

3
推荐指数
1
解决办法
7738
查看次数

Python:如何在不循环的情况下获取给定值的字典键?

所以我有一个带有值的字典:[假设没有重复]

mydict={0: 1, 1: 2, -2: -1, -1: 0, -3: -2}
Run Code Online (Sandbox Code Playgroud)

我想要做的是使用该值获取它们的键,因此如果给出 1,我希望它获取具有值 1 的键,即 0 并将其附加到列表中。

 finalO=[]
  if x in myddict.values():
      finalO.append([mydict.**getKeyByVal**(x)])--> so is there's a built in function that will allow me to do that?
Run Code Online (Sandbox Code Playgroud)

我不想做一个 for 循环,因为我试图在线性时间内做到这一点。

python dictionary

2
推荐指数
1
解决办法
2992
查看次数

Python从具有列表作为值的哈希图中选择一个随机值?

所以我有一个defaultdict(list) hashmap,潜在的术语

potential_terms={9: ['leather'], 10: ['type', 'polyester'], 13:['hello','bye']}
Run Code Online (Sandbox Code Playgroud)

我想要输出的是具有最低键的2个值(单词),所以'leather'肯定是第一个输出,但是'type''polyester'都有k=10,当键相同时,我想要随机选择“类型”“聚酯”

我所做的是:

out=[v for k,v in sorted(potential_terms.items(), key=lambda x:(x[0],random.choice(x[1])))][:2]
Run Code Online (Sandbox Code Playgroud)

但是当我打印时out我得到:

[['皮革'],['类型','聚酯纤维']]

我的猜测当然是 lambda 函数的第二部分:random.choice(x[1])。关于如何通过输出“类型”“聚酯”使其按预期工作有什么想法吗?

谢谢

python lambda

1
推荐指数
1
解决办法
248
查看次数

标签 统计

python ×5

keras ×2

csv ×1

dictionary ×1

excel ×1

lambda ×1

neural-network ×1

pandas ×1

scikit-learn ×1