Finisky Garden

NLP, 软件工程, 产品设计

View the generated SQL query by entity framework is important. The translated SQL query may not what you expected. Sometimes it leads to significant performance issue.

Print the generated query for an IQueryable<T> in EF Core is different with EF. Finally I found a worked solution which is listed below.

阅读全文 »

2020-11-28更新: 经过四个多月的肌肉练习(引体向上,核心肌群训练,跑步,羽毛球),肩颈疼痛症状显著缓解,坚持锻炼两个月后,落枕、脖子活动受限的情况基本就没再发生过,现在的情况就更好了。全身性的肌肉训练效果还是很好的,亲测推荐!

值得一提的是病来如山倒,病去如抽丝。在急性疼痛期时不建议进行肌肉训练,在慢性期时进行训练也须坚持,就我个人而言,开始练习的一个多月基本感觉不到症状缓解的现象,但再坚持一段时间后(一口气正手引体向上5次以上),效果开始显现,还得让子弹飞一会儿。肌肉力量的增长需要时间,肌肉强健之后,筋膜炎的症状才能缓解。


现代人不论什么工作,都是每天长时间对着电脑工作,不良姿势的久坐导致的问题颇多,以颈椎病和腰椎病最为常见。笔者最近受疫情长时间在家办公影响,肩颈部位酸痛,且几个月都没有缓解。关于肩颈疼痛的缓解方案网上有很多,经过问医、研究和亲身试验,总结下有效和无效的方案。

阅读全文 »

硬盘虽然并不值钱,但对于一个强迫症来说,看到莫名其妙地内容占据了好些空间也非常不爽。记录下在Linux中如何发现空间占用大户,以及可以删除什么以缩减使用空间。

阅读全文 »

为了精简hexo安装的npm modules,用rm -rf node_modules/删除了已安装的包,再npm install把package.json中定义的包安装一遍。结果hexo自动从4.0.0升级到了4.2.1,hexo g时失败。node.js除了hexo外基本不用,npm自然不熟,有些配置是直接抄来的并不知其所以然。而hexo的插件都是由npm管理的,稍微研究了下如何查看这些插件的最新版本和升级它们。

阅读全文 »

自从有了 996.icu 和马云的“996福报”理论之后,关于996工作制的讨论就从未停止。我有不少同学同事加入或离开了996公司,我想说的是,福报不福报都是自己的选择,自己选的路,跪着也要走完。都希望挣更多的钱,抵制996并不是抵制高收入,本质上是希望用955的工作制挣到996开的工资。但理性思考后会发现它并不合理,单位时间的工资高低是由市场决定的,在一个充分竞争的市场上,同样性质不同公司的时薪差别不会太大。一家公司的package远高于另一家,工作强度和时长增加情理之中。

看下这个回答:# 如何看待996工作制度?

阅读全文 »

交叉熵(Cross Entropy)和KL散度(Kullback–Leibler Divergence)是机器学习中极其常用的两个指标,用来衡量两个概率分布的相似度,常被作为Loss Function。本文给出熵、相对熵、交叉熵的定义,用python实现算法并与pytorch中对应的函数结果对比验证。

阅读全文 »

TextCNN 是一种经典的DNN文本分类方法,自己实现一遍可以更好理解其原理,深入模型细节。本文并非关于TextCNN的完整介绍,假设读者比较熟悉CNN模型本身,仅对实现中比较费解的问题进行剖析。

项目地址:https://github.com/finisky/TextCNN

这里的实现基于: https://github.com/Shawn1993/cnn-text-classification-pytorch

主要改动:

  • 简化了参数配置,希望呈现一个最简版本
  • Fix一些由于pytorch版本升级接口变动所致语法错误
  • Fix模型padding导致的runtime error
  • 解耦模型model.py与training/test/prediction逻辑
  • 定制tokenizer,默认中文jieba分词
  • 使用torchtext的TabularDataset读取数据集:text abel
阅读全文 »

Transformer自2017年推出之后,已经横扫NLP领域,成为当之无愧的state-of-the-art。原始paper “Attention is All you Need”中对attention提出了通用的query/key/value抽象,开始时觉得很难理解,后来随着读的文献更多,慢慢体会到了其中的意思。关于Transformer和attention的各种解释类文章有很多,不再赘述,本文仅就其中的核心,MultiHeadAttention的实现进行源码剖析。

阅读全文 »

Find Peak Element 给定一个数组,其中任意两个相邻元素的值不等,寻找数组中某峰值的index i,使得n[i - 1] < n[i] > n[i + 1]。保证峰值一定存在,如果有多个峰值,可返回任意一个。

乍看此题不难,O(n)的算法很容易想到,直接遍历数组即可。但题目要求给出O(log(n))的算法。显然,直观上应该用二分查找,否则复杂度要求不能满足。可数组是无序的,无法直接应用二分查找。

阅读全文 »

Today I found that some pods in kubernetes cluster are failed, the status is Waiting: ContainerCreating. The pod events:

MountVolume.SetUp failed for volume "xxxxx" : secret "xxxxx" not found
kubelet aks-agentpool-xxx-vmss000001

Unable to attach or mount volumes: unmounted volumes=[xxxxx], unattached volumes=[xxxxx]: timed out waiting for the condition

阅读全文 »
0%