mydmomo 2023-03-13 13:52 采纳率: 84.6%
浏览 46
已结题

逻辑回归模型自动调参,自动机器学习

能否利用自动机器学习技术实现对逻辑回归的调参呢?比如autogluon或者flaml。或者有什么自动的方法实现对逻辑回归模型的优化,Hyperopt也行。能否提供一个简单的代码进行参考?

  • 写回答

6条回答 默认 最新

  • DEMAXIYAZHENGYI 2023-03-15 10:01
    关注
    
    
     
     
    from hyperopt import fmin, tpe, hp, Trials
    from sklearn.linear_model import LogisticRegression
    from sklearn.datasets import load_breast_cancer
    from sklearn.model_selection import cross_val_score
    from sklearn.metrics import accuracy_score
    from sklearn.datasets import make_classification
     
     
     
    # 加载数据集
    data = load_breast_cancer()
    X = data.data
    y = data.target
     
    # 定义超参数搜索空间
    space = {
        'C': hp.loguniform('C', -5, 5),
        'fit_intercept': hp.choice('fit_intercept', [True, False]),
        'solver': hp.choice('solver', ['newton-cg', 'lbfgs', 'liblinear', 'sag', 'saga'])
    }
     
    # 定义目标函数
    def objective(params):
        X, y = make_classification(n_features=10, random_state=42)
        X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
        
        model = LogisticRegression(**params)
        model.fit(X_train, y_train)
        y_pred = model.predict(X_test)
        score = accuracy_score(y_test, y_pred)
        
        return -score
     
    # 使用Hyperopt进行自动调参
    best = fmin(objective, space, algo=tpe.suggest, max_evals=100)
     
    print(best)
    
    

    展开全部

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 3月22日
  • 已采纳回答 3月15日
  • 创建了问题 3月13日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部