Chinaunix首页 | 论坛 | 博客
  • 博客访问: 535366
  • 博文数量: 80
  • 博客积分: 1496
  • 博客等级: 上尉
  • 技术积分: 1292
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-18 11:24
个人简介

IT码农一个~

文章分类

全部博文(80)

文章存档

2020年(3)

2019年(7)

2017年(1)

2016年(2)

2015年(2)

2014年(26)

2013年(26)

2012年(2)

2011年(1)

2010年(1)

2008年(9)

我的朋友

分类: 大数据

2017-03-26 20:00:36

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

作者:郭小林 2017-03-26

目录大纲

引子

环境搭建

helloworld

书籍

网络资料

引子

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

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

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

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

第四件事就是上周和师兄吃饭交流的时候,得知他们现在在做教育App, 里面也是各种机器学习和DeepLearning的牛人。 这一切都让我觉得如果现在还不学习,那我就要跟社会脱节了。
正在时候,就收到了今日头条的推送,而且看了google的helloworld视频让我觉得,虽然机器学习是个很复杂的学科,但是起码还是可以利用做点简单的事情的。那些遗忘在角落的数学公式我也可以慢慢的捡起来的。

环境搭建

这个是scikit-learn的官网,可以照着上面的来装,当然最简单的是下载, 它会管理和安装机器学习相关的所有东西,包括python和numpy,scipy这些库。

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

wget

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

$ 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

书籍

我是在kindle上买的这本的电子版的

另外的网上推荐的

下面是deep learning的


网络资料

github

其它


阅读(915) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~