机器学习笔记 - Kaggle大师Janio Martinez Bachmann的故事

        当我必须在一个人旁边编码时,我往往会感到紧张

        Janio Martinez Bachmann的一生可以用一句话来概括:“妈妈嗬嗬嗬,哇哇哇!” 业余时间喜欢在任天堂上玩马里奥的 Kaggle 大师,在 Voodoo.io 担任数据分析师。Janio 来自多米尼加共和国,拥有加拿大亨伯学院的财务规划研究生学位。

        在接受 Analytics India Magazine 的独家采访时,这位金融分析师转为数据分析师分享了他成为Kaggle 大师的故事。

        您对算法的迷恋是如何开始的?

        Janio Martinez Bachmann:

        我的大部分经验来自金融行业。我曾经在多米尼加共和国的信用局工作。我的日常任务高度依赖 Excel 等工具。虽然我确实喜欢我的工作,但我总是问自己是否有更好的方法来更有效地完成这些重复性任务。因此,我开始深入研究 Python 等编程语言的主题,并买了一本书——Aurelien Geron的用 Scikit-Learn 和 Tensorflow 进行机器学习——这改变了我对算法和数据科学的看法。

        这本书教会了我不同的算法是如何工作的,例如线性回归、决策树、无监督模型(聚类)等等。当我开始阅读这本书时,数据科学并没有那么大肆宣传。我不确定自己在做什么。然而,我喜欢不同模型如何工作的机制以及如何通过使用它们来解决业务问题——这让我着迷。

        最初的挑战是什么,你是如何解决的?

        Janio Martinez Bachmann:

        我必须诚实。我在高中和大学都不是数学大师。我遇到的最艰巨的挑战之一是了解模型的工作原理。感觉就像进入一个没有灯泡的黑屋子。

        然而,我对不同算法的好奇心促使我了解这些黑盒算法是如何运作的。所以,我开始关注许多 Youtube 频道;Joshua Starmer是我的最爱之一。

        我记得做过一个关于DNN(深度神经网络)如何得出特定输出的练习。我必须通过实施在互联网上学到的微积分概念在纸上进行前向和后向传播。

        如果你现在问我如何应对这些挑战,我唯一的回答是,“只是好奇!”。

        你不需要拥有博士学位就能知道所有这些事情。好奇心足够好。我对初学者的建议是享受旅程,不要被所有术语吓倒;所有这些概念都可以从互联网上学习。

        编码最让你兴奋的是什么?

​        Janio Martinez Bachmann:我最喜欢编码的地方是你有无限的可能性来完成你的工作。作为一名数据分析师,我经常面临着寻找洞察力的挑战,这些洞察力将使我的雇主能够利用市场中的机会。但是,在处理大量数据时,我如何提供洞​​察力?编码和开源包的美丽在这里发挥了作用。编码能力就像拥有超能力!当您知道如何使用不同的工具进行编码时,如何解决问题的可能性是无穷无尽的!这就是我最喜欢编码的地方——它带来的创造力和解决日常问题的效率。

​        你是如何进入这个区域的?

        Janio Martinez Bachmann:信不信由你,我在进入该区域时遇到了很多困难。如今,分心来自各个方面,很难不分心。但是,当您需要注意细节时(编码时很常见),保持专注的心态至关重要。那么,我的日常生活是什么样的呢?

        首先,我将手机藏在远离办公桌的地方以进入该区域。我为什么要这样做?我的手机是我分心的主要来源,因为我倾向于从那里不断收到通知,而且我离手机越近,我就越想看看那个通知是什么。因此,为了避免这种诱惑,我通常将手机放在办公桌上难以触及的地方。

        我是一只早起的鸟。我做的第一件事就是准备我的日常任务清单。这让你对白天应该完成的事情有更好的看法,让你有更好的方向感。对我来说,没有什么比在不知道自己会做什么的情况下开始新的一天更糟糕的了。我会感到完全失落。一旦我准备好我的任务清单,我就会觉得我在白天有一种使命感。我的日常任务清单将是进入专注模式之前的第一步。

        您的机器学习工具是什么样的?

        Janio Martinez Bachmann:我最常用的工具包括:

        SQL(结构化查询语言):我主要使用它直接从数据库中提取所有必要的数据。在这里,我执行必要的转换,以便在之后分析或通过 BI 工具显示该信息。
Tableau:谈到 BI 工具,这是我目前用来向利益相关者展示所有必要见解的仪表板。还有其他平台,如 PowerBI、Looker、QlikView 等。

        R & Rstudio:我主要使用 R 来执行统计分析和 A/B 测试过程,但还有其他功能,例如数据转换、可视化等等。

        Python:我倾向于使用 Python 来自动化往往是重复的过程。

        Shiny Web Apps:我将它们用作一种仪表板。唯一的区别是它更灵活地将机器学习模型集成到 Web 应用程序中。

        DBT(数据构建工具):这是我目前正在学习的最新工具,但这将改变游戏规则,我会说在可预见的将来它是必须学习的。它是一个使用软件工程原理来转换、测试和记录所有表格的工具。我目前将此工具与 Redshift 一起使用。

        Git:这是一个任何人最终都需要学习的工具,因为在大多数组织中,您需要与您的代码协作。通过了解 Git 命令,您将能够使用 Github、GitLab、Bitbucket 和更多协作工具。

        如何为第一次黑客马拉松做准备?

        Janio Martinez Bachmann

        在我参加的黑客马拉松中,我主要使用 Python 来解决问题。所以,我的建议是从那里开始,因为它是我在黑客马拉松中看到的最常用的语言。但是,在机器学习库方面,我建议学习 Pandas、Matplotlib 和 Scikit-Learn 的基础知识以及循环等概念,以便在操作数据时具有更大的灵活性。

        你对黑客马拉松最大的不满是什么?

        Janio Martinez Bachmann:老实说,当我第一次参加黑客马拉松时,我面临的主要挑战之一就是与他人合作。这并不是说我不喜欢与他人合作。当我必须在一个人旁边编码时,我往往会感到紧张。当您必须显示代码或在屏幕上工作时,您是否曾经昏迷过?好吧,这样的事情在我的第一次黑客马拉松中发生在我身上。

我担心其他更有经验的程序员会如何看待我的技能。

        但是,我们应该记住,我们都不是天生的编码员。所以,我的建议是,不要害怕参加黑客马拉松。将此视为向该领域更有经验的人学习的机会。

        作为程序员,你最糟糕的经历是什么?

        Janio Martinez Bachmann:作为一名分析师,我经常与其他利益相关者互动,以可视化这些利益相关者的需求。作为一名分析师,最糟糕的经历之一就是你要与一个向你提出要求但完全不知道他们想要什么的利益相关者打交道。在工作环境中,这可能会令人沮丧,因为您觉得您必须以某种方式猜测那个人想要什么。幸运的是,有一些技术可以处理这些情况,我建议实施的一种方法是不断提问。通过提问,您将能够定义问题,这将允许您详细说明如何解决特定问题或请求。

        我有过的另一个不太好的经历是,当我为大量利益相关者精心设计一个项目时,只有少数人使用它们。这一直令人沮丧和沮丧,因为一些利益相关者可能会在紧迫感下要求一些事情,让你觉得利益相关者需要这个。然而,只有少数人发现最终项目在完成后很有用。这在我身上发生过几次,尤其是在制作仪表板时。为了解决这个问题,我会回去问问题!最重要的是,询问这个项目是否必要以及它将如何影响组织。

        是什么吸引你加入 Kaggle?到目前为止,您的旅程怎么样?

        Janio Martinez Bachmann:当我开始阅读 Aurelien Geron 的“使用 Scikit-Learn 和 TensorFlow 进行机器学习实践”时,我听说了 Kaggle。前几页提到了Kaggle 。我很好奇这个网站是什么,当我第一次看到它时,我就被它迷住了!为什么?作为编码的初学者,这个平台非常适合应用我从阅读书籍中学到的理论。没有什么比在探索一些数据集并从特定表中获取故事的同时学习编码更好的了。

        数据讲故事部分是驱使我去 Kaggle 的原因之一,最重要的是,这里有一个很棒的社区可以帮助你。从有才华的人的笔记本中学习使我能够提高我的编码技能并学习不同的机器学习概念。至于我的旅程,我不得不说这很艰难,但很值得。我最近离开了 Kaggle,主要是因为我现在的工作。但我计划为 Kaggle 做出贡献以帮助社区。

        你的第一次 Kaggle 比赛是什么样的?

        Janio Martinez Bachmann:据我所知,我参加的第一个比赛是预测房价。这是一场有趣的比赛,因为这是我第一次听说特征工程(主要是一个我们提取有洞察力的特征以增强我们预测模型的预测能力的概念)。此外,这次比赛让我学习了以前从未听说过的有趣的高级线性回归概念。尽管如此,你可以猜到我在这场比赛中表现不佳,因为这是我的第一次比赛。但我学到了很多,这才是最重要的!所以不要害怕参加比赛;他们可以很有趣!

        成为 Kaggle 大师是什么感觉?

        Janio Martinez Bachmann:我当时很震惊。记得 2021 年 3 月我在多米尼加共和国度假,当时躺在沙滩上,收到了 Kaggle 的通知,我成为了 Kaggle 大师。我简直不敢相信,但我同时为此感到高兴!经过四年的努力,我成为了Kaggle 大师。这并不意味着您需要等待四年才能成为其中一员。我已经看到其他 Kagglers 在两年内成为了大师。尽管如此,当我收到来自 Kaggle 的消息时,我还是欣喜若狂!

        在 Kaggle 比赛中胜出的技巧。

        创建内容:当我说创建内容时,我的意思是探索只有少数人探索过并且您可能认为对社区有吸引力的数据集。当我在处理不平衡分类时探讨了一个有趣的话题时,我可以举一个例子。那时,这个话题在 Kaggle 中并没有“发生”,所以我决定借此机会创建一个围绕“信用欺诈 || 处理不平衡的数据集”。我花了三个月的时间来创建这个笔记本,但它是值得的,目前,它有近 4k 的点赞。

        参与讨论:如果你想在 Kaggle 社区推广你的品牌,我建议你参与讨论部分,主要有两个原因。您将通过许多讨论主题了解其他 Kaggler,并在所有这些讨论中与他们一起学习。这是让自己在社区中广为人知的好方法。

        尊重社区:当我这样说时,请尽量在整个社区中表现得合乎道德。我看到一些不道德的行为在不同的笔记本上推广你的笔记本,以便人们喜欢你的。但是,我建议您不要这样做,即使您可能很想这样做。一,当有人直接要求这样做时,其他用户不会喜欢它,二,这样做可能看起来有点不专业,这会破坏你的声誉。这就是为什么创建内容很重要,但最重要的是,享受旅程!不管你是宗师还是大师;重要的是,您在 Kaggle 等引人入胜的社区中学习了许多有趣的主题!要有耐心!

猜你喜欢

转载自blog.csdn.net/bashendixie5/article/details/125216702