Python
寸先生的牛马庄园
专注AI,热爱文学
展开
-
Google BERT最全资源收集
本文资源均收集自网络,方便大家研究和使用Google BERT模型BERT论文:BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding论文解读:站在BERT肩膀上的NLP新秀们(PART I)站在BERT肩膀上的NLP新秀们(PART II)如何可视化BERT?BERT相关论文...原创 2019-07-17 18:05:32 · 569 阅读 · 0 评论 -
PlotNeuralNet-一款绘制神经网络的好工具
今天发现github上一款绘制神经网络的好工具,项目名称:PlotNeuralNet,clone下来试了一下,效果很好,目前主要支持的是卷积神经网络,卷积层、池化层、bottleneck、skip-connection、up-conv、Softmax等常规的层在代码中都有定义,还缺少RNN相关的可视化层展示,未来作者可能会补上。这里简单记录一下,分享给写论文插图不好绘制的朋友。...原创 2019-02-24 17:28:02 · 24781 阅读 · 19 评论 -
[LSTM学习笔记4]How t o Develop Vanilla LSTMs
一.Vanilla LSTM这是在LSTM原始论文中定义的标准的也是最简单的LSTM模型,可以用于解决简单的序列问题,其结构如下图:1.Keras实现model = Sequential() model.add(LSTM(..., input_shape=(...))) model.add(Dense(...))2.实例:Echo Sequence Predition Pr...原创 2019-02-16 16:24:41 · 1847 阅读 · 0 评论 -
[LSTM学习笔记2]使用Keras开发LSTM
使用Keras开发LSTM可以分为6步:定义模型 编译模型 拟合模型 评估模型 使用模型进行预测1.定义模型(1)主要使用Sequential()类下的LSTM()和Dense(),如:layers = [LSTM(2),Dense(1)] model = Sequential(layers)第一个隐层需要定义输入,输入的维度必须是三维的(samples,time...原创 2019-02-16 11:27:37 · 1867 阅读 · 1 评论 -
[LSTM学习笔记1]LSTM数据准备
本系列笔记是学习《Long Short Term Memory Networks with Python》时练习和记录,该书主要针对各种LSTM网络使用keras进行实现,我可以将自己码的Jupyter notebook代码和笔记分享。一.Prepare Numeric Data缩放数据通常有两种方式:normalizaiton和standardization,都可以使用sc...原创 2019-02-15 16:36:05 · 1891 阅读 · 1 评论 -
【已解决】导入tensorflow出现ImportError
原先在Ubuntu16.04下运行的tensorflow是1.1版的,今天将Python升级为3.6.5版,用Anaconda安装了tensorflow1.4.1,安装没有出现问题提示,在导入tensorflow时出现:ImportError: /home/ctr/anaconda3/lib/python3.6/site-packages/tensorflow/python/../../.....原创 2018-10-26 16:28:53 · 4844 阅读 · 0 评论 -
【问题解决】Win7 64位导入opencv提示“ImportError: DLL load failed: 找不到指定的模块。”
由于安装的是Ghost版的win7,总是有这样那样莫名其妙的问题,最近准备使用OpenCV处理做深度学习图像处理,安装opencv都没有任何异常,导入时候就提示: from .cv2 import * ImportError: DLL load failed: 找不到指定的模块。 网上方法一(失败): 大多是说安装的opencv版本与P...原创 2018-08-08 18:20:40 · 24221 阅读 · 31 评论 -
使用Python itchat接口对自动对微信群朋友定时问候(发送天气预报、黄历、每日一句)
itchat是一个支持微信控制的接口,可以对发送和接收的微信消息进行定制,网上有很多现成的实例,该API的使用可以参考http://itchat.readthedocs.io/zh/latest/,上面写得很详细,并且有实例,本文在此基础上参考了网络上的部分代码,完成每天上午自动对几个群的朋友进行问候,发送问候语、黄历和每日一句。其中黄历使用了极数据的黄历接口,见https://www...原创 2018-08-08 13:32:09 · 6358 阅读 · 8 评论 -
爬取pexels女性图片+百度人脸检测过滤高颜值美女
pexels网站提供了大量贴图,从中搜索美女图片,编写爬虫进行下载,下载后图片中除了女人外,还包含男人,风景、静物和动物,调用百度人脸检测模块识别检测,将其中颜值大于60分的美女保存到另外一个文件夹。爬取图片共计1251张,最后过滤出的美女共计287张。上代码:爬虫程序: from bs4 import BeautifulSoupimport requestsimpor...原创 2018-08-09 22:44:12 · 3956 阅读 · 2 评论 -
调用百度人脸检测API实现简单的颜值检测
通过百度人工智能平台中的人脸检测模块,实现简单的人脸检测,百度人工智能平台免费注册,人脸检测模块免费使用。相关API文档在:http://ai.baidu.com/docs#/Face-Detect-V3/top,依照API文档就可以写出一个简单的检测工具。代码如下:import base64import jsonimport requestsclass BaiduPicIn...原创 2018-08-09 17:20:00 · 25308 阅读 · 7 评论 -
Python装饰器简介
1.装饰器实现的基本问题基本的Python装饰器@function_wrapperdef function(): pass以上代码等价于:def function(): passfunction = function_wrapper(function)使用类来实现装饰器class function_wrapper(object): def __ini...原创 2019-03-22 14:39:15 · 240 阅读 · 0 评论 -
Python中的浅复制与深复制
Python中的标识、 相等性和别名1.is,id和==>>> charles = {'name': 'Charles L. Dodgson', 'born': 1832}>>> lewis = charles ➊>>> lewis is charlesTrue>>> id(charles), id(lewis) ...原创 2019-03-22 15:44:35 · 636 阅读 · 0 评论 -
【论文阅读笔记】Character-level Convolutional Networks for Text Classification
Char-CNN论文:Character-level Convolutional Networks for Text Classification论文解读: * 简书论文翻译 * 《Character-level convolutional networks for text classification》论文网络结构解读论文源码: * 基于字符的卷积神经网络实现文本分类(cha...原创 2019-06-28 10:38:50 · 1584 阅读 · 0 评论 -
多种方法使用GloVe
本文的写作参考可网上很多博客,再次感谢,参考到的博文列在下面,本文对Glove原理,纯Python实现,Pytorch实现,官方C语言方式编译,以及简单方式使用进行记录,方便后面学习的童鞋。论文地址:GloVe: Global Vectors for Word Representation论文解读:GloVe模型的理解及实践GloVe详解论文分享–>GloVe: Global V...原创 2019-06-23 21:05:30 · 7613 阅读 · 0 评论 -
Anaconda中构建深度学习开发环境记录(Win10下测试)
有人问我Win10下深度学习环境的构建,个人觉得应该和Win7差不多,但出于负责还是亲自尝试记录一下。下面所说的命令都是亲测可用的。我的平台是:Python3.6(Anaconda4.3)+CUDA10.0+windows10,提前去NVIDIA官网下载CUDA和cuDNN,配置见我的另一篇博客,这里不再赘述设置源2019年6月5日Anaconda清华源又恢复使用了,很好!!在anna...原创 2019-06-22 16:32:29 · 1690 阅读 · 0 评论 -
【论文代码调测】A Convolutional Neural Network for Modelling Sentences
本论文使用Dynamic K-max pooling和宽卷积提升句子建模精度,在NLP中,当卷积核的长度相对于输入向量的长度比较大,需要使用宽卷积,在TensorFlow的CNN实现中,padding='SAME'表示宽卷积,padding='VALID'实现的是窄卷积,关于宽窄卷积的说明可以参考这篇博客。本文在github源码Python2.7基础上迁移到Python3.6.8进行调...原创 2019-06-01 21:39:24 · 398 阅读 · 0 评论 -
[学习笔记]Pytorch迁移学习实例
本文参考Pytorch官方教程,个人觉得代码结构写得非常好,很值得借鉴使用,所以转发分享,另外将调试中遇到的问题和解决一起说明一下。目前在CNN上的迁移学习的主要场景主要有两大类:1.CNN微调:使用预训练的CNN参数初始化网络,而不是随机初始化网络,如使用在imagenet上进行预训练的网络参数进行初始化;2.将CNN作为固定的特征提取方式:除了最后的全连接层,其余层全部冻结,最后的...原创 2019-05-19 09:04:23 · 3344 阅读 · 3 评论 -
清华源失效后如何安装pytorch1.01
今天本想体验下最新版的pytorch1.01,结果发现conda install时候HTTP error了,查了一下原来从4月25日其国内的清华源、中科大源等陆续关停服务,无奈又只能恢复到Anaconda官网的原始源,我的心情拔凉拔凉的,只能这样啦,安装过程中如何提速记录分享一下。我的GPU是Nvidia 2080ti,CUDA版本10.0,所以我在不同的虚环境中同时安装CPU版...原创 2019-04-28 22:05:56 · 5810 阅读 · 1 评论 -
使用Python wxpy接口对自动对微信群朋友定时问候(发送天气预报、黄历、每日一句)
在昨天的博客https://blog.csdn.net/cskywit/article/details/81506517中使用itchat接口实现每天上午对群成员进行问候,程序比较混乱,今天看到网上对wxpy库的使用,尝试了一下,看了wxpy库的文档,该库是基于itchat的封装,API使用更方便,于是使用之。 采用的数据源如下: 天气预报:图灵机器人 http:...原创 2018-08-09 10:40:33 · 4762 阅读 · 1 评论 -
爬虫学习之18:使用selenium和chrome-headerless爬取淘宝网商品信息(异步加载网页)
登录淘宝网,使用F12键观察网页结构,会发现淘宝网也是异步加载网站。有时候通过逆向工程区爬取这类网站也不容易。这里使用selenium和chrome-headerless来爬取。网上有结合selenium和PlantomJS来爬取的,但是最新版的Selenium已经放弃对PlantomJS的支持,所以这里使用chrome-headerless,方法其实差不多,由于selenium可以...原创 2018-07-27 14:59:44 · 2261 阅读 · 0 评论 -
Ubuntu18.04下搭建深度学习环境(tensorflow CPU GPU、Keras、Pytorch、Pycharm、Jupyter)
以前一直都是在Windows上玩CPU版的Tensorflow,现在有时间弄一下,买了一根16GB的内存条扩容上。以前是Win10+Ubuntu双系统,以前的Ubuntu上由于做实验有一堆的错误待解决,现在懒得折腾了,直接装成Ubuntu单系统。我的电脑配置如下:CPU:Intel Core i7-7770HQ内存:24GB显卡:NVIDIA 940MX硬盘:128GBS...原创 2018-07-21 16:55:42 · 9993 阅读 · 1 评论 -
Keras学习之3:回归问题(boston_housing数据为例)
本实验使用boston_housing数据集对房价数据进行回归分析,数据来自1970年代,波斯顿周边地区的房价,是用于机器学习的经典数据集。该数据集很小,共计506条数据,分为404个训练样本和102个测试样本,因此需要采用K-Fold,这里取K=4。每条数据包含13个特征,分别为:CRIM - per capita crime rate by townZN - proportion o...原创 2018-07-03 16:00:18 · 9902 阅读 · 1 评论 -
爬虫学习之8:使用网站API获取数据(持续更新)
很多网站提供了API供开发者获取数据用,通常返回的数据为JSON格式,本文以百度开放者平台为例对通过API进行数据获取进行实验,由于百度API接口很多,后续会把实验的接口陆续补充上去,都是很简单的程序,以后可以以此为基础编写更综合的应用程序。 百度API的使用步骤都差不多,注册百度开发者平台->获得免费的AppID和Key->构造开发者文档中提供的URL->...原创 2018-07-02 22:13:39 · 26679 阅读 · 2 评论 -
Keras学习之2:简单神经网络处理二分类问题(IMDB影评数据分类为例)
IMDB数据集含有50000条国际影评,被均分为训练集和测试集。在IMDB中,影评所用的词汇被映射为大于0的整数,表示该单词出现在数据库中的词频的排名。本实验只是运用keras进行简单神经网络实验,没有考虑过拟合问题处理。代码简单,直接贴出来。from keras.datasets import imdbimport numpy as npfrom keras import mode...原创 2018-06-27 16:47:06 · 7260 阅读 · 3 评论 -
爬虫学习之7:使用XPATH爬取起点小说网小说信息(保存到EXCEL)
起点小说网如上图,爬取小说的作者、类型、连载状态、介绍和字数信息,使用Xpath并保存到EXCEL中,代码简单不做解释,如下:import xlwtimport requestsfrom lxml import etreeimport timeheaders = { 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) App...原创 2018-07-01 22:46:50 · 4292 阅读 · 2 评论 -
爬虫学习之6:使用XPATH爬取豆瓣TOP500书籍(保存到CSV)
豆瓣读书TOP500页面如下,爬取每本书的书名、作者、出版社、出版日期、价格、星级和评论数。代码简单,直接附上:from lxml import etreeimport requestsimport csvheaders = { 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, ...原创 2018-07-01 21:57:24 · 1996 阅读 · 0 评论 -
爬虫学习之12:多进程爬虫初试
之前写的代码都是串行的单线程爬虫,当爬取页面数量更多,数据量更大时,速度明显降低,这里使用Python Multiprocessing库的进程池方法测试多进程爬虫的效率,爬取糗事百科文字板块的用户ID,发表段子的文字信息、好笑数量和评论数量这几个数据,由于只是测试性能,对爬取的数据不进行保存。上代码:import requestsimport reimport timefrom mu...原创 2018-07-08 17:20:22 · 544 阅读 · 0 评论 -
爬虫学习之11:爬取豆瓣电影TOP250并存入数据库
本次实验主要测试使用PyMySQL库写数据进MySQL,爬取数据使用XPATH和正则表达式,在很多场合可以用XPATH提取数据,但有些数据项在网页中没有明显特征,用正则表达式反而反而更轻松获取数据。直接上代码:from lxml import etreeimport requestsimport reimport pymysqlimport timeheaders = { ...原创 2018-07-08 16:52:43 · 3024 阅读 · 2 评论 -
爬虫学习之2:BeautifuSoup爬取58租房数据
周末了有点累,不想看别的书,学习下爬虫放松一下,了解了下BeautifulSoup库,用之爬取58同城租房数据,代码较简单,才初学还有很多待完善地方,大神勿喷,贴出来仅为记录一下,写完博客打把农药睡觉。 这个程序设置了爬取页数为3页,为了反爬,爬取每一页间隔时间简单设置为2秒。代码如下:import requestsfrom bs4 import BeautifulSoup...原创 2018-06-22 23:30:36 · 1649 阅读 · 2 评论 -
爬虫学习之1:初试scrapy:爬取应届生求职网招聘信息
之前用BeautifulSoup写过爬虫,这段时间工作需要发布一些就业信息,尝试下Scrapy框架,花了一个网上稍微了解了一下,对Scrapy框架有了一定了解,已经可以爬取到数据,并保存为Json、CSV格式,并顺利写入MySQL,但很多细节还需要进一步了解,使用框架确实省事。下面直接贴过程: 一、安装Scrapy 本来在Linux比较方便,但我电脑里的Ubuntu由于...原创 2018-06-08 00:31:17 · 1358 阅读 · 0 评论 -
Keras学习之4:多分类问题(reuters路透社新闻数据为例)
本数据库包含来自路透社的11,228条新闻,分为了46个主题。与IMDB库一样,每条新闻被编码为一个词下标的序列。上代码:from keras.datasets import reutersfrom keras.utils.np_utils import to_categoricalfrom keras import modelsfrom keras import layersimport...原创 2018-07-03 16:13:07 · 3963 阅读 · 1 评论 -
爬虫学习之9:结合百度翻译API爬取PEXELS网站图片
PEXELS网站上的图片素材,质量很高,可以免费用于个人和商业用途,但是搜索功能不能用中文,这里结合百度翻译API完成搜索路径的构建。由于百度翻译API为个人申请使用,这里用XXX代替,需要的童鞋可以自己申请免费key。代码如下:from bs4 import BeautifulSoupimport requestsimport jsonimport randomimport ...原创 2018-07-03 22:51:49 · 1173 阅读 · 0 评论 -
爬虫学习之19:使用Scrapy框架爬取简书网热门专题信息
使用框架技术就是方便,在一步步学习各种库的使用基础上,最终还是为了更好的理解和使用现成的框架。这里爬取的是简书网的热门专题信息,包括专题的名字,简介,关注人数收录文章数,最后通过Feed exports功能吧爬到的信息存取到CSV文件中。zhuantispider.py from scrapy.spiders import CrawlSpiderfrom scrap...原创 2018-07-29 17:16:57 · 720 阅读 · 0 评论 -
爬虫学习之14:多进程爬取简书社会热点数据保存到mongodb
本代码爬取简书社会热点栏目10000页的数据,使用多进程方式爬取,从简书网页可以看出,网页使用了异步加载,页码只能从response中推测出来,从而构造url,直接上代码:import requestsfrom lxml import etreeimport pymongofrom multiprocessing import Poolimport timeheaders = {...原创 2018-07-14 11:32:06 · 640 阅读 · 0 评论 -
爬虫学习之17:爬取拉勾网网招聘信息(异步加载+Cookie模拟登陆)
很多网站需要通过提交表单来进行登陆或相应的操作,可以用requests库的POST方法,通过观测表单源代码和逆向工程来填写表单获取网页信息。本代码以获取拉勾网Python相关招聘职位为例作为练习。打开拉钩网,F12进入浏览器开发者工具,可以发现网站使用了Ajax,点击Network选项卡,选中XHR项,在Header中可以看到请求的网址,Response中可以看到返回的信息为Js...原创 2018-07-24 17:34:18 · 2140 阅读 · 1 评论 -
爬虫学习之15:多进程爬取58二手交易市场数据保存到mongodb,并实现简单断点续爬
本代码继续使用多进程的方式爬取58同城二手交易数据,并保存到mongoDB,在爬取商品详情时,使用Python集合操作来实现简单的断点续爬。25二手市场如图首先要获取不同频道的链接,编写代码channel_extract.py获取左边大类导航的链接,底下的channel_list是用代码爬取出来的,为了方便后面用,直接print出来用三引号转换为多行字符串。import ...原创 2018-07-18 23:33:32 · 1073 阅读 · 0 评论 -
爬虫学习之13:代理的使用
使用爬虫的过程中即使再使用time.sleep()函数暂停,对于很多网站仍然会被封锁,因此需要使用代理,网上推荐较多的是西刺代理,本文编写个简单的爬虫来获取西刺代理国内高匿代理的IP加端口,可以获取到地址后,可以在爬虫中构建代理地址池,不断的使用不同的代理发起爬虫,防止被封锁。代码如下:from bs4 import BeautifulSoup # 解析网页from fake_usera...原创 2018-07-12 16:56:48 · 14397 阅读 · 0 评论 -
爬虫学习之16:爬取简书网用户动态信息(异步加载页面的爬取)
网上很多页面均采用异步加载,采用普通的request方法得不到结果。使用Chrome浏览器的Network选项卡可以查看网页加载过程中的所有文件信息,通过对这些文件的查看和筛选,就可以找出需抓取的数据,另外,异步加载网页的分页文件大部分在XHR(可扩展超文本传输请求)中,选中该选项,在向下滑动网页的过程中可以发现在加载文件,这些文件的header部分即为分页的URL,Response...原创 2018-07-23 16:47:20 · 1479 阅读 · 1 评论 -
爬虫学习之10:爬取糗事百科用户地址信息并用热力图展示
本程序综合使用了Xpath和Requests库爬取爬取糗事百科用户地址信息,并运用百度地图API接口将爬取到的地址信息转换为经纬度信息,同时使用BDP可视化工具(https://me.bdp.cn/home.html)将经纬度信息显示为热力图。 程序爬取中的几个坑,部分用户地址信息缺失,爬取中需要有判断机制;部分用户的地址是国外地址,用中文名查不到,后续可以结合百度翻译API将中...原创 2018-07-05 00:07:08 · 943 阅读 · 0 评论 -
爬虫学习之5:正则表达式的使用
实验1:爬取《斗破苍穹》全文小说观察链接发现小说第一章至第三章的链接为:第1章:http://www.doupoxs.com/doupocangqiong/2.html 第2章:http://www.doupoxs.com/doupocangqiong/5.html 第3章:http://www.doupoxs.com/doupocangqiong/6.html 编码无规律,因此...原创 2018-06-28 20:55:38 · 419 阅读 · 0 评论