利用python 掌握机器学习的过程
转载:http://python.jobbole.com/84326/
偶然看到的这篇文章,觉得对我挺有引导作用的。特此跟大家分享一下。
为了理解和应用机器学习技术,你需要学习 Python 或者 R。这两者都是与 C、Java、PHP 相类似的编程语言。但是,因为 Python 与 R 都比较年轻,而且更加“远离”CPU,所以它们显得简单一些。相对于R 只用于处理数据,使用例如机器学习、统计算法和漂亮的绘图分析数据, Pthon 的优势在于它适用于许多其他的问题。因为 Python 拥有更广阔的分布(使用 Jango 托管网站,自然语言处理 NLP,访问 Twitter、Linkedin 等网站的 API),同时类似于更多的传统语言,比如 C python 就比较流行。
在Python中学习机器学习的四个步骤
1、首先你要使用书籍、课程、视频来学习 Python 的基础知识
2、然后你必需掌握不同的模块,比如 Pandas、Numpy、Matplotlib、NLP (自然语言处理),来处理、清理、绘图和理解数据。
3、接着你必需能够从网页抓取数据,无论是通过网站API,还是网页抓取模块Beautiful Soap。通过网页抓取可以收集数据,应用于机器学习算法。
4、最后一步,你必需学习机器学习工具,比如 Scikit-Learn,或者在抓取的数据中执行机器学习算法(ML-algorithm)。
1.Python入门指南:
有一个简单而快速学习Python的方法,是在 codecademy.com 注册,然后开始编程,并学习 Python 基础知识。另一个学习Python的经典方法是通过 learnpythonthehardway ,一个为广大 Python 编程者所推荐的网站。然后还有一个优秀的 PDF, byte of python 。python社团还为初学者准备了一个Python资源列表list of python resources。同时,还有来自 O’Reilley 的书籍 《Think Python》,也可以从这里免费下载 。最后一个资源是 Python 用于计量经济学、统计学和数据分析的介绍:《Introduction to Python for Econometrics, Statistics and Data Analysis 》,其中也包含了 Python 的基础知识。
2.机器学习的重要模块
关于机器学习最重要的模块是:NumPy, Pandas, Matplotlib 和 IPython 。有一本书涵盖了其中一些模块:《Data Analysis with Open Source Tools》 。然后来自于1.的免费书籍《Introduction to Python for Econometrics, Statistics and Data Analysis》,同时也包括 Numpy,Pandas,Matplotlib 和 IPython这几个模块。还有一个资源是 Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython,也包含了一些很重要的模块。以下是其他免费模块的相关链接: Numpy (Numerical Python, Numpy Userguide, Guide to NumPy), Pandas (Pandas, Powerful Python Data Analysis Toolkit,Practical Business Python,Intros to Pandas Data Structure) 和 Matplotlib books。
其它资源:
3.从网站通过API挖掘和抓取数据
一旦理解了Python的基础知识和最重要的模块,你必需要学习如何从不同的源收集数据。这个技术也被称作网页抓取。传统的源是网站文本,通过API进入twitter或linkedin一类网站得到的文本数据。网页抓取方面的优秀书籍包括:《 Mining the Social Web》 (免费书籍),《Web Scraping with Python》 和《 Web Scraping with Python: Collecting Data from the Modern Web》。
最后这个文本数据必须要转换为数值数据,通过自然语言处理(NLP)技术完成, Natural language processing with Python 和 Natural Language Annotation for Machine Learning 上面有相应的资料。其它的数据包括图片和视频,可以使用计算机图像技术分析: Programming Computer Vision with Python,Programming Computer Vision with Python: Tools and algorithms for analyzing images 和 Practical Python and OpenCV ,这些是图片分析方面的典型资源。
以下例子中包括可以用基本的Python命令行实现,有教育意义,而且有趣的例子,以及网页抓取技术。
- Mini-Tutorial: Saving Tweets to a Database with Python (微型教程:使用Python保存推文到数据库)
- Web Scraping Indeed for Key Data Science Job Skills (网页抓取关键数据科学工作技巧)
- Case Study: Sentiment Analysis On Movie Reviews (案例学习:电影评论中的情感分析)
- First Web Scraper (第一网页抓取)
- Sentiment Analysis of Emails (邮件的情感分析)
- Simple Text Classification (简单文本分类)
- Basic Sentiment Analysis with Python (Python基础情感分析)
- Twitter sentiment analysis using Python and NLTK (使用Python和NLTK 做Twitter情感分析)
- Second Try: Sentiment Analysis in Python (第二个尝试:Python情感分析)
- Natural Language Processing in a Kaggle Competition for Movie Reviews (电影评论相关Kaggle Competition中的NLP自然语言处理)
4. Python 中的机器学习
机器学习可以分为四组:分类,聚类,回归和降维。
“分类”也可以称作监督学习,有助于分类图片,用来识别图片中的特征或脸型,或者通过用户外形来分类用户,并给他赋不同的分数值。“聚类”发生在无监督学习的情况,允许用户在数据中识别组/集群。“回归”允许通过参数集估算一个值,可以应用于预测住宅、公寓或汽车的最优价格。
modules, packages and techniques 罗列了 Python、C、Scala、Java、Julia、MATLAB、Go、R 和 Ruby等语言中所有学习机器学习的重要模块、包和技巧。有关Python机器学习的书籍,我特别推荐《Machine learning in action》。尽管有点短,但它很可能是机器学习中的经典,因为它提到了“集体智慧编程时代”:Programming Collective Intelligence。这两本书帮助你通过抓取数据建立机器学习。最近关于机器学习的出版物大多都是基于模块 scikit-learn 。由于所有的算法在模块中都已实现,使得机器学习非常简单。你唯一要做的事就是告诉 Python ,应该使用哪一个机器学习技巧 (ML-technique) 来分析数据。
免费的 scikit-learn教程 可以在 scikit-learn 官方网站上找到。其他的帖子可以通过以下链接获取:
- Introduction to Machine Learning with Python and Scikit-Learn (机器学习中 Python 和 Scikit-Learn 的介绍)
- Data Science in Python (Python 中的数据科学)
- Machine Learning for Predicting Bad Loans (用机器学习来预测坏账)
- A Generic Architecture for Text Classification with Machine Learning (通过机器学习来分类文本的通用架构)
- Using Python and AI to predict types of wine (利用 Python 和 AI 人工智能来预测酒的品种)
- Advice for applying Machine Learning (应用机器学习的建议)
- Predicting customer churn with scikit-learn (使用 scikit-learn 预测用户流失)
- Mapping Your Music Collection (映射你的音乐收藏)
- Data Science in Python (Python 中的数据科学)
- Case Study: Sentiment Analysis on Movie Reviews (案例学习:电影评论中的情感分析)
- Document Clustering with Python (Python中的文档聚类)
- Five most popular similarity measures implementation in python (5 个最流行的Python相似度测量的实现)
- Case Study: Sentiment Analysis on Movie Reviews (案例学习:电影评论中的情感分析)
- Will it Python? (将会是 Python 么?)
- Text Processing in Machine Learning (机器学习中的文本处理)
- Hacking an epic NHL goal celebration with a hue light show and real-time machine learning (使用色彩灯光秀和实时机器学习黑入史诗级 NHL(北美冰球联赛)进球庆祝)
- Vancouver Room Prices (温哥华房间价格)
- Exploring and Predicting University Faculty Salaries (探索和预测大学教师工资)
- Predicting Airline Delays (预测航班延误)
关于机器学习和 Python 中模块 scikit-learn 的书籍:
- Collection of books on reddit (收集 reddit 新闻网站上的书籍)
- Building Machine Learning Systems with Python (用 Python 建立机器学习系统)
- Building Machine Learning Systems with Python, 2nd Edition (用 Python 建立机器学习系统,第二版)
- Learning scikit-learn: Machine Learning in Python (学习 scikit-learn:Python 中的机器学习)
- Machine Learning Algorithmic Perspective (透视机器学习算法)
- Data Science from Scratch – First Principles with Python (抓取的数据科学——关于 Python 的首要原则)
- Machine Learning in Python (Python 中的机器学习)
接下来数月将要发行的书籍包括:
- 《Introduction to Machine Learning with Python》 (Python 机器学习的介绍)
- 《Thoughtful Machine Learning with Python: A Test-Driven Approach》 (思考 Python 机器学习:接近测试驱动)
机器学习相关的课程和博客
你想要得到一个学位,加入在线课程,或者参加线下讲习班、大本营或大学课程么?这里有一些关于逻辑分析、大数据、数据挖掘和数据科学的在线教育站点链接:Collection of links 。另外推荐一些在线课程–来自Udacity的Coursera 课程:machine learning 和 Data Analyst Nanodegree。还有一些关于机器学习的博客列表:List of frequently updated blogs。
最后是来自 Jake Vanderplas 和 Olivier Grisel,关于探索机器学习的优秀 youtube 视频课程。
机器学习理论
想要学习机器学习的理论?那么,《The Elements of statistical Learning》和《 Introduction to Statistical Learning》 是常常被引用的经典。然后还有另外两本书籍:《Introduction to machine learning 》和《 A Course in Machine Learning》。这些链接包括免费的PDF,你不需要付费!如果不想阅读这些书籍,请观看视频:15 hours theory of machine learning!
利用python 掌握机器学习的过程的更多相关文章
- 利用Python,四步掌握机器学习
为了理解和应用机器学习技术,你需要学习 Python 或者 R.这两者都是与 C.Java.PHP 相类似的编程语言.但是,因为 Python 与 R 都比较年轻,而且更加“远离”CPU,所以它们显得 ...
- 【Python】机器学习之单变量线性回归 利用正规方程找到合适的参数值
[Python]机器学习之单变量线性回归 利用正规方程找到合适的参数值 本次作业来自吴恩达机器学习. 你是一个餐厅的老板,你想在其他城市开分店,所以你得到了一些数据(数据在本文最下方),数据中包括不同 ...
- 【Python】机器学习之单变量线性回归 利用批量梯度下降找到合适的参数值
[Python]机器学习之单变量线性回归 利用批量梯度下降找到合适的参数值 本题目来自吴恩达机器学习视频. 题目: 你是一个餐厅的老板,你想在其他城市开分店,所以你得到了一些数据(数据在本文最下方), ...
- 利用python进行数据分析之数据规整化
数据分析和建模大部分时间都用在数据准备上,数据的准备过程包括:加载,清理,转换与重塑. 合并数据集 pandas对象中的数据可以通过一些内置方法来进行合并: pandas.merge可根据一个或多个键 ...
- 探索 Python、机器学习和 NLTK 库 开发一个应用程序,使用 Python、NLTK 和机器学习对 RSS 提要进行分类
挑战:使用机器学习对 RSS 提要进行分类 最近,我接到一项任务,要求为客户创建一个 RSS 提要分类子系统.目标是读取几十个甚至几百个 RSS 提要,将它们的许多文章自动分类到几十个预定义的主题领域 ...
- 利用Python进行数据分析-Pandas(第四部分-数据清洗和准备)
在数据分析和建模的过程中,相当多的时间要用在数据准备上:加载.清理.转换以及重塑上.这些工作会占到分析时间的80%或更多.有时,存储在文件和数据库中的数据的格式不适合某个特定的任务.研究者都选择使用编 ...
- 【python与机器学习实战】感知机和支持向量机学习笔记(一)
对<Python与机器学习实战>一书阅读的记录,对于一些难以理解的地方查阅了资料辅以理解并补充和记录,重新梳理一下感知机和SVM的算法原理,加深记忆. 1.感知机 感知机的基本概念 感知机 ...
- 利用python爬取海量疾病名称百度搜索词条目数的爬虫实现
实验原因: 目前有一个医疗百科检索项目,该项目中对关键词进行检索后,返回的结果很多,可惜结果的排序很不好,影响用户体验.简单来说,搜索出来的所有符合疾病中,有可能是最不常见的疾病是排在第一个的,而最有 ...
- 利用Python完成一个小游戏:随机挑选一个单词,并对其进行乱序,玩家要猜出原始单词
一 Python的概述以及游戏的内容 Python是一种功能强大且易于使用的编程语言,更接近人类语言,以至于人们都说它是“以思考的速度编程”:Python具备现代编程语言所应具备的一切功能:Pytho ...
随机推荐
- Codeforces Round #369 (Div. 2) A. Bus to Udayland【字符串/二维字符数组求连起来的座位并改为其他字符】
A. Bus to Udayland time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- JSON 中的 key
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript(Standard ECMA-262 ...
- luogu P1395 会议
题目描述 有一个村庄居住着n个村民,有n-1条路径使得这n个村民的家联通,每条路径的长度都为1.现在村长希望在某个村民家中召开一场会议,村长希望所有村民到会议地点的距离之和最小,那么村长应该要把会议地 ...
- 线程同步-CountDownLatch
应用场景: 有一个任务想要往下执行,但必须要等到其他的任务执行完毕后才可以继续往下执行. 假如我们这个想要继续往下执行的任务调用一个CountDownLatch对象的await()方法,其他的任务执行 ...
- linux-查找命令-find
1. 按文件名(目录)查找.(*代表模糊匹配) find / -name curl 在根目录查找名字是curl的文件名(目录) find / -name "*curl*" ...
- SONY的一款Win8平板
今天看到了SONY新发布的一款x86的平板电脑: 铝合金的机身,分离的屏幕,非常漂亮.参数上还是很给力的,i5-4210/i7-4610的处理器,1920x1080的屏幕.4G的内存.9.9mm的厚度 ...
- service mysqld start 报错:service mysqld start 报错 090517 13:34:15 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it. 090Can't open the mysql.plugin table. Please run mysql
service mysqld start 报错 090517 13:34:15 [ERROR] Can't open the mysql.plugin table. Please run mysql_ ...
- [置顶]
kubernetes--应用程序健康检查
K8S的应用程序健康检查分为livenessProbe和readinessProbe,两者相似,但两者存在着一些区别. livenessProbe在服务运行过程中检查应用程序是否运行正常,不正常将杀掉 ...
- apache 启动脚本加入系统服务列表
第一步:cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd第二步:vim /etc/init.d/httpd在第一行#!/bin/sh下增加两行 ...
- 通过CVE-2017-17215学习路由器漏洞分析,从入坑到放弃
1.基本信息: 2017/11/27,Check Point 软件技术部门报告了一个华为 HG532 产品的远程命令执行漏洞(CVE-2017-17215),Mirai的升级版变种中已经使用该漏洞.看 ...