㈠ nlp实习面试算法题不会能过嘛
不能过
nlp算法
人工智能算法大体上来说可以分类两类:基于统计的机器学习算法(MachineLearning)和深度学习算法(DeepLearning)
总的来说,在sklearn中机器学习
算法大概的分类如下:
1.纯算法类
(1).回归算法
(2).分类算法
(3).聚类算法
(4)降维算法
(5)概率图模型算法
(6)文本挖掘算法
(7)优化算法
(8)深度学习算法
2.建模方面
(1).模型优化
(2).数据预处理觉得有用点个赞吧
㈡ java面试中主要掌握的设计模式有哪些
java面试
设计模式主要分三个类型:创建型、结构型和行为型。
其中创建型有:
一、Singleton,单例模式:保证一个类只有一个实例,并提供一个访问它的全局访问点
二、Abstract Factory,抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们的具体类。
三、Factory Method,工厂方法:定义一个用于创建对象的接口,让子类决定实例化哪一个类,Factory Method使一个类的实例化延迟到了子类。
四、Builder,建造模式:将一个复杂对象的构建与他的表示相分离,使得同样的构建过程可以创建不同的表示。
五、Prototype,原型模式:用原型实例指定创建对象的种类,并且通过拷贝这些原型来创建新的对象。
行为型有:
六、Iterator,迭代器模式:提供一个方法顺序访问一个聚合对象的各个元素,而又不需要暴露该对象的内部表示。
七、Observer,观察者模式:定义对象间一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知自动更新。
八、Template Method,模板方法:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,TemplateMethod使得子类可以不改变一个算法的结构即可以重定义该算法得某些特定步骤。
九、Command,命令模式:将一个请求封装为一个对象,从而使你可以用不同的请求对客户进行参数化,对请求排队和记录请求日志,以及支持可撤销的操作。
十、State,状态模式:允许对象在其内部状态改变时改变他的行为。对象看起来似乎改变了他的类。
十一、Strategy,策略模式:定义一系列的算法,把他们一个个封装起来,并使他们可以互相替换,本模式使得算法可以独立于使用它们的客户。
十二、China of Responsibility,职责链模式:使多个对象都有机会处理请求,从而避免请求的送发者和接收者之间的
开发模式:
JAVA中的开发模式:
MVC是一个很常用的程序开发设计模式,M-Model(模型)
㈢ 游戏策划小白面试-经常被问到但很棘手的问题
策划常识:
1. 谈谈策划的情怀(主要从音乐、美术、电影、设计、美食、旅游方面)
2. 从盈利性和可玩性角度谈谈大型网络游戏(MOBA MMO)
3. 谈谈大逃杀、生存类游戏交互性
4. 你个人的游戏经历,并简要评价你玩过的3款游戏,之间的联系和区别
5. 你觉得游戏策划应该具备那些能力,你为此付出了什么
6. 游戏策划内部该如何协调工作
7. 从市场、策划、技术等角度谈谈中国游戏市场的看法
8. 说说金庸、梁羽生、古龙、黄易、刘慈欣等小说家风格的差异,简述你对武侠题材网络游戏的理解
9. 简述你对龙与地下城文化的了解如何在设计上减少
10. 论述网络游戏与外挂的关系,并简要说明外挂的产生
11. 针对某一款游戏,分析它的优缺点及改进方案
12.谈谈MMO类游戏中梦幻西游的世界观构建
13.说说RPG类 MMO类 MOBA游戏的套路
14 魔兽地图丛林肉搏移植到端游 手游 ,怎么解决
文案方面:
1.写一段关于中国风格时间跨度在100年以上的架空历史 (800字左右)
2.写一组五国关系,表现五国之间相互虎视眈眈却又相互顾忌的微妙关系 (800字左右)
3.写一段关于欧美风格架空世界的创世历史 (800字左右)
4. 写一首词表现战争过后的萧索景象
5. 写一段关于西方神话,一个与牧师相对的职业技能属性文案背景设计
数值方面:
1.关于十八般兵器,对于装备,分类问题你是怎么解决的
2.知道三件装备的爆率,求收集完一套的次数的数学期望(马克洛夫状态转移矩阵)
3.两军战斗,战斗力为m和n,战斗时直接碰撞的算法,求赢的一方的剩余人数(兰彻斯特作战模型)
4.谁喜欢吃什么打什么球和谁有什么关系,有7个人,推理出每个人的相关信息
关卡方面:
1. 设计一套游戏升级方案(升级点和时间,提示图案,奖励物品),并从玩家角度分析
事故方面:
1. 如果一个游戏是闭环经济,某个区域通货膨胀了 怎么解决
2. 如果游戏出了bug,当晚很多人刷了神装,我们怎么回档让玩家满意
培训方面:
1.关于工作中出现的问题,培训问题怎么解决
沟通方面:
1.对于程序和测试沟通很久都不能确定的棘手问题,你是怎么解决的
工作方面:
1.关于重点产品需要全员加班,你怎么解决
㈣ 面试时被问到缺点是什么这样回答让面试官对你刮目相看
小咩六月份大学毕业。现阶段最主要的事情就是找工作,面试。每一天,小咩不是正在面试,就是在去面试的路上。这次工作机会很不错,还是舅舅介绍的。小咩踌躇满志去面试。毕竟大小战场上过很多次,对于面试,小咩还是很自信的。
面试过程很顺利。最后面试官问一个问题:你有什么缺点?
诚实的小咩认真想想后,回答说:我有时候容易情绪化,不能很好控制自己的情绪。
面试官微微一笑,没有说话,然后结束了面试。
小咩回到家跟妈妈说面试的情况。没想到,妈妈听完她说自己的缺点,就数落她无知不懂事,怎么能说自己的缺点呢,说了缺点,哪个公司还敢要你啊。
小咩很委屈,难道不应该诚实吗?
有过面试经验的朋友都知道,面试时对方问你缺点是什么,还真是个很棘手的问题。像小咩这样真诚说出自己的缺点,面试官会怎么想呢?会不会因此失去工作机会。如果不说,或者说暂时没发现自己的缺点,面试官又会怎么想呢?毕竟金无足赤人无完人,怎么可能没有缺点。说也不是,不说也不是。有没有一种方法,既可以保持真诚,说出自己缺点,又能让面试官因此对你产生更佳的印象呢?
有。《故事力》这本书针对这个让人左右为难的问题给了一个两全其美的解决方案。
《故事力》里,作者认为故事力是一种思维能力。用故事思维去思考和沟通,在现代职场特别重要。书中总结了好故事的三大标准,六个要素。给出了六个人人都能用的故事模型。并介绍了在八个职场应用场景中,怎样用讲故事的思维转危为安。被面试官问到缺点就是其中一种。
这本书的作者是一对夫妻。高琳和林宏博。两位都拥有20多年的世界五百强企业的管理和咨询经验。都是工商管理博士。是清华和北大MBA的客座讲师。常年为上海大众,红杉资本等着名企业提供教练和咨询服务。
针对面试时被问到缺点这个问题。《故事力》给出的答案是“换框”。
“换框”本来是神经语言程序学的一个专业术语。我举个生活中的例子让大家更好理解。
平时,我们去公园或者游乐场玩时,会看到一些带框架的雕像放在公园里,供人们站在画框里照相。站在画框里,你会变成白雪公主或者小矮人等等。
喜剧演员宋丹丹有个经典小品《相亲》。女方来男方家相亲,因为家里穷,没有电视。村干部就急中生智,拿纸盒子画了一个电视框,自己站在框后面冒充电视播放。高度近视的女人竟然没发现。
这就是框架的作用。当有一个框架在面前时,人们会更加注意到框架里的事物,框架外的信息会被人自动“淘汰”掉。
《故事力》中说:
这种选择通常是潜意识的,由我们常年的思维习惯决定,所以这个框也叫“思维框架”
说个营销换框的案例。
开自助餐厅的老板,看到顾客浪费食物,非常心疼。就提出一条规定:凡是没有吃完盘中食物的顾客,罚款十元。结果生意一落千丈。
经高人指点后,他改了规定:凡是吃完盘中食物的顾客,奖励十元。结果顾客盈门,生意红火。
作为消费者,我们很容易掉进“价格”的框里,无论商家给出什么价位,我们都会觉得贵。已经形成了思维惯性。这是消费者关于价格的思维框架。现在又要罚款,就更不会去消费了。
奖励十块,就给消费者换了一个思维框架。由原来的失去变成得到。这是符合人性需求的。自然会开开心心去消费。
可以看出,换个思维框架,就是换一个思考问题的角度。同样的场景,会因为思维框架不一样,产生不一样的结果。
一般人的思维习惯是:缺点肯定是不光彩的事情,让对方知道不光彩的事情,就不会对自己有好的印象。让面试官产生了不好的印象,就可能失去一次工作机会。这是很严重的问题。所以小咩妈妈听到闺女直白地说出自己的缺点时很着急。
如果换个思维框架,由原来的看到缺点换成看到改正缺点的努力和过程。那么对面试者的印象也会随之改变。
“冲突——解决冲突——完美结局”的故事模型可以帮助听众把关注焦点转移到“解决问题”这个思维框架里。
操作步骤和模型中一样。第一步,讲一个暴露自己缺点的冲突故事。第二步,讲自己怎么努力改正缺点,第三步介绍缺点改正后的完美结局。
《故事力》中高琳博士这样讲自己的缺点。
2018年,我们的客服小姑娘离职了。我就跟HR说,咱们这次得招一个稳定一点儿,没什么野心的,最好能把我们的行政工作也做起来的人。于是HR写了一个招聘“行政大总管”的职位描述,发出去了。面试了两个之前做行政和客服的人之后,我跟HR说:“不行啊,她们怎么都没灵气呢,对市场一点也不了解。”
HR又费力地找了一通。我面试了两个之后又说:“我们好歹也算是个互联网创业公司,要做这个职位,怎么都得有点互联网运营的概念吧。”
HR的小姐姐就怒了:“招行政和客服,需要的条件是细致稳定有耐心’,做市场和运营需要的是“大胆创新有魄力”。这是完全相反的两种人!您能不能想清楚,您到底要招个什么人啊?这么看下去没完没了了。
我开始自我反思,我的“主意多”如果用在开动开发产品多样性方面,就能为公司提供各种可能性和丰富的资源,能为公司增值。可是如果用在需要做决策的具体事情上,就容易变成“朝令夕改”“摇摆不定”,会给执行的人带来困扰。
于是从那以后,每次我脑海中冒出来“哎,我有一个新想法”的时候,我会在脱口而出前问一问自己:这是“方案还是“决策”?如果是方案,是需要头脑风暴开脑洞的情况,我就让大家知道这就是个主意,他们可以反驳我。但如果是大家已经讨论过了,有过共识的“决策”,我就深吸ロ气再好想想,有必要推翻之前的决策吗?
从这个故事中,我们可以看到,高琳博士的缺点在和HR发生冲突中显现出来,通过自己反思解决了冲突,最后得出结论,这个主意多的缺点可以用在头脑风暴开脑洞时用,如果是已经做过的决策,就先深吸一口气,再想想,有没有必要推翻。
用故事模型给面试官“换框”,让对方由关注缺点转移到关注如何改正缺点,认为你是一个谦虚好学,凡事能够反求诸己,先从自己身上找原因的人。以此给自己面试赢得高分。
一个故事模型,完美解决面试被问到缺点这个让人左右为难的问题。
除了换框之外,面试者在回答这个问题时,还应该注意以下两点
一,诚实。
有些面试者为了绕开这个问题,会自作聪明。比如,“我最大的缺点就是追求完美。”或者“我有时候就是太努力了!”面试官也不是傻子,这样自作聪明的回答,会拉低自我形象,无论前面面试效果多么好,都有可能因为这个问题,导致面试失败。在职场,人品比技能更重要。
二,找一个不致命的,通过努力能够改进可控的缺点讲。
缺点可以讲,但不能随便乱讲。提醒两个容易“致命”的缺点。一个是职场通识方面的,比如严重的情绪问题。没有人喜欢情绪不稳定,又无法控制自己情绪的人。二是对应聘职位来说是致命的,比如你应聘会计岗位,你的缺点是对数字不敏感,那肯定不行。如果应聘编辑岗位,这个缺点就无伤大雅。
面试时被问到缺点,用“冲突——解决冲突——完美结局”这个故事模型讲缺点,可以让面试官对你刮目相看。但是,工具不是万能的。个人工作实力和诚信的人格魅力才是面试的致胜法宝。
㈤ 推荐一个讲故事的套路——STAR面试模型
STAR面试模型是企业招聘面试过程中常采用的技巧。具体含义为:
(1)S(Situation)背景:事情是在什么情况下发生?
(2)T(Task)任务:你是如何明确你的任务的?
(3)A(Action)行动:针对这样的情况分析,你采用了什么行动方式?
(4)R(Result)结果:结果怎样,在这样的情况下你学习到了什么?
简而言之,STAR法则就是一种讲述自己故事(项目任务)的方式,或者说是一个清晰、条理的思考模板。
既然提到STAR就不得不提SCQA。那什么是SCQA?
SCQA模型是由麦肯锡咨询顾问芭芭拉·明托在《金字塔原理》一书中提出的一个“结构化表达”工具。可以用来作为演讲的开场、撰写报告的序言、甚至是一封邮件的开头等。具体含义如下:
(1)S(Situation)背景:由大家都熟悉的情景、事实引入。
(2)C(Conflict)冲突:现实和理想情况出现差距。
(3)Q(Question)问题:我们该怎么办?
(4)A(Answer)答案:我们的解决方案。
STAR和SCQA都是讲故事的模板,那两者的应用场合有什么区别呢?
个人觉得,当需要重点介绍自己的工作内容时,可以用STAR模型,如做了哪些项目,具体负责哪些内容;而当需要重点介绍如何解决问题的时候,可以用SCQA模型,如解决了某个故障,或者重大课题。
㈥ WEB前端面试题
第二章 面试题基础篇
2.1 HTML面试题
面试题:行内元素有哪些?块级元素有哪些? 空(void)元素有那些?
面试题:页面导入样式时,使用link和@import有什么区别?
面试题:title与h1的区别、b与strong的区别、i与em的区别?
面试题:img标签的title和alt有什么区别?
面试题:png、jpg、gif 这些图片格式解释一下,分别什么时候用?
2.2 CSS面试题
面试题:css背景纹路
面试题:介绍一下CSS的盒子模型
面试题:CSS选择符有哪些?哪些属性可以继承?
面试题:CSS优先级算法如何计算?
面试题:用CSS画一个三角形
面试题:一个盒子不给宽度和高度如何水平垂直居中?
面试题:display有哪些值?说明他们的作用。
面试题:对BFC规范(块级格式化上下文:block formatting context)的理解?
面试题:清除浮动有哪些方式?
面试题:在网页中的应该使用奇数还是偶数的字体?为什么呢?
面试题:写一个左中右布局占满屏幕,其中左、右俩块固定宽200,中间自适应宽,要求先加载中间块,请写出结构及样式。
面试题:什么是CSS reset?
面试题:css sprite是什么,有什么优缺点
面试题:display: none;与visibility: hidden;的区别
面试题:position有哪些值?有什么作用? 【特别多公司问】
面试题:line-height和height有什么区别?
面试题:opacity 和 rgba区别
2.3 JavaScript基础面试题
面试题:延迟加载JS有哪些方式?
面试题:JS数据类型有哪些?
面试题:null和undefined的区别
面试题:JS数据类型考题
面试题:==和===有什么不同
面试题:JS微任务和宏任务
面试题:JS作用域考题
面试题:JS对象考题
面试题:JS作用域+this指向+原型 考题
面试题:JS判断变量是不是数组,你能写出哪些方法?
面试题:slice是干嘛的、splice是否会改变原数组
面试题:JS数组去重
面试题:找出多维数组最大值
面试题:给字符串新增方法实现功能
面试题:找出字符串出现最多次数的字符以及次数
2.4 真正移动端 —— H5/C3面试题
面试题:什么是语义化标签
面试题:::before 和 :after中双冒号和单冒号 有什么区别?解释一下这2个伪元素的作用。
面试题:如何关闭iOS键盘首字母自动大写
面试题:怎么让Chrome支持小于12px 的文字?
面试题:rem和em有什么样区别
面试题:ios系统中元素被触摸时产生的半透明灰色遮罩怎么去掉
面试题:webkit表单输入框placeholder的颜色值能改变吗?
面试题:禁止ios 长按时不触发系统的菜单,禁止ios&android长按时下载图片
面试题:禁止ios和android用户选中文字
面试题:自适应 [淘宝无线适配]
面试题:响应式
第三章 面试题进阶篇
3.1 JavaScript进阶面试题
面试题:new操作符具体做了什么
面试题:闭包 【必须会】
面试题:原型链 【必须会】
面试题: JS继承有哪些方式
面试题:说一下call、apply、bind区别
面试题:sort背后原理是什么?
面试题:深拷贝和浅拷贝
面试题:localstorage、sessionstorage、cookie的区别
3.2 ES6面试题
面试题:var、let、const区别
面试题:作用域考题
面试题:将下列对象进行合并
面试题:箭头函数和普通函数有什么区别?
面试题:Promise有几种状态
面试题:find和filter的区别 【大厂】
面试题:some和every的区别 【大厂】
3.3 webpack面试题
面试题:webpack插件
3.4 Git面试题
面试题:git常用命令
面试题:解决冲突
面试题:GitFlow
第四章 面试题框架篇
4.1 区分初中高级的 —— Vue面试题
面试题:Vue2.x 生命周期有哪些?
1.系统自带八个
2.当一旦进入到某个组件会执行哪些生命周期
3.$el和$data在哪个阶段有
4.如果使用keep-alive会多俩个生命周期
5.如果加入keep-alive第一次进入组件会执行哪些生命周期
6.如果加入keep-alive第二次或者第N进入该组件会执行哪些生命周期
面试题:谈谈你对keep-alive的了解
面试题:v-if和v-show区别
面试题:v-if和v-for优先级 2.x
面试题:ref是什么?
面试题:nextTick是什么?
面试题:Vue中如何做样式穿透
面试题:scoped原理
面试题:Vuex是单向数据流还是双向数据流?
面试题:讲一下MVVM
面试题:双向绑定原理
面试题:什么是虚拟DOM
面试题:key是干什么?
面试题:diff算法
面试题:Vue组件传值
面试题:props和data优先级谁高?
面试题:computed、methods、watch有什么区别?
面试题:Vuex
面试题:Vue路由
面试题:Vue项目打包后出现空白页
4.2 微信小程序面试题
面试题:如何自定义头部?
面试题:如何自定义底部?
4.3 uni-app面试题
面试题:生命周期
面试题:条件编译
第五章 面试题性能优化篇
㈦ 数据分析师—技术面试
数据分析师—技术面试
三月份开始找实习,到现在已经有半年的时间了,在这半年的时间中,该经历的基本上都已经经历,春招实习时候,拿到了7个offer,校招时候,成功的拿下一份心仪的工作,结束了我的秋招旅程。对于面试,技术层面即算法、软件等等,业务层面就是忽悠(毕竟没有做过完整的项目),但是也要有自己的逻辑和思考方式(这方面我也有很大的欠缺),下面将自己的面试经历梳理为技术层面和业务层面,来分享给大家。
技术面试
一、软件
1. R语言的文件读取:csv文件的读取方式(read.csv),txt文件的读取方式(read.table)
2. R语言中一些小函数的作用
①apply函数:1代表调用每一行的函数,0代表调用每一列的函数(注意其用法和Python的区别)
②runif函数:生成均匀分布的随机数
③sample(,return = TRUE):随机有放回的抽样
3. Python中list列表和元组的最大区别:元组的值不可以改变,但是列表的值是可以改变的。
4.数据库中表的连接方式
①内部连接:inner join
②外部连接:outer join
③左连接:left join
注:对于数据分析,建议大家无论是R,Python,sql都有自己一套流程化的体系,这一体系可以很好的帮助你解决实际中的问题。
二、算法
对于算法(分类,聚类,关联等),更是建议大家有一套流程化的体系,在面试算法的时候,是一个依次递进的过程,不要给自己挖坑,相反,更要将自己的优势发挥的淋漓尽致,把自己会的东西全部释放出来。
下面我将自己的所有面试串联起来,给大家分享一下,仅供参考。
面试官:小张同学,你好,看了你的简历,对相关算法还是略懂一些,下面开始我们的面试,有这么一个场景,在一个样本集中,其中有100个样本属于A,9900个样本属于B,我想用决策树算法来实现对AB样本进行区分,这时会遇到什么问题:
小张:欠拟合现象,因为在这个样本集中,AB样本属于严重失衡状态,在建立决策树算法的过程中,模型会更多的偏倚到B样本的性质,对A样本的性质训练较差,不能很好的反映样本集的特征。
面试官:看你决策树应该掌握的不错,你说一下自己对于决策树算法的理解?
小张:决策树算法,无论是哪种,其目的都是为了让模型的不确定性降低的越快越好,基于其评价指标的不同,主要是ID3算法,C4.5算法和CART算法,其中ID3算法的评价指标是信息增益,C4.5算法的评价指标是信息增益率,CART算法的评价指标是基尼系数。
面试官:信息增益,好的,这里面有一个信息论的概念,你应该知道的吧,叙述一下
小张:香农熵,随机变量不确定性的度量。利用ID3算法,每一次对决策树进行分叉选取属性的时候,我们会选取信息增益最高的属性来作为分裂属性,只有这样,决策树的不纯度才会降低的越快。
面试官:OK,你也知道,在决策树无限分叉的过程中,会出现一种现象,叫过拟合,和上面说过的欠拟合是不一样的,你说一下过拟合出现的原因以及我们用什么方法来防止过拟合的产生?
小张:对训练数据预测效果很好,但是测试数据预测效果较差,则称出现了过拟合现象。对于过拟合现象产生的原因,有以下几个方面,第一:在决策树构建的过程中,对决策树的生长没有进行合理的限制(剪枝);第二:在建模过程中使用了较多的输出变量,变量较多也容易产生过拟合;第三:样本中有一些噪声数据,噪声数据对决策树的构建的干扰很多,没有对噪声数据进行有效的剔除。对于过拟合现象的预防措施,有以下一些方法,第一:选择合理的参数进行剪枝,可以分为预剪枝后剪枝,我们一般用后剪枝的方法来做;第二:K-folds交叉验证,将训练集分为K份,然后进行K次的交叉验证,每次使用K-1份作为训练样本数据集,另外的一份作为测试集合;第三:减少特征,计算每一个特征和响应变量的相关性,常见的为皮尔逊相关系数,将相关性较小的变量剔除,当然还有一些其他的方法来进行特征筛选,比如基于决策树的特征筛选,通过正则化的方式来进行特征选取等。
面试官:你刚刚前面有提到预剪枝和后剪枝,当然预剪枝就是在决策树生成初期就已经设置了决策树的参数,后剪枝是在决策树完全建立之后再返回去对决策树进行剪枝,你能否说一下剪枝过程中可以参考的某些参数?
小张:剪枝分为预剪枝和后剪枝,参数有很多,在R和Python中都有专门的参数来进行设置,下面我以Python中的参数来进行叙述,max_depth(树的高度),min_samples_split(叶子结点的数目),max_leaf_nodes(最大叶子节点数),min_impurity_split(限制不纯度),当然R语言里面的rpart包也可以很好的处理这个问题。
面试官:对了,你刚刚还说到了用决策树来进行特征的筛选,现在我们就以ID3算法为例,来说一下决策树算法对特征的筛选?
小张:对于离散变量,计算每一个变量的信息增益,选择信息增益最大的属性来作为结点的分裂属性;对于连续变量,首先将变量的值进行升序排列,每对相邻值的中点作为可能的分离点,对于每一个划分,选择具有最小期望信息要求的点作为分裂点,来进行后续的决策数的分裂。
面试官:你刚刚还说到了正则化,确实可以对过拟合现象来进行很好的调整,基于你自己的理解,来说一下正则化?
小张:这一块的知识掌握的不是很好,我简单说一下自己对这一块的了解。以二维情况为例,在L1正则化中,惩罚项是绝对值之和,因此在坐标轴上会出现一个矩形,但是L2正则化的惩罚项是圆形,因此在L1正则化中增大了系数为0的机会,这样具有稀疏解的特性,在L2正则化中,由于系数为0的机率大大减小,因此不具有稀疏解的特性。但是L1没有选到的特性不代表不重要,因此L1和L2正则化要结合起来使用。
面试官:还可以吧!正则化就是在目标函数后面加上了惩罚项,你也可以将后面的惩罚项理解为范数。分类算法有很多,逻辑回归算法也是我们经常用到的算法,刚刚主要讨论的是决策树算法,现在我们简单聊一下不同分类算法之间的区别吧!讨论一下决策树算法和逻辑回归算法之间的区别?
小张:分为以下几个方面:第一,逻辑回归着眼于对整体数据的拟合,在整体结构上优于决策树;但是决策树采用分割的方法,深入到数据内部,对局部结构的分析是优于逻辑回归;第二,逻辑回归对线性问题把握较好,因此我们在建立分类算法的时候也是优先选择逻辑回归算法,决策树对非线性问题的把握较好;第三,从本质来考虑,决策树算法假设每一次决策边界都是和特征相互平行或垂直的,因此会将特征空间划分为矩形,因而决策树会产生复杂的方程式,这样会造成过拟合现象;逻辑回归只是一条平滑的边界曲线,不容易出现过拟合现象。
面试官: 下面呢我们来聊一下模型的评估,算法进行模型评估的过程中,常用的一些指标都有哪些,精度啊?召回率啊?ROC曲线啊?这些指标的具体含义是什么?
小张:精度(precision),精确性的度量,表示标记为正例的元组占实际为正例的比例;召回率(recall),完全性的度量,表示为实际为正例的元组被正确标记的比例;ROC 曲线的横坐标为假阳性,纵坐标为真阳性,值越大,表示分类效果越好。
(to be honest,这个问题第一次我跪了,虽然说是记忆一下肯定没问题,但是当时面试的那个时候大脑是一片空白)
面试官:聚类分析你懂得的吧!在我们一些分析中,它也是我们经常用到的一类算法,下面你介绍一下K-means算法吧!
小张:对于K-means算法,可以分为以下几个步骤:第一,从数据点中随机抽取K个数据点作为初始的聚类中心;第二:计算每个点到这K个中心点的距离,并把每个点分到距离其最近的中心中去;第三:求取各个类的均值,将这些均值作为新的类中心;第四:重复进行步骤二三过程,直至算法结束,算法结束有两种,一种是迭代的次数达到要求,一种是达到了某种精度。
后记
面试的水很深,在数据分析技术面的时候问到的东西当然远远不止这些,因此在我们的脑子里面一定要形成一个完整的体系,无论是对某一门编程语言,还是对数据挖掘算法,在工作中都需要形成你的闭环,在面试中更是需要你形成闭环,如何更完美的包装自己,自己好好总结吧!
附录
R语言数据处理体系:数据简单预处理个人总结
1、数据简单查看
⑴查看数据的维度:dim
⑵查看数据的属性:colnames
⑶查看数据类型:str
注:有一些算法,比如说组合算法,要求分类变量为因子型变量;层次聚类,要求是一个距离矩阵,可以通过str函数进行查看
⑷查看前几行数据:head
注:可以初步观察数据是不是有量纲的差异,会后续的分析做准备
⑸查看因子型变量的占比情况:table/prop.table
注:可以为后续数据抽样做准备,看是否产生类不平衡的问题
2、数据缺失值处理
⑴summary函数进行简单的查看
⑵利用mice和VIM包查看数据缺失值情况,代表性函数: md.pattern、aggr
⑶caret包中的preProcess函数,可以进行缺失值的插补工作,有knn、袋装、中位数方法
⑷missForest包中的missForest函数,可以用随机森林的方法进行插补
⑸可以用回归分析的方法完成缺失值插补工作
⑹如果样本量很多,缺失的数据很少,可以选择直接剔除的方法
3、数据异常值处理
⑴summary函数进行简单的查看,比如:最大值、最小值等
⑵boxplot函数绘制箱线图
4、数据抽样
⑴sample函数进行随机抽样
⑵caret包中的createDataPartition()函数对训练样本和测试样本进行等比例抽样
⑶caret包中的createFold函数根据某一个指标进行等比例抽样
⑷DMwR包中SMOTE函数可以解决处理不平衡分类问题
注:比如决策树算法中,如果样本严重不平衡,那么模型会出现欠拟合现象
5、变量的多重共线性处理
⑴结合业务,先删除那些和分析无关的指标
⑵corrgram包的corrgram函数查看相关系数矩阵
⑶caret包中的findCorrelation函数查看多重共线性
⑷如果相关性太大,可以考虑删除变量;如果变量比较重要,可以考虑主成分/因子分析进行降维处理
㈧ 为什么有的公司一直招聘面试,但就是不录用
遇到过这样的事情,是一个比较好一点的公司,很牛的行政岗,一直在招人,但这个岗位空缺了近一年,到现在也没招到人。而且是招了几个月,看准里面关于这个岗位的面试也都评价面试轻松、氛围待遇很好,但一拨一拨人来面试、笔试,却最终拒了所有人,不给发offer?这是为什么呢?帮忙分析一下其中可能的原因,谢谢。
这个问题比较常见,通常来说有以下几种情况,你可以对比一下你遇到的属于下列哪些或者接近于几种。
岗位真的在招聘,这个岗位的工作繁重乃至直属领导不好伺候,招聘来的人干不了几个月就受不了走人,连续走了好几任,只能继续补人。一般这种岗位就是坑,内部员工了解的都不太会考虑。
可以这么理解,这个岗位确实在招人,但是这个岗位不好做,新人还是其他跳槽招来的人很快就离职了,然后又招,从而这个岗位的人走马灯似的换了好几茬人了。这种情况下,没办法,为了项目进度之类的,还是得继续招聘。
挂羊头卖狗肉,就是打着招文员助理的名号,实则招销售。挂着行政岗实际是销售,销售人员流动率又大,缺口大,常年不断地招聘。因为若是直接以销售岗位来进行招聘,可能很多人不喜欢销售或者其他的一些原因,去进行面试的人比较少,所以以其他的岗位来进行招聘;比较常见的是岗位需求的是技术岗,其实是销售岗位,或者面试的时候人家说成技术销售之类的,这样或许求职者也会接受这样的职位邀约,从而求职成功,皆大欢喜。
企业通过这个招聘的借口想表达一个消息,比如这个岗位缺人,让上级领导知道其他员工工作量饱满而不是混日子。比如领导在暗示一些人可以走动走动得到这个岗位。或者想通过这件事传达出某些信息,这个信息可能不是为了招聘,可能只有小范围内部的员工才知道实情,不是真的招人,就是打打广告等等。
对很多公司的HR来说,在他们的KPI考核指标中都有很关键的一点就是人员稳定性和人员招聘指标的考核。于是一些HR为了完成招人的需求,他们就会定期的发一些招聘广告来收集一些简历,定期的邀请一些人来他们公司面试。
但是对这些公司来说,他们一般都是只邀请人过来走个过场,做做样子,或者从求职者那边得到当前求职市场状况,以及竞争对手情况,还有行业水平等,其实他们公司在那段时间是根本没有招人需求的。这样做或许对公司来说是有一些好处,但是对求职者来说,这可苦了那些从大老远过来面试的人。这时候你可以试想一下,你从大老远过来面试,你不仅需要自掏交通费,路途遥远你过来还要吃一顿饭,最后这么一折腾或许一天就过去了,最终公司给你回复一句:您的情况我们已经了解了,下来有需要我们会通知你。你还在真切等待对方给你的回复,也发邮件催了,但是或许他们永远都不会通知你。对此,当知道真相的你会不会感到很崩溃?
有时候公司想了解竞争对手情况或者同业情况,最好的办法就是放出相应的岗位,然后在面试候选人的时候提问,获取相应信息。
由于公司考虑业务扩张或者转型涉及新领域,对涉足新领域的行情不太了解,邀候选人来其实就是通过面试了解更好业内信息,探底,实际未必招人。
假招聘真收集情报。他们收到简历后只让竞争对手公司员工进入面试环节,面试时问题大多数敏感的,如你们公司销售额是多少?你的绩效考核有哪些?top客户情况等。可以发现面试官不停的在记录,这就是典型的搜集情报式招聘。很多公司的中低层员工不但没有保护雇主秘密的意识,甚至面试时为讨好面试官反而会和盘托出……
自己公司搞不定的模型算法框架等,那就假装高薪吸引大牛来面试顺便问问对方的解决方案。这种情况也是常见的一种,有些问题案例比较复杂,自己的人可能搞不懂,但是又不打算聘请一些技术牛人来解决,从而考虑用急招一些别的公司或者技术方面比较厉害的人来进行解决,尤其是高技术方面。等你将方案完美解决之后,人家的问题也就解决完成了。
其实还有一点需要注意的是,招聘之后迟迟不回复你信息,即你是否已经被人家录用,一些公司的流程比较费时间。
首先,从谈判技巧上来说,应该欲擒故纵。
就算再有意向,面试官如果表现的太过积极,不利于和求职者沟通后续的薪资待遇。
其次,对于意向人选的最终确定,往往不是一个人拍板。
至少是人资负责招聘的面试官和招聘部门的主管两个人交换意见,商量后才最终确定。除了考虑个人的胜任能力,可能还要考虑其他因素,如应聘者的性格、工作稳定性、期望薪资等,综合判断才能决定。
其三,要走公司的入职流程。
稍微大一点的公司,员工入职就应该有一个入职的流程,可能还需要更高阶的公司主管来签字同意之后,才能确定录用,这时人资部才可以通知应聘者。
求职者大多希望去应聘时一次搞定,行还是不行给个痛快话,但其实,在招聘企业来讲,这是一个系统工作,不必纠结“对方为什么不这么这么做”,你需要关注的重点是“我要怎么怎么做”!
综上,你遇到哪种情况呢,评论区留言聊一聊。