ZHPMATRIX blog
Nov 2, 2024
[读书笔记]读粱宁的《真需求》
真需求在哪里?如何触达真需求?
Oct 30, 2024
[Python]再议规则引擎
一种支持系统可扩展性的实现方式
Oct 12, 2024
[产品开发]搜医搜-从0到1的故事
这篇文章讨论搜医搜从想法到变现的0→1的全流程,是一次“一人公司”的路径可行性探索。专注于讲故事,不讲技术。
Sep 24, 2024
[搜索系统]《Enhancing Asymmetric Web Search through Question-Answer Generation and Ranking》
通过问答对生成的方式强化非对称网页搜索
Sep 7, 2024
[搜索系统]一次面向垂域搜索系统的实践与思考
一个如何做架构的故事
Aug 26, 2024
[搜索系统]《A Surprisingly Simple yet Effective Multi-Query Rewriting Method for Conversational Passage Retrieval》
SIGIR2024的文章,Query改写用于检索系统
Jun 25, 2024
[搜索系统]《FIRST: Faster Improved Listwise Reranking with Single Token Decoding》
LLM用于重排序的各种玩法
Apr 16, 2024
[生活感悟]Finally,再见
江湖再见
Feb 25, 2024
[LLM]RAG在若干医疗场景的实践和思考
RAG是一种下限无限低,上限无限高的技术
Dec 31, 2023
[思考]2023结束了,说点啥
按照惯例,每年一篇年终自我总结。
Sep 22, 2023
[思考]两年半过去了,这支算法团队做了啥?
今天是个特殊的日子,是笔者切入医疗NLP方向的差不多30个月的时间,也是本公众号的第50篇文章,其中有一篇团队同学的工作。在这个具有纪念意义的时间节点,梳理和反思一下我们在这个方向的主要工作和思考,以期和业界同行交流学习,请大家拍砖指教
Aug 9, 2023
[LLM]大语言模型时代的长文本处理讨论
给出一组数据,《了不起的盖茨比》有72K词元,210页,按1.7分钟/页的阅读速度计算,需要6小时的阅读时间。
Jul 3, 2023
[LLM]患者模拟,不一样的医疗大模型应用
患者模拟,希望利用大模型的能力模拟患者完成和人类医生的对话
Jun 21, 2023
[LLM]一个有意思的关于ChatGPT的问题清单
这篇文章梳理ChatGPT相关的基础概念和问题,主要分为两个部分,第一部分围绕scaling laws, compute optimal和compression三个核心概念。第二部分主要围绕张家俊老师在知乎中谈到的8个非常有意思的问题。
Jun 16, 2023
[LLM]【中文医疗大模型】训练全流程源码剖析
包含预训练,监督微调,RM模型构建和强化学习四个阶段。
Jun 12, 2023
[LLM]关于hippocratic.ai和glass.health的产品讨论
这篇文章讨论两款基于英语世界医疗大模型的应用产品以及笔者做的背后技术拆解,最后给出近段时间笔者在大模型应用的开发推进上,形成的一些心得。
Jun 5, 2023
[LLM]中文医疗大模型的2W1H分析
经过过去一段时间的实践和探索,这篇文章将进一步思考LLM这件事情背后的Why,What和How。
May 28, 2023
[LLM]中文医疗大模型也可以“学富五车”?
BERT时代,笔者一个未竟的工作是如何训练一个充满知识的医疗领域BERT模型。在这篇文章中得到了工作上的延续,这里我们讨论如何为中文医疗大模型插上知识的翅膀。
May 28, 2023
[NLP]医疗信息抽取中的那些Bad-Cherry-Pick?
日常和业务方的交流过程中,有木有被对方拿着具体例子怼的经历?如果有,可以仔细看下这篇文章。
May 9, 2023
[LLM]关于医疗LLM的随笔
本周在思考基于医疗LLM的应用侧的工作,限于与司内业务关系较强,暂不通过文章讨论。应用侧的工作基本理清之后,接下来需要思考模型侧的问题,简而言之,如何得到一个中文医疗领域的LLM?
May 2, 2023
[LLM]死宅的读书笔记
对于一个死宅而言,最大的快乐就是五一假期哪也不去,或者宅在图书馆也行。这是一篇假期宅在梦想小镇图书馆翻书写的读书笔记。
Mar 20, 2023
[思考]关于医疗NLP的讨论
一代人有一代人的宿命,下一步将走向何方?
Mar 11, 2023
[LLM]记一次ChatGPT的应用探索与实践
时逢OpenAI开放了API,于是笔者近期相对系统地思考了围绕ChatGPT的一些问题。此外花了大概30分钟,写了50行代码,做了一个小应用。
Feb 4, 2023
[LLM]《Build》,2023年的开年好书
这是一篇读书笔记,春节前期读了第一遍之后就积极地推荐给周围的朋友,节后第一周又快速阅读了第二遍,边读边总结,于是能够形成此文,也算是完成了林师兄布置的假期作业。
Dec 31, 2022
[生活]我的2022年终总结
按照惯例,每年一篇年终自我总结。
Dec 10, 2022
[LLM]ChatGPT在医疗NLP场景的应用
站在医疗NLP的视角,以一个用户的身份,给出一些常见任务上的测试结果。
Oct 30, 2022
[NLP]也谈FedNLP
一个有意思的问题是:能否实现数据不出医院内部环境,但是可以实现模型的共享?
Oct 30, 2022
[NLP]面向文本结构化的标准分析工具
这篇文章是在由《海外独角兽》组织的HuggingFace&ML茶话会上吹水的同时写的,也许受投资人和开发者的影响,整盘文章的思路比较跳,不过比较有意思。另外也算回应团队小伙伴吐槽说,最近笔者在技术思考上“只上图,光偷懒了”的问题。
Sep 30, 2022
[NLP]医疗文本结构化:一种新视角
这篇文章中的一些想法在写出来之前,和身边的一群可爱的小伙伴们做了碰撞和讨论,因此也算是共创的结果。
Sep 18, 2022
[生活感悟]我与Github的十年
从二零一三年六月六日正式加入Github至今大概十年。
Sep 7, 2022
[思考]深夜科普文:指标和标签
什么是指标?什么是标签?指标和标签的联系和区别是什么?二者的产品架构设计是什么?哪些产品值得关注?
Sep 6, 2022
[思考]一篇关于SaaS产品的读书笔记
这篇读书笔记主要会围绕四个笔者比较关注的内容,分别是SaaS面临的竞争态势,SaaS的护城河,SaaS的大坑和SaaS的未来。
Aug 28, 2022
[生活感悟]一个NLP算法人的困境与破局
继《NLP,吹爆与落地》,《业务,工程和算法的互殴现场》之后,笔者又来诉苦了。
Aug 27, 2022
[思考]我的三句话书评
这是一篇书评,文章中希望用比较轻松的方式,以一种偏感性的叙述方式来描述自己的推荐理由。
Jul 16, 2022
[思考]一个NLP人眼中的医疗大数据
倒上冰水,泡几颗冰块,小王和李大千做了一场关于李大千眼中的医疗大数据的讨论。
Jul 9, 2022
[NLP]CHIP2022,相约在夏季
医疗NLP相关的比赛
Jun 12, 2022
[NLP]Mendel.ai,面向全世界80%的非结构化临床数据
医疗结构化产品分析
May 22, 2022
[NLP]记一次模型探索过程(百度的UIE)
这是一篇针对UIE的探索记录
Mar 20, 2022
[杂文]书文推介/《机器学习系统:设计和实现》
一早起床,读完了这本书,还是很过瘾的
Jan 15, 2022
[产品]病历质控产品观
全链路病历质控,还能这样?
Jan 7, 2022
[生活感悟]年终总结:2022=2021+1
一年一度的年终总结。
Nov 15, 2021
[思考]问答系统的结构化探索
又一次脑洞实验。
Oct 28, 2021
[搜索系统]一个想象的搜索系统
从一个基础的问题出发,一个空白的markdown,看我们能否推出搜索系统的核心要素?
Oct 25, 2021
[RecSys]再议推荐系统
杭州城,十里桂花香的季节,一篇迟迟未能写完的文章。
Oct 16, 2021
[RecSys]2021年的推荐系统杂文
这篇博客是最近一段时间对推荐系统做的一个回顾性思考和整理。
Oct 16, 2021
[杂文]数据中台注
上海的雨,一直下个不停。这篇博客是针对数据中台的读书笔记。
Oct 15, 2021
[NLP]因果推断+NLP
这是一篇学习笔记,讨论因果推断和NLP的互动。
Oct 2, 2021
[NLP]NLP中的范式转移
宅在家里读的一些文章的笔记和想法
Oct 1, 2021
[NLP]专病库方法论
五人团队,三个月,All in国内某超级大三甲胃癌专病库的沉淀的产品和技术方法论
Sep 17, 2021
[NLP]医疗NLP:医学对话临床发现阴阳性判别任务
CHIP2021的评测任务一的解决方案
Aug 17, 2021
[NLP]医疗视角:智能问答产品事
个人非常想要写的一篇文章
Aug 16, 2021
[NLP]医疗NLP的友商都有谁?
这篇文章是一篇友商调研,主要关注友商暂且集中在浙江杭州和中国上海。
Aug 15, 2021
[NLP]医疗NLP: 事件抽取是啥?
这篇文章结合三个具体例子,讨论医疗NLP中的事件抽取在做啥?
Aug 15, 2021
[NLP]医疗NLP: 命名实体识别全家桶~
信息抽取三板斧:命名实体识别,关系抽取和事件抽取。这里是第一把斧头,命名实体识别。
Aug 14, 2021
[NLP]关系抽取,仅推荐这两篇!
医疗领域的关系抽取
Aug 10, 2021
[NLP]医疗输入法,这儿有一款。
输入法的江湖厮杀已经过去好多年。那么输入法,还有机会吗?
Aug 10, 2021
[NLP]医疗实体修饰识别,是啥任务?
和术语标准化任务类似,医疗实体修饰识别也是医疗NLP方向的特色任务
Aug 9, 2021
[NLP]藏在智能分诊系统背后的技术
问答系统在医疗领域:智能分诊
Aug 9, 2021
[NLP]智能问诊:一种轻量级实现方法
问答系统在医疗领域
Aug 9, 2021
[NLP]关于CDSS产品的预研
CDSS是啥?医疗NLP小白一脸懵逼中~
Aug 3, 2021
[NLP]PM血泪史
PM是一个过程,一个角色
Aug 3, 2021
[NLP]医疗领域的推理方法
规则与案例融合的方法论
Aug 2, 2021
[NLP]钉钉周报,还能这么玩儿?
一次有趣好玩儿不严肃的脑洞实验
Aug 1, 2021
[NLP]假如要DIY一个mini版算法中台?
一个小的尝试:基于开源工具基本可以搭建一个算法中台
Jul 28, 2021
[NLP]也谈FedNLP
联邦学习在NLP领域中的应用。
Jul 27, 2021
[NLP]BERT加速的N种方法
模型太重,inference时间太长,效果好,但是在线场景基本不能使用?
Jul 27, 2021
[NLP]医疗NLP:标准化能力建设初步
医疗NLP领域的特色任务:标准化能力建设
Jul 27, 2021
[NLP]数据,要!知识,更要!
在医疗NLP领域,知识和数据,都很重要。
Jul 26, 2021
[生活感悟]三年级NLP算法同学的自省
工作三年总结
Mar 11, 2021
[医疗NLP]啥?听说你要构建一个新冠知识图谱
这个图谱构建,有点意思。
Mar 10, 2021
[医疗NLP]NLP人误闯医疗界
结果,他疯了?
Feb 17, 2021
[思考]一粒沙,也有骄傲的思索
每个人都是时代的一粒沙,渺小并倔强。思索,从未离开,结局都交给时间吧。
Feb 7, 2021
[CS224W]Embedding is All You Need: Node Embedding
CS224W:《Machine Learning with Graphs》,Node Embedding
Feb 6, 2021
[CS224W]GNNs
CS224W:《Machine Learning with Graphs》,Graph Neural Networks
Feb 5, 2021
[CS224W]图神经网络的局限性思考
CS224W:《Machine Learning with Graphs》,Limitations of Graph Neural Networks
Dec 31, 2020
[思考]写码十年
写在魔幻2020结束前。
Dec 19, 2020
[NLP]Graph Learning: 一种数据组织观点
这篇博客是近期在组里的一个分享内容。主要讨论GL是什么,为什么要研究GL,怎么用GL,以及简要讨论我们自己做过的一些工作和想法。
Nov 29, 2020
[NLP]基于Graph的Learning问题
这篇博客主要预研关于Graph的问题,目的是推进知识图谱在应用层的进展。
Nov 29, 2020
[NLP]智能服饰搭配的方案讨论
简单梳理专家模型,CV,NLP和Graph的各种解决方案和思路,以基于CV的几个工作为主。同时,站在产品和运营的角度聊一聊智能穿搭这件事儿
Nov 25, 2020
[NLP]电商域图谱构建-问题复盘
在之前的文章中讨论了AliMe KG的工作,这篇文章主要讨论我们自己在真正实践过程中发现的问题。
Nov 10, 2020
[NLP]一种电商域知识图谱的构建方法
这篇博客主要讨论AliMe KG的工作,没错,博主正在做知识图谱。
Oct 26, 2020
[NLP]初识图数据库
这篇博客是一篇图数据库入门记录。之前主要关注点在模型层,图数据层的问题没有深入了解,大佬可飘过。
Oct 21, 2020
[NLP]兜底哲学:规则引擎方法论
秋水共长天一色,模型与规则齐飞。
Oct 21, 2020
[工程]基于Python的服务部署
菜鸟角度看算法服务部署
Sep 15, 2020
[思考]求道之人,不问寒暑
想对自己说的话,我说,你听。(非技术性思考,技术同学可飘过)
Sep 14, 2020
[NLP]问答匹配,有点难
这篇博客不讨论智能问答系统中的QQ匹配,只说QA匹配。具体内容包括对QA匹配问题的思考,具体的建模方式等。
Sep 5, 2020
[思考]电商问答系统的产品侧讨论
这篇博客主要讨论问答系统产品侧的一些想法,包括具体解决的问题和基本思路。
Aug 2, 2020
[NLP]Learning to Rank用于问答匹配/答案推荐建模
讨论问答匹配和答案推荐建模想法
Aug 2, 2020
[思考]Think in Dialogue System
关于对话系统的阶段性思考
Aug 2, 2020
[NLP]答案推荐的评估指标设计
针对智能问答系统,讨论答案推荐任务中的评估指标设计问题
Jun 26, 2020
[NLP]冷启动,知多少?
讨论一下对话系统中的冷启动问题
Jun 13, 2020
[思考]一个夏日的午后,聊一聊智能客服与NLP
智能客服的玩家们都在乐呵啥?
May 10, 2020
[思考]分手NLP,需要理由吗?
如果有一天,我不做NLP了,那会是因为什么原因?离开,总是因为一些什么。
May 7, 2020
[NLP]MRC is All you Need?
讨论一些用MRC的方式建模文本分类,关系抽取,命名实体识别和指代消解等多个任务的想法
Apr 4, 2020
[NLP]样本构造中的偏置问题
样本偏置是引起模型偏置的直接原因,尤其是在自己构造样本的时候,较容易引入偏置。偏置的问题解决容易但是发现难,但是这正是考验对问题理解程度深浅的时刻。
Mar 22, 2020
[Python]漫谈模板模式
以模板模式为例,聊一聊怎么扣代码设计。
Mar 22, 2020
[Python]算法开发中的设计模式
Alex Martelli说,设计模式是被发现,而不是被发明出来的。
Mar 21, 2020
[Python]多线程和多进程用于代码加速
代码加速,于己而言实在是一个非常有吸引力的题目。
Mar 11, 2020
[NLP]开放信息抽取-监督视角
开放并不意味着不能监督,监督视角下的开放信息抽取也是很有意思。
Feb 14, 2020
[NLP]Few/Zero Shot Learning简单梳理
同样是工业界的硬核问题。假设问题是有N个类,N很大,比如5000,每个类的样本只有10个。那么,任给一个样本,做5000分类,怎么办?
Feb 14, 2020
[NLP]你的样本OOD啦
Out of Distribution是又一个工业界非常实际的问题。多数情况下,我们假定IID成立,但是实际当模型面向用户时,用户会带来OOD的样本。你不能说,OOD啦,不是我的锅吧?
Feb 9, 2020
[NLP]关于Continual Learning在NLP问题中的应用讨论
业务多变,模型要连续迭代,CL就是一个工业界非常实际的问题。CL@NLP的工作相对较少,这篇博客主要做一些围绕这个问题的思考,为后续研究做理论准备。
Jan 22, 2020
[LeetCode]有趣的数据结构
树状数组,字典树,线段树,并查集,跳表
Jan 22, 2020
[LeetCode]LC100:相约新年伊始
对LeetCode中HOT100的思考
Jan 21, 2020
[LeetCode]为什么要LC,从树开始
从春节前开始,一直在做一些LC的题目,甚是觉得LC的思想比起DL的一些思想要更加有趣。这是一篇专题笔记,后续会有其他的专题笔记补充。
Jan 21, 2020
[LeetCode]设计题目
传统算法中的系统设计类题目汇总列表,不包含思路
Jan 21, 2020
[LeetCode]字符串
字符串是传统算法中的高频考题,变种复杂有趣
Jan 21, 2020
[LeetCode]Hash,值得拥有
Hash思想在传统算法中的应用
Dec 31, 2019
[生活感悟]2020,喜迎科幻年
2020年,我将迎面所有的挫折和挑战,不畏惧,不退缩。2021年,尚且码字行文,畅谈光阴和故事。
Dec 30, 2019
[Talk理解]《Energy-Based Self-supervised Learning》
最近围绕Masked LM做了一些工作,个人对此很是感兴趣。这篇博客以Yann LeCun最近的一次报告为纲,梳理一些个人相对认同的观点和结论。
Nov 30, 2019
[技术思考]业务,工程和算法的互殴现场
一个NLP算法工程师的日常?
Nov 5, 2019
[NLP]用Masked Language Model搞事情
这篇博客是根据个人在组里的技术分享整理而来,主要梳理近期围绕MLM在应用层上的一些工作。比如,可以用于情感迁移,中文纠错,知识发现等。
Nov 2, 2019
[技术思考]NLP,吹爆与落地
眼看他起朱楼,眼看他宴宾客,眼看他楼塌了。
Sep 6, 2019
[NLG]基于知识图谱的主动聊天-数据篇
关于2019语言与智能技术竞赛-知识驱动对话任务的讨论
Sep 4, 2019
[NLG]《Neural Text Generation: A Practical Guide》
论文阅读。这篇文章从实用角度梳理了神经文本生成的相关细节,结合自己的理解和实践,对论文内容进行个人的理解。
Aug 25, 2019
[OpenNMT]OpenNMT核心类设计
梳理了OpenNMT源码在关键类上的设计,具体包括框架类,数据类,模型类和服务类。
Aug 8, 2019
[NLP]MT-DNN相关
论文阅读
Jul 28, 2019
[知识图谱]开放域信息抽取
关系抽取可以预先定义schema,这是目前的一种主流做法。但是同样在一些场景下,可以不预先定义schema,称为开放域信息抽取。在自己之前的工作中,多数做了前者,但是目前的一个工作,可能后者更加符合需求,因此这篇博客主要调研相关工作。
Jul 22, 2019
[比赛]用两种思路解2019之江杯的电商评论观点挖掘问题
2019之江杯全球人工智能大赛的电商评论观点挖掘任务为例,讨论一下对如何建模的思考。
Jul 19, 2019
[读书笔记]《Interpretable Machine Learning》
A Guide for Making Black Box Models Explainable
Jul 18, 2019
[PyTorch]PyTorch用于大模型训练
梳理有助于大模型训练的一些方法,具体包括混合精度加速,XLA加速,分布式训练,梯度累积,梯度Checkpoint相关技术。
Jul 14, 2019
[论文笔记]《A Brief Introduction to Weakly Supervised Learning》
data hungry场景下,也许需要弱监督。
Jul 3, 2019
[Python]Python高级编程
《Effective Python》笔记
Jul 3, 2019
[Pytorch]forward中的复杂tensor操作
收集了一些在模型实现中可能会遇到的一些不太好写的tensor操作,后续持续补充中。
Jul 1, 2019
[Pytorch]基于混和精度的模型加速
pytorch中基于apex使用混合精度加速的四个步骤,原始非apex加速代码也可以做对应的修改,体验fp16可能带来的加速效果。
Jun 30, 2019
[知识图谱]神经关系抽取
总结18年,特别是19年到现在的一些关于实体识别和关系抽取的工作。其中多数是自己在近期的工作中主要参考实现并且证明有效的工作,算是对近期工作内容的一个总结。
Jun 30, 2019
[NLP]模型实现中的Debug问题
《Troubleshooting Deep Neural Networks-A Field Guide to Fixing Your Model》的tutorial笔记
Jun 29, 2019
[ML]P, R, F1, 啥是micro,macro和weighted avg?
sklearn.metrics中提供了多个计算classification相关任务的评估指标,一些函数功能类似,例如f1 score,precison recall fscore support和classification report等。此外,版本不一致情况下,函数的计算输出也不一定相同。
Jun 5, 2019
[NLP]snorkel相关论文阅读
snorkel是一个框架,通过该框架可以用弱监督的方式产生数据,减少人工标注的数据缺失的问题,尤其适合于信息抽取任务。
May 6, 2019
[NLP]神经网络的Low-Memory技术
这是一篇技术报告笔记,讨论了训练神经网络时能够减少memory的技术,同时讨论了该技术与模型最终效果的影响。
May 4, 2019
[技术沉思录]从中文纠错技术中所想到的
从去年实习开始着手做中文纠错技术,到现在拥有一个线上可用的模型(其实还很不错)。期间做了一些有意思的探索,形成了一些新的思考和感悟。这篇博客不是一篇技术文章,姑且算是一篇杂谈吧。
Apr 26, 2019
[NLP]sentencepiece
无监督分词器的对比,两个subword算法以及tensor2tensor中subword的实现思路,以及讨论一些subword regularization的东西,其中sentencepiece中某些部分的理解需要去读源代码中的注释才行。
Apr 23, 2019
[tensor2tensor源码阅读]目录结构和部分重点参数讨论
去年对比opennmt-py和tensor2tensor,但是只是写了opennmt-py的源码结构,并没有梳理tensor2tensor的结构,最近刚好重启一个大实验,组里同学也在做相关的事情,因此借此机会重新梳理一些关于tensor2tensor的内容。
Apr 4, 2019
[NLP]pycorrector统计语言模型部分源码阅读
统计语言模型用于中文纠错,这部分代码可能有一定的启发性。
Mar 30, 2019
[生活]七年学生生涯总结(本科+研究生)
一般这样的总结都是在大论文的致谢部分,但是在大论文的致谢部分,有些内容总是不能够客观的去写。此外,这样的总结适合在参加完毕业典礼的时候写,但是估计那个时候情绪复杂也难以冷静的思考,从而给自己一个客观全面的总结,因此索性就放在博客中吧。
Mar 25, 2019
[NLP]扫盲-搜索,广告和推荐
电商领域三大应用,搜索,广告和推荐,估计很大一部分NLP从业者在做相关业务。因此,有必要给自己扫个盲。
Mar 13, 2019
[NLP]Rethink系列-Transformer
梳理一下Transformer实现时的一些基础问题。
Mar 11, 2019
[PyTorch]默参都是全局的,局部学习率调度和局部梯度Clipping,咋搞?
PyTorch中模型分层设置学习率和灵活的梯度操作,比如梯度Clipping问题。
Mar 11, 2019
[PyTorch]CNN系列接口Highlights
讨论PyTorch中与CNN实现相关的接口,包括Conv层,Pooling层,Normalization层和Dropout层,Padding层。
Mar 9, 2019
[PyTorch]直观认识torch.jit模块
在之前的一篇博客中讨论了PyTorch的C++前端,而这篇文章是关于PyTorch模型部署的第二篇博客,用具体的代码讨论了Tracing和Script两种方式的区别和联系。
Mar 9, 2019
[PyTorch]代码复现时的拦路虎-维度操作
可能是多数萌新在代码复现时遇到的最大的问题,shape不对齐。这篇博客目的就是讨论这些基础操作,以求复现时的随心所欲。
Mar 8, 2019
[NLP]聊一聊,预处理和数据增强技术
这篇博客梳理了NLP中英文的预处理方法和一些通用但是实现成本不高的数据增强思路。
Mar 7, 2019
[PyTorch]RNN遇上PyTorch
解释了PyTorch中RNN系的参数,输入和输出。接口包括两类,分别是多层结构和Cell结构。相比于Tensorflow中的多个版本实现,PyTorch中的要清晰很多。
Mar 2, 2019
[NLP]NAACL2019论文马拉松
NAACL2019论文接受列表放出来了,照例要通读一下题目,选一些自己喜欢的文章读一读。
Mar 1, 2019
[PyTorch]PyTorch的C++前端和模型部署
PyTorch1.0发布后,PyTorch的春天似乎就到了。在此之前,关于PyTorch的吐槽主要集中在不适用生产环境,个人认为某种意义上就是缺少C++的前端。最近用PyTorch复现一篇文章,顺道考察了一下C++端的应用。是的,我从没有喜欢过Tensorflow。
Feb 16, 2019
[NLP]论文阅读-《Language Models are Unsupervised Multitask Learners》
GPT-2的论文阅读,陈述了主要内容,比较了实验结果,并提出了关于该模型的几点思考。
Feb 5, 2019
[NLG]论文阅读-《Generating Sentences from a Continuous Space》
主要从贝叶斯角度讨论了VAE的目标函数的由来,分三步由浅入深讨论VAE,同时给出了VAE应用于文本生成任务的工作。
Feb 4, 2019
[NLG]论文阅读-《SeqGAN:Sequence Generative Adversarial Nets with Policy Gradient》
NLG的几个思路:GAN,VAE,RL,其他和流模型,之所以将流模型放在最后,是因为目前还没有看到流模型用于NLP的任务。
Feb 2, 2019
[NLG]论文阅读-文本风格迁移
慢慢地需要从自然语言理解过渡到自然语言生成,生成的应用场景较广,值得关注。这篇博客是最近读的几篇文章的一个论文笔记,主要目的是帮助自己建立一个对风格迁移任务的印象。
Feb 1, 2019
[OpenNMT]OpenNMT中Attention相关参数
对opennmt-py中的train模块与attention相关的参数进行了解释和梳理,官方文档确实写的比较落后。部分参数可能需要回到代码中,或者issues区才能理解。
Feb 1, 2019
[NLP]中文拼写检纠错-和百度比一比
在文本纠错任务上,用自己的模型和百度API开放的接口测试效果对比。
Jan 31, 2019
[NLP]Rethink系列-词法/句法/语义
这是一篇写给自己的扫盲短文。我们希望DL的方式能够获取语法和语义信息,但是评估的方式多是通过下游任务的性能,没有从过程上去分析是否确实获得了期望的语法和语义信息,个人对这种分析方式并不认同。直接对词法,句法和语义信息进行分析的技术作为NLP的底层技术,值得进一步探索和思考。
Jan 30, 2019
[论文阅读]《A Neural Compositional Paradigm for Image Captioning》
NIPS2018的文章,用于解决Image Captioning问题,整体上没有采用端到端的思路,不过其中的语言生成策略或许有值得借鉴的地方。
Jan 29, 2019
[NLP]Rethink系列-copy和coverage机制
从一篇论文出发,讨论了与attention相关的两种机制,这两种机制在opennmt-py中都有相应的实现,同时提了一些可以进一步思考的问题。
Jan 28, 2019
[NLP]Rethink系列-seq2seq
主要是对encoder和decoder的一些想法
Jan 27, 2019
[NLP]Rethink系列-CNN/RNN
对CNN在NLP中应用的方法,缺点,优点及其目前发展形势做的小思考。
Jan 27, 2019
[NLP]Rethink系列-Attention
回顾了Bahdanau和Luong的工作,讨论了围绕self-attention的一点想法,重新思考了Transformer/BERT。
Jan 3, 2019
[LeetCode]数据流
传统算法中的数据流问题,一个经典的数据场景,流式数据处理
Jan 3, 2019
[LeetCode]LeetCode终结:题解
这是一份题解列表,总结了高频面试题
Jan 1, 2019
[LeetCode]重说:递归
最近读组里同学代码的时候,看到一个递归实现。于是借助这篇短文,回顾一些关于递归的问题。
Jan 1, 2019
[LeetCode]重说:动态规划
关于动态规划的一些题目
Dec 31, 2018
[生活杂谈]二零一九,GO!
总结二零一八,迎接二零一九。
Dec 22, 2018
[NLP]论文思考-神经机器翻译中的六个挑战
这篇博客是一篇为讨论班报告写的论文笔记,论文原题《Six Challenges for Neural Machine Translation》,时间2017年,作者来自JHU的Philipp Koehn等人。虽然有标题党之嫌,但是论文很实用。论文指出了NMT中的domain mismatch, amount of training data, rare words, long sentences, word alignment,beam search相关问题。
Dec 17, 2018
[OpenNMT]训练模块源码剖析
讨论训练模块的相关设计
Dec 17, 2018
[OpenNMT]预处理模块源码剖析
讨论预处理模块的相关设计
Dec 17, 2018
[NLP]中文拼写检纠错
针对该任务,基于自己构建的数据集和相关评测方法,尝试的思路包括统计语言模型,序列标注思路,seq2seq思路,本文是对实验结果,数据选择,模型选择,框架选择的一个简单整理。虽然统计语言模型目前应用广泛,但是实验证明,基于序列生成的思路结果更好。这是一个有趣的问题,需要持续研究思考。
Dec 14, 2018
[NLP]从一个例子谈DL论文的复现问题
针对EMNLP2018关于对话生成的一篇文章《An Auto-Encoder Matching Model for Learning Utterance-Level Semantic Dependency in Dialogue Generation》,对实验复现过程的讨论和思考
Oct 13, 2018
[NLP]关于BERT的讨论
《BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding》论文阅读想法
Sep 28, 2018
[生活杂谈]Eigen实习总结
围绕在Eigen的实习内容,回顾了任务分析,论文复现,拼写检查,经验教训四个方面的内容。讲述一个小白掉入NLP坑中的辛酸史。
Aug 27, 2018
[NLP]全国第一届“军事智能·机器阅读”挑战赛
放在草稿箱好久的一篇调研,本来是为比赛准备的,Pipeline跑通之后因为各种原因没有时间继续调试。梳理了比赛任务,相关比赛和数据集,经典模型等。
Aug 26, 2018
[DL]关于NLG的一个调研
调研了NLG的框架,主流方法,评估方法,业界落地情况等,没有好的评估体系和方法会制约NLG的发展,因此设计合理有效好用的评估指标是一个非常有挑战性的问题。
Aug 24, 2018
[随想]机器学习开发沉思录
结合最近的项目,做一些关于机器学习系统开发的思考。我是个算法工程师,同时也是一个软件工程师。如果非要选,可能我需要首先是个软件工程师。
Jul 6, 2018
[DL]CNN中的两个计算问题
CNN中感受野的计算和使用小卷积核的讨论,包括一些自己对于大小卷积核的理解和看法。
Jun 29, 2018
[DL]Loss函数设计与优化
针对我们目前正在做的工作,图片难易程度划分。讨论损失函数从mse到kendall,从kendall到kl散度,再到一些新的想法。
Jun 25, 2018
[DM]《推荐系统实践》读书笔记
一直对推荐系统保持好奇心,但是没有系统的读过推荐系统方面的资料。最近可能需要一些推荐系统的知识,所以花了一个下午和一个晚上的时间读了项亮的《推荐系统实践》这本书,这篇博客主要是读书笔记,有一些自己的认识和总结。
Jun 18, 2018
[DM]IJCAI 2018阿里妈妈搜索广告转化预测
比赛复盘
Jun 14, 2018
[Python]回调函数,线程安全,Monkey Patch和try/except使用
读了一份syncbn的代码,博文是对一些基本概念的回顾。
Jun 11, 2018
[DL]余弦空间下的人脸Loss
梳理ArcFace,SphereFace和CosineFace的联系和区别,并提出一种更加general的想法
Jun 6, 2018
[DL]关于样本的Hard和Easy的讨论
围绕CVPR2005,CVPR2016的两篇文章,hard negative mining, hard example mining, OHEM等,从prob和loss两个角度讨论,同时提了一些想法。
Jun 3, 2018
[随想]《原则》读后感
《原则》是Ray DaLio的作品,RD是桥水基金的创始人,桥水基金是世界上最棒的对冲基金公司。自己是一个工程师,对量化投资所知甚少,幸好这本书不是一本专业书籍,还是找到了一些很有启发的观点。
May 15, 2018
[C++]GDB调试
利用bt和f命令调试core文件
May 13, 2018
[目标检测]不同角度认识坐标回归
坐标回归作为经典问题出现在检测任务中,这篇博客站在几何变换和数值优化的角度,尝试正推和逆推两个方向理解一下坐标回归,殊途同归。
May 12, 2018
[目标检测]R-CNN
单独把分类器和回归器的训练数据构造过程拉出来思考一下,同时对比了Region Proposal和YOLO中Cell的联系和区别。
May 12, 2018
[目标检测]重新思考YOLO的一些问题
这篇博客从整体上回顾了检测任务,通过梳理脉络,了解历史,重新发现并提出一些自己的思考。不会看到网络结构图,损失函数,各种参数介绍,这些并不是这篇博文的目的。
Apr 23, 2018
[Caffe]Caffe修改源码支持多标签输入
通过修改Caffe源码的方式,使得Caffe可以支持多标签输入。同时给出了一个使用Caffe进行多标签训练的例子。附带讲了如何调试Caffe的CPU和GPU版本的源代码。博客中的例子已经分享到我的Github上了,还有训练数据。
Apr 21, 2018
[Linux]Linux常用工具整理
系统梳理了自己在日常学习和工作中常用的Linux工具
Apr 16, 2018
[学术报告]2018-JSAI模式识别专委会学术年会总结
关于JSAI学术报告的总结,反思
Feb 19, 2018
[DL]经典目标检测论文阅读
春节假期在家简单梳理了一些目标检测领域经典的文章,每篇文章主要包括Contributions,可Follow方向,我的想法,参考文献四部分内容。随着阅读量的增加和阅读深度的增加,这篇博文会保持持续更新。
Feb 18, 2018
[生活杂谈]京东实习碎碎念
打开京东ME,显示在职天数三十九天。
Jan 2, 2018
[生活杂谈]聊聊二零一七半年纪事
我不禁想到,一代人的芳华已逝,面目全非,虽然他们谈笑如故,可还是不难看出岁月给每个人带来的改变。倒是刘峰和小萍显得更为知足,话虽不多,却待人温和
Dec 31, 2017
[DL]扯扯神经网络的优化理论
深度神经网络的损失函数的非凸性讨论,局部最小值和鞍点理论,如何用可视化的方式讨论神经网络的损失函数
Dec 27, 2017
[ML]机器学习模型关系分析和探讨
这篇博客梳理了机器学习常见模型之间的关系,涉及到从不同的角度看同一个模型,或者从同一个角度看不同的模型。
Dec 5, 2017
[C++]map和set的坑
做题过程中遇到很多需要map和set处理的场景,这篇博客讨论map,unordered_map,set,unordered_set,unordered_multiset的区别和联系,以及背后的数据结构实现等。
Nov 24, 2017
[算法设计]计算理论
带着一个LeetCode题目能否有一个形式化的数学描述,并且存在一个数学的解决方法,梳理了计算理论的基本概念,然而疑惑并没有得到解决。
Nov 14, 2017
[Spark]Spark从入门到离家出走
这篇Blog是关于Spark的第二篇,主要回顾了三道题目,分别是词频统计,大文本去重和topK问题。同时在参考部分,列出了一些非常棒的参考资料。
Nov 14, 2017
[Linux]Linux下的文本处理工具
在很多数据处理场景下,很多人倾向于屠龙刀和倚天剑,如果一不小心砍歪了,重新抡起刀剑砍就是了。但是如果砍一下的cost很大的情况下,不如用匕首补刀。而Linux下的文本处理工具就像这把匕首,更贴切的感觉像是一把瑞士军刀,小而功能齐全。
Nov 10, 2017
[LeetCode]关于Gas Station的思考
Gas Station是一道Medium类型的题目,这篇Blog仅仅是对该题的一些思考,并不是一个答案解析的过程。
Nov 4, 2017
[Python]用进程池Pool进行代码加速
给出了不使用成熟大框架spark和hadoop的前提下,如何发挥集群算力的解决方案的想法,分布式进程进行任务分配+单机多核多进程+单核协程(仿多线程),实际上比赛代码加速还是多进程好使,其他的技术可能只是讨论讨论
Oct 19, 2017
[ML]AwesomeXGBoost-炼丹秘籍
这篇博客是为了配合组会做XGBoost的论文报告,包括XGBoost的基本超参数调节,自定义目标函数和度量函数,特征重要性,决策树绘制和保存,特征离散化。
Oct 19, 2017
[ML]关于Blending和Stacking的讨论
这篇博客讨论了模型融合技术中的Blending和Stacking,分析了二者之间的关系,同时开了Stacking和神经网络的脑洞。
Oct 5, 2017
[C++]从C++的字符串分割展开讨论
C++没有内置字符串的分割函数,惊不惊喜,意不意外?
Sep 30, 2017
[ML]KNN实现过程中的编程复盘
这篇博客讨论了KNN实现过程中涉及到的排序和查找,TopN问题,词频统计等非常经典的基础问题,同时引入了heapq和Counter两个模块。
Sep 24, 2017
[Python]记一次Debug经历
最近在备战PAC2017-AI组的决赛,下午写metric模块的时候,考虑到边界条件,必要时需要捕获除零异常。但是,在问题没有发现之前,怎么也捕获不到,这是为什么呢?
Aug 25, 2017
[Python]利用statsmodels做数学建模比赛
最近备战华为杯数学建模竞赛,作为一个Pythoner,偏向于通过coding进行统计分析,主要是因为SAS和SPSS不会用,囧。
Aug 13, 2017
[Python]pandas引用和复制的PK
经常会遇到一个warning,叫做SettingWithCopyWarning,本文尝试弄清楚pandas在各种场景下的引用和复制的问题,也就是view和copy的对比。
Aug 13, 2017
[paper]针对密集目标检测的焦点损失函数
这是何凯明老师团队8月7日挂在arXiv的一篇文章,文章原名《Focal Loss for Dense Object Detection》,恰逢我们在做的一个NLP的比赛遇到不平衡问题,小林师兄就提到这篇文章,但是苦于BigDL有点儿坑,在自定义loss的时候学习成本略大,就没用到比赛中(其实就是懒),今天读读文章,还是有启发的。
Aug 12, 2017
[比赛]PAC-2017比赛工具篇-Spark
全国并行应用挑战赛之人工智能组的赛题:基于NLP的金融营销活动情感分析,指定关于开源库为Intel开发的基于Spark的BigDL,这篇文章回顾了比赛中使用Spark进行数据预处理的代码细节。
Jul 30, 2017
[生活杂谈]写在回家之前-研一下半学期总结
冒冒问我,看过冒险小虎队没?我说没。以前回家会带一些技术方面的书,CSAPP的第二刷就是寒假在家完成的。这次,我又是带了一箱子的书,嗯,皮皮鲁,舒克贝塔。
Jun 29, 2017
[ML&DL]xgboost自定义目标函数和评估函数
在有些比赛中,需要根据自己的需求来自定义目标函数和评估函数,就自己而言,目标函数需要自定义的场景不太多。为了充分发挥xgboost的框架作用,很多时候自定义评估函数的需求相对强烈。
Jun 27, 2017
[DL]LeNet的网络结构分析
文章通过梳理一个具体的网络结构LeNet,计算参数数量和连接数,分析卷积核和下采样核等,感性的认识网络结构的建立,同时给出了自己的判断。
Jun 26, 2017
[C/C++]细数二维数组的坑
在LR的MPI实现中,吐槽了使用Eigen在消息传递中的不方便之处。在RDPSO的优化实现中,采用原生二维数组,本文是关于二维数组相关的坑的总结。
Jun 26, 2017
[Linux]Linux编译安装
linux环境下的编译安装相关,文中结合自己日常run代码和使用开源工具的经历,总结需要的编译安装知识,不是所有的问题都可以apt-get,yum,pip,brew等来搞定,必要时还是需要编译安装。
Jun 22, 2017
[ML&DL]用图分割的方式加速随机漂移粒子群优化算法(RDPSO)
嗯,这个事情应该没有人做过滴,因为老板是RDPSO主要发明人呀。本文简要谈RDPSO的加速计算,主要涉及MPI的通信函数梳理和一些基本且重要的概念。
Jun 18, 2017
[DL]关于tensorflow和keras的思考点
图计算,静态图和动态图,符号计算
Jun 15, 2017
[paper]关于K-means变种的论文阅读
K-means是特殊情况下的高斯混合模型,关于K-means的各种改进论文,看作者看会议,真的有意思。K-means看似逻辑简单,关于该算法的研究一直没有停止过,ICML 2017就有三篇
Jun 14, 2017
[ML&DL]基于图的目标函数分解策略
自然科学基金项目,求解大规模数据分析中复杂优化问题的演化算法研究中的一个比较基础的问题,想法是将原目标函数分解成多个子目标函数的和的形式,每个子目标用节点表示,两个子目标的共享变量用边表示,合作协同演化。
Jun 1, 2017
[ML&DL]啊哈,CNN!
趁着跑Eve代码的时间,读了一些关于CNN的东西,在这之前,只在组会上听实验室的师兄师姐聊。可能会看到一些关于R(2)NN,LSTM的一丢丢东西。
May 27, 2017
[paper]ICML 2017论文马拉松
给浏览的ICML 2017的论文做一个笔记,由于文章太多了,只选择了我自己感兴趣的领域去读。
May 17, 2017
[Optimization]针对非凸优化的递归分解
这是一篇不太详细的论文笔记,来自IJCAI2015 BestPaper,Pedro Domingos的作品,《Recursive Decomposition for Nonconvex Optimization》文中提出了RDIS算法。
May 15, 2017
[DL]深度学习Eve折腾记
本文是围绕Eve的算法实现折腾过程,也是自己跑的第一个深度学习实验。主要是验证自己的一个想法,是对Eve中的Clipping操作的一个替代
May 11, 2017
[LeetCode]并行与问题分解技术
老板给了一篇IJCAI2015的BestPaper,Pedro Domingos出品,针对Non-Convex问题的递归分解。网上关于这篇文章的讨论不太多,在读这篇文章之前,先讨论一个ACM题目,涉及一些关于递归,加法原理和如何进行问题分解的思考。
May 6, 2017
[Optimization]一入优化深似海,从此Coding是路人
这是一篇我读到的比较好的优化的资料整合,可能包括博客,微信公众号,某些论文,某些书中的对某个问题的总结等。采用的形式是提出问题,解决问题的资料来源,和自己对于资料的评论,可能包括资料中某些小的错误瑕疵。
May 5, 2017
[Optimization]基于反馈的随机梯度下降算法
《IMPROVING STOCHASTIC GRADIENT DESCENT WITH FEEDBACK》算法复现记录,这是一篇来自ICLR 2017的顶会论文。同时提出了自己针对这篇论文的分析和想法,以及进一步follow的做法。
May 4, 2017
[Life]关于学术/竞赛资源的想法
和周围同学聊天,有几个同学问起我所使用的学术资源,这里简单做一个总结。
Apr 12, 2017
[Optimization]Deep Learning中的梯度下降优化算法
在之前的文章中聊过SGD的各种优化算法,Bottou对Deep Learning中的优化只是做了很少一部分的阐述,这里关注在Deep Learning中的梯度优化。
Apr 10, 2017
[Optimization]LASSO回归的优化求解
LASSO目标函数非光滑,不能使用基于梯度的方法。基于坐标下降并行求解LASSO,已经有很多文章,自己花了三天时间想去努力设计一个基于LARS并行的方案,无功而返。但是不论怎样,还是要聊聊LASSO问题的求解。
Apr 8, 2017
[Optimization]大规模机器学习优化算法的想法启发
花了两周多时间读Bottou的93页的《Optimization Method for Large Scale Machine Learning》,这里总结一下文中提到的可能的想法
Apr 6, 2017
[Optimization]SGD的regret bound分析
从一个bound的推导来感受优化中的数学,SGD的次线性收敛来源。
Apr 1, 2017
[ML&DM]GBDT-下里巴人版
XGBoost是GBDT的高效实现,本文用一个简单的例子说明GBDT工作方式,尽量不堆公式。同时关于XGBOOST,给出了几个经典的问题,关于XGBOOST在实现上可能带有作者们自己的偏好,不管怎样,从比赛和项目使用来看,效果很不错。
Mar 20, 2017
[ML&DM]sklearn中的并行和串行
聊聊pipeline,featureunion,gridsearch等话题
Mar 15, 2017
[groot]xgboost源码阅读-启动过程
这篇短文聊聊xgboost的启动过程,其中包括对rabit的介绍,启动流程等,rabit在之前的文章中也有提到过。
Mar 14, 2017
[分布式]逻辑回归并行化
讨论了并行化的一些话题,对于逻辑回归用于分类问题,采用MPI进行并行化,优化过程采用批量梯度下降(BGD)
Mar 6, 2017
[分布式]矩阵乘法的分布式实践
MPI负责管理节点和计算节点通信,OpenMP负责计算节点并行加速,给出了并行加速比和效率曲线
Feb 24, 2017
[Python]深入理解数据结构
回顾了关于copy的坑,常用数据结构的时空复杂度,同时结合CS231n的视觉课程做了python基础的review。
Feb 22, 2017
[Python]后知后觉函数式编程
文中主要谈了匿名函数,filter,map,reduce等,同时给出了一些短小精美的代码。
Feb 22, 2017
[Python]若干有意思的知识点
鸭子类型,装饰器,闭包,生成器
Feb 21, 2017
[比赛]天池比赛-口碑商家客流量预测(思路梳理)
这是一篇比赛中途的思路梳理,回顾了比赛方案设计,具体包括特征工程,模型融合,代码加速三部分,以期从过去激发新想法。
Feb 20, 2017
[paper]Learning from Imbalanced Data
解决数据不平衡问题的一篇论文笔记
Feb 19, 2017
[比赛]天池比赛-口碑商家客流量预测(代码加速附加)
在代码加速篇中谈到了多线程和多进程的方式,并提出了分布式的设想。本文在设想基础上,给出了更加详细的描述。
Feb 19, 2017
[比赛]天池比赛-口碑商家客流量预测(代码加速篇)
比赛还未结束,目前排名前15%。利用周末时间,进行代码复盘,重点在代码加速方面,稍后会给出我们的设计思路。
Jan 9, 2017
[C++]shared_ptr
xgboost中对于智能指针的使用,主要有两个shared_ptr和unique_ptr。这篇文章是对shared_ptr的理解和典型使用场景说明,以读懂xgboost源码中的使用场景为目的。
Jan 9, 2017
[C++]unique_ptr
xgboost中对于智能指针的使用,主要有两个shared_ptr和unique_ptr。这篇文章是对unique_ptr的理解和典型使用场景说明,以读懂xgboost源码中的使用场景为目的。
Jan 9, 2017
[groot]xgboost源码调试
mac中使用lldb调试器在vim中调试xgboost的c++源代码,其中xgboost为单线程版本
Jan 8, 2017
[C++]聊聊const
放眼望去,xgboost源码尽是const。合理使用const,是编程质量高的一个表现。谁说的,出来,我保证不给他鼓掌。隐藏保证数据安全性,共享破坏数据安全性。
Jan 7, 2017
[C++]工厂设计模式
最近读xgboost源码,在目标函数设计时,contributors们采用了工厂设计模式,这个技能点有没有Get到?
Dec 31, 2016
[Life]写在2016年最后一天
2015年,人生中艰难的一年,举步维艰。2016年,自己是幸运的。2017年,没有什么大的梦想,只愿世界
和平,编程没有野指针
Dec 28, 2016
[C++]STL陷阱
一次关于erase的踩坑经历
Dec 25, 2016
[groot]数据概貌
行动之前看数据
Dec 22, 2016
[CV]图像处理知识框图
马上就是圣诞节了
Dec 21, 2016
[Python]绘图简化
收集主程序待输出数据,统一绘图
Dec 20, 2016
[CV]形态学与图像
关于冈萨雷斯《数字图像处理》课后一道习题的想法
Dec 5, 2016
[ML]模型选择
偶然间看到余凯在某次工业界报告中谈到误差,就想写点关于模型选择,偏差方差均衡,交叉验证之类的东西。
Dec 4, 2016
[Python]编程复盘
BP算法实现后的想法
Nov 10, 2016
[LeetCode]从最优装载看贪心
贪心选择证明和最优子结构证明
Oct 28, 2016
[LeetCode]NP问题和近似算法
计算理论和几个近似算法的讨论(非数学)
Oct 11, 2016
[C++]两个tricks
尾递归和回溯
Oct 8, 2016
[LeetCode]再聊动态规划
从问题中验证思想
Oct 7, 2016
[C++]尚方宝剑之右值引用
C++11新特性
Oct 7, 2016
[LeetCode]浅聊算法思想和策略
大多时候的我们对于算法思想(策略)只是看起来明白了而已
Oct 6, 2016
[C++]一个关于写时Copy的问题
室友发现了C++的一个大Bug!
Oct 5, 2016
[C++]聊聊size_t
最熟悉的陌生类型声明
Sep 11, 2016
[*]结博语
写文字,亦是一种修炼。这是一封给博客读者的信
Sep 10, 2016
[*]开博语
总要写点文字来点缀生活,无论是数学,文学还是其他