美文网首页
2018-04-02 第二周

2018-04-02 第二周

作者: hobxzzy | 来源:发表于2018-06-14 15:06 被阅读0次

            通过,上一周对lstm的初步了解,可以开始处理本次实训的数据,因为都是中文文本的信息,采用word2vec来对中文信息进行向量化。

            如果要一句话概括词向量的用处,就是提供了一种数学化的方法,把自然语言这种符号信息转化为向量形式的数字信息。这样就把自然语言理解的问题要转化为机器学习的问题。与One-Hot编码不同,更能反映词组的差异性。

            首先,评论信息需要分词,参考知乎专栏对各种分词器的测评:Python 中的那些中文分词器,选择了结巴分词。

    for key, valuein dataSet.items():

        seg_list = jieba.cut(dataSet[key],cut_all=True)

        token =' '.join(seg_list).split(' ')

        dataSet[key] = token

            随后,对分的词进行词向量化,将所有分词作为训练集来进行训练即可, 得倒一个模型:

        训练好之后,就可以对每个评论进行词向量化:

            最后,标签信息的处理,在上周的学习中,我们可以看到最终标签的格式为[0,0,0,0,0,0,0,0,0,1]一维数组的形式,因此我们也需要将好中差的标签信息转化为一维数组的形式:

            先分析的原始提取的数据:

    # -*- coding: utf-8 -*-

    import tensorflowas tf

    tf.set_random_seed(1)# set random seed

    '''

    #insert Data

    data = open('vectors.txt')

    line = data.readline()

    i = 0

    while line:

    print(line)

    i = i + 1

    if i > 5:

    break

    '''

    fp =open('tags.txt','r')

    f_new =open('tag.txt','w')

    line= fp.readline()

    for linein fp:

    if line=='好\n':

    line='0\n'

        elif line=='中\n':

    line='1\n'

        elif line=='差\n':

    line='2\n'

        f_new.write(line)

    fp.close()

    f_new.close()

            最终处理成如下形式:

            至此,数据的初步处理结果,下周可以开始构建lstm模型。

    相关文章

      网友评论

          本文标题:2018-04-02 第二周

          本文链接:https://www.haomeiwen.com/subject/allyeftx.html