35、Kaggle:数据科学的多元发展路径

Kaggle:数据科学的多元发展路径

1. 开发者倡导者之路

在Kaggle竞赛中,有几种类型的帖子很有价值:
- 竞赛期间对要求的帮助和解释
- 感谢、赞扬和闲聊
- 帮助和指导其他参赛者,为他们解释问题的帖子

在最后一种类型的帖子中表现出色并获得广泛关注,有助于你成为开发者倡导者。尤其是当你还有其他与数据科学家同行互动的活跃渠道时,如Twitch或YouTube频道、Twitter账户或Medium博客。随着大型公司和初创企业中开发者倡导者角色的增加,对能够在项目中帮助其他数据科学家和开发者的专家需求很大。若想了解更多关于这个角色的信息,可查看 相关文章

2. 利用Kaggle数据集

Kaggle竞赛的数据常被批评为已经清理和整理好,与现实世界的数据相差甚远。但实际上,Kaggle竞赛中的数据也可能很杂乱或有噪声。有时,这些数据在质量和数量上不足以让你获得高分,你需要在互联网上寻找额外的数据。Kaggle在数据科学项目中缺失的是将数据收集和整理到有组织的存储库和文件中的过程,这在现实世界中因公司和问题而异,难以标准化,数据处理能力主要需在实践中学习。

Kaggle引入数据集的目的是改变人们认为它只关注建模问题的看法。Kaggle数据集很有用,它允许你创建和上传自己的数据,并记录特征及其值。同时,你需要规划更新或完全替换数据的频率,以管理数据。
Kaggle数据集的优势还包括:
- 可以附加使用Kaggle笔记本构建的不同分析和模型,这些模型可以是竞赛中的成果,也可以是对上传数据深入研究后得出的解决方案。
- 提供模板来检查数据元信息的完整性,如描述、标签、许可证、来源和更新频率等,这些信息有助于他人理解如何使用你的数据。
- 是展示你在Kaggle上解决问题的经验以及数据和机器学习算法能力的好方法,具体表现为:
- 发布和维护数据集
- 通过任务路线图展示你对数据价值的理解
- 展示从数据准备到解释性数据分析再到预测建模的完整工作解决方案

不过,使用Kaggle数据集也有缺点,你主要受限于笔记本环境,在其他环境中运行代码所需的包和版本要求并不透明。Kaggle笔记本依赖于由Dockerfile配置文件设置的Docker环境,浏览笔记本时,直到检查该配置文件才能知道使用的包版本。Dockerfile可在 Kaggle的GitHub仓库 中找到,但它会随时间变化,你需要跟踪自己工作中使用的版本。此外,查看数据集及其相关笔记本需要访问Kaggle社区。

3. 来自Gabriel Preda的经验分享

3.1 Kaggle对职业生涯的帮助

Gabriel Preda是Kaggle在数据集、笔记本和讨论方面的大师,也是Endava的首席数据科学家。他表示,Kaggle加速了他在数据科学领域的学习曲线。在使用Kaggle之前,他四处寻找信息来源和待解决的问题,但缺乏系统性和有效性。在Kaggle上,他找到了志同道合的社区,能够看到该领域顶级专家的工作,从他们发布的分析或模型笔记本中学习,获取见解、提问甚至与他们竞争。加入Kaggle约两年后,他从管理软件项目转向了全职数据科学工作。Kaggle也让他获得了一定的知名度,在面试候选人时,有人因为看到他在Kaggle上的工作而想加入公司。

3.2 将Kaggle成果用于求职

他将Kaggle作品集作为向潜在雇主展示的主要信息来源,他的LinkedIn资料指向了他的Kaggle资料。近年来,雇主对Kaggle的了解越来越多,有些会特别询问Kaggle资料。虽然也有雇主认为Kaggle不重要,但他认为Kaggle资料不仅能展示技术技能、语言和工具使用经验、解决问题的能力,还能体现通过讨论和笔记本进行沟通的能力,这对数据科学家来说非常重要。

3.3 成为Kaggle大师的历程

  • 笔记本大师之路 :他成为了第七位笔记本(内核)大师,最高排名第三。最初,他写内核主要是为了在分析感兴趣的数据集时提高对R语言的了解,还尝试了各种技术,如多边形裁剪、构建Voronoi多边形的对偶网格和二维Delaunay三角剖分。后来,他逐渐专注于探索性数据分析,然后为数据集和竞赛构建模型。随着竞赛参与度的增加,他开始用Python编写用于竞赛的内核。一些为探索活跃竞赛数据而写的内核吸引了大量关注,获得了很多金牌,使他达到了大师和特级大师级别。目前,他较少发布与竞赛相关的内核,主要为自己发布的数据集创建起始内核。
  • 讨论大师之路 :他从未预料到自己会在讨论方面达到大师级别。最初,他在他人的内核上发表评论。随着在竞赛中参与度的提高,他的大部分评论都在活跃竞赛的讨论区,包括询问感兴趣的话题、发起新话题、提出解决方案或提供资源集合。作为早期的内核大师,他经常为新Kagglers的优秀笔记本点赞,并给予积极反馈,以增强他们的信心。他还整理了一份在Kaggle上评论的建议列表:
    • 简短但不过于简短
    • 具体明确
    • 提供信息而非观点
    • 有机会时赞扬他人的工作
    • 保持冷静并乐于助人
    • 除非有必要,否则不要在评论中@他人
  • 数据集大师之路 :这是他达到的最后一个大师级别,也是排名最高的,达到了第二位。他的排名提升很慢,因为在数据集方面取得高知名度需要投入精力来整理、清理和记录数据。他专注于对自己和更广泛社区都重要的主题,如本国的选举、欧洲的社会、人口和经济话题。在疫情期间,他发布了关于COVID - 19病例、疫苗接种、检测和病毒变种的数据集。他还捕获了非简单数值和表格形式的数据,如Reddit帖子、评论和Twitter推文。他在自动化数据收集、清理和处理脚本方面投入了大量精力,这节省了时间并更好地控制了过程。每次发布新数据集时,他都会编写一个或多个起始内核,作为潜在用户的辅助内核,帮助他们更轻松地使用数据。

4. 拓展Kaggle之外的在线影响力

由于Kaggle数据集和笔记本需要Kaggle账户,并非所有人都有或愿意为了查看你的工作而创建账户,你需要考虑更易访问的替代方案。Kagglers常用的方式有:
- 使用GitHub项目
- 在Medium等平台撰写文章
- 在自己的博客上发布内容

此外,还有其他推广工作和技能的机会:
- 在 Deepnote 上发布可在浏览器中执行的与Kaggle竞赛相关的代码
- 建立Kagglers的Discord社区,如Abhishek Thakur的 MLSpace ,或运营YouTube频道,如Abhishek Thakur的 频道
- 开设Twitch频道,如Rob Mulla的 频道 ,展示与Kaggle竞赛相关的编码
- 发布Kaggle新闻的每周时事通讯,如Shotaro Ishihara的 时事通讯
- 采访Kagglers和其他数据科学专家并通过视频、播客和博客文章进行传播,如Sanyam Bhutani的 项目

5. 博客和出版物

写作是精炼知识和展示技能的好方法。在写作方面出名有助于你被招聘人员和公司发现,也能为Kaggle竞赛和职业发展建立人脉。社交媒体(LinkedIn、Twitter和Facebook)可用于发布想法和短文,但数据科学和Kaggle竞赛话题需要深入讨论,最好的方式是撰写长篇文章并通过博客或网站发布。理想情况下,你应协调社交媒体和文章的传播,以推广文章。

5.1 可发布文章的平台

5.1.1 Medium平台
  • Towards Data Science 链接 ,能获得大量关注,有良好的声誉,有编辑筛选文章以确保内容符合政策和质量标准。
  • Better Programming 链接
  • Mlearning.ai 链接
  • Becoming Human 链接
  • Towards AI 链接

这些平台的优势是已有大量受众,能让你的文章获得更多读者。

5.1.2 其他平台
平台名称 平台特点 适用内容 链接
Hacker Noon 受科技博主欢迎,内容广泛,每月有四百万受众 各类科技相关内容 https://www.publish.hackernoon.com/
Dev.to 主要受众为开发者,约八十万,以编码文章和教程为主 注重代码质量和有效性的内容 https://dev.to/
FreeCodeCamp 专注于教程,人们来此学习编码 适合推广机器学习课程和新包 https://www.freecodecamp.org/news/developer-news-style-guide/
Analytics Vidhya 在印度很受欢迎,围绕机器学习和深度学习基础构建文章 解释机器学习和深度学习基础的文章 https://www.analyticsvidhya.com/about/write/
KDnuggets 数据挖掘领域最古老的出版物之一,2021年3月有一百万独立访问者 数据挖掘相关内容 https://www.kdnuggets.com/news/submissions.html

每个平台都有优缺点和不同的受众,你需要根据内容选择合适的平台。你可以先浏览这些平台的文章,了解自己的写作如何适配。

5.2 使用自己的博客

使用自己的博客有优点,如无广告和编辑审查。但缺点是没有现成的受众,你需要通过社交媒体推广文章来吸引读者。你可以选择在自己选择的域名上从头搭建网站,也可以在GitHub上创建博客。如果需要更自动化的方式,可以使用Jeremy Howard的 fastpages ,它能自动将笔记本和Word文档转换为博客页面并发布。若想完全独立搭建网站,需要更多努力和费用,因为域名和网络空间不是免费的,此时自我推广内容就变得至关重要。如果你决定使用GitHub(免费且可能已用作代码仓库),可参考 创建GitHub博客文章的指南

通过以上多种方式,你可以在Kaggle及之外的平台充分展示自己的数据科学技能和成果,为职业发展打下坚实的基础。

graph LR
    A[Kaggle发展路径] --> B[开发者倡导者]
    A --> C[利用数据集]
    A --> D[拓展在线影响力]
    A --> E[博客和出版物]
    B --> B1[优质帖子表现]
    B --> B2[多渠道互动]
    C --> C1[数据特点]
    C --> C2[数据集优势]
    C --> C3[数据集缺点]
    D --> D1[Kaggle外平台]
    D --> D2[其他推广方式]
    E --> E1[写作价值]
    E --> E2[发布平台选择]
    E --> E3[自建博客]

6. 总结与建议

6.1 综合发展策略

在数据科学领域,要想全面提升自己的能力和影响力,需要综合运用Kaggle提供的各种资源和外部平台。以下是一些具体的策略建议:
- 积极参与竞赛与交流 :在Kaggle竞赛中,不仅要专注于取得好成绩,还要积极发布帮助和指导他人的帖子,这有助于成为开发者倡导者,拓展职业发展路径。同时,利用各种活跃渠道与其他数据科学家互动,如社交媒体、直播平台等,扩大自己的人脉圈子。
- 充分利用Kaggle数据集 :创建和维护自己的数据集,展示对数据价值的理解和处理能力。通过附加分析和模型,以及提供完整的元信息,让他人更好地使用你的数据。但要注意Kaggle笔记本环境的局限性,关注Dockerfile的版本变化。
- 拓展在线影响力 :除了Kaggle,利用GitHub、Medium等平台发布项目和文章,展示自己的技能和成果。还可以尝试其他推广方式,如创建Discord社区、运营YouTube或Twitch频道、发布时事通讯等,吸引更多的关注。
- 注重写作与分享 :通过写作精炼知识,选择合适的平台发布文章,如Medium的相关出版物或其他专业网站。也可以考虑自建博客,虽然需要更多的努力,但能获得更大的自主性。

6.2 操作步骤总结

为了帮助大家更好地实施上述策略,以下是一些具体的操作步骤:
1. 参与Kaggle竞赛与交流
- 选择感兴趣的竞赛,积极参与讨论,分享自己的见解和经验。
- 撰写有价值的帖子,帮助其他参赛者解决问题,争取获得更多的关注和认可。
- 利用社交媒体、论坛等渠道,与其他数据科学家建立联系,交流想法和项目。
2. 创建和管理Kaggle数据集
- 收集和整理有价值的数据,上传到Kaggle数据集。
- 详细记录数据的特征和元信息,确保他人能够理解和使用。
- 定期更新数据集,保持数据的时效性和准确性。
- 附加分析和模型,展示数据的应用价值。
3. 拓展在线影响力
- 在GitHub上创建项目仓库,上传自己的代码和数据集。
- 在Medium等平台撰写文章,分享自己的经验和见解。
- 考虑创建Discord社区、YouTube或Twitch频道,展示自己的技能和项目。
- 发布时事通讯,定期分享Kaggle相关的新闻和信息。
4. 写作与分享
- 选择合适的主题,进行深入的研究和分析。
- 根据主题选择合适的平台发布文章,注意文章的格式和风格。
- 利用社交媒体宣传自己的文章,吸引更多的读者。
- 定期更新博客或文章,保持读者的关注度。

6.3 不同平台对比

平台名称 优势 劣势 适用场景
Kaggle 专业的数据科学社区,有丰富的竞赛和数据集资源 受限于平台环境,部分功能不够灵活 竞赛参与、数据处理和交流
GitHub 代码托管和项目展示的理想平台,便于团队协作 对非技术人员不太友好 项目展示、代码分享和版本控制
Medium 有大量的读者和专业的出版物,能获得较高的曝光度 文章审核较为严格,自主性相对较低 知识分享、经验交流和品牌建设
自建博客 完全自主的内容发布平台,无广告和编辑审查 需要自己搭建和维护,吸引读者难度较大 深度内容分享、个性化展示

7. 案例分析

7.1 成功案例一:利用Kaggle数据集和博客实现职业转型

小张是一名数据科学爱好者,他在Kaggle上创建了多个高质量的数据集,并附加了详细的分析和模型。同时,他在Medium上撰写了一系列关于数据科学的文章,分享自己在Kaggle上的经验和见解。这些文章获得了大量的阅读和点赞,吸引了很多潜在雇主的关注。最终,小张凭借在Kaggle和Medium上的出色表现,成功从一名普通的程序员转型为数据科学家。

7.2 成功案例二:通过多平台推广提升影响力

小李是一位Kaggle竞赛的活跃参与者,他不仅在Kaggle上取得了不错的成绩,还利用GitHub展示自己的代码和项目,在YouTube上发布数据科学教程视频,在Twitter上与其他数据科学家互动。通过多平台的推广,小李的影响力不断扩大,成为了数据科学领域的知名博主。他的经验和见解得到了很多人的认可,也为他带来了更多的合作机会。

7.3 案例启示

从以上案例可以看出,综合利用Kaggle和外部平台,注重数据处理能力的展示和知识的分享,能够有效提升自己的职业竞争力和影响力。无论是职业转型还是提升知名度,都需要积极主动地参与和推广,不断学习和进步。

8. 未来展望

8.1 数据科学发展趋势

随着科技的不断进步,数据科学领域将迎来更多的机遇和挑战。未来,数据的规模和复杂性将不断增加,对数据处理和分析能力的要求也会越来越高。同时,人工智能、机器学习等技术的发展将为数据科学带来更多的创新应用。

8.2 Kaggle及相关平台的发展

Kaggle作为数据科学领域的重要平台,将不断完善和优化自身的功能和服务。可能会推出更多的竞赛类型和数据集,提供更强大的计算资源和工具。其他相关平台如GitHub、Medium等也将不断发展,为数据科学家提供更多的展示和交流机会。

8.3 个人发展建议

为了适应未来的数据科学发展趋势,个人需要不断学习和提升自己的能力。以下是一些建议:
- 持续学习新的技术和方法,关注行业动态和研究成果。
- 积极参与实践项目,积累经验,提高解决实际问题的能力。
- 拓展自己的知识面,了解相关领域的知识,如统计学、计算机科学等。
- 加强与其他数据科学家的交流和合作,共同推动数据科学的发展。

graph LR
    A[综合发展策略] --> B[参与竞赛与交流]
    A --> C[利用数据集]
    A --> D[拓展影响力]
    A --> E[写作与分享]
    B --> B1[选择竞赛]
    B --> B2[撰写帖子]
    B --> B3[建立联系]
    C --> C1[收集数据]
    C --> C2[整理信息]
    C --> C3[更新维护]
    D --> D1[GitHub项目]
    D --> D2[Medium文章]
    D --> D3[其他推广]
    E --> E1[选择主题]
    E --> E2[选择平台]
    E --> E3[宣传推广]

通过全面了解和运用Kaggle及相关平台的资源,不断提升自己的能力和影响力,相信你在数据科学领域将取得更好的成绩。希望以上内容对你有所帮助,祝你在数据科学的道路上一帆风顺!

智能交通灯设计是现代城市交通管理中的重要环节,利用STM32单片机进行智能交通灯控制能够提高交通效率,减少交通事故。STM32是一款基于ARM Cortex-M内核的微控制器,具有高性能、低功耗的特点,广泛应用于各种嵌入式系统设计。本项目将介绍如何使用STM32单片机配合Proteus仿真软件来实现智能交通灯系统的设计。 我们需要了解STM32的基本结构和工作原理。STM32家族包含了多种型号,它们拥有不同的内存大小、外设接口和性能等级。在这个项目中,我们可能使用的是STM32F10x系列,它具备GPIO、定时器、串行通信接口等丰富的外设资源,适合交通灯控制的需求。 智能交通灯系统通常由红绿黄三色灯组成,通过特定的时序来控制各个方向的车辆和行人通行。在设计时,我们需要考虑以下几个关键知识点: 1. **硬件接口设计**:STM32通过GPIO口连接到交通灯的LED驱动电路,设置GPIO的工作模式(如推挽输出或开漏输出),并根据交通规则控制LED灯的亮灭。 2. **定时器配置**:利用STM32的定时器功能设定交通灯各阶段的持续时间。可以使用定时器的中断功能,在特定时间点切换交通灯状态。 3. **程序逻辑**:编写C语言程序实现交通灯的逻辑控制。这包括初始化GPIO和定时器,设置交通灯状态的切换逻辑,并处理中断服务函数。 4. **Proteus仿真**:Proteus是一款强大的电子电路仿真软件,可以模拟硬件电路运行和程序执行。在这里,我们将STM32单片机模型和交通灯模型添加到仿真环境中,运行程序并观察交通灯的正确运行。 5. **调试与优化**:在Proteus中,可以通过查看虚拟示波器或逻辑分析仪来检查信号波形,帮助定位程序中的错误。通过反复调试,优化交通灯的控制算法,确保其符合实际交通需求。 6. **全套资料**:压缩包内的资料可能包括源代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值