小编uda*_*ani的帖子

如何使用Javassist创建ArrayList

我想在检测期间将arrayList添加到方法中.我在尝试添加一行来创建Map时尝试了(Javassist CannotCompileException),但它抛出了一个与java.lang.VerifyError不同的异常.

    public void createInsertBefore(String scenarioName, String className, CtMethod method,
                                   String insertBefore) throws CannotCompileException {
        method.addLocalVariable("startTime", CtClass.longType);
        StringBuilder bBuilder = new StringBuilder();
        bBuilder.append("startTime = System.nanoTime();");
        bBuilder.append("System.out.println(startTime);");

        if((insertBefore!=null) && !insertBefore.isEmpty()){
            bBuilder.append(insertBefore);
        }

        bBuilder.append("java.util.List metadata = new java.util.ArrayList();");

        System.out.println(bBuilder.toString());
        method.insertBefore(bBuilder.toString());
}
Run Code Online (Sandbox Code Playgroud)

从print语句收到的输出是,

startTime = System.nanoTime();
System.out.println(startTime);
java.util.List metadata = new java.util.ArrayList();
Run Code Online (Sandbox Code Playgroud)

但它抛出以下异常,

Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:382)
    at sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:397)
Caused by: java.lang.VerifyError
    at sun.instrument.InstrumentationImpl.retransformClasses0(Native Method)
    at sun.instrument.InstrumentationImpl.retransformClasses(InstrumentationImpl.java:144) …
Run Code Online (Sandbox Code Playgroud)

java instrumentation arraylist

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

如何用Keras实现深度双向LSTM?

我正在尝试实现基于LSTM的语音识别器.到目前为止,我可以通过遵循Merge层中的示例来设置双向LSTM(我认为它可以作为双向LSTM).现在我想用另一个双向LSTM层来尝试它,这使它成为一个深度双向LSTM.但我无法弄清楚如何将先前合并的两层的输出连接到第二组LSTM层.我不知道Keras是否有可能.希望有人可以帮助我.

我的单层双向LSTM的代码如下

left = Sequential()
left.add(LSTM(output_dim=hidden_units, init='uniform', inner_init='uniform',
               forget_bias_init='one', return_sequences=True, activation='tanh',
               inner_activation='sigmoid', input_shape=(99, 13)))
right = Sequential()
right.add(LSTM(output_dim=hidden_units, init='uniform', inner_init='uniform',
               forget_bias_init='one', return_sequences=True, activation='tanh',
               inner_activation='sigmoid', input_shape=(99, 13), go_backwards=True))

model = Sequential()
model.add(Merge([left, right], mode='sum'))

model.add(TimeDistributedDense(nb_classes))
model.add(Activation('softmax'))

sgd = SGD(lr=0.1, decay=1e-5, momentum=0.9, nesterov=True)
model.compile(loss='categorical_crossentropy', optimizer=sgd)
print("Train...")
model.fit([X_train, X_train], Y_train, batch_size=1, nb_epoch=nb_epoches, validation_data=([X_test, X_test], Y_test), verbose=1, show_accuracy=True)
Run Code Online (Sandbox Code Playgroud)

我的x和y值的尺寸如下.

(100, 'train sequences')
(20, 'test sequences')
('X_train shape:', (100, 99, 13))
('X_test shape:', (20, 99, 13))
('y_train shape:', (100, 99, 11))
('y_test shape:', (20, 99, …
Run Code Online (Sandbox Code Playgroud)

deep-learning lstm keras

12
推荐指数
3
解决办法
2万
查看次数

如何准备用于语音识别的数据集

我需要训练一个双向LSTM模型以识别离散语音(单个数字从0到9),我已经录制了100个扬声器的语音。接下来我该怎么办?(假设我将它们分成单个的.wav文件,每个文件包含一个数字)我将使用mfcc作为网络功能。

此外,如果我要使用支持CTC(连接主义者时间分类)的库,我想知道数据集的差异。

speech-recognition unsupervised-learning recurrent-neural-network

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

如何获得周围 java.lang.verrifyError

我正在尝试使用检测代码生成一个随机数。为此,我添加了以下表达式来生成一个随机数。但它正在抛出一个验证错误,如下所示。

method.addLocalVariable("instMethod_correlationId", CtClass.longType);
beforeBuilder.append("instMethod_correlationId = Long.valueOf(String.valueOf(System.nanoTime()) + String.valueOf(Math.round(Math.random())));");
Run Code Online (Sandbox Code Playgroud)

我添加了一个长变量并分配了上面生成的值。但是我在运行时遇到了以下异常。但是如果我在普通项目中运行相同的数字生成,它不会抛出任何异常。

java.lang.VerifyError: Bad type on operand stack
Exception Details:
  Location:
    org/h2/jdbc/JdbcConnection.prepareStatement(Ljava/lang/String;)Ljava/sql/PreparedStatement; @38: i2l
  Reason:
    Type 'java/lang/Long' (current frame, stack[0]) is not assignable to integer
  Current Frame:
    bci: @38
    flags: { }
    locals: { 'org/h2/jdbc/JdbcConnection', 'java/lang/String', top, long, long_2nd }
    stack: { 'java/lang/Long' }
  Bytecode:
    0000000: b803 6c42 bb03 6e59 b703 6fb8 036c b803
    0000010: 73b6 0376 b803 7cb8 0380 b803 73b6 0376
    0000020: b603 81b8 0386 8537 05b8 038b b803 8e16
    0000030: …
Run Code Online (Sandbox Code Playgroud)

java instrumentation

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

shell脚本中的"-le"是什么?

我正在阅读这段代码.我想知道-le以下代码段的含义 .

if [ $stage -le 2 ]; then
Run Code Online (Sandbox Code Playgroud)

在其中一个问题中,它-le代表<=字符串,但这是在Perl中.这里也一样吗?

此外,我想知道该$stage变量是否自动更新.它已经0在开始时初始化,但后来,它是如何增加的?

linux shell if-statement conditional-statements

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