目录
展开 目录
把手写字体做成电脑字体
HN:
这篇博客非常技术地介绍了一个从手写字体中制作电脑字体的过程,这并不是我第一次看到这个点子,但不知为何,只有这次让我有将我认识的人的字体做成电脑字体的冲动。我并不喜欢我自己写的字,或是大部分手写字,从我小的时候就认为手写字是很低效的。
父母的字在我见过的有限的手写字中占了非常大的一部分,也许对于传递信息来说写字确实低效,但它们还携带了比信息更多一层的意义,这让我第一次对手写字感到庆幸。
视频直播看起来非常贵,为什么 YouTube 似乎还在免费提供?
HN:
在这篇 HN 下,有一位在视频直播公司做过财务分析的人分享了他的理解,简单的来说
- 他的公司有一个天才开发者不断优化来提高利润和效率
- 编码需要花钱,但不多
- 存储也不贵
- 人力最贵
还有人提到广告变现, Google 的高效编码芯片,Google 买的黑光纤等等。
PG for ALL —— Cure for Infra Hell
HN:
之前网上有一些很火的面试视频,里面有一个小部分是要求候选人对接下来要开发的应用做评估,然后选择合适的技术进行架构设计,视频中的候选人扯了一堆没用的数据,计算,最后给出了一套典中典的硅谷土老板架构(AWS Lambda, DynamoDB, etc),我当时对这个视频嗤之以鼻,并由于它我对评估一直抱着偏见,认为评估没有用。
Stack Sprawl or Infra Hell 是过去的一年中最令我难受的问题,它实际上不算是一个问题,我更愿意把它看作是一种错觉 —— 当你有一个需求可以被市面上的某款 infra 技术完美匹配时,你下意识的认为我确实需要他。
比如在某个项目中我想要强化项目的可观测性,说起可观测性,在现在这个年代人人都会想到 prometheus , jaeger , otel 等等 infra 。于是我就下意识的认为,我一定要搞一套完美的可观测性 infra 才能进行下一步,而我之前从没想过的是,这些软件、技术栈、 infra 诞生是为了在上百万甚至千万用户的大型软件团队中,更好的利用大型团队的人力。而我的项目与这些项目更多被使用的场景截然不同 —— 只有我一个人,跑着一个几百人用的服务。所以对我来说,更耦合,更适合一个人做所有事的技术,反而比看起来为可观测性而生的这些技术更加合适。
对于合适的项目选择合适的技术也许比我所想要更加重要。
PG for ALL 是这篇文章讨论的观点,它让我对这个结论更加确信。
现代终端原理
- Part 1. https://kevroletin.github.io/terminal/2021/12/11/how-terminal-works-in.html
- Part 2. https://kevroletin.github.io/terminal/2021/12/11/how-terminal-works-out.html
- Part 3. https://kevroletin.github.io/terminal/2022/01/27/how-tty-works-stty.html
- Part 4. https://kevroletin.github.io/terminal/2022/02/05/how-tty-works-sessions.html
这篇博客介绍了现代终端和命令行工具的工作原理,并通过实验深入探索现代终端的原理。
不过 HN 有评论提到,现代终端已经不遵守终端协议了,而更广泛的采用 Kitty Keyboard Protocol 来解决识别按键的问题。
究极整合版 AI reading list
HN:
以下是一个集合 Ilya Sutskever 和 Thomas Wolf 的 reading list 以及相关 HN 中提到的资料。
顺带一提,OpenAI 员工 onboarding 文档中包含 Ilya 的列表
-
Ilya Sutskever
- The Annotated Transformer https://nlp.seas.harvard.edu/annotated-transformer/
- The First Law of Complexodynamics https://scottaaronson.blog/?p=762
- The Unreasonable Effectiveness of RNNs https://karpathy.github.io/2015/05/21/rnn-effectiveness/
- Understanding LSTM Networks https://colah.github.io/posts/2015-08-Understanding-LSTMs/
- Recurrent Neural Network Regularization https://arxiv.org/pdf/1409.2329.pdf
- Keeping Neural Networks Simple by Minimizing the Description Length of the Weights https://www.cs.toronto.edu/~hinton/absps/colt93.pdf
- Pointer Networks https://arxiv.org/pdf/1506.03134.pdf
- ImageNet Classification with Deep CNNs https://proceedings.neurips.cc/paper_files/paper/2012/file/c399862d3b9d6b76c8436e924a68c45b-Paper.pdf
- Order Matters: Sequence to sequence for sets https://arxiv.org/pdf/1511.06391.pdf
- GPipe: Efficient Training of Giant Neural Networks using Pipeline Parallelism https://arxiv.org/pdf/1811.06965.pdf
- Deep Residual Learning for Image Recognition (arxiv.org) https://arxiv.org/pdf/1512.03385.pdf
- Multi-Scale Context Aggregation by Dilated Convolutions https://arxiv.org/pdf/1511.07122.pdf
- Neural Quantum Chemistry https://arxiv.org/pdf/1704.01212.pdf
- Attention Is All You Need https://arxiv.org/pdf/1706.03762.pdf
- Neural Machine Translation by Jointly Learning to Align and Translate https://arxiv.org/pdf/1409.0473.pdf
- Identity Mappings in Deep Residual Networks https://arxiv.org/pdf/1603.05027.pdf
- A Simple NN Module for Relational Reasoning https://arxiv.org/pdf/1706.01427.pdf
- Variational Lossy Autoencoder https://arxiv.org/pdf/1611.02731.pdf
- Relational RNNs https://arxiv.org/pdf/1806.01822.pdf
- Quantifying the Rise and Fall of Complexity in Closed Systems: The Coffee Automaton https://arxiv.org/pdf/1405.6903.pdf
- Neural Turing Machines https://arxiv.org/pdf/1410.5401.pdf
- Deep Speech 2: End-to-End Speech Recognition in English and Mandarin https://arxiv.org/pdf/1512.02595.pdf
- Scaling Laws for Neural LMs https://arxiv.org/pdf/2001.08361.pdf
- A Tutorial Introduction to the Minimum Description Length Principle https://arxiv.org/pdf/math/0406077.pdf
- Machine Super Intelligence Dissertation https://www.vetta.org/documents/Machine_Super_Intelligence.pdf
- PAGE 434 onwards: Komogrov Complexity https://www.lirmm.fr/~ashen/kolmbook-eng-scan.pdf (最后一章Algorithmic Statistics 从第 425 页开始)
- CS231n Convolutional Neural Networks for Visual Recognition https://cs231n.github.io/
-
Thomas Wolf
- The “Deep Learning” Book by Ian Goodfellow, Yoshua Bengio and Aaron Courville (https://www.deeplearningbook.org/) is a good ressource to get a quick overview of the current tools.
- ”Artificial Intelligence: A Modern Approach” by Stuart Russell and Peter Norvig (http://aima.cs.berkeley.edu/) is a great ressource for all pre-neural-network tools and methods.
- ”Machine Learning: A Probabilistic Perspective” by Kevin P. Murphy (https://www.cs.ubc.ca/~murphyk/MLbook/) is a great ressource to go deeper in the probabilistic approach and get a good exposure to Bayesian tools.
- ”Information Theory, Inference and Learning Algorithms” by David MacKay (http://www.inference.org.uk/mackay/itila/book.html) is a little gem that explain propabilities and Information theory so clearly it’s almost unbelievable.
- ”The Book of Why: The New Science of Cause and Effect” by Pearl, Judea is a good introduction to Causality (more accessible than the big “Causality: Models, Reasoning and Inference”)
- “Reinforcement Learning: An Introduction” by Richard S. Sutton and Andrew G. Barto (http://incompleteideas.net/book/the-book.html) is a great ressource to get an introductory exposure to Reinforcement Learning
- Natural Language Processing: three great ressources I’ve read with interest:
- Kyunghyun Cho’s lecture notes on “Natural Language Processing with Representation Learning” are great: https://github.com/nyu-dl/NLP_DL_Lecture_Note/blob/master/lecture_note.pdf
- Yoav Goldberg’s book on “Neural Network Methods in Natural Language Processing” (https://www.amazon.com/Language-Processing-Synthesis-Lectures-Technologies/dp/1627052984) is nice too (see also an older free version here https://arxiv.org/abs/1510.00726)
- Jacob Eisenstein’s textbook on “Natural Language Processing” is also a very exhaustive read (https://github.com/jacobeisenstein/gt-nlp-class/blob/master/notes/eisenstein-nlp-notes.pdf) I also complemented this with a few online courses. I took the following classes:
- Computational Probability and Inference (6.008.1x) from edx (https://courses.edx.org/courses/course-v1:MITx+6.008.1x+3T2016/course/)
- Probabilistic Graphical Models Specialization from coursera (https://www.coursera.org/specializations/probabilistic-graphical-models) If you join the field after the revolution of transformers and large scale training probably you will possibly want to follow a different path. Here a few advices in 2024:
- read our book on NLP and transformers. It predate ChatGPT but it’s still super relevant and goes up to training a LLM at the end: https://www.oreilly.com/library/view/natural-language-processing/9781098136789/
- take a couple of online classes on deep-learning from well-know people in the field
- you can still read a couple of books from the above list for your general culture, in particular I still think “Information Theory, Inference and Learning Algorithms” is a gem
- join Hugging Face to learn by doing :)
Apple Music 百大专辑
AM 发布了一个百大专辑列表,记录了他们的编辑认为的有史以来最伟大的100张专辑。在这个页面里用了一个滚动控制的 3D transform 来展示专辑封面但是感觉操作有点卡,不过这个 UI 还不错,也许可以用来作为展示列表的参考,也许可以做一个百大 up 主版本?
它的数据是可以直接获取到 JSON 的,用来做 demo 会比较好用。
MIT 开源,使用 React 和 CSS 开发的 TBS 游戏 nkzw-tech/athena-crisis
在线试玩 DEMO : https://athenacrisis.com/
Steam 连接:https://store.steampowered.com/app/2456430/Athena_Crisis/
Athena Crisis 于 5.14 以 MIT 协议开源了游戏的源代码。 开源的部分包括核心数据结构、算法、游戏引擎、渲染、AI 和地图编辑器。单人战役、多玩家、艺术、音乐、内容和后台实现等未开源。
为什么开源?
决定开源是因为相信 JavaScript 和 Web 可以成为主要的游戏开发平台。 虽然这需要时间和努力,但 Athena Crisis 是一个很好的证明。 创始人已经有20多年的开源经验,深知开源带来的好处和学习机会,希望通过开源,不仅推动技术进步, 回馈社区,并激励更多开发者在这个平台上进行创新和开发。
有兴趣贡献 Athena Crisis 项目的人可以参加以下几个方向:
- AI挑战:开发最佳AI,前三名将分享5,000美元奖金。
- WebGL渲染器:使用React-Three-Fiber为游戏地图构建渲染器。
- 性能优化:提出加速核心算法的新方案。
更多信息请访问 GitHub Issues 和 Polar。
LLM 妙用之漫画时间线
在鸽群内看到这张图:
让我不禁想到天才麻将少女(咲-Saki-)这部漫画,它也同样是一两天甚至一两小时内的事情,但漫画画了很久才画完, 在我的印象里全国大赛至少打了有七八年了,并且光是先锋战就打了好几年,于是我不禁好奇,天才麻将少女的故事时间线和现实世界的时间是怎样的关系,于是我简单搜了一下 在 saki 的中文维基百科中有提到每一卷漫画的发布时间与 ISBN ,在日本亚马逊搜索 ISBN 后, 可以拿到每一卷的简介和一些信息,但是想要一卷一卷翻译,对比,实在是有点麻烦了,那么有没有哪一位可以读得懂非格式化数据,并且懂中日文,并且愿意做这种麻烦事呢, 当然是 LLM 。
直接复制粘贴亚马逊的网页文字,得到的文本是非常乱的,不过对于LLM来说其实并不乱,在经过简单几轮对话后,它便完美的完成了任务。
以下是《咲-Saki-》系列中的全国高中生麻将大赛进度时间线,并标注漫画的现实发布时间:
第8卷(2011年6月25日)
- 清澄高校麻将部结束四校合宿,迎接全国高中生麻将大赛的开始。
第9卷(2012年3月24日)
- 全国高中生麻将大赛第二回合开始,清澄高校麻将部面对众多强敌。
第10卷(2012年6月25日)
- 第二回合副将战展开,各种战术和战斗风格交锋。
第11卷(2013年4月25日)
- 第二回合大将战展开,宫永咲展现了她的实力。
- 原村和与阿知贺女子的旧友再会,比赛变得更加激烈。
第12卷(2013年12月25日)
- 全国高中生麻将大赛半决赛开始,清澄高校面对新的强敌,包括姫松高校、臨海女子和有珠山高校。
第13卷(2014年9月25日)
- 半决赛中堅戦,世界排名选手雀明華登场,比赛难度提升。
第14卷(2015年7月25日)
- 半决赛副将战展开,原村和面对强敌挑战,清澄高校处于激烈的竞争中。
第15卷(2016年3月25日)
- 半决赛大将战展开,宫永咲为争取与姐姐重逢的机会而战斗。
第16卷(2016年12月24日)
- 清澄高校与激烈竞争的战友们参加了5位决定战。
第18卷(2018年10月25日)
- 全国高中生麻将大赛5位決定战结束,清澄高校准备进入决赛。
第19卷(2019年5月25日)
- 全国高中生麻将大赛决赛先鋒戦开始,各种战术和战斗风格交锋。
第20卷(2020年3月25日)
- 决赛先鋒戦后半展开,比赛更加激烈。
第21卷(2021年1月22日)
- 决赛先鋒戦继续,现役冠军宮永照展示她的压倒性实力。
第22卷(2021年11月25日)
- 决赛次鋒戦展开,各队强者激烈竞争,排名不断变化。
第23卷(2022年9月24日)
- 决赛中堅戦,竹井久带伤上阵,展现了清澄高校麻将部部长的实力。
第24卷(2023年7月25日)
- 决赛中堅戦继续,白糸台高校的渋谷尭深展现了她的役满能力,比赛进入高潮。
第25卷(预计2024年5月24日发售)
- 决赛副将戦展开,原村和迎战全国顶尖对手,比赛更加白热化。
令人唏嘘的是,全国大赛已经打了 11 年了。