第24期 Datawhale 组队学习活动马上就要开始啦!
本次组队学习的内容为:
- 零基础入门语音识别(食物声音识别)
- Docker教程
- 数据挖掘实践(智慧海洋)
- 集成学习(中)
- 河北邀请赛(二手车价格预测)
大家可以根据我们的开源内容进行自学,也可以加入我们的组队学习一起来学。
开源内容:https://github.com/datawhalechina/team-learning-nlp/tree/master/FoodVoiceRecognition
比赛地址:https://tianchi.aliyun.com/competition/entrance/531887/introduction
本次新人赛是Datawhale与天池联合发起的0基础入门系列赛事 —— 零基础入门语音识别之食物声音识别。赛题以语音识别为背景,要求选手使用给定的音频数据集进行建模,并完成食物声音识别任务。为更好的引导大家入门,我们为本赛题定制了学习任务。通过对本方案的完整学习,可以帮助掌握数据分析基本技能。
- 贡献人员:黎佳佳、刘羽中、但扬杰、付文豪、陈安东、马琦钧、马晶敏、戴治旭
- 学习周期:10天
- 学习形式:理论+实践比赛
- 人群定位:希望了解语音识别方法以及对比赛感兴趣的人。
- 难度系数:中
- 组队、修改群昵称
- 熟悉打卡规则
- 理解赛题、下载数据集以及两条Baseline(本次学习教程以基于CNN的Baseline为主)
- 根据Baseline配置环境,也可以直接利用天池/Kaggle等环境运行
- 跑通并学习Baseline
- 赛题数据探索
- 音频相关知识点学习
- 学习多种音频数据特征
- 了解MFCC特征提取步骤
- 基于CNN的模型搭建、训练与验证
- 了解CNN原理
- 学习模型优化相关知识
- 自己尝试基于Baseline的模型进行优化或尝试其他模型以提升结果准确率
- 了解语音识别的基础背景知识
开源内容:https://github.com/datawhalechina/team-learning-program/tree/master/Docker
该目录用于存储Docker组队学习教程,该教程是与《docker从入门到实践》的合作项目,在经得作者同意的前提下,我们在原项目的基础上进行了整理与重构使得内容更适合与我们本期的Docker组队学习。
通过本次docker的组队学习,我们希望你能学到以下几个方面的能力:
- 了解什么是docker
- docker镜像是怎么构建的
- 如何运行一个docker容器
- docker之间的网络通信是怎么样的
- docker中的数据如何做持久化存储
- 如何通过docker compose管理自己的项目
- 如何将自己的个人项目打造成容器化部署的形式
祝你在docker的学习上一切顺利!
- 贡献人员:苏鹏、陈安东,于鸿飞,陈长沙,丁一超,乔石,刘雯静
- 学习周期:10天
- 学习形式:理论+练习
- 人群定位:对Docker感兴趣的人员
- 难度系数:中
- 组队、修改群昵称
- 熟悉打卡规则
- 了解docker基本情况
- 安装docker
- 熟悉什么是docker镜像,如何获取和构建镜像
- 学习操作容器,通过容器构建自己需要的服务
- 了解docker中数据如何做持久化存储以及docker中数据管理的常用方式
- 了解docker中不同容器是如何通信的
- 了解docker常见的一些网络模式以及一些进阶操作
- 熟悉如何通过docker compsoe管理项目
- 熟悉docker-compose.yml文件的常用书写方式
- 了解如何通过容器化的形式构建自己的项目
开源内容:https://github.com/datawhalechina/team-learning-data-mining/tree/master/wisdomOcean
该比赛是来源于2020数字中国创新大赛-数字政府赛道。
本赛题围绕“智慧海洋建设,赋能海上安全治理能力现代化”展开。而船舶避碰终端(AIS)、北斗定位终端等通信导航设备的应用,给海上交通和作业带来了极大便利,但同时存在设备信息使用不规范造成的巨大人身和财产损失,给海上安全治理带来了新的挑战。
本赛题基于船舶轨迹位置数据对海上目标进行智能识别和作业行为分析,要求选手通过分析渔船北斗设备位置数据,得出该船的生产作业行为,具体判断出是拖网作业、围网作业还是流刺网作业。同时,希望选手通过数据可视分析,挖掘更多海洋通信导航设备的应用价值。
基于赛题以上信息,我们对比赛top选手的代码进行了重新的梳理和整合以便于更适合我们本期的轨迹数据挖掘组队学习。
通过本次组队学习,我们希望你能获得以下能力:
1.掌握轨迹数据分析常用工具
2.掌握轨迹数据的分析能力。
3.通过轨迹数据的分析,学会去提取不同船舶作业类型所需要的不同特征信息。
4.掌握模型建立和模型融合等相关方法。
祝你在这次学习过程中玩得愉快~
- 贡献人员:李运佳、李万业、赵信达、张晋、刘羽中、王贺、肖明远
- 学习周期:12天
- 学习形式:理论+练习
- 人群定位:有一定数据分析基础,对数据挖掘特别是地理轨迹数据挖掘感兴趣的人员。
- 难度系数:中
- 组队、修改群昵称
- 熟悉打卡规则
- 了解和学习shapely和geopandas的基本功能,掌握用python中的这两个库实现几何对象之间的空间操作方法。
- 掌握folium和kepler.gl的数据可视化工具的使用。
- 学习与掌握geohash编码方法。
-
学习如何对AIS数据集整体概况进行分析,掌握船舶轨迹数据集的基本情况(缺失值、异常值)
-
学习了解数据变量之间的相互关系、变量与预测值之间的存在关系。
-
学习特征工程的基本概念
-
学习top选手代码的轨迹数据特征工程构造方法,掌握针对轨迹数据实现构建有意义的特征工程
-
学习如何选择合适的模型以及如何通过模型来进行特征选择
-
掌握随机森林、lightGBM、Xgboost模型的使用。
-
掌握贝叶斯优化方法的具体使用
- 学习不同融合策略
开源内容:https://github.com/datawhalechina/team-learning-data-mining/tree/master/EnsembleLearning
- 贡献人员:李祖贤、薛传雨、赵可、杨毅远、陈琰钰、李嘉骐
- 学习周期:12天
- 学习形式:理论学习 + 练习
- 组队学习说明:上期学习大家系统了解了机器学习的经典的算法数学推导和代码调用,本期我们将进行bagging/boosting等基本集成方法以及常见的集成方法组合的学习。我们依然对于每个算法都进行了细致的理论分析以及必要的代码演示,希望大家的理论知识水平和代码实践能力两个方面都能够获得均衡的提高。在案例的代码中,我们给出了详细的代码注释,尽量让学习者们不会因为看不懂代码而感到烦恼。
- 人群定位:已完成机器学习(上)课程内容的学习,具备《高等数学》、《线性代数》、《概率论与数理统计》基础,了解机器学习经典模型的理论知识,能够调用相应模型库解决的学习者。
- 每个任务完成大概所需时间:3-5h
- 任务路线:掌握基本的模型集成方法和常见组合集成模型的理论及模型调用调参
- 难度系数:中
本次课程是由Datawhale集成学习小组内部成员共同完成,是针对机器学习小白的一入门课程。学习本课程需要学习者具备《高等数学》、《线性代数》、《概率论与数理统计》基础,会使用常见的数据分析工具(Numpy,Pandas、matplotlib)。
本次课程内容的设计参考了B站很火的《白板推导》系列、李航老师的《统计学习方法》、机器学习入门圣经的《统计学习导论》以及大量的技术博客,详细地介绍了机器学习领域中最经典的算法并给出了相应的数学推导和代码,对于每个算法都进行了细致的分析以及必要的代码的演示,便于学习者深刻理解机器学习算法的本质。除此之外,每个算法都要求学习者自行查阅sklearn官方文档的相应参数,帮助学习者构建理论与实际相结合的学习框架。在这些案例的代码中,我们给出了详细的代码注释,尽量让学习者们不会因为看不懂代码而感到烦恼。
- 组队、修改群昵称
- 熟悉打卡规则
投票法是集成学习中常用的技巧,可以帮助我们提高模型的泛化能力,减少模型的错误率。它的数学原理相对简单,算法实现相对容易且快速。主要需要掌握回归预测、硬投票软投票等思路。
Bagging不仅仅集成模型最后的预测结果,同时采用一 定策略来影响基模型训练,保证基模型可以服从一定的假设。Bagging的核心在于自助采样(bootstrap)这一概念,即有放回的从数据集中进行采样。
Boosting是与Bagging截然不同的思想,Boosting方法是使用同一组数据集进行反复学习,得到一系列简单模型,然后组合这些模型构成一个预测性能十分强大的机器学习模型。显然,Boosting思想提高最终的预测效果是通过不断减少偏差的形式,与Bagging有着本质的不同。
GBDT是回归树而不是分类树,它使用加法模型+前向分步算法的框架实现回归问题。和AdaBoost的主要区别就在于AdaBoost是在每一次迭代中修改样本权重来使得后一次的树模型更加关注被分错的样本,而GBDT则是后一次树模型直接去拟合残差。
XGBoost是一个优化的分布式梯度增强库。它是陈天奇等人开发的一个开源机器学习项目,高效地实现了GBDT算法并进行了算法和工程上的许多改进,被广泛应用在Kaggle竞赛及其他许多机器学习竞赛中。近年机器学习方面的竞赛高分思路,绝大部分都使用了xgboost以及它的优化改进模型。
开源内容:https://github.com/datawhalechina/team-learning-data-mining/tree/master/SecondHandCarPriceForecast
数据挖掘实践(二手车价格预测)的内容来自 Datawhale与天池联合发起的 零基础入门数据挖掘 - 二手车交易价格预测 学习赛的第一场。
- 贡献人员:王茂霖、王瑞楠、田杨军、谢文昕、韩可航、薛传雨、车弘书、陈泽
- 学习周期:14天,每天平均花费时间3小时-5小时不等,根据个人学习接受能力强弱有所浮动。
- 学习形式:理论学习 + 练习
- 人群定位:有一定数据分析与python编程的基础。
- 对应比赛:河北邀请赛(二手车价格预测)
- 先修内容:
- 组队、修改群昵称
- 熟悉打卡规则
理解赛题数据和目标,清楚评分体系。 本部分的内容主要包括完成相应报名,下载数据和结果提交打卡(可提交示例结果),熟悉比赛流程,了解数据挖掘的常用评估指标,了解赛题。
- 1.1 赛题概况
- 1.2 数据概况
- 1.3 预测指标
- 1.4 分析赛题
- 1.5 代码示例
EDA的价值主要在于熟悉数据集,了解数据集,对数据集进行验证来确定所获得数据集可以用于接下来的机器学习或者深度学习使用,是数据科学从业者进行数据处理以及特征工程的前提,使数据集的结构和特征集让接下来的预测问题更加可靠。 本部分内容通过各项数据挖掘的数据分析和特征之间关联性分析方法,介绍常用的数据可视化分析方法。
- 2.1 总览数据概况
- 2.2 判断数据缺失和异常
- 2.3 了解预测值的分布
- 2.4 特征分为类别特征和数字特征
- 2.5 数字特征分析
- 2.6 类别特征分析
特征工程是对于特征进行进一步分析,是将原始数据转化成更好的表达问题本质的特征的过程,使得将这些特征运用到预测模型中能提高对不可见数据的模型预测精度。 本部分内容介绍了常用的特征工程部分的方法,主要分为:特征构造和特征筛选两部分。
- 3.1 特征构造
- 3.2 特征筛选
- 3.3 降维
建模调参是数据挖掘中的重要内容,由于模型的参数往往决定着模型的复杂度,所以模型的建立和调参决定了最终的结果。 本部分内容介绍了常用的机器学习模型,并讲解了机器学习模型的建模与调参流程。
- 4.1 常用机器学习模型
- 线性回归模型
- 决策树模型
- GBDT模型
- XGBoost模型
- LightGBM模型
- 4.2 线性回归 & 五折交叉验证 & 模拟真实业务情况
- 4.3 多种模型对比
- 4.4 模型调参
模型融合是融合不同模型的预测结果,往往是把强分类器进行强强联合,变得更强。但也不是说随意的融合就能达到好的效果。进行融合时,所需的集成个体(就是用来集成的模型)应该好而不同。 本部分内容介绍了多种模型融合方法。
- 5.1 加权融合
- 5.2 boosting/bagging
- 5.3 stacking/blending
- 注册 CSDN、Github 或 B站等账户。
- 按照任务安排进行学习,完成后写学习笔记Blog 或 进行视频直播。
- 在每次任务截止之前在群内填写问卷打卡,遇到问题在群内讨论。
- 未按时打卡的同学视为自动放弃,被抱出学习群。
有关Datawhale组队学习的开源内容如下:
本次组队学习的 PDF 文档可到Datawhale的知识星球下载: