V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
jswangjieda
V2EX  ›  Python

分享自己实现的一些机器学习算法

  •  
  •   jswangjieda · 2018-08-23 20:10:28 +08:00 · 1439 次点击
    这是一个创建于 2285 天前的主题,其中的信息可能已经有所发展或是发生改变。
    自学机器学习算法也有六个月了,也累积不少代码了,发出来供初学者参考,要是能有大佬批评指正一下最好了。
    代码注释都是中文的,还有一些补充说明。注释和部分命名借鉴了 sklearn,极少量的实现思路参考了 sklearn/libsvm 源码。
    由于个人能力有限,性能上表现得不太令人满意,训练示例中有很多地方和 sklearn 做了对比,性能上平均差距在 30 倍左右,有些地方代码还写得很累赘,待自己水平提高后会再重写以前的实现的。

    ide: anaconda3(64bit)(python3.6)

    使用到的类库:
    主要 numpy, pandas, matlibplot
    少量 scipy, numba

    目前已实现的算法和能处理的问题类型
    回归:线性回归,逻辑回归 -> 回归,多分类
    决策树:ID3,C4.5,CART -> 多分类,多分类,多分类 /回归
    集成学习:随机森林,adaboost,GBDT -> 多分类 /回归,多分类 /回归,多分类 /回归
    支持向量机(线性核 /多项式核 /径向基核) -> 多分类 /回归
    朴素贝叶斯 -> 多分类
    (还有一个孤立森林,用于处理离群点的,但是很早之前写的了,很不完善,忽视掉吧)

    用于分类的多层感知器已经写好了,但还在进一步学习和研磨,所以还要一阵子才会上传。
    (为了加速运算,折腾了一阵子 cuda,但没收到预期的效果,只能暂时放弃了,太憋屈了)

    链接:
    https://github.com/jiedawang/machine-learning-python
    第 1 条附言  ·  2018-08-24 09:41:52 +08:00
    matplotlib 错打成 matlibplot 了,不好意思
    2 条回复    2018-09-29 10:59:01 +08:00
    jswangjieda
        1
    jswangjieda  
    OP
       2018-09-17 19:17:54 +08:00
    多层感知器上传了,包含算法的完整实现,调用示例,可视化探究,学习笔记,以及一个 pyqt 写的演示小程序。
    提供 sigmoid/tanh/ReLU/softmax 四种激活函数,均方误差 /交叉熵 /对数似然三种代价函数,分类和回归均支持。
    另外提供 mnist/cifar10 数据集管理工具,不提供数据集,请自行下载。
    jswangjieda
        2
    jswangjieda  
    OP
       2018-09-29 10:59:01 +08:00
    新增聚类算法:k-means, dbscan, 凝聚式层次聚类
    新增推荐算法:协同过滤
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2986 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 14:05 · PVG 22:05 · LAX 06:05 · JFK 09:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.