Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    K

    Keras Blog

    blog.keras.io · Company blog · on HN since 2016

    The Keras team, led by creator François Chollet, publishes tutorials and essays on deep learning and API design.

    Visit blogHN submissions
    AI & Machine LearningDesign & UX
    What HN says

    Commenters cite its tutorials on autoencoders and pre-trained word embeddings as easy to follow, and its API design post as a guide to good user experience.

    Stats for nerds
    37HN people shared it
    27linked in comments
    2.4Kstory points
    Jul 2021last shared
    2016people per year2021

    Top posts on HN

    1. 1
      The Limitations of Deep Learning
      5 people · 801 points · first shared 2017 · 260 comments on HN
    2. 2
      Introducing Keras 2
      1 person · 445 points · first shared 2017 · 68 comments on HN
    3. 3
      User experience design for APIs
      5 people · 274 points · first shared 2017 · 42 comments on HN
    4. 4
      The future of deep learning
      7 people · 245 points · first shared 2017 · 69 comments on HN
    5. 5
      How convolutional neural networks see the world
      4 people · 214 points · first shared 2016 · 49 comments on HN
    6. 6
      Keras 1.0 – Python deep learning framework
      1 person · 180 points · first shared 2016 · 17 comments on HN
    7. 7
      Building autoencoders in Keras
      3 people · 77 points · first shared 2016 · 11 comments on HN
    8. 8
      Building powerful image classification models using very little data
      3 people · 71 points · first shared 2016 · 6 comments on HN
    9. 9
      Introducing Keras 2.0
      1 person · 12 points · first shared 2017 · 2 comments on HN
    10. 10
      A ten-minute introduction to sequence-to-sequence learning in Keras
      4 people · 10 points · first shared 2017 · Discussion on HN

    What HN people wrote when they linked it

    • YeGoblynQueenneJul 2021

      interesting topic. Could you point me to some resources so I can learn more
      about it?

      The following is a comprehensive introduction and survey of recent work in the
      field:

      https://www.microsoft.com/en-us/research/wp-content/uploads/2017/10/program_synthesis_now.pdf

      Regarding novelty, neural networks are excellent at interpolation but awful at
      extrapolation. What I mean by interploation is that the models learned by a
      neural network represent a dense region of cartesian space circumscribed by the
      neural net's training instances. The trained model can recognise and generate
      instances included in this dense region, including instances not included in its
      training set, by interpolation, but it is almost completely incapable of
      representing instances outside this dense region by extrapolation [1].

      So basically what I'm saying above is that deep learning language model code
      generators can't extrapolate to programs that are not similar to the programs
      they've been trained on. Hence, no real novelty. But you can go a long way
      without such novelty hence my expectation that e.g. Copilot can be a nice
      boilerplate generator.

      ______________

      [1] My standard reference for this is the following article by François Chollet,
      maintainer of Keras:

      https://blog.keras.io/the-limitations-of-deep-learning.html

      See also the second part of the series of articles where possible ways are
      proposed to address this limitation:

      https://blog.keras.io/the-future-of-deep-learning.html

      The latter is…

    • wpietriAug 2016

      I don't have much opinion on the rest of your translation, but I think this gets it wrong:

      > Postmodernists make for shitty programmers

      To me one of the big differences with postmodernism is a deep skepticism for grand overarching theories and perfect understandings. I think that's an immensely useful trait for a programmer.

      The more I code, the more I treat any digital representation as a deeply distorted image of the reality I'm dealing with. The best I can do is have the distortions match my user's purpose. As Box wrote, "All models are wrong; some models are useful." The modernist continues to seek the perfect model. The postmodernist treats perfection as a fool's errand and ships something that works well enough.

      I have seen this problem over and over in my career; a lot of architecture astronautics strikes me as rooted in modernism. But perhaps a good example that everybody can look at is early concepts of AI vs today's machine learning. When I compare Cyc [1], which has spent 30 years trying to build the seeds of perfect knowledge versus today's deep learning, that strikes me as a postmodern shift.

      How does a convolutional neural network recognize a dog? We don't exactly know, not in a way that makes much sense to us. [2] But we don't care. The convnet has its own very bounded, limited version of "truth"; as long as we get a 90% match, we ship it and go out for beers.

      [1] https://en.wikipedia.org/wiki/Cyc

      [2]…

    • mlthoughts2018Oct 2019

      Keras still is the very best in terms of expressive models and end to end workflows. It leans heavily on the design idea that you should deliberately design for end to end use cases and all intermediate abstractions should be building blocks that serve precisely that purpose. This is discussed in [0] which IMO is something that deserves to be more widely talked about in software engineering. Lots of other disciplines of software engineering _say_ you should design this way, but in my experience it’s very rare no matter what discipline you’re in. Take TensorFlow itself. It’s a huge mess with no clear abstractions useful for end to end solutions. Just a hodge podge of disparate APIs and way too many underlying engineering concepts were elevated to abstractions for engineer (instead of user) convenience.

      Constraining design by end to end use cases is a remarkably robust and useful process.

      PyTorch is way better at having clean engineering abstractions than TensorFlow, but still falls short when things like “forward” or maintaining your own training loop and gradient metadata are necessary concepts for a practitioner’s end to end workflow.

      [0]: https://blog.keras.io/user-experience-design-for-apis.html

    • jointpdfJul 2019

      For deep learning / neural networks, I think these are the best balance of theory and practice (not to mention great visualizations):
      http://cs231n.github.io

      More on the intuition/theory side for NNs, but Michael Nielsen’s book is highly recommended:
      http://neuralnetworksanddeeplearning.com

      For NLP, you can try this extremely slick interactive course on spaCy (highly recommended Swiss Army knife library for NLP) from package author Ines Montani:
      https://course.spacy.io

      The Keras tutorials are solid, here’s one on seq2seq models:
      https://blog.keras.io/a-ten-minute-introduction-to-sequence-to-sequence-learning-in-keras.html

      For more cutting edge NLP, it looks like the fast.ai course covers the Transformer model (the basis of BERT, GPT-2, et al. This is a great overview of that architecture:
      http://nlp.seas.harvard.edu/2018/04/03/attention.html

      And PyTorch implementations of Transformer models can be found here: https://github.com/huggingface/pytorch-pretrained-BERT/blob/master/README.md

      LMK if anyone wants more, I have a learning resource hoarding problem.

    • clmcleodJun 2016

      The universal approximator approach is another big one that people lean on from the opposite direction (I suppose you could call it the "anti-deep learning" school of thought). Most people don't take the time to consider what a universal approximator actually is.

      Are humans universal approximators? Absolutely not. The mere proof that a nn with an infinite number of hidden nodes (which isn't practical, which could end the discussion there) can find a statistical mapping between any two input and outputs is hardly a benefit. There is something so much more to intelligence --- the ability to generalize well (aka not overfitting) is first and foremost.

      I'd push you to ask why you perceive that stacking RBMs produces "eerily human-like" results. I'd argue that they don't: http://blog.keras.io/how-convolutional-neural-networks-see-the-world.html

    • svantanaDec 2018

      In general the trend is toward more complex architectures, which increasingly blurs the line between modular nets and sparsely connected parts of a single model. IMO it's only meaningful to talk about modularity if the modules can be separately trained, or at least have their own loss functions. But of course its always useful to train or finetune the entire system end-to-end.

      A semi-recent success story is Tacotron 2, a speech synthesizer that has one model to convert text to a spectrogram, and a second model to convert that spectrogram into pcm (waveform) data.

      Also, Francois Chollet, the author of the popular deep learning library Keras, has some interesting thoughts on the future of ML along these lines that I find compelling: https://blog.keras.io/the-future-of-deep-learning.html

    Related

    Andrej Karpathykarpathy.github.io287 people

    Hacker's Guide to Neural Networks

    Andrej Karpathy
    Personal · last shared 2026
    NVIDIA Technical Blogdevblogs.nvidia.com177 people

    Volta: Advanced Data Center GPU

    NVIDIA Technical Blog
    Company · last shared 2025
    SVDS Blogsvds.com27 people

    Ethereum: Rise of the World Computer

    SVDS Blog
    Company · last shared 2021
    François Cholletmedium.com/@francois.chollet22 people

    The impossibility of intelligence explosion

    François Chollet
    Personal · last shared 2024
    Explosion Blogexplosion.ai51 people

    Prodigy: A new tool for radically efficient machine teaching

    Explosion Blog
    Company · last shared 2026
    Google Research Bloggoogleresearch.blogspot.com303 people

    Announcing SyntaxNet: The World’s Most Accurate Natural Language Parser

    Google Research Blog
    Company · last shared 2017
    Matthijs Hollemansmachinethink.net15 people

    The lost art of 3D rendering without shaders

    Matthijs Hollemans
    Personal · last shared 2021
    Udacity Blogmedium.com/udacity21 people

    How I learned to code in my 30s

    Udacity Blog
    Company · last shared 2019