拣阅一:缘由和系统设计「建议收藏」

拣阅一:缘由和系统设计

大家好,又见面了,我是全栈君。

个人平时比較喜欢看些新闻资讯,比方科技类的huxiu, 36kr,体育新闻等,对相关的APP也实用到,今日头条做的非常不错。周围非常多人在用。可是在用了一段时间之后发现非常多APP都有下面特点:

1. 信息多并且杂,即使我仅仅订阅或者关注了某些类别。推送的消息首先是太多其次是不相关。

太多的信息我消费不了,不相关的信息我比較反感。

2. 如今的APP号称能够进行精准和个性化的推荐,头条做的还行。可是感觉不能及时的捕捉用户的兴趣变化。推荐的结果变化也小。 惊喜度不够。

3. 聚合类的新闻资讯有非常多反复性的内容。并且非常多仅仅是简单的抓取和展现,对阅读的方式和体验都没有太大改善。

以上大概是用过之后感觉有些不便的地方。之前做过一段时间的推荐和文本处理相关的事情,加上自己有些想法,就想实现一个简单的系统,拿自己做个试验试试,也好验证下自己的想法,针对以上问题,个人的想法是1. 每天给用户展现一定数量的有价值的新闻,即限制推送给用户新闻的数量。相关性方面须要针对用户的特征建模,预期效果不太明显,仅仅能通过一些策略来控制,比方最热和相关结合,某个事件或者某个类别展现一条新闻等策略实现。2. 针对用户的行为及时更新用户的特征权重。及让变化更实时一点。3. 非常多人看文章仅仅是看文章的大意,非常少通读全文的,假设能对文章进行摘要。对APP类的应该会比較好。可是如今对中文貌似没有好的摘要方法。仅仅能不断的进行尝试改进。我会用之前文章介绍的摘要算法进行实验,结合中文的词法和语义做些尝试。

以上纯粹是个人的观点和看法。肯定有不妥的地方,这方面有想法的能够在一起交流下。

眼下开发工作已经进行了一些。之前一直用java来做web相关的服务和设计。奈何一般的云server跑java的话费用较高。故採用了python来进行相关的开发工作。系统的简单设计例如以下:

拣阅一:缘由和系统设计「建议收藏」

系统主要分为OnLine Service, OffLine Service, 当中OnLine 部分主要进行下面操作:

    a).  Fetcher利用UA和PA来获取推荐展示的新闻数据,首先会向redis请求相关数据计算。然后到MySql获取数据,眼下假定MySql能够满足一定量的并发请求,以后能够考虑依照数据类型在MySql前面再加一层缓存。

 

    b). Updater主要是依据用户行为来更新缓存中的UA权重,这样下次就能够依据用户的最新行为进行推荐展示。

      OffLine部分主要负责的是线下逻辑的处理,主要包含对抓取数据的清洗、特征提取、摘要、入库等操作,为了解耦,利用MQ来存储抓取的数据。

    眼下採用的方式是tornado 框架来提供web服务,redis作为缓存存储数据,mysql作为底层数据存储。 rabbitmq 来作为消息队列,jieba分词器来进行中文分词,redis + mysql 眼下已经实现。web主要剩下页面的设计和实现,特征提取和摘要正在进行。因为事情比較多,可能最后实现的跟文章中说的会有非常大差别。接下来会讲部分想法的实现过程和效果, 详细取决于进度和工作了。假设有兴趣能够一起交流。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116165.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月25日 上午9:00
下一篇 2022年1月25日 上午9:00


相关推荐

  • dp3003打印机怎么清零_打印机接口叫什么

    dp3003打印机怎么清零_打印机接口叫什么有台奇怪的打印机有以下两个特殊要求:打印机每次只能打印由 同一个字符 组成的序列。每次可以在任意起始和结束位置打印新字符,并且会覆盖掉原来已有的字符。给你一个字符串 s ,你的任务是计算这个打印机打印它需要的最少打印次数。示例 1:输入:s = “aaabbb”输出:2解释:首先打印 “aaa” 然后打印 “bbb”。示例 2:输入:s = “aba”输出:2解释:首先打印 “aaa” 然后在第二个位置打印 “b” 覆盖掉原来的字符 ‘a’。 提示:1 <= s.le

    2022年8月11日
    7
  • Android面试题整理

    Android面试题整理转载地址 http www jianshu com p aaf2Android 面试题整理字数 1819 nbsp 阅读 5393 nbsp 评论 16 nbsp 喜欢 171 三金四银 又到了一年一度的跳槽季 也许有不少 Android 程序员开始摩拳擦掌蠢蠢欲动了 结合以往自己的经历 今天给大家总结下 Android 面试题 希望有帮助 1 Activity 生命周期

    2026年3月26日
    2
  • 一步设置Intellij IDEA 热部署处理方法

    一步设置Intellij IDEA 热部署处理方法  在IntellijIDEA中默认是关闭了自动编译的,可以按照如下1步设置开启自动编译:1.IDEA开启项目自动编译,进入设置,Build,Execut,Deployment-&gt;Compiler勾选中左侧的BuildProjectautomatically   …

    2022年6月1日
    82
  • 可执行源码:基于javaweb实现学生成绩管理系统,三种角色学生和教师 管理员,实现了学生信息管理,课程管理,教师信息管理,学生成绩汇总,学生登录注册,教师和管理员的登录,个人信息修改等[通俗易懂]

    可执行源码:基于javaweb实现学生成绩管理系统,三种角色学生和教师 管理员,实现了学生信息管理,课程管理,教师信息管理,学生成绩汇总,学生登录注册,教师和管理员的登录,个人信息修改等[通俗易懂]基于javaweb实现学生成绩管理系统,实现了学生信息管理,课程管理,教师信息管理,学生成绩汇总,学生登录注册,教师和管理员的登录,个人信息修改等。系统功能大致描述:基于javaweb实现学生成绩管理系统,实现了学生信息管理,课程管理,教师信息管理,学生成绩汇总,学生登录注册,教师和管理员的登录,个人信息修改等。使用的技术有jsp,servlet,jdbc,mysql,html,css,js…

    2022年7月16日
    18
  • pve 删除虚拟机「建议收藏」

    qmdestroy100#之后以一下查看虚拟机qmlist100常用命令:qmguestcmd<vmid><command>qmguestexec-status<vmid><pid>qmguestpasswd<vmid><username>[OPTIONS]qmguestexec<vmid>[<extra-args>][OP.

    2022年4月17日
    251
  • ES5/6新特性

    ES5/6新特性文章目录一 ES5 1 数组尾逗号 2 严格模式 二 ES6 1 模板字符串 2 块级作用域 3 箭头函数 4 解构赋值 5 对象字面量改进 6 SpreadOperat Promise8 函数默认参数 9 模块的 Import 和 Export10 内置对象新增 API 11 新增 Map 集合 12 新增 Set 集合 13 Symbol 符号一 ES5 1 数组尾逗号 length 1 2 3 length 支持 ES5 的则 length 为 3 不支持 ES5 的 length 为 4 p

    2026年3月26日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号