zoukankan      html  css  js  c++  java
  • catboost模型_python机器学习-sklearn挖掘乳腺癌细胞(三)

     python机器学习-sklearn挖掘乳腺癌细胞( 博主亲自录制,包含catboost实战代码)

    网易云观看地址

    https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campaign=commission&utm_source=cp-400000000398149&utm_medium=share

    乳腺癌细胞和正常细胞是有显著区别的

    癌细胞半径更大,形状更加不规则,凹凸不平。我们可以用科学手段来区分正常细胞和癌细胞吗?答案是可以的,通过机器学习算法,建立分类器,解决二分类问题。

    乳腺癌细胞分类器建模

    现在我们要用机器学习算法建立分类器,区分细胞为良性细胞或癌细胞。分类器就是解决二分类或多分类问题。

    建立分类器算法很多,包括逻辑回归,xgboost,svm,神经网络等等。

    今天我要介绍目前开源领域里最新的算法catboost。

    catboost起源于俄罗斯搜索巨头yandex,准确率高,速度快,调参少,性价比高于xgboost

    今天的CatBoost版本是第一个版本,以后将持续更新迭代。catboost三个特点:(1)“减少过度拟合”:这可以帮助你在训练计划中取得更好的成果。它基于一种构建模型的专有算法,这种算法与标准的梯度提升方案不同。(2)“类别特征支持”:这将改善你的训练结果,同时允许你使用非数字因素,“而不必预先处理数据,或花费时间和精力将其转化为数字。”(3)支持Python或R的API接口来使用CatBoost,包括公式分析和训练可视化工具。(4)有很多机器学习库的代码质量比较差,需要做大量的调优工作,”他说,“而CatBoost只需少量调试,就可以实现良好的性能。这是一个关键性的区别

    catboost建立乳腺癌分类器代码

    # -*- coding: utf-8 -*-
    """
    Created on Thu Oct  4 21:07:32 2018
    
    @author: 231469242@qq.com
    """
    
    from sklearn.model_selection import train_test_split
    import catboost as cb
    from sklearn.datasets import load_breast_cancer
    cancer=load_breast_cancer()
    X, y = cancer.data,cancer.target
    train_x, test_x, y_train, y_test=train_test_split(X,y,test_size=0.3,random_state=0)
    cb = cb.CatBoostClassifier()
    cb.fit(train_x, y_train)
    print("accuracy on the training subset:{:.3f}".format(cb.score(train_x,y_train)))
    print("accuracy on the test subset:{:.3f}".format(cb.score(test_x,y_test)))
    

    大家可以看到catboost预测准确率非常高,训练集100%,测试集97.7%

     https://study.163.com/provider/400000000398149/index.htm?share=2&shareId=400000000398149( 欢迎关注博主主页,学习python视频资源,还有大量免费python经典文章)


    机器学习项目合作QQ:231469242

  • 相关阅读:
    撕衣服的简易实现
    简易的画画板的实现
    图片简易处理
    在内存中创建原图的副本
    缩放图片并加载到内存中
    加载大图片的OOM异常
    计算机表示图形的形式
    虚拟短信
    ContentProvider 共享数据
    内容观察者
  • 原文地址:https://www.cnblogs.com/webRobot/p/9743519.html
Copyright © 2011-2022 走看看