IT
文章平均质量分 96
@SmartSi
Stay Hungry, Stay Foolish
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
[HTTP]HTTP协议的状态码
对于Web编程人员来说,熟悉了解HTTP协议的状态码是很有必要的,很多时侯可能根据HTTP协议的状态码很快就能定位到错误信息!今天整理了一下所有HTTP状态码。 HTTP状态码(HTTP Status Code)是用来表示网页服务器HTTP 响应状态的3位数字代码。它由RFC 2616规范定义的,并得到RFC 2518、RFC 2817、RFC 2295、RFC 2774、RFC 4918等规范扩转载 2015-05-14 23:41:18 · 1265 阅读 · 0 评论 -
[数据库]数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id f转载 2014-11-17 11:54:03 · 1079 阅读 · 0 评论 -
[数据库]Bulk Insert命令详细
Bulk Insert命令详细 BULK INSERT以用户指定的格式复制一个数据文件至数据库表或视图中。 语法:Sql代码 BULK INSERT [ [ 'database_name'.][ 'owner' ].]{ 'table_name' FROM 'data_file' } WITH ( [ B转载 2014-11-17 11:31:37 · 1922 阅读 · 0 评论 -
[推荐系统]欧氏距离和余弦相似度
两者相同的地方,就是在机器学习中都可以用来计算相似度,但是两者的含义有很大差别,以我的理解就是:前者是看成坐标系中两个点,来计算两点之间的距离;后者是看成坐标系中两个向量,来计算两向量之间的夹角。前者因为是点,所以一般指位置上的差别,即距离;后者因为是向量,所以一般指方向上的差别,即所成夹角。如下图所示:数转载 2014-10-01 21:28:15 · 4877 阅读 · 1 评论 -
[推荐系统]余弦计算相似度度量
余弦计算相似度度量相似度度量(Similarity),即计算个体间的相似程度,相似度度量的值越小,说明个体间相似度越小,相似度的值越大说明个体差异越大。对于多个不同的文本或者短文本对话消息要来计算他们之间的相似度如何,一个好的做法就是将这些文本中词语,映射到向量空间,形成文本中文字和向量数据的映射关系,通过计算几个或者多个不同的向量的差异的大小,来计算文本的相似度。下面介绍一个详细转载 2014-10-01 21:07:17 · 5093 阅读 · 1 评论 -
[推荐系统]Mahout中相似度计算方法介绍
Mahout中相似度计算方法介绍 在现实中广泛使用的推荐系统一般都是基于协同过滤算法的,这类算法通常都需要计算用户与用户或者项目与项目之间的相似度,对于数据量以及数据类型不同的数据源,需要不同的相似度计算方法来提高推荐性能,在mahout提供了大量用于计算相似度的组件,这些组件分别实现了不同的相似度计算方法。下图用于实现相似度计算的组件之间的关系:图转载 2014-10-01 20:41:51 · 1602 阅读 · 0 评论 -
[推荐系统]协同过滤介绍
在现今的推荐技术和算法中,最被大家广泛认可和采用的就是基于协同过滤的推荐方法。本文将带你深入了解协同过滤的秘密。下面直接进入正题1 什么是协同过滤协同过滤是利用集体智慧的一个典型方法。要理解什么是协同过滤 (Collaborative Filtering, 简称 CF),首先想一个简单的问题,如果你现在想看个电影,但你不知道具体看哪部,你会怎么做?大部分的人会问问周围的朋友,看看最转载 2014-10-09 11:21:54 · 1400 阅读 · 0 评论 -
[推荐系统]推荐系统的常用算法概述
前一阵子准备毕业论文的开题,一直在看推荐系统相关的论文。对推荐系统有了一个更加清晰和理性的认识,也对推荐算法有了深入了解。借此机会总结分享一下,大家多多拍砖。推荐系统的出现 随着互联网的发展,人们正处于一个信息爆炸的时代。相比于过去的信息匮乏,面对现阶段海量的信息数据,对信息的筛选和过滤成为了衡量一个系统好坏的重要指标。一个具有良好用户体验的系统,会将海量信息进行筛选、过滤,将用转载 2014-10-09 11:13:30 · 1440 阅读 · 0 评论 -
[工具]Sublime Text 2 使用心得
Sublime Text 2 使用心得一、 前言作为一个前端,有一款好的开发利器是必不可少的,editplus、notepad++都是不错的工具,体积轻巧,启动迅速(dw太浮肿了)。最近,又有一款新的编辑器诞生,席卷前端界,惹得无数喜爱,不少前端er纷纷抛弃用了数年的“伙伴”,投入了她的怀抱——Sublime Text2。Sublime Text2是一款跨平台的编辑器,再也不用为换转载 2014-09-16 19:56:48 · 1416 阅读 · 0 评论 -
[数据库]关系数据库的查询优化
查询优化的最终目的是为了提高数据库系统的性能,但查询为什么在效率上会有差别呢?对于SQL查询,相同的表存在着不同的存取方法,两个表的连接存在着不同的连接方法,多个表的连接也存在着不同的连接次序.因此,对于一个给定的查询通常会存在着很多等价的执行计划,这些执行计划的输出结果相同,但是执行效率的差别往往很大.下面的例子可以说明不同执行计划在效率上的差别转载 2014-11-17 15:02:35 · 1894 阅读 · 0 评论 -
[c++]CodeBlocks中去掉下划线的方法
【问题】如上图所示,某些字符下面会出现红色下划线,看着挺难受后的,决定想办法去掉。这是拼写检查插件在作怪,把这个插件屏蔽掉就OK了。【步骤一】点击【插件】下的【管理插件】按钮【步骤二】点击【管理插件】后会出现下面界面:拖动滚动条找到找到 SpellChecker ,然后点击箭头指向的 禁用 就行了,关闭该选项页,再看看主界面就会发现令人头疼的 下原创 2015-01-27 17:05:00 · 7572 阅读 · 0 评论 -
[IT]图解TCP-IP协议
本文通过两个图来梳理TCP-IP协议相关知识。TCP通信过程包括三个步骤:建立TCP连接通道,传输数据,断开TCP连接通道。如图1所示,给出了TCP通信过程的示意图。 图1 TCP 三次握手四次挥手图1主要包括三部分:建立连接、传输数据、断开连接。建立TCP连接很简单,通过三次握手便可建立连接。建立好连接后,开始传输数据转载 2015-05-13 23:09:29 · 1502 阅读 · 1 评论 -
[IT]JSONP跨域的原理解析
JavaScript是一种在Web开发中经常使用的前端动态脚本技术。在JavaScript中,有一个很重要的安全性限制,被称为“Same-Origin Policy”(同源策略)。这一策略对于JavaScript代码能够访问的页面内容做了很重要的限制,即JavaScript 只能访问与包含它的文档在同一域下的内容。JavaScript这个安全策略在进行多iframe或多窗口编程、以及Ajax编程时显转载 2015-05-03 10:45:54 · 996 阅读 · 0 评论 -
[IT]当你在浏览器地址栏输入一个URL后回车,将会发生的事情?
作为一个软件开发者,你一定会对网络应用如何工作有一个完整的层次化的认知,同样这里也包括这些应用所用到的技术:像浏览器,HTTP,HTML,网络服务器,需求处理等等。本文将更深入的研究当你输入一个网址的时候,后台到底发生了一件件什么样的事。1. 首先,你得在浏览器里输入要网址:2. 浏览器查找域名的IP地址导航的第一步是通过访问的域名找出其IP地址。转载 2014-12-29 18:15:42 · 2274 阅读 · 0 评论 -
[数据库]MySQL索引背后的数据结构及算法原理
一 写在前面的话在编程领域有一句人尽皆知的法则“程序 = 数据结构 算法”,我个人是不太赞同这句话(因为我觉得程序不仅仅是数据结构加算法),但是在日常的学习和工作中我确认深深感受到数据结构和算法的重要性,很多东西,如果你愿意稍稍往深处挖一点,那么扑面而来的一定是各种数据结构和算法知识。例如几乎每个程序员都要打交道的数据库,如果仅仅是用来存个数据、建建表、建建索引、做做增删改查,那么也许觉得数据结转载 2015-03-10 22:31:58 · 1587 阅读 · 0 评论 -
[IT]C/S自动升级程序原理
背景我们给几个景区做了一个C/S项目,但是由于需求的变化,或者是Bug的出现,我们不得不修改程序程序。众所周知,C/S结构的应用程序可维护性比较差,它不同于B/S结构的程序,可以随着服务器端的更新,立即显现出来。因此我们不得不经常跑去景区手动更换程序。这样非常的麻烦,因此我们就做了一个自动升级的程序,由景区自己下载更新。运行形式(1)是作为一种服务,用户开机后自动隐藏运行。这种方式技术成本高,要求高原创 2015-03-25 23:23:35 · 4546 阅读 · 0 评论 -
[c++]no matching function for call to ‘sort(…)......
【问题】在做LeetCode的Merge Intervals时用到c++的sort函数,一直出这个错误,甚是郁闷。最后终于找到了问题所在。【代码】#include #include #include using namespace std;struct Interval { int start; int end; Interval() : st原创 2015-01-14 16:57:46 · 7700 阅读 · 0 评论 -
[IT技术]改变计算技术的伟大算法
在过去,很多巧妙的计算机算法设计,改变了我们的计算技术。通过操作标准计算机中提供的中间运算符,可以产生很多的高效函数。这些函数导致了计算机程序的复杂性和多样性,这也是今天计算机时代快速发展的重要原因。如下所示,我们列举了一些算法,它们改变了我们的计算机使用。压缩技术哈弗曼编码哈弗曼编码在无损数据压缩中广泛应用。为了找到一种最高效的二进制编码,哈弗曼在1951年提出了根据转载 2015-01-28 18:00:15 · 1451 阅读 · 0 评论 -
[技术点]SQL 多条件查询
网上有不少人提出过类似的问题:“看到有人写了WHERE 1=1这样的SQL,到底是什么意思?”。其实使用这种用法的开发人员一般都是在使用动态组装的SQL。让我们想像如下的场景:用户要求提供一个灵活的查询界面来根据各种复杂的条件来查询员工信息,界面如下图:界面中列出了四个查询条件,包括按工号查询、按姓名查询、按年龄查询以及按工资查询,每个查询条件前都有一个复选框,如果复选框被选中,则转载 2015-01-28 10:06:24 · 1765 阅读 · 0 评论 -
[c#]分析器错误消息: 发现不明确的匹配。
分析器错误消息: 发现不明确的匹配。原创 2014-08-17 23:22:20 · 3708 阅读 · 0 评论 -
[数据库] 如何加表锁
MyISAM在执行查询语句(SELECT)前,会自动给涉及的所有表加读锁,在执行更新操作(UPDATE、DELETE、INSERT等)前,会自动给涉及的表加写锁,这个过程并不需要用户干预,因此,用户一般不需要直接用LOCK TABLE命令给MyISAM表显式加锁。在本书的示例中,显式加锁基本上都是为了方便而已,并非必须如此。给MyISAM表显示加锁,一般是为了在一定程度模拟事务操作,实现对某一转载 2014-08-17 11:42:13 · 1818 阅读 · 0 评论 -
淘宝海量数据库之二:一致性选择
众所周知,一致性是数据最关键的属性之一。2000年,Eric Brewer教授在ACM分布式计算年会上指出了著名的CAP理论:Brewer, E. A. 2000. Towards robust distributed systems. In Proceedings of the 19th Annual ACM Symposium on Principles of Distributed转载 2014-06-15 21:59:12 · 1190 阅读 · 0 评论 -
[互联网]你刚才在淘宝上买了一件东西
你发现快要过年了,于是想给你的女朋友买一件毛衣,你打开了www.taobao.com。这时你的浏览器首先查询DNS服务器,将www.taobao.com转换成ip地址。不过首先你会发现,你在不同的地区或者不同的网络(电信、联通、移动)的情况下,转换后的IP地址很可能是 不一样的,这首先涉及到负载均衡的第一步,通过DNS解析域名时将你的访问分配到不同的入口,同时尽可能保证你所访问的入口是所有入口中可转载 2014-06-15 21:49:16 · 1256 阅读 · 0 评论 -
[数据库]数据库存储层级结构数据
无论你想建立自己的论坛,在你的网站上从一个邮件列表发布消息,或编写自己的cms:你将会遇到一种情况:将分层数据(层级结构)存储在数据库中。除非你使用一个类似xml的数据库,通用的关系型数据库是很难做到这一点。关系型数据库中的表不分层;他们只是一个简单列表。你必须找到一个方法来把层次结构数据转换为一个简单文件数据。存储树是一种常见的问题,可以有多个解决方案来实现。有两种主要方法:邻接表模型和修改翻译 2014-06-03 21:21:02 · 5776 阅读 · 3 评论 -
[推荐系统]互联网推荐系统比较研究
互联网规模和覆盖面的迅速增长带来了信息超载(information overload)的问题:过量信息同时呈现使得用户无法从中获取对自己有用的部分,信息使用效率反而降低。现有的很多网络应用,比如门户网站、搜索引擎和专业数据索引本质上都是帮助用户过滤信息的手段。然而这些工具只满足主流需求,没有个性化的考虑,仍然无法很好地解决信息超载的问题。推荐系统(recommender system)作为一种信息转载 2014-06-11 22:16:42 · 8320 阅读 · 0 评论 -
[数据库]关于设计表时应该注意的问题
如有错误欢迎大家指出。这段时间在家里,做了点修正。1、慎重选择表名。有两种选择:按照多数开发语言的命名规则。比如(myCustomer)。按照多数开源思想命名规则。比如(my_customer)。按照咱们中国人的思想。比如(我的客户)。第一种有个缺点,很容易忘掉大写的字母。第二种则比较好,每个WORD间用下划线连接,避免遗忘。第三种建议不要用,虽然很好记。不觉得解析转载 2014-05-19 10:25:12 · 5324 阅读 · 0 评论 -
[推荐系统]推荐系统实践Reference
这只是一本197页的书 我想你未必过瘾 但作者附上了诸多好资料 无论是paper, blog文章,wikipedia词条,数据集还是开源项目等 你可以选择拥有 附上我收集的资料链接,格式基本按照‘URL+资料名称+出现在书中的页数’,某些链接可能需要你翻过一道‘墙’,某些重复引用的我就没重复贴上链接了转载 2014-06-04 20:14:15 · 4932 阅读 · 0 评论 -
淘宝海量数据库之一:来自业务的挑战
作为一个电子商务企业,从一开始,数据库及其事务能力在淘宝就扮演着十分关键的角色,淘宝也积累了丰富的数据库的架构和规划等方面的经验,产生了众多优秀的DBA。 淘宝是一家迅速发展的公司。全球网站排名公司Alexa提供的数据显示,2010年4月27日,Amazon、Ebay的用户占全球互联网用户的百分比分别为3.47%和2.68%,而淘宝的用户占全球互联网用户的百分比则达到了4.1%,淘转载 2014-06-15 21:46:07 · 1384 阅读 · 0 评论 -
[推荐系统]个性化推荐的十大挑战
个性化推荐经常被人误解为细分市场和精准营销这两个概念。虽然它们之间有一些联系,但实质上却相差甚远。本文不仅清楚地讲述了个性化推荐技术,更列出了其所面临的十大挑战。很多人都知道个性化推荐,却有不少认识上的误区。有的人认为个性化推荐就是细分市场和精准营销,但实际上细分市场和精准营销往往是把潜在的用户分成很多群体,这与基于全体的统计相比固然有了长足的进步,但距离“为每一个用户量身定做的信息服务”转载 2014-06-02 17:35:56 · 6142 阅读 · 0 评论 -
[人工智能]得人工智能者得天下?百度200万美元奖励不到20人的团队
8月8日下午,李彦宏把分布在全国各地的三四万人中的一万人,召集在百度大厦东广场,举行了个超级大的Summer Party,据说是因为从今年开始,这就是百度的年会了(所以才会有百度高管一起小苹果这样一年一度的欢乐节目)。这次场子里除了近万人的夏日狂欢,还有李彦宏亲自颁发超级巨奖,也就是所谓2014年度的“百度最高奖”,今年奖金达到600万美元,是过去三年的总和,四年累计共发出1200万美元,说在中国转载 2014-08-12 22:37:49 · 1428 阅读 · 0 评论 -
[人工智能]北美18名校的数据挖掘,数据分析,人工智能及机器学习课程汇总
问答http://www.quora.com/What-is-data-science 数据科学是什么?http://www.quora.com/How-do-I-become-a-data-scientist 我怎样才能成为一个数据科学家?http://www.quora.com/Data-Science/How-does-data-science-differ-fr转载 2014-08-12 22:38:15 · 1733 阅读 · 0 评论 -
[数据库]数据库临时表
临时表就是那些名称以井号 (#) 开头的表。如果当用户断开连接时没有除去临时表,SQL Server 将自动除去临时表。临时表不存储在当前数据库内,而是存储在系统数据库 tempdb 内。 临时表有两种类型: 本地临时表 以一个井号 (#) 开头的那些表名。只有在创建本地临时表的连接上才能看到这些表,链接断开时临时表即被删除(本地临时表为创建它的该链接的会话所独享)或者这样说局转载 2014-08-09 09:09:53 · 1965 阅读 · 0 评论 -
[数据库]ROW_NUMBER() OVER函数的基本用法
(1)ROW_NUMBER() OVER(ORDER BY COLUMN)通常,开发者和管理员在一个查询里,用临时表和列相关的子查询来计算产生行号。现在SQL Server 2005提供了一个函数,代替所有多余的代码来产生行号。简单的说row_number()从1开始,为每一条分组记录返回一个数字,这里的ROW_NUMBER() OVER (ORDER BY xlh DESC) 是原创 2014-08-02 10:07:58 · 4207 阅读 · 0 评论 -
[并发]线程池技术小白
1 线程池技术介绍在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收。所以提高服务程序效率的一个手段就是尽可能减少创建和销毁对象的次数,特别是一些很耗资源的对象创建和销毁。如何利用已有对象来服务就是一个需要解决的关键问题,其实这就是一些"池化资源"技术产生的原因。比如原创 2014-06-16 22:53:01 · 1406 阅读 · 0 评论 -
[数据库]MySQL Hash索引和B-Tree索引的区别
MySQL Hash索引和B-Tree索引的区别究竟在哪里呢?相信很多人都有这样的疑问,下文对两者的区别进行了详细的分析,供您参考。MySQL Hash索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引。 可 能很多人又有疑问了,既然转载 2014-06-15 23:20:36 · 1469 阅读 · 0 评论 -
[数据库]树结构的数据库设计
程序设计过程中,我们常常用树形结构来表征某些数据的关联关系,如企业上下级部门、栏目结构、商品分类等等,通常而言,这些树状结构需要借助于数据库完成持久化。然而目前的各种基于关系的数据库,都是以二维表的形式记录存储数据信息,因此是不能直接将Tree存入DBMS,设计合适的Schema及其对应的CRUD算法是实现关系型数据库中存储树形结构的关键。 理想中树形结构应该具备如下特征:数据存储冗转载 2014-06-02 23:37:21 · 2877 阅读 · 3 评论 -
[推荐系统] 自己动手写一个推荐系统
废话:最近朋友在学习推荐系统相关,说是实现完整的推荐系统,于是我们三不之一会有一些讨论和推导,想想索性整理出来。在文中主要以工程中做推荐系统的流程着手,穿插一些经验之谈,并对于推荐系统的算法的学术界最新的研究进展和流派作一些介绍。当然由于我做推荐系统之时还年幼,可能有很多偏颇甚至错误的见解,就当抛砖引玉,还请各位大大指点。 Reading lists转载 2014-06-02 09:59:31 · 2246 阅读 · 0 评论 -
[推荐系统]信息过载与推荐系统
我小的时候,电视只能收到三四个台,很多那个时候的电视节目,例如《动物世界》、《射雕英雄传》、《渴望》等等,都成了经典——可选择的少了,能记住的反倒多了。现在的电视,动辄能收到上百个台,往好里说是百花齐放,异彩纷呈;往差里说是五色杂陈,泥沙俱下。可看的多了,反而不知道看什么好,往往是“乱花渐欲迷人眼”,转了一圈都找不到中意的节目。几百个电视频道就够让人心烦意乱了,网络世界则更加恐怖:Netflix.转载 2014-06-02 17:22:25 · 3546 阅读 · 0 评论
分享