import numpy as np
def qrhouse(A):
(m,n) = A.shape
R = A
V = np.zeros((m,n))
for k in range(0,min(m-1,n)):
x = R[k:m,k]
x.shape = (m-k,1)
v = x + np.sin(x[0])*np.linalg.norm(x.T)*np.eye(m-k,1)
V[k:m,k] = v
R[k:m,k:n] = R[k:m,k:n]-(2*v)*(np.transpose(v)*R[k:m,k:n])/(np.transpose(v)*v)
R = np.triu(R[0:n,0:n])
return V, R
A = np.array( [[1,1,2],[4,3,1],[1,6,6]] )
print qrhouse(A)
Run Code Online (Sandbox Code Playgroud)
它是qr分解代码,但我不知道为什么会发生错误.值错误发生在V[k:m,k] = v
value error :
could not broadcast input array from shape (3,1) into shape (3)
Run Code Online (Sandbox Code Playgroud) 我的问题是使用Keras的LSTM层预测(t_0, t_1, ... t_{n_post-1})给定前一个时间步长的值序列(t_{-n_pre}, t_{-n_pre+1} ... t_{-1}).
Keras很好地支持以下两种情况:
n_post == 1 (多对一预测) n_post == n_pre (多个到多个预测序列长度相等)但不是版本在哪里n_post < n_pre.
为了说明我的需要,我使用正弦波构建了一个简单的玩具示例.
多对一模型预测
使用以下型号:
model = Sequential()
model.add(LSTM(input_dim=1, output_dim=hidden_neurons, return_sequences=False))
model.add(Dense(1))
model.add(Activation('linear'))
model.compile(loss='mean_squared_error', optimizer='rmsprop')
Run Code Online (Sandbox Code Playgroud)
使用n_pre == n_post进行多对多模型预测
网络学会使用n_pre == n_post非常好地拟合正弦波与这样的模型:
model = Sequential()
model.add(LSTM(input_dim=1, output_dim=hidden_neurons, return_sequences=True))
model.add(TimeDistributed(Dense(1)))
model.add(Activation('linear'))
model.compile(loss='mean_squared_error', optimizer='rmsprop')
Run Code Online (Sandbox Code Playgroud)
使用n_post <n_pre进行多对多模型预测
但现在,假设我的数据如下所示:dataX或input:(nb_samples, nb_timesteps, nb_features) -> (1000, 50, 1)
dataY或output:(nb_samples, nb_timesteps, nb_features) -> (1000, 10, 1)
经过一些研究后,我找到了一种如何在Keras中处理这些输入大小的方法,使用如下模型:
model = Sequential()
model.add(LSTM(input_dim=1, output_dim=hidden_neurons, return_sequences=False)) …Run Code Online (Sandbox Code Playgroud) \n\n\n
tasks.<TASKNAME>.outputs.parameters: 当上一个任务使用\n\'withItems\' 或 \'withParams\' 时,这包含每个调用的输出\n参数映射的 JSON 数组
当尝试使用以下简单的工作流程时:
\napiVersion: argoproj.io/v1alpha1\nkind: Workflow\nmetadata:\n generateName: test-workflow-\nspec:\n entrypoint: start\n templates:\n - name: start\n dag:\n tasks:\n - name: with-items\n template: hello-letter\n arguments:\n parameters:\n - name: input-letter\n value: "{{item}}"\n withItems:\n - A\n - B\n - C\n - name: show-result\n dependencies:\n - with-items\n template: echo-result\n arguments:\n parameters:\n - name: input\n value: "{{tasks.with-items.outputs.parameters}}"\n\n - name: hello-letter\n inputs:\n parameters:\n - name: input-letter\n outputs:\n parameters:\n - name: output-letter\n value: …Run Code Online (Sandbox Code Playgroud) 以下程序的目的是学习python生成器和迭代器实现,以便了解Python魔术方法.
我卡住了实现这个iteritems()功能.另外,我想知道我是否朝着正确的方向前进,或者在理解python魔术方法时我在概念上是错误的.
import random
class Random(object):
""" generate randomised int of specified length --> [r1, r2, r3....] """
def __init__(self, length = 1, rand_range = 100):
self.index = 0
self.generated_range = []
self.length = length if str(length).isdigit() else 1
self.rand_range = rand_range if str(rand_range).isdigit() else 100
def __iter__(self): return self
def next(self):
if self.index < self.length:
item = random.randrange(0, self.rand_range)
self.generated_range.append(item)
self.index += 1
return item
raise StopIteration
def __eq__(self, obj):
if self.length == obj.length and self.rand_range == …Run Code Online (Sandbox Code Playgroud) 我正在研究 Python 2.6.5。
给定一个抽象语法树,我想获取它的子树。
大多数 StackOverflow 帖子都讨论了ast.NodeVisitor其中定义的方法:visit()、generic_visit()。但是,visit()并不generic_visit()要给孩子们,而是他们直接将函数递归地应用到他们身上。
有人可以写一段简短的代码来演示它吗?python库中是否存在相同的预定义函数?
我正在使用java在java中创建一个bot java.awt.Robot.机器人在浏览器上工作正常(我也使用Microsoft Word测试过它!)但是当我在游戏中运行它时,唯一有效的功能是mouseMove.我想构建一个只需按下键盘按钮的机器人.
我实例化了机器人类
Robot r = new Robot();
Run Code Online (Sandbox Code Playgroud)
然后我做一些简单的事情:按z,按1,移动鼠标并右键单击.
r.keyPress(KeyEvent.VK_Z);
r.keyRelease(KeyEvent.VK_Z);
r.keyPress(KeyEvent.VK_1);
System.out.println("Press 1 button");
r.keyRelease(KeyEvent.VK_1);
System.out.println("Release 1 button");
r.delay(1000);
System.out.println("Move mouse");
r.mouseMove(110, 690);
System.out.println("Press");
r.mousePress(InputEvent.BUTTON3_MASK);
System.out.println("Release");
r.mouseRelease(InputEvent.BUTTON3_MASK);
Run Code Online (Sandbox Code Playgroud)
为什么会这样?如果它在后台运行,这个Robot类可以在游戏中执行这些操作吗?
谢谢
更新:例如,如果我在PES 2012上运行我的机器人,它运行正常,但如果我在像Cabal这样的在线游戏上运行它,它不起作用?游戏的保护系统没有检测到任何东西,所以情况并非如此.
我有这段代码:
puts "Start"
loop do
Thread.start do
puts "Hello from thread"
exit
end
text = gets
puts "#{text}"
end
puts "Done"
Run Code Online (Sandbox Code Playgroud)
我期望看到"开始"后跟"线程中的Hello",然后我可以输入回复给我的输入.相反,我得到"开始"和"来自线程的Hello",然后程序退出.
从以下文档exit:
终止thr并调度另一个要运行的线程.如果此线程已被标记为被杀死,则exit返回Thread.如果这是主线程或最后一个线程,则退出进程.
但我以为我催生了一个新线程?为什么退出我的主要流程?
我正在尝试为Keras中的XOR问题实现一个简单的分类器.这是代码:
from keras.models import Sequential
from keras.layers.core import Dense, Dropout, Activation
from keras.optimizers import SGD
import numpy
X = numpy.array([[1., 1.], [0., 0.], [1., 0.], [0., 1.], [1., 1.], [0., 0.]])
y = numpy.array([[0.], [0.], [1.], [1.], [0.], [0.]])
model = Sequential()
model.add(Dense(2, input_dim=2, init='uniform', activation='sigmoid'))
model.add(Dense(3, init='uniform', activation='sigmoid'))
model.add(Dense(1, init='uniform', activation='softmax'))
sgd = SGD(lr=0.001, decay=1e-6, momentum=0.9, nesterov=True)
model.compile(loss='mean_squared_error', optimizer=sgd)
model.fit(X, y, nb_epoch=20)
print()
score = model.evaluate(X, y)
print()
print(score)
print(model.predict(numpy.array([[1, 0]])))
print(model.predict(numpy.array([[0, 0]])))
Run Code Online (Sandbox Code Playgroud)
我尝试改变时代数,学习率和其他参数.但是从第一个时期到最后一个时期错误保持不变.
Epoch 13/20
6/6 [==============================] - …Run Code Online (Sandbox Code Playgroud) 我正在尝试{{var}}用 Python 的模板替换格式中的变量。
from string import Template
class CustomTemplate(Template):
delimiter = '{{'
pattern = r'''
\{\{(?:
(?P<escaped>\{\{)|
(?P<named>[_a-z][_a-z0-9]*)\}\}|
(?P<braced>[_a-z][_a-z0-9]*)\}\}|
(?P<invalid>)
)
'''
replacement_dict = {
"test": "hello"
}
tpl = '''{
"unaltered": "{{foo}}",
"replaced": "{{test}}"
}'''
a = CustomTemplate(tpl)
b = a.safe_substitute(replacement_dict)
print(b)
Run Code Online (Sandbox Code Playgroud)
输出:
{
"unaltered": "{{foo",
"replaced": "hello"
}
Run Code Online (Sandbox Code Playgroud)
如您所见,{{foo}}变量(不是替换的一部分)的右括号被砍掉了。我认为这是正则表达式的编写方式(结束\}\})?
我想用模板来解决这个问题,而不是用任何其他外部库。
python ×6
keras ×2
argoproj ×1
awtrobot ×1
bots ×1
containers ×1
iterator ×1
java ×1
julia ×1
kubernetes ×1
lstm ×1
numpy ×1
online-game ×1
regex ×1
ruby ×1
templates ×1
tensorflow ×1