自动写诗(更新)

笔记:

嵌入层(Embedding
Layer)

通过一个隐藏层,
将 one-hot 编码的词投影到一个低维空间中,本质上是特征提取器,在指定维度中编码语义特征。 这样,
语义相近的词, 它们的欧氏距离或余弦距离也比较近。(作者使用的单词向量是预训练的,方法为fasttext得到的单词向量,当然也可以使用word2vec和GloVe方法训练得到的单词向量)。

使用Tokenizer将文字转换成数字特征
使用Keras的Tokenizer模块实现转换。当我们创建了一个Tokenizer对象后,使用该对象的fit_on_texts()函数,可以将输入的文本中的每个词编号,编号是根据词频的,词频越大,编号越小。使用word_index属性可以看到每次词对应的编码

将每条文本转换为数字列表 将数据集中的每条文本转换为数字列表,使用每个词的编号进行编号

使用该对象的texts_to_sequences()函数,将每条文本转变成一个向量。

np.r_是按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等。
np.c_是按行连接两个矩阵,就是把两矩阵左右相加,要求行数相等。

strip():返回移除字符串头尾指定的字符生成的新字符串
如果没有说明移除什么,则移除前后的空格。

Str.Strip(‘0’)

Str.replace(old,
new) 字符串里面新的换旧的

Str.split(str="",num=string.count(str))

Str是分隔符,没有就是空格

Num是分割的次数,分割成num+1段

Open()函数打开一个文件,创建一个file对象

open(name[,mode[, buffering]])

参数说明:
name : 一个包含了你要访问的文件名称的字符串值。
mode : mode 决定了打开文件的模式:只读,写入,追加等。所有可取值见如下的完全列表。这个参数是非强制的,默认文件访问模式为只读®。
buffering : 如果 buffering 的值被设为 0,就不会有寄存。如果 buffering 的值取 1,访问文件时会寄存行。如果将 buffering 的值设为大于 1 的整数,表明了这就是的寄存区的缓冲大小。如果取负值,寄存区的缓冲大小则为系统默认。

file.read([size]):size #未指定则返回整个文件,如果文件大小 >2 倍内存则有问题,f.read()读到文件尾时返回""(空字串)。 
file.readline()#返回一行。
file.readlines([size])#返回包含size行的列表, size 未指定则返回全部行。
for line in f: print line :#通过迭代器访问。
f.write("hello\n")#如果要写入字符串以外的数据,先将他转换为字符串。
f.tell()#返回一个整数,表示当前文件指针的位置(就是到文件头的比特数)。
f.seek(偏移量,[起始位置])#用来移动文件指针。
#偏移量: 单位为比特,可正可负
#起始位置: 0 - 文件头, 默认值; 1 - 当前位置; 2 - 文件尾f
f.close() #关闭文件

zip() #函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,这样做的好处是节约了不少的内存。
如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。

在这里插入图片描述

Python对象的赋值实际是对象的引用
在这里插入图片描述

Copy.copy也是浅拷贝,与上述一样

Copy.deepcopy是深拷贝,相当于重新建立了。

深拷贝为np.copy。

zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值