李宏毅机器学习Lesson2——Logistic Regression实现收入预测
数据集介绍
数据集来源于Kaggle,是一个美国公民收入的数据集,本次任务的目标是根据多个特征准确区分样本的收入属于哪一个类别(大于50k美元/小于50k美元),从网上下载的数据集中有六个文件
前三个是原始数据集,本次任务使用后三个,这是助教已经根据原始数据集进行一定数据清洗后可以直接拿来建模的数据。
加载数据集、标准化
X_train_fpath = '/Users/weiyubai/Desktop/学习资料/机器学习相关/李宏毅数据等多个文件/数据/hw2/data/X_train'
Y_train_fpath = '/Users/weiyubai/Desktop/学习资料/机器学习相关/李宏毅数据等多个文件/数据/hw2/data/Y_train'
with open(X_train_fpath) as f:
next(f)
X_train = np.array([line.strip('\n').split(',')[1:] for line in f], dtype = float)
with open(Y_train_fpath) as f:
next(f)
Y_train = np.array([line.strip('\n').split(',')[1] for line in f], dtype = float)
def normalize_feature(df):
# """Applies function along input axis(default 0) of DataFrame."""
return df.apply(lambda column: (column - column.mean()) / (column.std() if column.std() else 1))#特征缩放函数定义
X_train_no = normalize_feature(pd.DataFrame(X_train))#标准化
X_train_no = np.concatenate((np.ones(len(X_train)).reshape(len(X_train),1),</

该博客介绍了如何利用Logistic Regression对Kaggle上的美国公民收入数据集进行预测。首先,数据集被加载并标准化。然后,定义了用于梯度下降的函数,并通过交叉验证来选择损失函数的惩罚项系数。最终,通过三折交叉验证展示了不同系数下模型在训练集和验证集上的平均精度,均在87%左右。
最低0.47元/天 解锁文章
2344

被折叠的 条评论
为什么被折叠?



