当交通遇上机器学习—— 推荐 4 个 Python 新手实战项目
Posted 当交通遇上机器学习
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了当交通遇上机器学习—— 推荐 4 个 Python 新手实战项目相关的知识,希望对你有一定的参考价值。
作为一个语法简洁、有着丰富的第三方库的编程语言,Python 上手极为简单,短时间内就可以让你编写出能够解决实际问题的小程序,甚至去面试初级 Python 工程师的职位。
不过,如果要写出一些更复杂的应用,或者想从事数据分析、机器学习以及 Web 开发等领域的工作,就需要进一步的学习了。
那么,什么样的学习方法比较高效呢?
我认为,最好的方式就是在实战中学习。
你可以从一个简单的小项目开始,然后不断去完善这个项目的功能,随着项目需求越来越复杂,你需要学习的东西也就越来越多,当项目完成后,你的开发水平自然也就能更上一层楼。
下面是我比较推荐的一个实战项目学习路径,同时,我也列出了完成这个项目的每一个版本需要掌握的相关知识点,方便你查漏补缺。
先从一个最简单的爬虫开始
你可以选择自己感兴趣的内容网站来爬,无论是 B 站的弹幕还是豆瓣的书评影评。
要完成一个简单的爬虫,你需要学习 html和 HTTP 的基础知识以及 requests、urllib、beautifulsoup 等第三方库。
同时,我建议你接下来用装饰器、魔术方法、新式类的继承和封装重构你的第一版代码,并了解一些常见的设计模式,比如:单例模式、工厂模式等等,看是否可以借鉴。
将单线程爬虫扩展为多线程爬虫
要完成这一步,你需要了解进程、线程、锁、以及怎么用 asyncio 做并发处理。
然后,我推荐你用 Scrapy 来编写多线程爬虫了。同时你最好深入研究一下这个框架的内部原理,这样有助于你了解设计并发程序的基本原则和方法。
最后,你可以尝试将爬虫部署到集群上, 并用 Ansible 进行集群管理。
对收集到的数据进行清洗和分析
首先,你需要用 pandas 对收集到的半结构化数据进行数据清洗。然后用 jieba 来对中文句子进行分词操作,然后使用 wordcloud 生成词云,对关键词分布情况有一个直观的了解。
接下来就是最关键的数据分析阶段,你需要学习一些 NLP(自然语言处理)的基本知识,并使用二部图算法进行情感分析。
最后用 smtplib 实现邮件发送服务,这样你就可以用邮箱接收分析报告了。
做完这些后,我们这个项目的 3.0 版本就算完成了。
将数据报告在 Web 端展示出来
首先,你需要一个 Web 框架,这里我推荐 Flask。
在这一步,你需要了解 MVC 设计模式,并进一步掌握 HTML、CSS 和 HTTP 方面的基础知识。了解 Flask 的基本使用方法、路由注册原理以及模版的创建与渲染等基本操作,然后着手开发 Web 应用。
你需要用 mysql 来存储数据,并通过 ORM 数据库操作方法,让 Web 前端和数据库实时互动。
最后,就可以将 Web 应用打包发布了,至此大功告成!
完成以上四步,你就从一个初级的 Python 使用者成长为一名熟练工了。
当然了,这 4 步说起来简单,但真正实践起来并不容易。因为这些知识点涉及的面比较广,包括了 Python 进阶语法、自然语言处理、前端开发、设计模式、运维管理等等,每一步都会有比多的坑,对于没有经验的人来说,自学的效率会比较低。而且,这里面一些原理和技巧性的东西,如果没有长时间的开发经验,是很难自己摸索出来的。如果有一个经验丰富的老师带着你完成这个项目,效果会好很多。
因此,我与极客时间合作的「Python 进阶训练营」全新改版上线,将带你通过 70 天实战演练,手把手带你进阶 Python 高手。
我是谁?
我是尹会生,目前在金山西山居担任运维总监,曾任新浪网研发中心技术经理。
我维护过日活超过 3 亿用户的微博私信平台,搭建过云主机超 5000 台的私有云平台,也为大型游戏的运营构建过大数据分析工具,做过集群和内核调优的培训,也做过嵌入式 Linux 内核的裁剪。实际工作中使用 Python 开发了大数据采集和分析平台,使用 Django (Python 语言编写的 Web 框架)实现了公司基础架构统计工具,同时还在使用 Python 与 TensorFlow 进行游戏、大数据、深度学习相结合的研究工作。
我曾参与编写 《白话大数据与机器学习》 《运维前线》等书籍。极客时间《零基础学 Python》《Linux 实战技能 100 讲》视频课程讲师,2w+ 学员已加入。7 年以上培训经验,1500 多小时的授课经验,培训学员超过 2000 人,能够精准抓住学员的痛点。
为什么选择 Python 进阶训练营?
1. 教学目标明确:学完即可胜任三大热门岗位,掌握数据分析相关技巧
课程内容从一个简单的单线程爬虫案例开始,逐步扩展为多线程爬虫,紧接着对收集到的数据进行存储、清洗、分词以及情感分析,最后再通过 Web 清晰地展示给用户。学完之后,你可以胜任三大岗位:后端开发工程师、爬虫/反爬虫工程师、自动化运维工程师;掌握爬虫工程师必备技能、自动化运维工程师进阶技巧、Python 后端实战案例、数据处理与分析相关技巧。
2. 8 周视频教学 + 线上直播答疑 + 70 天刻意练习 + 助教每日答疑
训练营涉及到的知识点包括:Python 基础语法及进阶语法、常用第三方库、多线程、并发、协程锁、高阶函数、装饰器、设计模式、Python 内置数据类型的方法实现原理等 Python 高阶知识点。同时还包括了 Scrapy 爬虫开发、正则表达式、Xpath、Django Web 开发、Pandas 数据清洗、jieba 分词、snowNLP语义情感标注、Celery队列等进阶知识。这期间,我会进行直播解答你在实战练习中的疑难点,也会有大厂助教跟我一起,随时对你的问题和进展进行反馈。
3. 高效学习社群 + 班主任带班,跟优秀的人一起学习
为了帮你坚持完成 70 天的学习,我会跟班主任共同打造一个互助、互相监督的班级社群,让你和来自不同公司的优秀伙伴共同学习。班主任会每周督促你学习,关注你的学习体验,不定期组织大家进行线上分享活动,让你在 70 天内始终保持学习动力。
4. 开启一线大厂和 TGO 鲲鹏会 600 多家企业面试直通车
优秀毕业生毕业一年内,随时可获得极客大学提供的两次企业内推服务,更有 TGO 鲲鹏会的 600 家企业推荐通道为你敞开,获得更多的职业发展机会。
限量报名福利
1. 原价 ¥1999,训练营早鸟促销中,现在仅需 ¥999 ,每天仅需 2.5 元,扫描下方二维码,即可报名 以上是关于当交通遇上机器学习—— 推荐 4 个 Python 新手实战项目的主要内容,如果未能解决你的问题,请参考以下文章 [当人工智能遇上安全] 4.基于机器学习的恶意代码检测技术详解 [当人工智能遇上安全] 3.安全领域中的机器学习及机器学习恶意请求识别案例分享 当Sklearn遇上Plotly,机器学习变得如此简单易于理解