您的位置:首页 > 其它

hands on machine learning with sklearn and tensorflow 附录B-扩充整理 2关于获取数据

2018-02-24 15:46 549 查看

注意:斜体字为附录checklist内容,其余为扩充内容

2.获取数据

注意:尽最大可能编写函数自动化处理数据,这样会使得你更方便地处理新数据。
1.列出你所有需要的数据,以及数据量的大小-根据前阶段工作与对问题的理解,脑暴特征?与数据或业务团队对接获取尽可能多的数据。
2.找出并记录从何处可以获取这些数据3.检查其将会占据多少存储空间4.检查合法性,如果可能的话获取授权-数据是否有涉密比如用户隐私等。做好提前的防护工作。
5.获取授权

-如果有些数据没有完全授权,看是否能获取授权。
6.建立一个工作区(包含足够的储存空间)
-为该项目建立独立的工作区。首先需要建立一个文件夹,可能会用到一连串的机器学习包,例如Jupyter, NumPy, Pandas, Matplotlib, and Scikit-Learn等等。可以用pip下载或更新以上程序包。*这里强烈推荐建立独立的开发环境,因为有可能在不同的项目开发中,会使用不同版本的python、以及python语言的程序包。建立独立的开发环境,则可以使用virtualenv(这里我想是不是也可以用docker,在一开始就用docker隔离开发环境,然后最后直接使用在服务器上)

-知识点(开发环境):下载virtualenv,隔离开发环境意义,如何用virtualenv建立隔离的开发环境。docker的意义及基本命令。
书中例子:$ pip3 install --user --upgrade virtualenv
$ cd $ML_PATH
$ virtualenv env
$ cd $ML_PATH
$ source env/bin/activate //每一次想启用项目的环境时切换到该文件夹然后source active文件即可
$ pip3 install --upgrade jupyter matplotlib numpy pandas scipy scikit-learn // 装包
$ python3 -c "import jupyter, matplotlib, numpy, pandas, scipy, sklearn" //检查是否安装完毕-知识点(jupyter):jupyter有何优势,如何使用?
交互式编程。打开监听链接可以有图形化操作界面。
7.拿到数据8.将数据转换成你方便操作的格式(此时不可更改数据)-转换数据时,尽量写函数方便后续数据转换。
-请熟悉pandas 操作csv数据的各种方法。data=pandas.read_csv()#读取数据
data.head()#输出前5行
data.info()#输出数据信息,行列数,每个特征的名称、样本数、数据类型,总体数据所占内存大小。
#对于非数字类型数据,可以用
data["the_feature_name"].value_counts()#查看每个非数据项的数量。
data.describe()#可以输出每个特征项的样本数、平均值、标准差、最小值、%25,50%,75%分位数以及最大值9.保证敏感信息(例如保密信息)已经被删除,或保护。10.检查数据的规模,与数据的类型(例如时间序列数据,样本数据,或图片)11.(此步骤相当重要)抽选一组测试组,并且在项目快完成前坚决不窥探该部分数据。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐