Q: 可以推荐一本完全零基础的python书看一下吗?我没有数据基础。
A: 《简明Python教程》
Q:在校生,想搞明白未来的职业发展。
A:我看数据科学相关的岗位有,比如:数据分析,数据挖掘,机器学习,自然语言处理,计算机视觉,深度学习工程师等等,还有推荐算法、搜索算法。
我觉得咱们的培养目标和数据挖掘、机器学习这两个岗位的要求更贴近。当然,像数据分析、自然语言处理、计算机视觉、深度学习,推荐算法等等这些岗位,就是更专业一点,或者说更垂直一点。
我一直觉得机器学习目前还不是一种通用技术,可能很长一段时间内也不会是。所以与其关心具体的技术方向,不如选个自己感兴趣的领域更重要。
我刚看了一下,现在AI相关的岗位种类越来越多了。
Q:群里的好多人都是有基础的,我们这种完全零基础的怎么办呢?就是一开始不知道该从何入手。
A:捷径就是给每一节课做好笔记!做笔记的目的是:让笔记上的内容能够覆盖视频中你觉得有价值的所有信息!换句话说,就是视频看过一次就不会再看第一次了,只看自己的笔记就好!
还有就是每天都要花几个小时在学习上~ 这个很重要,因为每天都需要锻炼对数据的感觉和熟悉度。
Q:数学和编程的基础不好怎么办?还可以学数据科学吗?
A:数学和编程就像打钻山隧道,有时候你会觉得遇到顽石百攻不破,这时候不可放弃。此处不通不意味着他处不通。先把问题放一放,跟着老师继续走。可能过几天回头再来看那个问题就容易多了。慢慢来,学习都是持久战,没有一口吃个大胖子的。
没有微积分基础,不意味着就无缘数据分析了。微积分对数据分析算法影响比较大的是回归,其它比如贝叶斯、决策树都没关系。而且如果仅是实现数据分析,你会写python更重要。python都把已有的各种模型算法集成了,其实对于用户来说,就是调整几个参数而已,并不设计算法的核心代码修改。如果想进一步成为数据科学家,才需要了解算法本身。如果只是打比赛,算法并不是特别重要。
如果想快速地补一补数学知识,我可以推荐不错的数学基础视频讲解。
Q:大家有安装mac 系统的python的吗?
A:Mac系统 自己就带python。具体方法为:在这里输入“终端”。
找到下方应用,双击打开,然后输入python,就是python命令行环境了,自带2.7版本的python。
可以百度一下这个链接:http://yanghao.org/blog/archives/59
https://zhuanlan.zhihu.com/p/25198543这个anacoda的教程讲解的比较详细,平时最常用的基本上都讲到了,大家可以参考一下。
Q:例题都是.py的保存方式,可我的数据保存之后都是.ipny呀,两个是因为编辑器不同的原因吗?
A:jupyter notebook默认将文件报讯城.ipny格式,你也可以保存成.py格式,具体方式如下图。python自带的IDE,Pycharm等一般的IDE都支持.py格式的文件。
Q:现在好像XGBOOST用的频率挺高的,泛化性能应该挺不错的吧?
A:号称大杀器 用过就知道了,不过精度太高,是有可能过拟合的,所以交叉验证看看。
Q:助教,咨询你一个问题,我这两天同时看《利用python进行数据分析》、《机器学习实战》、sql还有咱们的预习资料,看的脑袋都快炸了。能不能给点建议,目前要怎么学习?
A:先练习python,然后可以预习一下pandas,还想看别的话,可以看看scikit-learn。先掌握技能,然后在练技能的基础上再补理论知识,至于你刚才说的那两本书,可以以后作为辅助学习。
不要着急,把基础打好,python,pandas都差不多了就看看scikit-learn,都是以后常用的工具。
Q:st,data,ss2 = summary_table(res,alpha=0.5)#从模型获得拟合数据,自行车模型的,st,data,ss2是summary_tabel的返回值吗? “=”左边的三个数是什么,不是具体含义。
A:从变量的命名看来,返回的值是标准差,数据,还有拟合变剩余随机成度的差值。st就是返回的整个表,也就是说是返回值,对应前三个。data是ss2对应的数,比如第三列是预测结果。
Q:异常值检测有哪些常用的方法?
A:UpperLimit=Q3+1.5IQR=75%分位数+(75%分位数-25%分位数)*1.5, LowerLimit=Q1-1.5IQR=25%分位数-(75%分位数-25%分位数)*1.5。
Q:jupyter能不能撤销命令?就是执行完一段代码,对原来的内容进行了修改,想撤销这个代码的执行,恢复到原来的内容。
A: jupyter 是一个笔记本,所以不需要的东西可以直接删除重写,就像word一样。 如果你指的撤销是如何停下在跑的内容,用ctrl+c。相当于你submission 里面的内容已经被错误代码处理,并且处理结果替换了原始值,你现在希望重新进行一遍,那只能从新load你的submission的数据,所以在处理的时候对于替换性的操作要稍微小心一些,在操作的时候尽量保证你的重要数据都有备份,比如新数据以添加一列而不是直接替换原有列来进行操作。
Q:一般什么样配置的笔记本能愉快地玩耍机器学习呢?比如结业了去打Kaggle比赛或者继续练手强化。
A:正常都可以。普通机器学习的瓶颈在特征工程,不是跑算法。笔记本的话无脑推荐MBP,预算少的可以考虑windows笔记本,很多选择,Dell、xps13、xps15...一般推荐macbook或者xps。
深度学习,cpu可以跑简单的,复杂的一般不在笔记本上跑...会爆炸。一般深度学习要么台式,要么远程机器上登陆跑。
Q:data[['Disbursed']]和data['Disbursed']的区别。data是一个dataframe.Disbersed是key。比如这样写,data['Disbursed'].apply(lambda x: sum(pd.isnull(x))) 就会报错TypeError: 'bool' object is not iterable。写成data[['Disbursed']].apply(lambda x: sum(pd.isnull(x))),就对了,这两个有什么不同的?
A:在dataframe里,Disbursed被称为index。用一个[]的意思是取出一列数据,出现嵌套的时候,一般是要同时取出多列数据。
Q:预习中,讲义倒是不难。但在操作中,很难记住相关函数,助教有什么好的建议吗?
A:相关函数全部一下记住是不太现实,但是要掌握基本的调用方式,很多函数都是类似的,包括参数的个数等等。另外,要养成查手册的习惯。很多函数记住函数名,去手册查具体需要喂什么参数,一些常用的函数,用多了,自然会记住了。
Q: Cumsum是什么意思,助教能帮忙解释一下吗?cumprod呢?
A:样本累计和,累计积.假如你有一列数据:1,2,3,4,5。cumsum之后就得到1,3,6,10,15,就是一个一个累计加和,cumprod就是一个挨着一个乘,跟cumsum一个意思,只不过就是加变成乘。
Q:在可视化预习资料中。y = stats.norm.pdf(x,0,1),pdf. 括号中。0 ,1 代表什么,pdf是什么意思?什么的缩写?
A:是样本均值和标准差,正态分布样本,PDF而言,仅指概率密度函数,Probability Distribution function。
Q:为什么在python中: 比如开方会用 np.sqrt. 画图会用 plt.plot ; 总是加个前缀。 为什么不像Matlab那样直接用 sqrt、plot ?
A:Python中数学运算,大多采用numpy 模块中封装的函数,类似的还有其他画图函数,都是定义在对应模块中。而Python的引用方式是:模块名或别名.函数名,此外,内建函数是可以直接以函数名调用的,比如sorted
助教分享:提问的艺术
网址:
http://wiki.fast.ai/index.php/How_to_ask_for_Help
提问的内容尽量包含:
1. 你为了解决这个问题,你是做了哪些操作?你希望这些操作是什么效果和实际的效果是什么?
2. 你猜测问题的根源是什么,以及你认为解决该问题可能需要如何做?
3. 请告知你的基本电脑环境:如什么系统?在云平台?库版本等~
4. 如果你的操作步骤不同于课程给的notebook模板,请强调出来~
5. 你收到的报错信息(很重要!)
6. 如果可以,请截图!
7. 如果和课程中返回的操作结果不一致,请指出来~
8. 你已经解决的部分问题是怎么做的?如你重启了电脑?重启了kernal?
9. 你发觉到某些可行的解决方案,可以贴出来,如来自csdn、简书等~
上面的这个是数据科学家大牛提供的一个“提问说明”,同志们尽量参照的去提问就好了,你说的越清楚,其他人就会越明白。不然只有遇到过完全一样问题的人才清楚你在说什么……其实著名的 stackoverflow.com 上记得也有个类似的提问说明,不过就懒得找了,基本类似。
助教分享:“上下求索”的技能
说白了就是自己寻找答案的能力,再说白了,就是活用百度和google搜索。
首先心中记得这样一个真理:“理论上,我遇到的几乎任何问题,都可以在网上找到写有答案的网页。”
所以用百度的时候,搜索:关键词(如python print 区别),或者直接把报错信息(一般是含有error的)贴上去。
不过 google总是对英文会有更好更相关的搜索结果,你会发现输入相关英文关键词,会得到更多的相关答案和评论。
最后,再说一句:我经常遇到一些报错信息不知道什么意思或者不知道怎么解决的时候,百度没找到答案,而google上搜索,居然就轻松找到了一大堆相关信息,甚至也有人问了和我一模一样的问题。
Q:感觉之前自己在网上看视频还是看得多做的少,怎么进一步提高?
A:学Python就一个秘诀——用就好,多测试,不要怕。基于测试进行学习,同时完成作业。
本来我也是嘴巴选手,为了完成一个比赛,3天写了几千行代码,也看了几千行别人的代码,然后我也成了革命斗士。拿起键盘就是干!要带着目标去学习,而不是迷失在知识的海洋里面。因为有的东西可能永远用不到。
另外,我个人的一点经验,要想提高,一定要抱团,和优秀的人抱团!
这就是稀牛的课程有别于其他培训机构的地方,它有助教和云练习平台。希望这门课带大家将整个数据科学的工作走一轮,给大家带来一点感觉。
班主任说:
大家讨论的好热闹,这个氛围超好,我很喜欢。我看也有没发言的同学,还有说自己基础不好的同学。这里啰嗦一下,我能理解大家的担心,尤其是感觉到群里的其他人都很牛逼很有经验……我当初刚来到实训营时也是这个感觉,觉得自己弱爆了。我学的是机械,编程水平仅限于matlab,对同学们讨论的各种专有名词都一脸懵逼 扎扎实实的跟完了2期实训营的课程后,做了3期的助教,现在又来4期当班主任。是不是很励志?相信你们也可以,加油 !
以上就是我们摘选的学员问题以及助教解答。
在学习数据科学的过程中,你遇到了怎样的问题呢?是怎样解决的?欢迎在评论区留言分享你的学习经历哦!
如果有问题需要解答,请评论区留言,我们将邀请《数据科学实训营》的助教进行回复。
点赞最高的评论将获赠图书《数据科学实战》!
土豆助教直播录制了Q&A的视频,讲解 Jupyter Notebook的入门与提高+小白福利之Python编程基础中的基础。
扫描二维码,回复关键词“助教”,就可以领取视频学习链接哦!
感谢班主任高兴,助教土豆、路明非、August、Joe、姜姜、好吃的每晚答疑以及贡献的精彩回答!
点击“阅读原文”,了解《数据科学实训营》更多课程信息。这是一个优质学习社区,期待你的加入!
往期精彩文章
点击图片阅读