面试要准备知识:
要求:
1.准备自己想从事的科研方向以及相关的知识和最新研究成果或前沿问题要有一定了解和关注(数据挖掘前沿知识、问题)
2.熟悉软件开发过程,掌握一种软件开发方法,软件工程相关知识一定要准备
面试准备科目:
重要性:毕业设计、研究方向、软件工程、离散数学、操作系统、数据结构、数据库、计算机组成原理、计算机网络、线性代数、高数、程序设计
1.对什么方向感兴趣?那个是干什么的?
数据挖掘:数据挖掘一般是指从大量的数据中通过算法搜索隐藏于其中信息的过程,包含了机器学习、统计学、数学等多个学科的知识。
数据挖掘三大常见的任务:
回归任务:回归任务是一种对连续型随机变量进行预测和建模的监督学习算法,使用案例包括房价预测、股票走势等。
分类任务:分类是一种对离散型变量建模或预测的监督学习算法,使用案例包括邮件过滤、金融欺诈等。
聚类任务:聚类是一种无监督学习,它是基于数据的内部结构寻找观察样本的自然族群(集群),使用案例包括新闻聚类、文章推荐等。
监督学习:数据集中每个样本都有相应的标签。
无监督学习:数据集中的样本没有相应的标签。
数据挖掘十大算法介绍:
K-Means算法:聚类算法,事先确定常数K,K代表着聚类类别数,首先随机选取K个初始点为质心,并通过计算每一个样本与质心之间的相似度(可以采用欧式距离),将样本点归到最相似的类中,接着重新计算每个类的质心(该类中所有点的平均值),重复这样的过程直到质心不再改变,最终就确定了每个样本所属的类别以及每个类的质心。优点:原理简单、容易实现,缺点:收敛太慢、算法复杂度高、需先确定K的个数、结果不一定是全局最优,只能保证局部最优。1.由于每次都要计算所有样本与每一个质心之间的相似度,故在大规模的数据集上,K-Means算法的收敛速度比较慢。改进收敛速度:第一次迭代正常进行,选取K个初始点为质心,然后计算所有节点到这些质心的距离,后续的迭代中,不再计算每个点到所有K个质心的距离,仅仅计算上一次迭代中离这个节点最近的某几个质心的距离,对于其他的质心,因为距离太远,归属到那些组的可能性非常小,所以不用再重复计算距离了。
逻辑回归:逻辑回归是一个使用逻辑函数将线性回归的结果归一化的分类模型,这里的归一化指将值约束在0和1之间。缺点:容易欠拟合,分类精度可能不高。
K-NN算法:K最邻近分类算法,每个样本都可以用它最接近的K个邻居中大多数样本所属的类别来代表,其中近邻距离的度量方法有余弦值,在实际中K值一般取一个比较小的数值,通常采用交叉验证法(就是利用一部分样本做训练集,一部分样本做测试集),通过观察K值不同时模型的分类效果来选取最优的K值。
数据挖掘流程:
1.问题定义:分类/回归/聚类
2.数据准备与数据预处理:数据清洗(清除错误异常样本),处理缺失值(样本缺失较少时,使用均值/众数填充), 数据转换。
3.特征工程:通过特征工程分析数据之间的联系、数据分布等。
4. 特征选择:特征选择可以基于模型的特征排序方法,模型学习的过程和特征选择的过程是同时进行的,利用xgboost模型训练完后可以输出特征的重要性,据此可以选择topN个特征从而达到特征选择的目的。特征选择目的:减少特征的数量、降低维度,是模型泛化能力(在训练集上训练得到的模型能够在多大程度上对新的实例预测出正确输出)更强,减少过拟合。
4.模型训练及评估
5.模型融合
软件工程:
1.什么是软件工程?
软件工程:将系统化、规范化、可度量的方法应用于软件的开发、运行和维护,也就是将工程化应用于软件。
2.需求分析:深入描述软件的功能和性能、确定软件设计的约束和软件同其他系统元素的接口细节,定义软件的其他有效需求。分析方法:面向数据流的结构化分析方法、面向对