机器学习和人工智能入门机器学习与数据挖掘

机器学习笔记(1)-入门

2017-03-26  本文已影响0人  煎饼果子斯基

作者:郭小林 2017-03-26

目录大纲

引子

环境搭建

helloworld

书籍

网络资料

引子

昨天在家里看《今日头条》的时候,意外的收到一条推送视频《Google机器学习入门 第一讲Hello World》,就点进去看了看,发现原来还是可以入门的。 关于机器学习,有四件事,我感觉冥冥之中让我带到机器学习的大门之中。

一是其实很早前就听说过机器学习,公司的策划胡子很早前就开始研究机器学习了,不过据说机器学习里面大量的公式,然后我就一直没敢看。虽然大学时候学过高数、线代和概率论,但是都十几年过去了,一直在现实生活中很少使用,所以就基本已经全部还给老师了。

第二个就是最近和一个10年在北京完美的清华毕业的一个硕士同事聊天,发现他现在也在搞DeepLearning相关的东西,而且据他说,他们公司的应届生都可以开到年薪60w了,我那个羡慕呀...
不过他现在每天的朋友圈都是在看各种paper,各种traing data...

第三件事就是各种新闻都在说各大学都在开设机器学习相关的课程,包括我的母校; 同时还有搜了下互联网的一些高级职位,基本都是跟机器学习有点关系。

第四件事就是上周和师兄吃饭交流的时候,得知他们现在在做教育App, 里面也是各种机器学习和DeepLearning的牛人。

这一切都让我觉得如果现在还不学习,那我就要跟社会脱节了。正在时候,就收到了今日头条的推送,而且看了google的helloworld视频让我觉得,虽然机器学习是个很复杂的学科,但是起码还是可以利用做点简单的事情的。那些遗忘在角落的数学公式我也可以慢慢的捡起来的。

环境搭建

http://scikit-learn.org/stable/install.html 这个是scikit-learn的官网,可以照着上面的来装。

当然最简单的是下载anaconda, 它会管理和安装机器学习相关的所有东西,包括python和numpy,scipy这些库。

当然还需要安装 pip, 有些库是需要借助pip来安装的 , 比如

wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py

pip install pydot  
pip install pydotplus (较新的python版本需要这个库,比如3.6, 用来生成pdf决策树,后面的demo会使用)

这些都安装好了后,重新打开终端,运行以下命令

$ which python
/Users/XXX/anaconda/bin/python

$ python
Python 3.6.0 |Anaconda custom (x86_64)| (default, Dec 23 2016, 13:19:00) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 

这里的python是anaconda自己安装的单独的版本,和系统路径的python路径不同,
系统的python是 /usr/bin/python, 实际链接的是

$ ls -l /usr/bin/python2.7
lrwxr-xr-x  1 root  wheel    75B  9 24  2016 /usr/bin/python2.7 -> 
/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7

强烈建议不要修改这些soft link,如果需要使用特定的自己安装的版本,那么可以在 ~/.bashrc中做一个别名 python , 比如

vim ~/.bashrc
alias python="/usr/local/bin/python3.6"
source ~/.bashrc

除了这些,还需要一个graphviz的程序,这个可以通过port或者homebrew来安装,

sudo port install graphviz

这个同时还会安装和更新很多依赖软件

这些都搞定了之后 就可以开始我们的第一个程序HelloWorld了

HelloWorld

Google Machine Learning -- HelloWorld视频

$ cat hello.py 
from sklearn import tree

# features = [[140, "smooth"], [130, "smooth"], [150, "bumpy"], [170, "bumpy"]]
features = [[140, 1], [130, 1], [150, 0], [170, 0]]
# labels = ["apple", "apple", "orange", "orange"]
labels = [0, 0, 1, 1]

clf = tree.DecisionTreeClassifier()
clf = clf.fit(features, labels)

print( clf.predict([[150, 0]]) )
将上面的代码保存在 hello.py文件中,然后运行,
即可得到结果
$ python hello.py
[1]

target中 0, 1分别代表的是apple和orange,说明了我们的代码是ok的

然后剩下的就可以继续跟着视频学了

或者直接在sk-learn的官网上根据入门教程一步一步的学习一些demo

http://scikit-learn.org/stable/tutorial/index.html

书籍

机器学习实战 我是在kindle上买的这本的电子版的

机器学习 - 弗拉赫(Peter Flach)

机器学习 - 周志华版

图解机器学习

另外的网上推荐的
机器学习书单

下面是deep learning的

Deep Learning的几本书

网络资料

github

机器学习实战 中英文pdf code

Machine Learning、Deep Learning、PostgreSQL、Distributed System、Node.Js、Golang

常用机器学习算法的实践笔记

机器学习资源大全中文版,包括机器学习领域的框架、库以及软件

https://github.com/bighunter513/machine-learning-python

其它

机器学习算法Top10

上一篇下一篇

猜你喜欢

热点阅读