态度决定一切
风继续吹

简介:态度决定一切

粉丝

0

关注

0

最近再找数据分析相关实习时,每个面试官都会问我有没有实现过机器学习算法。然后我回答我看《机器学习实战》,《机器学习实践指南》里的Python代码,把算法敲出来,运行了。

但是感觉很多面试官不太满意这个回答。困惑是实现的语言问题还是上述不算自己实现。

还有有没有必要看scikit-learn或者caret的源码呢?

2019-01-08 11:12 浏览 23 收藏 举报

分享你的真实观点和经验,通过汇编、洗稿的等方式拼凑的回答将会被折叠 完成
4个回答
  • 莫把无知当天真
    红叶知秋

    简介:莫把无知当天真

    粉丝

    0

    关注

    0

    不算自己实现
    不是看源码的问题,是自己有否做过一些相关工作解决一个不是书本上的问题

    吐槽一下:照着书敲代码谁不会啊,难道照着书敲个神经网络算法的代码就说自己会写神经网络算法么?

    评论 0
    2019-01-08 18:13:35 点赞   举报  
    取消 评论
  • 暮云
    9
    热爱生活,热爱工作
    暮云

    简介:热爱生活,热爱工作

    粉丝

    0

    关注

    0

    你数学基础好么?建议你先系统的了解一下,边上班边学习

    评论 0
    2019-01-08 18:13:58 点赞   举报  
    取消 评论
  • 海纳百川,有容乃大
    海纳百川

    简介:海纳百川,有容乃大

    粉丝

    0

    关注

    0

    最好是自己要有实践,不管是简单的,还是稍微复杂点的,最好自己从头到尾做一遍。可以循序渐进。
    我自己是做的这个SofaSofa数据练习

    评论 0
    2019-01-08 18:14:23 点赞   举报  
    取消 评论
  • 干干净净做人,平平淡淡生活
    青海明诺

    简介:干干净净做人,平平淡淡生活

    粉丝

    0

    关注

    0

    简单的说, 你敲过 C++Primer 的代码也不算你熟悉 C++吧, 面试官更想听你自己的实践, 比如参加 Kaggle 竞赛.

    对于机器学习来说, 敲代码并没有什么用, 因为那些算法都在 python 中有相关包可以直接实现. 重要的是你为啥用 xx 算法而不是 oo 算法, 还有具体排错的过程. 比如发现某个分类器训练错误远小于测试错误,增加训练数据集可以减少测试错误率, 那可能就是模型的 variance太高(overfitting), 如果增加训练数据集没什么用, 那就是 bias 太高(underfitting).

    同一个算法, 不同人实现出来效果完全不一样, 这就是经验的差距, 当年Geoff Hinton的两个博士生用卷积神经网络在竞赛上击败了当时 Google 有着 Andrew Ng + Jeff Dean这样的黄金队伍震惊工业界, 要知道后者也用的是d35cc天空彩票与同行神经网络, 然后差距却很大, 据说连卷积网络的发明人 Yann lecun 自己也没重现出那两个博士生的效果.

    还有最重要的是数学推导, 起码徒手撸一个SVM 和 EM 的简单推导吧? 这样可以理解各种算法的联系, 比如 A算法 的数学表达说明其实 A 就是 B 的一个特例, 比如高斯判别就是逻辑斯谛个一个特例.

    然后数据分析现在训练集都很大, 又要求还有分布式的知识, 至少会用MapReduce改写现有算法,而且现在流行的神经网络更是需要很好的并行算法实现能力甚至 GPU 编程.

    是的, 这些内容对于大三一般来说比较吃力, 所以一般机器学习方向的不爱招本科生.

    源代码我觉得没必要看, 重要的是某个包后面的算法以及使用, python 包的具体代码实现肯定还用了 C 来实现, 没有一定的功力短时间很难看懂.

    然后更重要的是: 工业界的数据分析大部分都是在清理数据, 熟练掌握类似于 SQL 或者 Hadoop Hive,Pig 之类的工具非常重要. 具体实现的算法都有现有 API 和代码, 重要的是学会怎么选择算法,特征, 调整参数, 敲敲书上的well-formed 问题没什么卵用....

    评论 0
    2019-01-08 18:14:40 点赞   举报  
    取消 评论
  • FN问答
  • 专业的金融科技技术问答社区
  • 您还没有登录,点击登录
热门问题
24小时回答排行榜