- 博客(13)
- 收藏
- 关注
原创 校招算法工程师常见面试题及答案总结03——KMeans
K-Means算法是最为经典的基于划分的聚类方法,是十大经典数据挖掘算法之一。K-Means算法的基本思想是:以空间中k个点为中心进行聚类,对最靠近他们的对象归类。通过迭代的方法,逐次更新各聚类中心的值,直至得到最好的聚类结果。
2017-01-22 14:58:48 9090
原创 校招算法工程师常见面试题及答案总结02——SVM
SVM是很常考的一个机器学习基本算法,除了要知道其理论、优缺点、适用范围等,还要掌握其推导。本篇博客对SVM做概述,并分别介绍线性可分SVM、线性SVM、非线性SVM、SMO。
2017-01-20 12:51:36 7572
原创 校招算法工程师常见面试题及答案总结01——L1和L2正则化
监督机器学习问题无非就是在规则化参数的同时最小化误差。最小化误差是为了让我们的模型拟合我们的训练数据,而规则化参数是防止我们的模型过分拟合我们的训练数据。我们的目标是希望模型的测试误差小,也就是能准确的预测新的样本。所以,我们需要保证模型“简单”的基础上最小化训练误差,这样得到的参数才具有好的泛化性能(也就是测试误差也小),而模型“简单”就是通过规则函数来实现的。L1和L2正则化就属于规则函数,用来防止过拟合
2017-01-18 11:29:20 5107
转载 并发、并行、同步、异步、多线程的区别
1. 并发:在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行。其中两种并发关系分别是同步和互斥。2. 互斥:进程间相互排斥的使用临界资源的现象,就叫互斥。3. 同步:进程之间的关系不是相互排斥临界资源的关系,而是相互依赖的关系。进一步的说明:就是前一个进程的输出作为后一个进程的输入,当第一个进程没有输出时第二个进程必须等待。具有同
2016-06-15 16:36:27 608
转载 Hive与HBase的区别
1. 两者分别是什么? Apache Hive是一个构建在Hadoop基础设施之上的数据仓库。通过Hive可以使用HQL语言查询存放在HDFS上的数据。HQL是一种类SQL语言,这种语言最终被转化为Map/Reduce. 虽然Hive提供了SQL查询功能,但是Hive不能够进行交互查询--因为它只能够在Haoop上批量的执行Hadoop。 Apach
2016-04-03 22:20:11 608
转载 Java类权限
1、Class类的访问权限: public:可以供所有的类访问。 默认(包访问权限):默认可以称为friendly。但是,java语言中是没有friendly这个修饰符的,这样称呼应该是来源于C++。默认的访问权限是包级访问权限。 即如果写了一个类没有写访问权限修饰符,那么就是默认的访问权限,同一个包下的类都可以访问到,即使可以实例化该类 (当然如果这个
2016-03-07 10:31:26 832
原创 Java字符串常用方法
Java字符串常用方法一、创建并初始化字符串: 1、使用字符串常量直接初始化String s="hello!"; 2、使用构造方法创建并初始化 String(); //初始化一个对象,表示空字符序列 String(value); //利用已存在的字符串常量创建一个新的对象 String(char[] value
2015-11-07 19:17:46 1517
原创 JVM、JRE与JDK简介
一、 JVM JVM(Java Virtual Machine),是架构在Linux、Windows等各种操作系统平台之上的一种虚拟的机器。 它为所有编译程序提供一个共同的接口,编译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解释器来将虚拟机代码转换为特定系统的机器码执行。在Java中,这种供虚拟机理解的代码叫做字节码(ByteCode)(class文件的
2015-10-13 19:16:10 1304
原创 散列表的详细剖析 (算法导论第11章)
注意: ① 由同一个散列函数、不同的解决冲突方法构造的散列表,其平均查找长度是不相同的。 ② 散列表的平均查找长度不是结点个数n的函数,而是装填因子α的函数。因此在设计散列表时可选择α以控制散列表的平均查找长度。 通过链接法解决冲突:成功查找的期望查找长度O(1+α), 不成功查找的平均查找长度也为O(1+α)。 开放寻址解决冲突:引入探查序列,对于α
2015-07-08 14:45:44 2571
原创 算法导论第八章总结:线性时间排序
算法导论第八章总结:线性时间排序 这一章首先证明了对于 n 个元素的输入序列来说,任何比较排序(最终的次序依赖于元素之间的比较的排序方法)在最坏情况下都要经过 Ω(n lg n ) 次比较。因此,归并排序和堆排序是渐进最优的,并且任何已知的比较排序最多就是在常数因子上优于它们。 之后讨论了三种线性时间复杂度的排序算法:计数排序、基数排序和桶排序。这些算法是用
2015-06-17 22:07:12 1816
原创 算法导论第七章总结:快速排序
算法导论第七章总结 对于包含 n 个数的输入数组来说,快速排序是一种最坏时间复杂度为 Θ(n2) 的排序算法。虽然最坏情况时间复杂度很差,但快速排序通常书实际应用中最好的选择,因为它的平均性能好:期望时间复杂度是 Θ(nlg n),而且 Θ (n lg n)中隐含的常数因子非常小,还能进行原址排序。一、描述 P95~P97 快速排序也
2015-06-09 21:05:04 2278
原创 算法导论第六章总结:堆排序
算法导论第六章总结 这一章介绍了另一种排序算法:堆排序。它的时间复杂度为 O(n lg n),且具有空间原址性(即任何时候只需要常数个额外的元素空间存储临时数据)。时间复杂度优于插入排序,与归并排序相同。且具有归并排序不具备的空间原址性这一优点。并且,这一章引入了“堆”这种数据结构。 一、堆 P84、85 (二叉)堆是一个数组,它可以被看成是一个近
2015-06-03 15:02:31 2087
原创 算法导论第二章总结:插入排序、归并排序
算法导论第二章总结 这一章简要介绍了一个贯穿全书的框架。对于这个框架,我的理解就是算法的流程吧。 (1) 问题:算法需要实现的功能。 (2) 思想:算法的设计。 (3) 实现:代码,本书中采用“伪代码”实现,需根据实际情况自己完成具体代码。 (4)
2015-05-21 19:27:51 2000 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人