Giter Site home page Giter Site logo

deep-learning-with-python's Introduction

欢迎Star,感谢Star~

《Python深度学习》数据{提取码:9527 }

image

自然语言处理——原理、方法与应用(计算机技术开发与应用丛书) {新书上线啦,可点击此处购买}

  • 1.七个国家级竞赛获奖代码

  • 2.一套代码,七个项目,学习成本低。

  • 3.课程内容:预训练、文本分类、智能问答、命名实体识别、文本生成、模型蒸馏与减枝、loss应用。

  • 4.课程作者:清华大学出版社独立作者,多个nlp国家级奖项获得者,华为nlp算法工程师。

  • 5.公众号 and b站:阿力阿哩哩

前言

  • 当你看到前言的时候,说明你已经在深度学习的求知路途上做了一个事半功倍的抉择。笔者很高兴能在研究生阶段将自己所学以书本的形式结构化地记录下来,并改变这本书读者的所思、所想与所学。在聊完稿的感想之前,首先给大家一个本书所有配套源码和说明的链接。大家可以在Github上对不懂的内容进行提问,笔者也会尽可能地帮助大家解决问题。

  • 接下来唠嗑一下这本书,写此书的理由是来自笔者个人的知乎博客:阿力阿哩哩。笔者经常在知乎、B站和微信公众号上发表自己学过的知识,总结自己的经验与见解。从一个过来人的身份来说,笔者很能理解深度学习初学者的心情,那种面对浩如烟海的深度学习知识却不知从何学起的“迷茫”成为了所有初学者的学习历程的绊脚石。一条行之有效的学习路径是每一个初学者当前所急需的。目前国内并没有一本对初学者相对友好的书籍。为此,笔者便是想弥补这方面的空白,做一个抛砖引玉的人,帮助大家建立起属于自己的深度学习知识体系,也好让大家在学习路上越走越顺。

  • 笔者用了大半年的时间来完稿此书,因为平时都有做总结的习惯,所以写的时间并不是很长,更多的是对整本书的知识架构的整理。由于深度学习的知识更新得比较快,笔者在2019年底还在更新此书的内容,尽可能删除对大家没用的陈旧知识点,保留精华知识与贡献最新知识给大家。在写书的过程中,笔者通过对理论内容的文献查阅与实战内容的反复验证,不仅让本书更加贴近大家的需求,也让自己各方面能力完成了蜕变。

  • 授人以鱼不如授人以渔,笔者希望在此书传达下来的是**,而不是那一行行的具体实践代码,代码总有失效的一天,而**却可以永存。笔者希望大家通过实践掌握本书的核心知识,并拥有自我学习能力,在笔者设立的知识体系下深挖自己所感兴趣的领域。

  • 笔者在编撰此书的过程中感悟良多,其中不乏对当今信息爆炸时代的思考。知识迭代速度超乎了任何人的想象,我们现在需要的并不是知识,而是良好的搜索能力与表达能力。为此,笔者希望大家善用搜索引擎来获取最新的消息。互联网上有很多顶尖组织发表的顶级论文和Github上有很多优秀论文的代码实现,当我们专研完某个领域最新的1000篇论文时,这个领域将不会有任何新鲜事;另外就是养成写作的习惯,写作是对自己思维模式的训练,是对自己知识盲区的查漏补缺。未来你也许并不会从事科研工作,但通过写作锻炼出来的凝练思维逻辑和清晰表达复杂信息的能力,必将对我们未来从事的每一样工作都有所裨益,所以笔者希望大家都能重视搜索与写作能力的培养!

  • 讲个最实际的,大家也可以跟笔者一样,将自己所思、所想和所学都传达在互联网上,经受同行们的审视,从他们的反馈中不断进步。你会发现,在你尝试表达给同行们的时候,你就已经在进步了。

致谢

  • 此书的完稿,笔者才深知创作之不易。不过除此之外,笔者得到更多的是一种充实感,写书对笔者来说,是创业,也是对自己思维的打磨,整个过程都充满着意义。这是一次知识的分享,也是一次有益的尝试。
  • 另外,感谢深圳大学信息中心和电子与信息工程学院提供的软硬件支持,以及感谢河海大学可爱又迷人的正派角色@阿璃同学对本书的插画与编辑,当然还要感谢自己大半年来的笔耕不辍。
  • 最后,不得不提及的是,由于作者本人水平与精力有限,书中必然存在某些疏漏或者错误,衷心欢迎大家的指正与批评!
  • Created by©阿力阿哩哩 on December 31, 2019 midnight.

其他平台

  • 微信公众号:阿力阿哩哩 image
  • 知乎
  • BiliBili
  • 个人微信号:smiletolife9527 image

开源不易,谢谢打赏!

image

deep-learning-with-python's People

Contributors

chilewang0228 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

deep-learning-with-python's Issues

关于chapter8的Crf的问题

def loss_layer(self, project_logits, lengths, name=None):
    """
    计算CRF的loss
    :param project_logits: [1, num_steps, num_tags]
    :return: scalar loss
    """
    with tf.name_scope("crf_loss" if not name else name):
        small = -1000.0
        # pad logits for crf loss
        start_logits = tf.concat(
            [small * tf.ones(shape=[self.batch_size, 1, self.relation_num]), tf.zeros(shape=[self.batch_size, 1, 1])],
            axis=-1)
        pad_logits = tf.cast(small * tf.ones([self.batch_size, self.num_steps, 1]), tf.float32)
        logits = tf.concat([project_logits, pad_logits], axis=-1)
        logits = tf.concat([start_logits, logits], axis=1)
        targets = tf.concat(
            [tf.cast(self.relation_num * tf.ones([self.batch_size, 1]), tf.int32), self.input_relation], axis=-1)

        self.trans = tf.get_variable(
            name="transitions",
            shape=[self.relation_num + 1, self.relation_num + 1],  # 1
            # shape=[self.relation_num, self.relation_num],  # 1
            initializer=self.initializer)
        log_likelihood, self.trans = crf_log_likelihood(
            inputs=logits,
            tag_indices=targets,
            # tag_indices=self.input_relation,
            transition_params=self.trans,
            # sequence_lengths=lengths
            sequence_lengths=lengths + 1
        )  # + 1
        return tf.reduce_mean(-log_likelihood, name='loss')

你好,
请问这里为什么要+1?
start_logits 是什么?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.