分享一个段子

封城第四天了,由于路面禁止机动车行走,所以车更少了。今天附近的超市也关门了……

同样,今天抽空继续完善了这个假期的第一个业余项目,我把Tags的数据设计得更为细致,把上下位词关系(借鉴语言学)添加进去了,这样,我们可以表达“知识点”之间的覆盖范围大小,比如:

中文分词<分词

上位词的关系比较有用,因为一般只有1个,下位词就麻烦了,有可能非常多。所以,上位词的关系是建议设置的,下位词可设可不设。

然后,如何获取可以作为Tags的知识点呢?打算使用n-gram来从每天新增的内容里面计算出来。

- n-gram是什么

由于整个项目是nodejs的,所以这一块打算使用nodejs来实现,n-gram有一个nodejs的包,安装可以直接:

npm install n-gram

翻了下代码,也没几行,最关键的一句如下:

while (index--) {  nGrams[index] = value.slice(index, index + n);
};

举个例子,比如下面一段文本:

英伟达用RTX系列显卡的光线追踪技术,修复了颗粒感满满的登月录像……屏幕上的每个像素都是由实时光线追踪进入相机的路径生成的……

经过n-gram之后,然后统计词频:

'卡的光线': 1,

'的光线追': 1,

'光线追踪': 2,

'线追踪技': 1,

'追踪技术': 1,

可见,频率越高的,越可能是知识点(光线追踪)

但是有一个限制条件:

输入文本越多,计算结果越准确可信。

需要大量同类型的文本来计算。

今天还本来打算看下《囧妈》的,断断续续看了不到10几分钟,一会抽空继续看。

你看了ma ?


- DAY03 闭关敲代码

全国各地都开始加入防疫战线了,春节老老实实在家待着吧,吃好睡好,然后可以开始准备远程工作了。

今天我抽了点时间继续研究keystoneJS,发现Virtual这个fields,它可以干啥呢?

顾名思义,它是用来虚拟某字段的。此字段不会存储在数据库里。

示例代码:

//可以通过resolver来组合其他字段的数据,形成virtual的字段数据。
keystone.createList('Example', {fields: {firstName: { type: Text },lastName: { type: Text },name: {type: Virtual,resolver: item => (`${item.firstName} ${item.lastName}`)};},},
});//除此之外,还可以请求api,来达到其他数据处理的目的。
keystone.createList('Example', {fields: {movies: {type: Virtual,extendGraphQLTypes: [`type Movie { title: String, rating: Int }`],graphQLReturnType: `[Movie]`,graphQLReturnFragment: `{titlerating}`,resolver: async () => {const response = await fetch('http://example.com/api/movies/');const data = await response.json();return data.map(({ title, rating }) => ({ title, rating }));},},},
});

关键是可以在字段里发起请求,利用此特性,我新增了个List:

- API 开放API的管理

利用virtual里发起请求,可以知道api目前的运行情况(是否正常),实时获取api的结果。

跟Knowledge类似,我们可以给API打上各种tags。


- DAY02 不一样的春节

今天大街上人流、车流明显更少,过江隧道开始封闭,周边城市也陆续封城。上海也对进入人员进行追踪、隔离。

同样是宅在家里,哪里都没去,除了吃、玩之外,我今天决定开始工作。

- keystoneJS v5

调研了一下cms的开源解决方案,cms:内容管理系统,提供一个易于使用的adminUI(管理界面),对内容进行增删改查。

除了UI之外,提供了api、有的还提供了更为好用的graphQL查询方式。

部分框架提供app的UI,部分没提供。最后选定了keystoneJS,体验了下,文档齐全,示例清晰,便于快速入门掌握。

尝试建立了一个小项目除了内容管理系统外,我会陆续集成darksee.ai的功能。

按照文档指引,我设置了3种List,分别是Knowledge、Tag、User。

- Knowledge用来存储内容

- Tag表达知识点的关系

- User控制用户权限

keystoneJS把graphQL的工具也提供了,非常方便,我趁此快速入门了graphQL。

- 总体架构

这个小项目打算作为mixlab无界社区的一款知识内容智能产品。

- 知识图谱

为了更好地呈现知识之间的关系,图谱是必备的技术,但由于是人工智能垂直领域的,所以暂时不需要图数据库,只需要一些图算法即可。

- 内容搜索引擎

为了满足源源不断的知识内容、降低人力,需要接入搜索引擎来获取每天的新内容。

- 提取知识

需要一个算法可以提取内容里的知识,并更新到图谱里。

一步步来,此产品第一个版本就只有知识内容,数据呈现没有好看的UI,只有json。有开源打算,召集设计师、程序员一起玩~感兴趣的社区小伙伴,可私信跟我说~


- DAY01 初遇

来武汉之前,官方的消息称只有十几例确诊,而且连续好几天没有新增消息。来了之后,情况就不一样了…

人生第一次遭遇封城,接下来几天做点记录。

武汉封城第一天,天气不好,下着小雨,街上没什么人和车。

快手捐了1亿给武汉,网易严选的口罩很便宜,百度上了个发热门诊地图,丁香医生上了个疫情追踪。

有人用所谓大数据分析了下武汉人口流动,其实不用分析,武汉是全国的交通大枢纽,辐射全国各地。看到几则消息,大致意思是本地的医院不收,只能飞往老家求医,医疗资源肯定急缺,人口本来就不少。

前几天本地的一个社区还举办万人聚会,还有今天还办了一个春节联欢,都不知道这些人是怎么想的?

除了刷各种手机信息之外,今天的日常主要是休息、看电视、吃零食、陪娃玩耍。

DAY04 记录那些事相关推荐

  1. “桌面日历”记录的事件居然是看某某视频……

    某年某月某下午,正在激情澎湃的在讲台上讲课,忽发现医学生缓缓的将右手举起来,见状,不用想,他一定有问题,嗯--要问我. 于是,紧走几步下去,问他怎么了,他说他的某某功能出不来,让我给他看看.接过来他的 ...

  2. 回顾 2018,展望 2019

    1. 概述 今天是 2019 年第一天,趁着元旦 3 天假期时间,对即将过去的这一年做个总结回顾,看下这一年得到了什么,失去了什么,并对来年做个新的规划,看下需要采取哪些措施提升自己. 2. 2018 ...

  3. PE关于导入表(IAT)知识复习

    View always First Thunk选中后,ThunkRVA表示的是First Trunk,否则是Original Trunk. 在打开dll之前,First Trunk和Original ...

  4. 汇编为什么分段执行总是执行不了_为什么我的计划总是执行不了?这里有你要的答案...

    公众号配文:有些计划如泰山一样纹丝不动.说它难吧,又不是很难,奈何动不起来? ---------- 说起每日计划,很多人觉得,不就是写写行动清单,然后赶紧去做呗. 不过,是不是有些计划摆了很长时间,如 ...

  5. 读-深入理解Java虚拟机(1-2章)随笔

    笔者花了一个星期的晚上时间看完了前面三章,由于之前在其他博客看过JVM的东西,所以看起来比较快. 前l两章内容分别是--走近Java:Java内存区域与内存溢出异常.其中部分除黑色内容属于扩展性内容或 ...

  6. 我的 2018 年终总结

    2018 年的年终总结早就打算写了,奈何学校在 19 年的第一周就给我们安排了满满的 5 门考试,好不容易熬过了起早贪黑复 ( yu ) 习的 5 天,现在终于有时间回顾一下我的 2018 了. 值得 ...

  7. 在线工具大全,在线办公

    2019独角兽企业重金招聘Python工程师标准>>> 文档工具 Goolge Docs https://docs.google.com/ 支持文档.表格.幻灯片.表单等,更多参考 ...

  8. access筛选末位数字为1或5_数字鸿沟理论不会用?北大必考常考,我们以快手短视频为例...

    href="http://mp.weixin.qq.com/s?__biz=MzI0OTA4MDk3Nw==&mid=2651538322&idx=1&sn=6a82 ...

  9. 区块链概念及简单介绍

    友情提醒:比特币采用区块链技术,但是区块链并不等同于比特币:全篇基于比特币底层区块链技术讲述,所以,部分模型可能不适用于以太坊等.另外,由于文章采用了一定的抽象.类举的叙事方式,中间或多或少有些地方会 ...

最新文章

  1. dsst依赖opencv
  2. (转载)各Linux发行版本 网络配置文件
  3. AI:2020 科大讯飞AI开发者大赛,总奖金池180+万元!拿下比赛,大厂offer到手,那么,你还在等什么?
  4. Android 消息机制 Handler总结
  5. 【必懂C++】C++可真是个“固执”的小可爱 02
  6. Linux管道和重定向 ---多命令协作
  7. oracle 建表字段设置,Oracle创建表、删除表、修改表(添加字段、修改字段、删除字段)语句总结...
  8. Day12-正则表达式Regex
  9. 一阶电路暂态响应的结果分析。_【2020考研】南京邮电大学813《电路分析》考试大纲...
  10. html基础知识补全
  11. 712. Minimum ASCII Delete Sum for Two Strings
  12. 使用ApplicationContext类来完全封装闪屏功能
  13. 如何落地用户画像分析?
  14. c++ json::value
  15. 华为研发小仙女自述:我和开发的“撕逼”日常
  16. ns3 学习资料和方法
  17. 第1节 OSI7层模型与TCP-IP5层协议簇/栈
  18. XP中服务与后门技术
  19. Java某人再玩游戏的时候输入密码123456后成功进入游戏(输错5次则被强行退出)要求用程序实现密码验证的过程。
  20. d3.js Zoomable Circle Packing 连线实现

热门文章

  1. 实现连续签到案例的可能(使用)
  2. plugins 插件
  3. Microbiome:肠易激综合征的认知行为疗法诱导与胃肠道症状改善相关的脑-肠-微生物组轴的改变
  4. 反思抑郁症的原因:抑郁症能否遗传?
  5. 5款服装进销存软件测评,教您如何挑选出好用的
  6. CAD隐藏图层(网页版)
  7. 盛迈坤电商:退款率高会影响店铺吗
  8. 22湖南大学计算机学硕上岸经验
  9. 《Maven官方文档》Maven 开发
  10. 通过 Land of Lisp 中的超简短字符游戏例程学习 loop 和 format