怎么做数据挖掘,数据挖掘需要什么基础设施,怎么做数据挖掘,数据挖掘需要什么基础资料
首先介绍一下我的背景。我正在学习美国前30名统计,我计划在哥伦比亚大学攻读数据科学硕士学位。大二的时候,我决定向人工智能领域发展,开始了我的大数据学习之旅。
随着近年来人工智能行业的兴起,数据挖掘、编程等领域逐渐成为高薪行业的代名词。越来越多的人开始关注大数据处理。在正式介绍学习方法等晾衣架之前,我们需要了解大数据和数据挖掘的关系。简单来说,大数据是很多数据的集合,而数据挖掘,data mining是并行使用人工智能、机器学习、统计学和数据库的交集,在相对较大的数据集上发现模式的计算过程。这个领域有很多AI、深度学习、机器学习的知识点,学起来难度很大。
接下来,从基础、理论和实践三个部分详细阐述了数据挖掘的研究。我相信你可以通过我的介绍快速入门。
一.学前基金会
如果不引入它的前提条件,数据挖掘可能会很可怕。对于大多数人来说,这个领域并不需要你是职业数学家或者高级程序员才能学习,但是你需要掌握这些领域的核心技能。关于学前基础,大致可以分为三类。
线性代数与微积分原算法的研究需要线性代数与多元微积分的规则基础,尤其是导数、链、积。这部分涉及到很多大学的高中课程。作为这些数值运算的英文定义和名称的补充,你也可以通过YouTube找到国外很多大学的公开课,比如《线性代数的本质——YouTube》。
理解统计学,尤其是贝叶斯概率,对于许多数据挖掘算法是必不可少的。无论是自然语言处理还是数据挖掘,最重要的是了解基础知识。这里的基础知识,我指的是对概率、线性代数等浅显概念的理解。概率论与统计导论——不确定性科学在我使用时是一个很好的资源。
Python编程可以说是数据挖掘的一大基础。不编程是学不到数据挖掘的。如果说之前的数学知识是基础的话,Python和R就像是未来战斗需要的武器。我个人学习的时候主要用R语言,但是用Datacamp学习真的很方便。我推荐Python适合初学者。操作简单熟练。关于编程部分,我们建议你花几个月时间同时学习Python代码和不同的数据挖掘概念。因为后面经常同时需要。在学习Python代码的同时,可以练习Jupyter、Anaconda等数据科学工具,了解其主要用途和使用原因。有很多学习编程语言的在线资源。coursera和在线公开课有很多选择。
二。理论
在你有了数学基础之后,你就可以开始阅读课本,了解数据挖掘的理论知识了。个人建议先从人工智能的基础入门书籍入手,不要直接跳到花哨的书籍。很多人推荐的西瓜书,其实并不适合入门学习,难度很大。而且在数据挖掘这样一个多元的领域,实践大于理论,仅仅书本上的理论知识并不总能满足现实生活中的应用。
要成为数据科学专家,往往需要探索和研究其他领域的内容,建立完整的知识体系。因为很多内容是相通的,如果积累了一定程度的知识,对以后的学习会有更好的了解。我推荐几本我学习时用的教材:
科技贪婪人工智能课程
格瑞德学院的这门课程为泛AI和AI群体提供专业的系列课程。根据难易程度,以上内容分为基础和高级阶段。这门课程的魅力之一是知识面广。AI领域除了深度学习、NLP、机器学习,还有很多更细致的分支。其中,机器学习中的分类算法、合成算法、聚类算法、降维算法等基础算法也在本课程中得到了强调。
本课程以幻灯片的形式逐页展示。实用,因为是最近的课程,所以课程内容比较新,讲解比较简单,演示用图片说明。这门课程的视频教学简单易懂,但是你个人使用的时候,因为是在线授课,可能会觉得课程的互动性有点差。如果有问题,需要咨询mldct或者课堂上的老师。
因为也是网络课程,购买后可以随时使用。也适合时间分配不好的上班族和我这样的学生。每门课都有一定的主题,有助于巩固知识点的概念。我自己做这些主题的时候,感觉这些主题的设置和每一节的课程内容结合的很好,可以立刻加强固化,为以后的学习做铺垫。
教育集团
在用这个课程之前,我自己比较了很多学校。经过分析,我觉得AI的贪心老师是靠谱的。团队近几年刚成立,但教研人员都有丰富的行业和教育经验。其核心团队由国内外AI专家组成,很多合伙人和讲师都是业内资深工程师。他们在ICML、AAAI、国际法学家委员会、ICDM和其他会议上发表了数十篇论文,被引用数百次。我的导师是亚马逊工程师李文哲。每道题他都解释的很仔细,尤其是遇到一道算术题,他会一步一步的记下具体的公式。除此之外,他还经常举一反三,举同类型的例子来加深我们的记忆。
课程内容
贪婪的历程可以说是完整的。
它涵盖了上面提到的所有数据科学的概念,如随机森林、逻辑回归、线性回归等。通过将机器学习放入人工智能的框架中,学生可以更好地理解一些概念,将所学知识联系起来,掌握综合技能。
中级课程的核心内容全部以机器学习为主,通过实际案例加深对技术的理解。本课程的主要重点是转移学习的益处,并利用已经训练好的非常成功的模型,如Resnet-34或Restnet-50,在短时间内高精度地学习新任务。比如在计算机视觉中,它就像一个成功的模型,在复杂的视觉输入中已经非常准确(比如Imagenet),用它来处理手头的具体任务。这是通过fastai库实现的,fastai库是Python中Pytorch的一层,它简化并系统化了一些在构建深度神经网络中使用的约束较少的自由形式方法。
随着课程的进展,其复杂性也在增加。在你已经能够训练出一个性能良好的模型之后,这套课程提供了清晰的方法来挖掘其背后的代码,并呈现图表和插图来解释幕后发生的事情。
我最喜欢的部分之一是,它让我在Excel中调用一个电子表格,并绘制一个代表模型输入、参数和预测的表格。同时,它展示了如何在电子表格中训练一个基本的神经网络层!这就像揭开神经网络的盖子,观察它的变化,并发现如何最好地做出准确的预测。
对于每个人来说,只要对矩阵代数有一定的了解,就能很好的掌握它的内容。除了它的引导功能,他们还可以从做这些功课中获得很多。
贪心科技课程为没有编程经验的人提供Python基础内容。作为一个没有编程基础的统计学学生,也节省了我大量的课后学习代码的时间,大大提高了我的学习效率。这门Python课程的一部分是以人机交互的形式教授知识,将知识点融入到实践中,对知识的掌握和熟练有很大的帮助,对我也有很大的启发。上了这门Python课,我最大的收获是对计算机有了新的视角。在选修贪吃科技AI这门课之前,我也是一个重度的计算机用户,但是我一直没有发现它可以帮助我们做更多的事情,这让我对计算机编程产生了反感,也逐渐开始对这个领域产生了好感。
我之前提到过,不可或缺的python基础在这本教材中也有涉及。对于没有编程经验的人,除了理论内容,贪心科技AI还提供了多个机器学习领域的代表性案例,如广告点击率预测、情感分析项目、信用卡欺诈预测、零售场景下的用户分层、意图识别等。供学生参考和练习。
在这个代码已经成为大势所趋的时代,掌握一门编程语言对于人工智能的学习非常重要。在这里,推荐你学习Python,这是我的第一门初学者语言。Python使用快捷,操作简单,更适合初学者学习。
课程
以我当时上的中级课程为例。课程共分十五章,每一章都会根据知识点的不同分成若干小节。课程和形式系统而全面。每一节都很短,只有几分钟,上完一节课只需要2个小时。这样的时长设置不会让人觉得枯燥,容易坚持。随着我完成越来越多的学习层次,完成一个又一个的作业,不知不觉中积累了很多编程知识。现在我也可以自己做一些实用的小程序了。可以说,贪吃科技AI课程把我带入了人工智能的世界。
下课后
课后练习根据难度和知识点进行区分,如身高体重预测、a股股价预测、客户是否会开正规银行账户预测、成绩是否会通过预测、判断新闻真实性等。每个练习都涉及不同的知识点。学生可以在jupyter上自己写代码,得到mldct一对一的反馈,及时纠正错误。
除了课程中提供的练习题和案例,本课程还配有github使用权限和课后学习练习的专门制度。我在学习数据科学的时候,经常从github上寻找各种大神的代码和他们新开发的小说程序,比如随机文章生成器。这些内容可以作为实际工程进行实践。有时候遇到难题会发帖求助。简而言之,github是人工智能领域学生和专业人士不可多得的资源。
总的来说,这套教材比较简单易懂。浏览了中高级课程,感觉高级课程难度更大。有相关数据挖掘和数据分析背景的人可能会觉得初期的内容太基础,而高级的部分,尤其是高级的部分会有点难。
哈佛数据科学数据科学课程这门课程也是在线教学。一门大课程分成很多小部分,可以在coursera、edx等学习网站上找到。本课程主要介绍分析数据和建立模型的各种方法。在上课的过程中,你也可以锻炼你与他人沟通和工作的能力。在整个课程中,我们使用R语言,同时学习R、统计概念和数据分析技术。比如我暑假上的这堂CS501课,涵盖了数据处理、清洗、采样、管理、探索性分析、回归分类、预测和数据交流等多项数据调查的关键技术,通过应用高级统计、建模和编程技巧获得预测性洞察。
总的来说,这三个月的学习很有意思,但是在这个过程中,我也发现了自己基础的不足。作为一名具有一些基本编程技能的统计学专业学生,我认为我可以轻松地处理和建模数据。但是这门课的难度远远超出了我的想象。因为之前的学习比较都是以理论为基础,接触实例不多,所以接触实例这类深入分析实例,使用一系列连续和离散数学工具的项目会不堪重负。这门课程为理解、预测和决策提供了一个量化的框架,几乎涵盖了生活的方方面面,从红绿灯的定时到疾病传播的控制,从资源管理到体育运动等等。可以肯定的是,经过这个课程,你会有和我一样的感觉,你的技能会有很大的提高。
除了这些课程,哈佛还提供相应的在线证书项目,共四门课程,总时长约2年。该项目旨在教授学生如何通过应用先进的统计、建模和编程技能获得预测性见解,获得数据挖掘和计算技术的深入知识,并为从产品设计到金融的一系列行业发现重要问题和情报。
与吴恩达的课程相比,这个项目不太强调数据挖掘,但你会在从数据收集到分析的整个数据科学工作流程中获得更多的实践。正如我之前提到的,我们应该尽可能多地学习数据挖掘和相关领域的知识。所以相对于系统的学习,这门课可以帮助你有一个整体的框架概念,扩展你在数据科学很多领域的知识。缺点是这本教材目前只有英文版,比较难。
ZxdlhAI课程(Andrew ng)
这套教材也是很多人推荐的。2017年上线,内容更新,免费使用。Coursera上线后,我也很佩服,也体验过。我个人用的是斯坦福大学的版本,不是Coursera的。两个版本相比,Coursera的课程内容比斯坦福的CS229更简单,对数学基础的要求也更低。Coursera版的课程几乎不涉及很多机器学习相关的数学知识,比如概率分布、线性优化、平滑等等;相反,zxdlh通过各种例子让人工智能更容易理解。虽然梯度和矩阵的内容很复杂,但是后期可以用python来得到结果。这种简单实用的设定也受到很多初学者的喜爱。但是,这也是这门课的争议点。很多人认为数学知识的讲解过于简单,无法为机器学习打下良好的基础。
Zxdlh本人是斯坦福大学计算机科学系和电气工程系的客座教授。他也是在线教育平台Coursera的创始人之一。这套教材在网易有中文版,课程格式也像PPT,有zxdlh本人的笔记。总体来说,内容通俗易懂,处于初级-中级难度水平。比较适合入门学习。这套还配有课后作业和测试,保证了一定的练习量,但仅限于Cousera课程,编程作业需要在Jupyter上完成。其次,因为是比较新的教材,知道的人和实际用过的人都不多,所以在学习过程中遇到问题,需要自己查阅资料来解决。
这套教材的另一个特点是其内容是自下而上的局部理论讲解。这些课程的一个很大的优势是每个编程练习都有Jupyter中的Python代码模板。几乎在所有的课程中,zxdlh都带了一些在这一领域颇有成就的人,如Geoff Hinton、Yoshua Bengio、Ian Goodfellow、Andrej Karpathy等。他们的讲座对机器学习很有启发,有兴趣可以去听听。
第三,实践经验
一旦完成了上面的两个步骤,就可以开始将这些概念应用到现实世界的数据中了。一个没有经验的数据科学家可能会训练一个模型,一旦精度达到某个高百分比,就将其发送到生产中,忽略这样做时做出的不正确假设。所以,知道模型什么时候过拟合,什么时候存在伪相关,需要扎实的理论理解和经验。对于这部分,我个人的建议是尽早开始练习,但是要从小项目开始。实现简单的算法,比如线性回归,梯度下降,k均值聚类,k近邻和朴素贝叶斯,然后做更高级的运算。在使用这个库之前,试着为每个算法做一次。只有这样,我们才能充分了解它们真正是如何工作的。这里也推荐一个叫Kaggle的平台。里面的数据集都是真实的,会让你感受到数据科学在现实世界中是如何运用的。Kaggle上也会有各种各样的比赛,根据奖励可以分为不同的类型。知识、工作和这些竞赛都非常适合初学者,你也可以找到很多关于如何取得好成绩的文章和样例解答。
摘要
一般来说,只要按照上述步骤,有一定的基础和背景知识,然后慢慢从理论过渡到实践,就能熟练掌握这项技能。在这个过程中,找到合适的教材也很重要。希望你能根据我以上的分享找到适合自己的学习方法和课程,早日实现自己的职业理想!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。