首页 > 其他分享 >机器学习面试中常见问题整理

机器学习面试中常见问题整理

时间:2024-03-11 12:56:34浏览次数:26  
标签:常见问题 机器 模型 聚类 学习 面试 拟合 数据

机器学习(ML)作为目前一个比较火领域,提供了许多有趣且高薪的工作和机会。

无论你是刚刚踏入机器学习领域的新手,还是已经积累了一定经验的从业者,面试都是检验你技能和知识的重要环节。
本文将梳理一些常见的面试问题,让你在面试中更加自信从容。

1. 基础知识

想要从事机器学习工作,至少应该熟悉:

  • 数学基础:包括线性代数、微积分、优化、概率和统计等
  • 机器学习基础:准备数据、验证和改进训练结果、解释模型、识别和避免过度拟合等
  • 常用算法:比如线性回归、决策树、支持向量机、k 最近邻、神经网络、k 均值聚类、主成分分析等
  • 编程能力:需要一些 Python 等编程语言知识,以及使用机器学习库的能力(如 NumPy、Pandas、scikit-learn、Matplotlib、Tensorflow 等)等

2. 常见问题整理

接下来,整理了一些适合初学者和中级人员的一般问题,这些问题与任何特定的机器学习算法或方法无关。

通过掌握这些常见问题及其解答思路,不仅能更加深入地理解机器学习的核心概念,还能在面试中展现出你的专业素养和解决问题的能力。

2.1. 机器学习算法有哪些类型

机器学习算法主要分为三种类型:

  1. 监督学习:对给定输入数据(特征)和输出数据之间的数学依赖关系(映射)进行建模。

主要解决回归和分类问题,其中回归问题具有连续的数字输出,而分类则处理离散的、通常是分类的输出。

  1. 无监督学习:在不提供任何输出的情况下在输入数据中查找结构、规则和模式。

无监督学习方法有几类,例如聚类分析、关联规则学习、异常检测等。

  1. 强化学习:采取行动最大化奖励,并根据过去的经验不断学习和改进。

此外,还有半监督学习,它介于监督学习和无监督学习之间。

2.2. 什么是数据标准化和归一化

机器学习(ML)中数据集标准化之后,就可以比较不同单位的特征,这是许多 ML 方法(如支持向量机、神经网络、k 均值聚类、线性判别分析等)的要求。

标准化通常意味着对特征进行重新调整,使其均值为零,标准差为一。
在某些情况下,可以使用最小-最大标准化来代替,它重新调整特征,以便最小值映射到零,最大值映射到一,而所有其他值在零和一之间线性分布。

2.3. 什么是R2

R2 (决定系数)是一个数值,表示输入能够解释输出的程度。
一般用作拟合优度的度量,即回归问题中实际输出和预测输出的接近程度,此值越大越好,R2 = 1 表示完美拟合。

2.4. I类和II类错误是什么

I 类错误(假阳性错误)表示错误地拒绝了真实的原假设。
II 类错误(假阴性错误)是错误地接受错误的原假设。

2.5. 条件概率是什么

条件概率是在某些事件已经发生的情况下事件将发生的概率。
比如,在事件 F 发生的情况下,事件 E 发生的概率为:P(E|F) = P(EF) / P(F),其中** P(EF)** 是两个事件都发生的概率,而 P (F) 是 F 发生的概率。

2.6. 什么是训练、验证和测试数据集

训练集是数据集的一部分,用于训练模型,即拟合其参数;
验证集是超参数调整期间使用的数据集的另一部分;
测试集是数据集的第三部分,用于评估所选模型的性能。

数据集的这三个部分通常是独立的并且是随机选择的。

2.7. 什么是过拟合

当模型和现有数据匹配的太好时,通常会发生过度拟合。

过度拟合的模型通常在训练数据上表现良好,但在应用于看不见的数据(测试数据)时表现不佳。
复杂或灵活的模型更容易出现过度拟合。

2.8. 什么是降维

降维是一组减少机器学习模型特征(输入变量)数量的技术。
降维的主要方法有两种:

  1. 特征选择:选择最重要特征的子集
  2. 特征提取:用一组新的、更小的派生特征替换所有特征,以最大限度地减少冗余。

2.9. 内核技巧是什么

内核技巧与将数据映射到高维空间以使其明显可分离有关。
它避免计算该空间中数据点的新坐标,核技巧对于支持向量机和主成分分析很重要。

2.10. 梯度下降法是什么

梯度下降是一种快速、迭代、近似、基于梯度的优化方法,旨在找到函数的局部最小值。
它从起点沿最陡下降的方向迭代移动,使用函数的负梯度计算方向和步长。

如果函数是凸函数,则梯度下降搜索全局最小值。

2.11. 什么是聚类

聚类聚类分析是根据数据点(观测值)特征之间的相似性将数据点(观测值)分为两个或多个组(簇)的过程。

一些聚类方法包括 k 均值聚类、均值漂移聚类、层次聚类、谱聚类、亲和传播、DBSCAN 等。

2.12. 偏差-方差权衡是什么

偏差是模型预测的输出与实际输出之间的差异;
方差是不同训练集的模型预测变异性的度量。

简单的模型可能拟合不足,并且具有高偏差和低方差;
相反,复杂模型(具有许多参数)有时会出现低偏差和高方差的过度拟合。

我们想要的是偏差和方差的尽可能低的值,为了实现这一目标,我们必须找到适当复杂性的模型。

3. 最后

当然,工作面试不仅仅是询问和回答与领域相关的问题。
还应该关注一些工作面试中的一般建议,比如:

  1. 预先了解准备面试的公司
  2. 准备好介绍自己在该领域的经验、兴趣以及想要这份工作的原因
  3. 准备好介绍自己的优势和为什么适合该职位
  4. 着装和举止得体

标签:常见问题,机器,模型,聚类,学习,面试,拟合,数据
From: https://www.cnblogs.com/wang_yb/p/18065847

相关文章

  • 算法面试通关40讲 - 哈希表/映射
    1.两数之和#include<iostream>#include<unordered_map>usingnamespacestd;classSolution{public:vector<int>twoSum(vector<int>&nums,inttarget){vector<int>indices;unordered_map<int,decltype(nums.siz......
  • Amazon SageMaker 机器学习之旅的助推器
    授权声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在亚马逊云科技开发者社区,知乎,自媒体平台,第三方开发者媒体等亚马逊云科技官方渠道。一、前言在当今的数字化时代,人工智能和机器学习已经成为推动社会进步的重要引擎。亚马逊云科技在2023re:Invent全......
  • Java面试必考题之线程的生命周期,结合源码,透彻讲解!
    写在开头在前面的几篇博客里,我们学习了Java的多线程,包括线程的作用、创建方式、重要性等,那么今天我们就要正式踏入线程,去学习更加深层次的知识点了。第一个需要学的就是线程的生命周期,也可以将之理解为线程的几种状态,以及互相之间的切换,这几乎是Java多线程的面试必考题,每一年都......
  • 常见问题解决 --- 海康OpenAPI安全认证库的demo运行报错
    我要开发一个对接海康isc平台的oss的api,发现需要有海康登录库和ak、sk的配合才能完成。在海康官方下载OpenAPI安全认证库(JAVA)V1.1.11,解压后用idea打开demo发现一对报错。解决办法:1.修复基本的错误。比如包名报错,应该是  packagega; 2.修复maven依赖导入报错。首先是artem......
  • WordPress:常见问题及解决方案
    解决头像不显示问题默认头像效果:Gavatar的头像在国内不能正常访问,如图:设置:把以下php代码添加到模板函数funtions.php文件中if(!function_exists('get_cravatar_url')){/***把Gravatar头像服务替换为Cravatar*@paramstring$url*@return......
  • C++ 面试题 1
    C++面试题1.详细说说C/C++中malloc、free和new、delete的异同点在C和C++中,malloc和free以及new和delete是用于动态内存管理的两组函数/操作符。虽然它们的目的相似,但在使用方式和特性上有一些重要的区别。malloc和freemalloc和free是C语言的标准库函数,用于在堆上分配和释放内......
  • 运维必备Linux学习day1(建议收藏,运维面试100%会涉及)
    一.找回root密码找到以““Linux16”开头内容所在的行数”,在行的最后面输入:init=/bin/sh输完红色命令后Ctrl+X命令接下来在光标闪烁处,输入指令:mount-oremount,rw/(注意:各个单词间有空格)光标闪烁的位置中,输入passwd,输入一次密码并确认密码光标闪烁的位置中,touch/.auto......
  • 算法面试通关40讲 - 栈
    20.有效的括号std::stack<T>的几个方法:top:相当于backpop:相当于pop_backpush:相当于push_backclassSolution{public:staticcharleftOf(charc){switch(c){case')':return'(';case......
  • 如何理解计算机类论文、机器学习论文、人工智能AI论文中的“soft”和“hard”呢?
    如何理解计算机类论文、机器学习论文、人工智能AI论文中的“soft”和“hard”呢?最近在看论文中总看到带有“soft”和“hard”的专业术语(terminology),一般二者都是作为对比进行出现的,那么问题就是在英文的计算机类论文的表达中这个“soft”和“hard”的区别点是什么?其实这个答案......
  • 面试准备不充分,被Java守护线程干懵了,面试官主打一个东西没用但你得会
    写在开头面试官:小伙子请聊一聊Java中的精灵线程?我:什么?精灵线程?啥时候精灵线程?面试官:精灵线程没听过?那守护线程呢?我:守护线程知道,就是为普通线程服务的线程嘛。面试官:没了?守护线程的特点,怎么使用,需要注意啥,Java中经典的守护线程都有啥?我:不知道。。。这的天,面试一个10K的工作,......