我正在学习scrapy的教程:http://doc.scrapy.org/en/1.0/intro/tutorial.html
当我在教程中运行以下示例脚本时.我发现即使它已经遍历选择器列表,我从中得到的磁贴sel.xpath('a/text()').extract()仍然是一个包含一个字符串的列表.喜欢[u'Python 3 Object Oriented Programming']而不是u'Python 3 Object Oriented Programming'.在后面的示例中,列表被分配给项目item['title'] = sel.xpath('a/text()').extract(),我认为这在逻辑上是不正确的.
import scrapy
class DmozSpider(scrapy.Spider):
name = "dmoz"
allowed_domains = ["dmoz.org"]
start_urls = [
"http://www.dmoz.org/Computers/Programming/Languages/Python/Books/",
"http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/"
]
def parse(self, response):
for sel in response.xpath('//ul/li'):
title = sel.xpath('a/text()').extract()
link = sel.xpath('a/@href').extract()
desc = sel.xpath('text()').extract()
print title, link, desc
Run Code Online (Sandbox Code Playgroud)
但是,如果我使用以下代码:
import scrapy
class DmozSpider(scrapy.Spider):
name = "dmoz"
allowed_domains = ["dmoz.org"]
start_urls = [
"http://www.dmoz.org/Computers/Programming/Languages/Python/",
]
def parse(self, response):
for href in …Run Code Online (Sandbox Code Playgroud) 我正在学习Theano.我写了一个简单的dropout函数如下:
import theano.tensor as T
srng = T.shared_randomstreams.RandomStreams()
def drop(input, dropout=0.0):
if T.gt(dropout, 0.):
retain_prob = 1 - dropout.astype('floatX')
mask = srng.binomial(n=1, p=retain_prob, size=input.shape, dtype='floatX')
return input * mask / retain_prob
else:
return input
Run Code Online (Sandbox Code Playgroud)
当我将此函数应用于前两个卷积层的输入时,每个图像上花费的平均时间从0.5ms增加到大约2.5ms!有谁知道这种剧烈减速的原因是什么?
我正在使用安装了cuDNN的GTX 980卡.
cuda neural-network theano deep-learning conv-neural-network