技术头条(投递你的文章)     搜索本站     邮件订阅     微信号:IT技术博客大学习
您现在的位置首页 --> 算法
    上一节​我们介绍了一些背景知识以及gensim , 相信很多同学已经尝试过了。这一节将从gensim最基本的安装讲起,然后举一个非常简单的例子用以说明如何使用gensim,下一节再介绍其在课程图谱上的应用。
    通过一些调研和之前的一些工作经验,最终考虑采用Topic model来解决这个问题,其实方案很简单,就是将两个公开课的文本内容映射到topic的维度,然后再计算其相似度。然后的然后就通过google发现了gensim这个强大的Python工具包,它的简介只有一句话:topic modelling for humans, 用过之后,只能由衷的说一句:感谢上帝,感谢Google,感谢开源!
    因为递推式求解的重要性,许多算法书籍对其有专门介绍。Donald Knuth在Concrete Mathematics一书中多个章节都涉及递推式求解方法。算法导论也在第四章中专门论述的这个主题。 在这些相关论述中,主要介绍了一些启发式方法,这些方法往往需要一些特殊的技巧和灵感才能完成。 而本文将论述一种纯代数式的方法,这种方法将求解递推式转化为求解一个多项式的根和求解一组线性方程组,这样就使得整个求解过程不依赖于太多技巧,因此具有更好的易用性。
    今天有网友在抱怨文件系统的树形结构不好用, 比方说:有<>既属于C语言文件夹的,也属于C++文件夹的,但又不想把C语言和C++语言两个分类归为一块,也不想每个文件夹都复制一份,这样会很浪费空间,那有什么好的思路可以改善文件系统的树形结构呢, 一些网友和我都建议用tags,比如构思文中的图。
    证明:对于任意一个三角形和任意一个大于等于 4 的正整数 n ,都存在一种把这个三角形分割成 n 个等腰三角形的方案。这个问题曾经出现在 1976 年的 Crux Mathematicorum 上。 1977 年, Gali Salvatore 给出了一个非常漂亮的解答。
    最近在工作中遇到一个需要将IP地址定位国家的问题,中间遇到了一些问题,希望记录下来被需要的人看到。使用二分查找后,users中的IP全部检索一次仅需要不到2分钟,整整加快了20倍。
    之前实现了一个版本: google group varint 无损压缩解压算法的高效实现。近期对其进行了一次改进,性能提升 20%,不废话,上代码, 有兴趣的自己看,如果我的注释不够清晰,请联系我修改
    Slab Allocation的原理——将分配的内存分割成各种尺寸的块(chunk), 并把尺寸相同的块分成组(chunk的集合),每个chunk集合被称为slab。 Memcached的内存分配以Page为单位,Page默认值为1M,可以在启动时通过-I参数来指定。 Slab是由多个Page组成的,Page按照指定大小切割成多个chunk。
    折半插入排序也是插入排序的一种, 和直接插入排序区别在于插入点不同. 由于插入排序是在一个前面已经排好的序列中进行插入操作, 直接插入是需要进行顺序从右到左进行比较(可以想下刚才我们的插入扑克牌的算法), 假如对 10, J, Q, K, A 要插入9 ,直接插入排序要从A开始依次比较, 一直比较到10. 而假如我们在即将要插入9的时候看到的是Q, 因为Q > 9 这样就知道9应该插入在牌的左边位置. 这种算法就是折半排序算法.
    冒泡排序在众多排序算法中算比较简单的一个, 基本思想是, 重复的进行整个数列的排序, 一次比较两个元素(两两排序),如果它们顺序不符合就交换,重复这样直到数列没有再需要交换的数为止(结束条件).就好像气泡一样, 轻的气泡会往上漂浮,在不断漂浮的过程中,发生了两两交换过程, 所以叫冒泡排序.
    简单选择排序的基本思想是:一次选定数组中的一个数,记下当前位置并假设它是从当前位置开始后面数中的最小数min=i,从这个数的下一个数开始扫描直到最后一个数,并记录下最小数的位置min,扫描结束后如果min不等于i,说明假设错误,则交换min与i位置上的数。(也即每次从数列中找出一个最小的数放到最前面来,再从剩下的n-1个数中选择一个最小的,不断做下去。
    一般情况下,算法的基本操作重复执行的次数是模块n的某一个函数f(n),因此,算法的时间复杂度记做:T(n)=O(f(n)),一般人认为,T(n)是f(n)中增长最快的项/此项的系数.
    对卡号上的每位数字乘以权重。其规则是,如果卡号数字个数是偶数,则第一位乘以2,否则就乘以1,然后以后分别是,1,2,1,2,1,2。
    今天踩了一个伪随机数生成函数的坑,与其说是个坑到不如说自己功力不够深厚,对这些随机数生成的函数族欠缺了解,先来介绍下我的问题吧。
    你或许熟知一个非常经典的结论: Fibonacci 数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, … (头两项都是 1 ,此后每一项都是前两项之和)的相邻两项之比将会越来越接近黄金比例 0.618 。。。。
     Mongo 中collection相当于MySQL的表,那么当我有下面需求时,我应该如何设计我的collection及字段(key/value结构)? 场景及需求描述: 记录用户每次登录的业务标识及ip,以及登录时间 指定qid、ip需要查询该ip是否已经存在 针对上述需求,我的collection应该如何设计? 目前有两种方案,正在纠结于哪个更好一些: 方案一 [cc lang="javascript"] {'userid':$userid,'appid':$appid,'ip':$ip,'logintime':timestamp} [/cc] 方案二 [cc lang="javascript"] {'userid':$userid, 'appid':$appid, 'ipArr':{ {'ip':$ip1,'logintime':$timestam
    ​VXLAN 是非常新的一个 tunnel 技术,它是一个 L2 tunnel。Linux 内核的 upstream 中也刚刚加入 VXLAN 的实现。相比 GRE tunnel 它有着很的扩展性,同时解决了很多其它问题。
    这篇文章以抛硬币试验为引子引出了一系列现代数学中概率的基本模型、定理及基本的估计及显著性检验方法。写这篇文章是我无聊抛硬币时一时兴起,其中对很多东西只是给出一个轮廓,没有处处给出严格的定义和证明,不过大约说明了常用的一些统计方法及其理论基础,限于篇幅不能面面俱到,例如一个假设检验如果展开写可以单独写一篇文章。目前随着大数据概念的热炒,基于互联网的数据挖掘和机器学习也变得火热,其实很多数据挖掘和机器学习都是基于概率和统计理论的,很多方法甚至只是传统统计方法的应用。因此如果准备在这方面深入学习,不妨考虑先在概率论和数理统计方面打好基础。
     我希望本文有助于你了解测试软件是一件很重要也是一件不简单的事。 我们有一个程序,叫ShuffleArray(),是用来洗牌的,我见过N多千变万化的ShuffleArray(),但是似乎从来没人去想过怎么去测试这个算法。所以,我在面试中我经常会问应聘者如何测试ShuffleArray(),没想到这个问题居然难倒了很多有多年编程经验的人。对于这类的问题,其实,测试程序可能比算法更难写,代码更多。
    在《游戏人工智能编程案例精粹 》 和 《 Windows 游戏编程大师技巧 》 中都分别有一章谈及模糊逻辑。记得前几年我的同事 Soloist 同学曾经研究过一小段时间,给我做过简单介绍,我便仔细把这两章书读了一遍。感觉都是点到为止,所以又翻了一下 Wikipedia 的 Fuzzy Logic 的介绍。午饭时跟做 AI 的同事交流了一下,觉得可以做一点笔记记录理解的部分。
[共582篇文章][第7页/共30页][|<][3][4][5][6][7][8][9][10][11][12][>|]
© 2009 - 2017 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号