- 博客(21)
- 资源 (1)
- 收藏
- 关注
原创 SpringMVC整合shiro、自定义sessionManager实现前后端分离
前端从后端剥离,形成一个前端工程,前端只利用Json来和后端进行交互,后端不返回页面,只返回Json数据。前后端之间完全通过public API约定。1 自定义RealmsShiro从Realm获取安全数据(如用户、角色、权限):就是说SecurityManager要验证用户身份,那么它需要从Realm获取相应的用户进行比较以确定用户身份是否合法;也需要从Realm得到用户相应的角色/权限进...
2019-03-25 22:29:53 5513 1
转载 问答系统的发展历程
一部问答系统发展史就是一部人工智能史。伴随着人工智能的兴衰,问答系统也经历了半个多世纪的浮沉,直到今天仍然方兴未艾。笔者近期一直在从事对话式智能助手的研发,因此对问答系统的历史、现状、学术界的研究方向及业界的解决方案均有持续 follow,本文即是对该方向输入的一番整理。希望对从事「类聊天机器人」领域的同仁有所帮助。
2019-03-25 22:05:35 7998
转载 多变量线性回归
目前为止,我们探讨了单变量/特征的回归模型,现在我们对房价模型增加更多的特征,例如房间数楼层等,构成一个含有多个变量的模型,模型中的特征为(x1x_{1}x1,x2x_{2}x2,…,xnx_{n}xn)。增添更多特征后,我们引入一系列新的注释:nnn 代表特征的数量xix^{i}xi代表第 iii 个训练实例,是特征矩阵中的第iii 行,是一个向量(vector)。比方说,上图...
2019-03-21 09:01:19 1223
转载 单变量线性回归
1 模型表示让我们通过一个例子来开始:这个例子是预测住房价格的,我们要使用一个数据集,数据集包含俄勒冈州波特兰市的住房价格。在这里,我要根据不同房屋尺寸所售出的价格,画出我的数据集。比方说,如果你朋友的房子是1250平方尺大小,你要告诉他们这房子能卖多少钱。那么,你可以做的一件事就是构建一个模型,也许是条直线,从这个数据模型上来看,也许你可以告诉你的朋友,他能以大约220000(美元)左右的价格...
2019-03-18 21:12:44 6950 2
翻译 监督学习与无监督学习
从14年10月份接触机器学习到现在已经接近5年了,机器学习的入门课程就是看Andrew Ng的机器学习视频,当时由于是小白,看的也是模棱两可,前端时间又系统的学习了一遍,收获很多,在这里记录一下听课笔记吧,方便以后查阅。监督学习用一个例子介绍什么是监督学习。假如说你想预测房价。eg:前阵子,一个学生从波特兰俄勒冈州的研究所收集了一些房价的数据。你把这些数据画出来,看起来是这个样子:横轴表示房...
2019-03-17 20:42:33 517
原创 基于用户协同过滤与基于项目协同过滤的适用场景
一、在适合用途上的比较 基于用户的协同过滤算法主要有两步:1)找到和目标用户兴趣相似的用户集合 2)找到这个集合中的用户喜欢的,且目标用户没有听说过的物品推荐给目标用户。基于物品的协同过滤算法主要有两步:1)计算物品之间的相似度。2)根据物品的相似度和用户的历史行为给用户生成推荐列表。Item CF是利用物品间的相似性来推荐的,所以假如用户的数量远远超过物品的数量,那么可以考虑使用Item CF,
2016-05-25 16:32:51 5708
原创 343. Integer Break
Given a positive integer n, break it into the sum of at least two positive integers and maximize the product of those integers. Return the maximum product you can get.For example, given n = 2, return 1
2016-05-23 17:39:16 281
原创 338. Counting Bits
Given a non negative integer number num. For every numbers i in the range 0 ≤ i ≤ num calculate the number of 1’s in their binary representation and return them as an array.Example: For num = 5 you sh
2016-05-23 17:02:42 315
转载 推荐常用算法之-基于内容的推荐
Collaborative Filtering Recommendations (协同过滤,简称CF) 是目前最流行的推荐方法,在研究界和工业界得到大量使用。但是,工业界真正使用的系统一般都不会只有CF推荐算法,Content-based Recommendations (CB) 基本也会是其中的一部分。 CB应该算是最早被使用的推荐方法吧,它根据用户过去喜欢的产品(本文统称为
2016-05-12 14:01:01 12764
原创 最长公共子序列(LCS)
一个字符串S,去掉零个或者多个元素所剩下的子串称为S的子序列。最长公共子序列就是寻找两个给定序列的子序列,该子序列在两个序列中以相同的顺序出现,但是不必要是连续的。例如序列X=ABCBDAB,Y=BDCABA。序列BCA是X和Y的一个公共子序列,但是不是X和Y的最长公共子序列,子序列BCBA是X和Y的一个LCS,序列BDAB也是。寻找LCS的一种方法是枚举X所有的子序列,然后注意检查是否是Y的子序列
2016-05-11 17:06:28 460
原创 最长上升子序列LIS(Longest increasing subsequence)
介绍最长上升子序列问题,也就是Longest increasing subsequence缩写为LIS。是指在一个序列中求长度最长的一个上升子序列的问题。问题描述: 给出一个序列a1,a2,a3,a4,a5,a6,a7….an,求它的一个子序列(设为s1,s2,…sn),使得这个子序列满足这样的性质,s1 <s2 <s3 <… <sn并且这个子序列的长度最长。输出这个最长的长度(为了简化该类问题
2016-05-11 16:56:13 639
转载 二叉树的深度优先遍历与广度优先遍历
深度优先搜索算法(Depth First Search),是搜索算法的一种。是沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点v的所有边都己被探寻过,搜索将回溯到发现节点v的那条边的起始节点。这一过程一直进行到已发现从源节点可达的所有节点为止。如果还存在未被发现的节点,则选择其中一个作为源节点并重复以上过程,整个进程反复进行直到所有节点都被访问为止。如图所示的二叉树:
2016-05-11 16:29:04 538
原创 最长公共子序列(LCS)
一个字符串S,去掉零个或者多个元素所剩下的子串称为S的子序列。最长公共子序列就是寻找两个给定序列的子序列,该子序列在两个序列中以相同的顺序出现,但是不必要是连续的。例如序列X=ABCBDAB,Y=BDCABA。序列BCA是X和Y的一个公共子序列,但是不是X和Y的最长公共子序列,子序列BCBA是X和Y的一个LCS,序列BDAB也是。寻找LCS的一种方法是枚举X所有的子
2016-05-10 13:41:50 676
原创 数据结构之Trie树
1、背景 词汇搜索、词频统计等字符串操作,是搜索引擎、文本处理系统等经常使用的业务,现在假设有这么一个简单的文本处理例子:有一篇10000个词的文章,要查出单词“was”在这篇文章中出现的次数。那么一般来说,没学过数据结构课程的读者可能会采用最简单但是最查找效率最低的穷举遍历法:读入整篇文章的词到一个字符串大数组中,然后一个一个地与“was”比较匹配。对于学习过数据结构课程的
2016-05-09 22:51:10 542
转载 linux文件系统简介
文件系统是linux的一个十分基础的知识,同时也是学习linux的必备知识。 本文将站在一个较高的视图来了解linux的文件系统,主要包括了linux磁盘分区和目录、挂载基本原理、文件存储结构、软链接硬链接、和常见目录的介绍。相信有了这些知识对于深入的学习linux会有一定的帮助。文章例子主要是基于ubuntu发行版。 如有不对之处请大家多多指出。1.Linux
2016-05-08 00:02:15 353
转载 hadoop hdfs常用命令
启动Hadoop进入HADOOP_HOME目录。执行sh bin/start-all.sh关闭Hadoop进入HADOOP_HOME目录。执行sh bin/stop-all.sh 1、查看指定目录下内容hadoop dfs –ls [文件目录]eg: hadoop dfs –ls /user/wangkai.pt2、打开某个已存在文件
2016-05-07 23:47:27 263
转载 Hadoop WordCount运行详解
1、MapReduce理论简介 1.1 MapReduce编程模型 MapReduce采用"分而治之"的思想,把对大规模数据集的操作,分发给一个主节点管理下的各个分节点共同完成,然后通过整合各个节点的中间结果,得到最终结果。简单地说,MapReduce就是"任务的分解与结果的汇总"。 在Hadoop中,用于执行MapReduce任务的机器角色有两个:一个是Job
2016-05-07 23:32:13 482
原创 hadoop完全分布式模式的安装和配置
最近在学Hadoop,学习Hadoop第一步当然是搭建环境。因为刚开始接触Hadoop,加之对Linux命令行不熟悉。完全搭建好这个环境用了两天的时间。虽然搭建好这个环境只是第一步,但是我感觉还是收获很多,比如对Linux的操作,其中最让我头疼的是Linux权限问题。搭建过程中操作一般都是对的,因为开始用的是root用户,所以切换到普通用户老是报拒绝操作。所以我频换的切换用户进行权限更改,下次再搭
2016-05-07 15:06:48 2817
原创 堆排序的Java实现
本文主要用java实现了简单的堆排序算法。package cheng.guang.bing.algorithms;/** * 这是一个实现最大堆的数据结构程序 * @author Cheng Guangbing * @date 2015.09.15 * */public class HeapSort { //定义一个空堆 private Heap hp=null;
2015-09-15 22:06:04 358
原创 MYSQL存储过程和存储函数入门
一、MYSQL储存过程简介: 储存过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语句和一些特殊的控制结构组成。当希望在不同的应用程序或平台上执行相同的函数,或者封装特定功能时,存储过程是非常有用的。数据库中的存储过程可以看做是对编程中面向对象方法的模拟。它允许控制数据的访问方式。存储过程通常有以下优点:1)存储过程能实现较快的执行速度。 如果某一操作包含大量的Transactio
2015-09-08 17:43:19 13061
转载 B树的插入和删除
B树的插入和删除 写这篇文章之前一直认为B数和B-树是两种不同的树,实际上B-tree树即B树,B即Balanced,平衡的意思。因为B树的原英文名称为B-tree,而很多人喜欢把B-tree译作B-树,其实,这是个非常不好的直译,很容易让人产生误解。如人们可能会以为B-树是一种树,而B树又是另一种树。而事实上是,B-tree就是指的B树。 一棵m阶B树(balanced tree o
2015-09-06 17:28:32 11415 3
Data Structures and Algorithm Analysis in C++, Dr. Clifford A. Shaffer
2014-10-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人