技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 系统架构
    前面我写了一篇快速web app的关键是使用Ajax、优化Javascript和更好的缓存,现在让我们继续探讨这个话...
    LDA是由Blei,Ng, Jordan 2002年发表于JMLR的概率语言模型,应用到文本建模范畴,就是对文本进行“隐性语义分析”(LSA),目的是要以无指导学习的方法从文本中发现隐含的语义维度-即“Topic”或者“Concept”。隐性语义分析的实质是要利用文本中词项(term)的共现特征来发现文本的Topic结构,这种方法不需要任何关于文本的背景知识。文本的隐性语义表示可以对“一词多义”和“一义多词”的语言现象进行建模,这使得搜索引擎系统得到的搜索结果与用户的query在语义层次上match,而不是仅仅只是在词汇层次上出现交集。
    本文主要介绍PLSA及EM算法,首先给出LSA(隐性语义分析)的早期方法SVD,然后引入基于概率的PLSA模型,其参数学习采用EM算法。接着我们分析如何运用EM算法估计一个简单的mixture unigram 语言模型和混合高斯模型GMM的参数,最后总结EM算法的一般形式及运用关键点。对于改进PLSA,引入hyperparameter的LDA模型及其Gibbs Sampling参数估计方法放在本系列后面的文章LDA及Gibbs Samping介绍。
    这篇博文笔者构思了很久,当然也写了很久,发现想到和写出来完全两码事,写下来会更深刻些弄清很多模糊概念。
    Yahoo的优化法则里,有这么一条“Use GET for AJAX Requests”,让我们尽量使用GET来代替POST发起AJAX请求,为什么呢? 上上周五,公司前端工程师培训,提到前端优化的一些技巧,当然不能少了yahoo yslow的优化法则。其中有这么一条“Use GET for AJAX Requests”,这些法则从最开始的14条,到现在的35条,一直都时刻关注的。可这么一条的原因我却一点都不清楚。在提问的环节里,我对yahoo WEB前端优化法则推荐AJAX中,使用GET代替POST的原因有疑问,便请教前端工程师。我们的工程师说GET的话,浏览器发送一个包,POST会发两个等等。我对这个解释仍带有疑问,甚至怀疑。
    目前国际站P4P iMatch引擎是基于iSearch 4.2.1开发的一套分布式广告搜索引擎系统。在整体流程处理上,它接收从SW等外部发过来的查询请求,然后经过查询串解析和重写、广告offer查询、过滤、排序以及竞价扣费和记录PV日志等处理后将最终得到的广告offer返回给调用方。此外,它离线支持全量dump BP数据库中的用户、广告offer和match等广告实体数据建立全量索引。同时,它也实时的接收并处理BP系统的变更消息进而建立增量索引,从而使得用户的各种更改能够及时的在搜索结果中体现出来。
    需要对接用户登陆认证系统。虽然已经有很多成熟的认证协议,比如最有名的 Kobas 。但这次时间紧迫,我就临时设计了一个简单协议。因为不是 web 应用接入,所以我不想直接使用 https 来提交用户名和密码,而基于 http 协议,在不安全信道上建立了一个自定义协议来应付一下。这种临时设计的协议当然不会很缜密,但也基本够用。
    我们知道,计算机中有很多概念并不容易理解,有些时候一个好的比喻能胜过很多句解释。下面两个是我看到的两个很精彩的比喻,拿出来和大家分享一下:吞吐量和延迟、信号量和互斥锁。
    面向对象能给我们什么? 进行分析之前,我们先来复习一下面向对象。 对象是要进行研究的任何事物。 类是具有相同或相似性质的对象的抽象。 面向对象的要素:封装、继承、多态。 面向对象目的是:如何分配职责。 面向对象设计原则: 单一职责原则 (SRP) 一个类,只有一个引起它变化的原因。 开放-封闭原则 (OCP)(对外)可扩展,(对内)不可修改。 李氏替换原则 (LSP) 子类型必须能够完全替换其父类型。 依赖倒置原则 (DIP) 要依赖于抽象,不要依赖于具体。 接口隔离原则 (ISP) 使用多个专门的接口比使用单一的总接口好; 合成/聚合复用原则 (Composite/Aggregate Reuse Principle,CARP)在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分;新的对象通过向这些对的委派达到复用已有功能的目的。
    伴随着市场和技术的发展,个性化已经成为淘宝搜索的一个重要目标。简单来说,个性化就是让每个用户在使用淘宝搜索时都能够获取自己最想要的结果,而不再是千篇一律的展示。实现个性化最直接的手段就是通过分析用户的历史行为日志,为用户打上不同的标签,在搜索中根据这些标签来展示最贴近的结果。
    用 Gearman 搭建 Map/Reduce ,GearmanManager 来管理所有的 workers。启动多个 gearman-manager daemon,为了充分利用服务器资源,使其运行于不同的 CPU 内核上。
    Redis 是一个非常快速和强大的 Key-Value 存储(持久化)系统, 相对于一般的 NoSQL 存储系统, 它最大的特点是支持丰富的数据结构. 特别是其 zset(sorted set)数据结构, 堪称表达能力最强的结构之一(其它强大的数据结构如 sorted hashmap), 可以直接地表达业务逻辑.
    弱依赖“并发请求数阀值”这个值设置多少合适?     “并发请求数阀值”在大部分情况下可以理解为同时工作的线程数阀值,这个值不是越大越好,也不是越小越好,而是在最高QPS输出的情况下这个值越小越好。这个也是系统性能优化的一个方向,高QPS,少线程。    
    任何强依赖都要尽可能的转化成弱依赖,因为强依赖本身意味着一荣俱荣,一损俱损。老婆管账,但是老公又没有私房钱,对老公来说强依赖于老婆,也许是很幸福的事情。在系统角度来说这并不是好事情,比如支付系统强依赖银行的支付,一旦银行支付出现问题,那么只能干等着。所以需要尽量的扩展银行的支付通道,让单个节点影响到最小。
    随着信息技术和电子商务技术的飞速发展以及互联网的普及,电子商务网站层出不穷。由于旅游产品本身具有无形性、不可储藏和非物质性等特点,并且不存在物流配送问题,使得旅游电子商务更容易运作。例如,全球知名的Expedia 网站,以及我国的携程和艺龙旅行网等。有了面向旅游者的信息系统,可以更好地为游客提供查询相关信息和预定的服务,但是由于网站信息和服务缺乏个性。我们看到的大多数旅游机构的网站,通常是国内外其他旅游网站的翻版,缺乏鲜明的个性特色。虽然大多数旅游网站对旅游景点和酒店都有介绍,但内容不全面且更新缓慢,很难吸引客户的关注和兴趣。网站服务项目单一,例如旅游线路、景点介绍、游记作品似乎已经成为必不可少的板块,但这些内容仅限于浏览。自助旅游、虚拟实景旅游等能与客户产生良好互动的项目却较少涉及。让游客在选择时迷茫、耗时,导致客户预订的成功率较低,旅游电子商务发展受阻。
    设计模式原则总结
    网站数据统计分析工具是网站站长和运营人员经常使用的一种工具,比较常用的有谷歌分析、百度统计和腾讯分析等等。所有这些统计分析工具的第一步都是网站访问数据的收集。目前主流的数据收集方式基本都是基于javascript的。本文将简要分析这种数据收集的原理,并一步一步实际搭建一个实际的数据收集系统。 数据收集原理分析 简单来说,网站统计分析工具需要收集到用户浏览目标网站的行为(如打开某网页、点击某按钮、将商品加入购物车等)及行为附加数据(如某下单行为产生的订单金额等)。
    

TF-IDF模型是搜索引擎中广泛使用的信息检索模型,但对于TF-IDF模型一直存在各种疑问。本文为信息检索问题一种基于条件概率的盒子小球模型,其核心思想是把“查询串q和文档d的匹配度问题”转化为“查询串q来自于文档d的条件概率问题”。它从概率的视角为信息检索问题定义了比TF-IDF模型所表达的匹配度更为清晰的目标。从概率模型中,我们看到查询串q来自于文档d的条件概率主要包含以下几个因素:1) 文档的先验概率P(d[i]),这与PageRank对应;2) 词w被作为搜索关键词的先验概率P(w),这可以通过统计方法获得;3) 关键词w代表文档d主题,或以词w搜索文档d的概率,P(w | d),除了统计方法,这可以通过tf-idf来计算。

    游戏开发和很多其他软件开发的一个巨大区别就是,你无法把程序得到正确结果当成任务的完成。运行时间往往成为重要的约束条件。如果一件事情在规定的时间片执行不完,代码实现的再正确都没有意义了。而局部的优化热点往往也意义不大。因为如果只是需要小幅度的提高性能,那么采购好一些的硬件就够了。一个模块的性能,要从数量级上的提高,必须重新思考需求,改变需求,重定义我们要做什么。
    Disruptor是LMAX公司开源的一个高效的内存无锁队列。这两天看了一下相关的设计文档和博客,下面尝试进行一下总结。 第一部分。引子谈到并发程序设计,有几个概念是避免不了的。 1.锁:锁是用来做并发最简单的方式,当然其代价也是最高的。内核态的锁的时候需要操作系统进行一次上下文切换,等待锁的线程会被挂起直至锁释放。在上下文切换的时候,cpu之前缓存的指令和数据都将失效,对性能有很大的损失。用户态的锁虽然避免了这些问题,但是其实它们只是在没有真实的竞争时才有效。下面是一个计数实验中不加锁、使用锁、使用CAS及定义volatile变量之间的性能对比。 2. CAS: CAS的涵义不多介绍了。使用CAS时不像上锁那样需要一次上下文切换,但是也需要处理器锁住它的指令流水线来保证原子性,并且还要加上Memory Barrier来保证其结果可见。
[ 共730篇文章 ][ 第10页/共37页 ][ |< ][ 6 ][ 7 ][ 8 ][ 9 ][ 10 ][ 11 ][ 12 ][ 13 ][ 14 ][ 15 ][ >| ]
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1