数据科学家常问的40道面试题_深圳光环大数据人工智能培训
光环大数据分享关于Hadoop的面试问答题

光环大数据分享关于Hadoop的面试问答题1.简单描述如何安装配置一个apache开源版hadoop,只描述即可,无需列出完整步骤,能列出步骤更好。
1)安装JDK并配置环境变量(/etc/profile)2)关闭防火墙3)配置hosts文件,方便hadoop通过主机名访问(/etc/hosts)4)设置ssh免密码登录5)解压缩hadoop安装包,并配置环境变量6)修改配置文件($HADOOP_HOME/conf)hadoop-env.shcore-site.xmlhdfs-site.xmlmapred-site.xml7)格式化hdfs文件系统(hadoopnamenode-format)8)启动hadoop($HADOOP_HOME/bin/start-all.sh)9)使用jps查看进程2.请列出正常工作的hadoop集群中hadoop都分别需要启动那些进程,他们的作用分别是什么,尽可能写的全面些。
1)NameNode:HDFS的守护进程,负责记录文件是如何分割成数据块,以及这些数据块分别被存储到那些数据节点上,它的主要功能是对内存及IO进行集中管理2)SecondaryNameNode:辅助后台程序,与NameNode进行通信,以便定期保存HDFS元数据的快照。
3)DataNode:负责把HDFS数据块读写到本地的文件系统。
4)JobTracker:负责分配task,并监控所有运行的task。
5)TaskTracker:负责执行具体的task,并与JobTracker进行交互。
3.请列出你所知道的hadoop调度器,并简要说明其工作方法。
比较流行的三种调度器有:默认调度器FIFO,计算能力调度器CapacityScheduler,公平调度器FairScheduler1)默认调度器FIFOhadoop中默认的调度器,采用先进先出的原则2)计算能力调度器CapacityScheduler选择占用资源小,优先级高的先执行3)公平调度器FairScheduler同一队列中的作业公平共享队列中所有资源4.Hive有那些方式保存元数据的,各有那些特点。
大数据面试题汇总_光环大数据推出AI智客计划送2000助学金

大数据面试题汇总_光环大数据推出AI智客计划送2000助学金MR提交时是否有失败,失败了怎么办出现错误主要有以下三种:1、Task任务2、JobTracker失败3、TaskTracker失败Task任务1、当map或者reduce子任务中的代码抛出异常,JVM进程会在退出之前向服务tasktracker进程发送错误报告,tasktracker会将此(任务尝试)taskattempt标记为failed状态,释放一个槽以便运行另外一个任务。
2、对于流任务,如果流进程以非零退出运行,则会标记为failed。
3、子JVM突然退出(JVM错误),这时tasktracker会注意到进程己经退出,标记为failed。
4、tasktracker将子任务标记为失败后会将自身计数器减一,以便向jobtracker申请新的任务,也是通过心跳告知jobtracker本地的一个任务尝试失败。
5、jobtracker接到任务失败的通知后,会将其重新加入到调度队列重新分配给其他的tasktracker执行(避免将失败的任务分配给执行失败的tasktracker),但是这个尝试也是有次数限制的,默认情况卜任务尝试4次后仍然没有完成,就不会再重试(jobtracker会将其标记为killed),此时整个作业就执行失败了。
TaskTracker失败1、tasktracker一旦失败,就会停止向jobtracker发送心跳。
2、同时jobtracker从任务池中将此tasktracker删除,tasktracker上运行的任务将会被移送到其他tasktracker节点上去运行。
3、如果每个tasktracker上面的任务失败次数远远高于其他节点,jobtracker就把该tasktracker放入到黑名单中。
4、如果成功完成的map任务,tasktracker节点已经失效了,那么reduce 任务也无法访问到存储在tasktracker本地文件系统上的中间结果,需要在其他tasktracker节点重新被执行。
最受欢迎的前80个经典人工智能面试题目

最受欢迎的前80个经典人工智能面试题目在这里,我们整理了一份人工智能面试问题列表,以帮助您清除AI面试。
我们提供了AI编程语言和应用程序,图灵测试,专家系统,各种搜索算法的详细信息,游戏理论,模糊逻辑,归纳,演绎和归纳机器学习,ML算法技术,朴素贝叶斯,Perceptron,KNN,LSTM,自动编码器等。
人工智能面试问题的最佳答案1.强人工智能和弱人工智能有什么区别?弱AI强大的AI狭窄的应用范围广泛应用,范围广擅长特定任务令人难以置信的人类智慧使用有监督和无监督学习来处理数据使用聚类和关联来处理数据例如,Siri,Alexa等。
例如,高级机器人2.什么是人工智能?人工智能是计算机科学领域,其中研究并尝试在机器/系统上复制人脑的认知功能。
如今,人工智能已广泛用于各种应用程序,例如计算机视觉,语音识别,决策,感知,推理,认知能力等。
3.列出AI的一些应用。
•自然语言处理•聊天机器人•情绪分析•销售预测•自动驾驶汽车•面部表情识别•图片标记5.河内塔是什么?河内之塔(TowerofHanoi)是一个数学难题,它说明了如何将递归用作构建算法以解决特定问题的一种手段。
使用AI中的决策树和广度优先搜索(BFS)算法,我们可以求解河内塔。
参加伦敦的人工智能课程,以清楚地了解人工智能!6.什么是图灵测试?图灵测试是一种测试机器匹配人类智能的能力的方法。
机器被用来挑战人类的智能,当它通过测试时就被认为是智能的。
然而,在没有充分了解如何模仿人类的情况下,机器可以被视为智能的。
7.什么是专家系统?专家系统的特征是什么?专家系统是一个人工智能程序,具有关于特定区域以及如何利用其信息做出适当反应的专家级知识。
这些系统具有替代人类专家的专业知识。
它们的特征包括:•高性能•足够的响应时间•可靠性•易懂8.列出专家系统的优点。
∙一致性•记忆•勤勉•逻辑•多种专业知识•推理能力•反应快•自然无偏9.什么是A*算法搜索方法?A*是一种计算机算法,广泛用于查找路径或遍历图形的目的,以便找到称为节点的各个点之间的最佳路线。
人工智能工程师面试题

人工智能工程师面试题在当今科技飞速发展的时代,人工智能领域的需求日益增长,对于人工智能工程师的要求也越来越高。
为了选拔出优秀的人才,面试环节至关重要。
以下是一些可能在人工智能工程师面试中出现的问题:一、基础知识1、请简要介绍一下人工智能的发展历程和主要的里程碑事件。
这道题旨在考察面试者对人工智能领域的整体了解程度,以及对历史发展脉络的掌握。
一个优秀的人工智能工程师应该对该领域的起源、重要突破和当前的发展趋势有清晰的认识。
2、解释什么是机器学习,以及它与人工智能的关系。
机器学习是人工智能的核心组成部分,了解面试者对机器学习的定义和其在人工智能中的地位的理解,能够判断他们的基础知识是否扎实。
3、列举几种常见的机器学习算法,并简述它们的适用场景。
常见的算法如决策树、支持向量机、朴素贝叶斯等。
了解面试者能否根据不同的问题选择合适的算法,反映出他们的实际应用能力。
二、技术能力1、谈谈你在深度学习方面的经验,包括使用过的框架(如TensorFlow、PyTorch 等)。
深度学习是当前人工智能的热门领域,熟悉相关框架并具有实际项目经验是非常重要的。
2、如何处理数据不平衡的问题?在实际应用中,数据不平衡是常见的挑战,考察面试者的解决思路和方法。
3、介绍一下你在模型优化方面的经验,例如正则化、超参数调整等。
模型优化是提高模型性能的关键,了解面试者的优化技巧和实践经验。
三、项目经验1、请描述一个你参与过的最具挑战性的人工智能项目,你在其中承担的角色以及遇到的问题和解决方案。
通过这个问题,可以了解面试者在实际项目中的能力、团队协作和解决问题的能力。
2、在项目中,如何确保模型的准确性和可靠性?考察面试者对模型评估和验证的方法,以及对模型质量的把控能力。
3、如果项目进度紧张,你会如何安排工作以确保按时完成任务?这道题可以考察面试者的时间管理和任务分配能力。
四、问题解决能力1、假设你在训练模型时遇到了严重的过拟合问题,你会采取哪些措施来解决?过拟合是常见的问题,考察面试者的应对策略和分析问题的能力。
机器学习面试题及答案_深圳光环大数据培训

机器学习面试题及答案_深圳光环大数据培训1.什么是机器学习机器学习是为了应对系统程序设计,属于计算机科学类的学科,它能根据经验进行自动学习和提高。
例如:一个由程序操纵的机器人,它能根据从传感器搜集到的数据,完成一系列的任务和工作。
它能根据数据自动地学习应用程序。
2.机器学习与数据挖掘的区别机器语言是指在没有明确的程序指令的情况下,给予计算机学习能力,使它能自主的学习、设计和扩展相关算法。
数据挖掘则是一种从非结构化数据里面提取知识或者未知的、人们感兴趣的图片。
在这个过程中应用了机器学习算法。
3.什么是机器学习的过度拟合现象在机器学习中,当一个统计模型首先描述随机误差或噪声,而不是自身的基本关系时,过度拟合就会出现。
当一个模型是过于复杂,过拟合通常容易被发现,因为相对于训练数据类型的数量,参数的数量过于五花八门。
那么这个模型由于过度拟合而效果不佳。
4.过度拟合产生的原因由于用于训练模型的标准并不等同于判断模型效率的标准,这导致了产生过度拟合的可能性。
5.如何避免过度拟合当你使用较小的数据集进行机器学习时,容易产生过度拟合,因此使用较大的数据量能避免过度拟合现象。
但是,当你不得不使用小型数据集进行建模时,可以使用被称为交叉验证的技术。
在这种方法中数据集被分成两节,测试和训练数据集,测试数据集只测试模型,而在训练数据集中,数据点被用来建模。
在该技术中,一个模型通常是被给定有先验知识的数据集(训练数据集)进行训练,没有先验知识的数据集进行测试。
交叉验证的思想是:在训练阶段,定义一个数据集用来测试模型。
6.什么是感应式的机器学习?感应机器学习涉及由实践进行学习的过程,能从一组可观测到的例子的尝试推导出普遍性规则。
7.什么是机器学习的五个流行的算法?决策树2. 神经网络(反向传播)3. 概率网络4.最邻近法5. 支持向量机8.机器学习有哪些不同的算法技术?在机器学习不同类型的算法技术是:监督学习2.非监督学习3. 半监督学习4. 转导推理(Transduction)5.学习推理(Learning to Learn)。
光环大数据云计算培训 云计算面试题汇总

光环大数据云计算培训云计算面试题汇总云计算培训,云计算面试题汇总。
光环大数据了解到,云计算连接技术最重要的优势就是是令人难以置信的速度,敏捷性而且能够实现业务转型。
云计算会继续延续自己的辉煌,而绝对不仅仅是一个技术流行语,只是一个外行人对自动化连接的称谓而已。
云计算培训光环大数据通过总结参加云计算培训毕业后的学员的面试经验,给大家分享下云计算面试题:1)使用云计算有哪些优点?使用云计算有下列优点:a)备份数据和存储数据b)强大的服务器功能c)SaaS(软件即服务)d)信息技术沙盒功能e)提高生产力f)具有成本效益,并节省时间2)可否列举哪些平台用于大规模云计算?用于大规模云计算的平台包括:a)ApacheHadoopb)MapReduce3)可否解释用于云计算部署的不同模式?不同的云计算部署模式包括:a)私有云b)公共云c)社区云d)混合云云计算培训4)云计算与移动计算有何区别?移动计算使用与云计算同样的概念。
借助互联网而不是借助单个设备,云计算因数据而变得活跃。
它为用户提供了需要按需获取的数据。
在移动计算中,应用程序在远程服务器上运行,为用户提供了访问所存储数据的权限。
5)用户如何得益于公用计算(utilitycomputing)?公用计算让用户可以只需要为使用的资源付费。
它是由决定从云端部署哪种类型的服务的企业组织管理的一种插件。
大多数企业组织青睐混合策略。
6)由于数据在云端传输,你如何确保数据安全?数据从一个地方传输到另一地方的过程中想确保数据安全,就要确保针对你发送的数据所使用的加密密钥没有泄露。
7)云在安全方面的措施有哪些?a)身份管理:授权应用程序服务。
b)访问控制:将权限授予用户,那样用户可以控制进入到云环境的另一个用户的访问。
c)验证和授权:只允许用授权和验证的用户访问数据和应用程序。
8)可否列出定义云架构的不同层?云计算培训云架构使用的不同层包括:a)CLC即云控制器b)Walrusc)集群控制器d)SC即存储控制器e)NC即节点控制器大数据+云计算时代,云计算培训,就选光环大数据!为什么大家选择光环大数据!大数据培训、人工智能培训、培训、大数据培训机构、大数据培训班、数据分析培训、大数据可视化培训,就选光环大数据!光环大数据,聘请大数据领域具有多年经验的讲师,提高教学的整体质量与教学水准。
大数据职位面试题目汇总_光环大数据培训

大数据职位面试题目汇总_光环大数据培训大数据职位面试题目汇总,最近总是听到各种各样的报怨,面试的时候问的问题以前没有接触过,或者说接触的少,再加上面试心里比较紧张,就把以前即使知道的内容都忘记怎么说,还有一种说法是嘴笨,面试和考试是一样的,对于比较常见的问题你就要熟烂于心,最好是保持一颗平常心,始终保持一颗此处不留爷,自有留爷处的心态。
下面介绍一些大数据职位面试的时候经常会问到的一些技术方面的问题,希望看完这篇文章能让你用出洪荒之力,职业生涯进一步发展。
hdfs原理,以及各个模块的职责对于任何对文件系统元数据产生修改的操作,Namenode 都会使用一种称为EditLog 的事务日志记录下来。
整个文件系统的命名空间,包括数据块到文件的映射、文件的属性等,都存储在一个称为FsImage 的文件中DataNodeDatanode 将HDFS 数据以文件的形式存储在本地的文件系统中,它并不知道有关HDFS 文件的信息。
它把每个HDFS 数据块存储在本地文件系统的一个单独的文件中。
当一个Datanode 启动时,它会扫描本地文件系统,产生一个这些本地文件对应的所有HDFS 数据块的列表,然后作为报告发送到Namenode ,这个报告就是块状态报告。
Secondary NameNodeSecondary NameNode 定期合并fsimage 和edits 日志,将edits 日志文件大小控制在一个限度下。
Secondary NameNode处理流程node 响应Secondary namenode 请求,将edit log 推送给Secondary namenode ,开始重新写一个新的edit log 。
2.Secondary namenode 收到来自namenode 的fsimage 文件和edit log 。
3.Secondary namenode 将fsimage 加载到内存,应用edit log ,并生成一个新的fsimage 文件。
光环大数据 12道 Python面试题汇总分享

光环大数据 12道 Python面试题汇总分享1、Python是如何进行内存管理的?Python的内存管理主要有三种机制:引用计数机制、垃圾回收机制和内存池机制。
a.引用计数当给一个对象分配一个新名称或者将一个对象放入一个容器(列表、元组或字典)时,该对象的引用计数都会增加。
当使用del对对象显示销毁或者引用超出作用于或者被重新赋值时,该对象的引用计数就会减少。
可以使用sys.getrefcount()函数来获取对象的当前引用计数。
多数情况下,引用计数要比我们猜测的大的多。
对于不可变数据(数字和字符串),解释器会在程序的不同部分共享内存,以便节约内存。
b.垃圾回收当一个对象的引用计数归零时,它将被垃圾收集机制处理掉。
当两个对象a和b相互引用时,del语句可以减少a和b的引用计数,并销毁用于引用底层对象的名称。
然而由于每个对象都包含一个对其他对象的应用,因此引用计数不会归零,对象也不会销毁。
(从而导致内存泄露)。
为解决这一问题,解释器会定期执行一个循环检测器,搜索不可访问对象的循环并删除它们。
c.内存池机制Python提供了对内存的垃圾收集机制,但是它将不用的内存放到内存池而不是返回给操作系统。
1)Pymalloc机制。
为了加速Python的执行效率,Python引入了一个内存池机制,用于管理对小块内存的申请和释放。
2)Python中所有小于256个字节的对象都使用pymalloc实现的分配器,而大的对象则使用系统的malloc。
3)对于Python对象,如整数,浮点数和List,都有其独立的私有内存池,对象间不共享他们的内存池。
也就是说如果你分配又释放了大量的整数,用于缓存这些整数的内存就不能再分配给浮点数。
2、什么是lambda函数?它有什么好处?lambda表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数lambda函数:首要用途是指点短小的回调函数lambda[arguments]:expression>>>a=lambdax,y:x+y>>>a(3,11)3、Python里面如何实现tuple和list的转换?直接使用tuple和list函数就行了,type()可以判断对象的类型。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据科学家常问的40道面试题_深圳光环大数据人工智能培训想去机器学习初创公司做数据科学家?这些问题值得你三思!机器学习和数据科学被看作是下一次工业革命的驱动器。
这也意味着有许许多多令人激动的初创公司正在起步成长、寻找专业人士和数据科学家。
它们可能是未来的特斯拉、谷歌。
对于有职业抱负的你来说,看好一家好的创业公司团队后,如何能够脱颖而出,进入一家靠谱的创业团队呢?想得到这样的工作并不容易。
首先你要强烈认同那个公司的理念、团队和愿景。
同时你可能会遇到一些很难的技术问题。
而这些问题则取决于公司的业务。
他们是咨询公司?他们是做机器学习产品的?在准备面试之前就要了解清楚这些方面的问题。
为了帮你为今后的面试做准备,我准备了40道面试时可能碰到的棘手问题。
如果你能回答和理解这些问题,那么放心吧,你能顽强抵抗住面试。
注意:要回答这些问题的关键是对机器学习和相关统计概念有具体的实际理解。
机器学习面试题问1:给你一个有1000列和1百万行的训练数据集。
这个数据集是基于分类问题的。
经理要求你来降低该数据集的维度以减少模型计算时间。
你的机器内存有限。
你会怎么做?(你可以自由做各种实际操作假设。
)答:你的面试官应该非常了解很难在有限的内存上处理高维的数据。
以下是你可以使用的处理方法:1.由于我们的RAM很小,首先要关闭机器上正在运行的其他程序,包括网页浏览器,以确保大部分内存可以使用。
2.我们可以随机采样数据集。
这意味着,我们可以创建一个较小的数据集,比如有1000个变量和30万行,然后做计算。
3.为了降低维度,我们可以把数值变量和分类变量分开,同时删掉相关联的变量。
对于数值变量,我们将使用相关性分析。
对于分类变量,我们可以用卡方检验。
4.另外,我们还可以使用PCA(主成分分析),并挑选可以解释在数据集中有最大偏差的成分。
5.利用在线学习算法,如VowpalWabbit(在Python中可用)是一个可能的选择。
6.利用Stochastic GradientDescent(随机梯度下降)法建立线性模型也很有帮助。
7.我们也可以用我们对业务的理解来估计各预测变量对响应变量的影响大小。
但是,这是一个主观的方法,如果没有找出有用的预测变量可能会导致信息的显著丢失。
注意:对于第4和第5点,请务必阅读有关在线学习算法和随机梯度下降法的内容。
这些是高阶方法。
问2:在PCA中有必要做旋转变换吗?如果有必要,为什么?如果你没有旋转变换那些成分,会发生什么情况?答:是的,旋转(正交)是必要的,因为它把由主成分捕获的方差之间的差异最大化。
这使得主成分更容易解释。
但是不要忘记我们做PCA的目的是选择更少的主成分(与特征变量个数相较而言),那些选上的主成分能够解释数据集中最大方差。
通过做旋转,各主成分的相对位置不发生变化,它只能改变点的实际坐标。
如果我们没有旋转主成分,PCA的效果会减弱,那样我们会不得不选择更多个主成分来解释数据集里的方差。
注意:对PCA(主成分分析)需要了解更多。
问3:给你一个数据集。
这个数据集有缺失值,且这些缺失值分布在离中值有1个标准偏差的范围内。
百分之多少的数据不会受到影响?为什么?答:这个问题给了你足够的提示来开始思考!由于数据分布在中位数附近,让我们先假设这是一个正态分布。
我们知道,在一个正态分布中,约有68%的数据位于跟平均数(或众数、中位数)1个标准差范围内的,那样剩下的约32%的数据是不受影响的。
因此,约有32%的数据将不受到缺失值的影响。
问4:给你一个癌症检测的数据集。
你已经建好了分类模型,取得了96%的精度。
为什么你还是不满意你的模型性能?你可以做些什么呢?答:如果你分析过足够多的数据集,你应该可以判断出来癌症检测结果是不平衡数据。
在不平衡数据集中,精度不应该被用来作为衡量模型的标准,因为96%(按给定的)可能只有正确预测多数分类,但我们感兴趣是那些少数分类(4%),是那些被诊断出癌症的人。
因此,为了评价模型的性能,应该用灵敏度(真阳性率),特异性(真阴性率),F值用来确定这个分类器的“聪明”程度。
如果在那4%的数据上表现不好,我们可以采取以下步骤:1.我们可以使用欠采样、过采样或SMOTE让数据平衡。
2.我们可以通过概率验证和利用AUC-ROC曲线找到最佳阀值来调整预测阀值。
3.我们可以给分类分配权重,那样较少的分类获得较大的权重。
4.我们还可以使用异常检测。
注意:要更多地了解不平衡分类问5: 为什么朴素贝叶斯如此“朴素”?答:朴素贝叶斯太‘朴素’了,因为它假定所有的特征在数据集中的作用是同样重要和独立的。
正如我们所知,这个假设在现实世界中是很不真实的。
问6:解释朴素贝叶斯算法里面的先验概率、似然估计和边际似然估计?答:先验概率就是因变量(二分法)在数据集中的比例。
这是在你没有任何进一步的信息的时候,是对分类能做出的最接近的猜测。
例如,在一个数据集中,因变量是二进制的(1和0)。
例如,1(垃圾邮件)的比例为70%和0(非垃圾邮件)的为30%。
因此,我们可以估算出任何新的电子邮件有70%的概率被归类为垃圾邮件。
似然估计是在其他一些变量的给定的情况下,一个观测值被分类为1的概率。
例如,“FREE”这个词在以前的垃圾邮件使用的概率就是似然估计。
边际似然估计就是,“FREE”这个词在任何消息中使用的概率。
问7:你正在一个时间序列数据集上工作。
经理要求你建立一个高精度的模型。
你开始用决策树算法,因为你知道它在所有类型数据上的表现都不错。
后来,你尝试了时间序列回归模型,并得到了比决策树模型更高的精度。
这种情况会发生吗?为什么?答:众所周知,时间序列数据有线性关系。
另一方面,决策树算法是已知的检测非线性交互最好的算法。
为什么决策树没能提供好的预测的原因是它不能像回归模型一样做到对线性关系的那么好的映射。
因此,我们知道了如果我们有一个满足线性假设的数据集,一个线性回归模型能提供强大的预测。
问8:给你分配了一个新的项目,是关于帮助食品配送公司节省更多的钱。
问题是,公司的送餐队伍没办法准时送餐。
结果就是他们的客户很不高兴。
最后为了使客户高兴,他们只好以免餐费了事。
哪个机器学习算法能拯救他们?答:你的大脑里可能已经开始闪现各种机器学习的算法。
但是等等!这样的提问方式只是来测试你的机器学习基础。
这不是一个机器学习的问题,而是一个路径优化问题。
机器学习问题由三样东西组成:1.模式已经存在。
2.不能用数学方法解决(指数方程都不行)。
3.有相关的数据。
通过判断以上三个因素来决定机器学习是不是个用来解决特定问题的工具。
问9:你意识到你的模型受到低偏差和高方差问题的困扰。
应该使用哪种算法来解决问题呢?为什么?答:低偏差意味着模型的预测值接近实际值。
换句话说,该模型有足够的灵活性,以模仿训练数据的分布。
貌似很好,但是别忘了,一个灵活的模型没有泛化能力。
这意味着,当这个模型用在对一个未曾见过的数据集进行测试的时候,它会令人很失望。
在这种情况下,我们可以使用bagging算法(如随机森林),以解决高方差问题。
bagging算法把数据集分成重复随机取样形成的子集。
然后,这些样本利用单个学习算法生成一组模型。
接着,利用投票(分类)或平均(回归)把模型预测结合在一起。
另外,为了应对大方差,我们可以:1.使用正则化技术,惩罚更高的模型系数,从而降低了模型的复杂性。
2.使用可变重要性图表中的前n个特征。
可以用于当一个算法在数据集中的所有变量里很难寻找到有意义信号的时候。
问10:给你一个数据集。
该数据集包含很多变量,你知道其中一些是高度相关的。
经理要求你用PCA。
你会先去掉相关的变量吗?为什么?答:你可能会说不,但是这有可能是不对的。
丢弃相关变量会对PCA有实质性的影响,因为有相关变量的存在,由特定成分解释的方差被放大。
例如:在一个数据集有3个变量,其中有2个是相关的。
如果在该数据集上用PCA,第一主成分的方差会是与其不相关变量的差异的两倍。
此外,加入相关的变量使PCA错误地提高那些变量的重要性,这是有误导性的。
问11:花了几个小时后,现在你急于建一个高精度的模型。
结果,你建了5 个GBM (Gradient Boosted Models),想着boosting算法会显示魔力。
不幸的是,没有一个模型比基准模型表现得更好。
最后,你决定将这些模型结合到一起。
尽管众所周知,结合模型通常精度高,但你就很不幸运。
你到底错在哪里?答:据我们所知,组合的学习模型是基于合并弱的学习模型来创造一个强大的学习模型的想法。
但是,只有当各模型之间没有相关性的时候组合起来后才比较强大。
由于我们已经试了5个 GBM,但没有提高精度,表明这些模型是相关的。
具有相关性的模型的问题是,所有的模型提供相同的信息。
例如:如果模型1把User1122归类为 1,模型2和模型3很有可能会做有同样分类,即使它的实际值应该是0,因此,只有弱相关的模型结合起来才会表现更好。
问12:KNN和KMEANS聚类(kmeans clustering)有什么不同?答:不要被它们的名字里的“K”误导。
你应该知道,这两种算法之间的根本区别是,KMEANS本质上是无监督学习而KNN是监督学习。
KMEANS是聚类算法。
KNN是分类(或回归)算法。
KMEAN算法把一个数据集分割成簇,使得形成的簇是同构的,每个簇里的点相互靠近。
该算法试图维持这些簇之间有足够的可分离性。
由于无监督的性质,这些簇没有任何标签。
NN算法尝试基于其k(可以是任何数目)个周围邻居来对未标记的观察进行分类。
它也被称为懒惰学习法,因为它涉及最小的模型训练。
因此,它不用训练数据对未看见的数据集进行泛化。
问13:真阳性率和召回有什么关系?写出方程式。
答:真阳性率=召回。
是的,它们有相同的公式(TP / TP + FN)。
注意:要了解更多关于估值矩阵的知识。
问14:你建了一个多元回归模型。
你的模型R2为并不如你设想的好。
为了改进,你去掉截距项,模型R的平方从0.3变为0.8。
这是否可能?怎样才能达到这个结果?答:是的,这有可能。
我们需要了解截距项在回归模型里的意义。
截距项显示模型预测没有任何自变量,比如平均预测。
公式R² = 1 –∑(y – y´)²/∑(y – ymean)²中的y´是预测值。
当有截距项时,R²值评估的是你的模型基于均值模型的表现。
在没有截距项(ymean)时,当分母很大时,该模型就没有这样的估值效果了,∑(y – y´)²/∑(y – ymean)²式的值会变得比实际的小,而R2会比实际值大。
问15:在分析了你的模型后,经理告诉你,你的模型有多重共线性。
你会如何验证他说的是真的?在不丢失任何信息的情况下,你还能建立一个更好的模型吗?答:要检查多重共线性,我们可以创建一个相关矩阵,用以识别和除去那些具有75%以上相关性(决定阈值是主观的)的变量。