关注
对于题2,给个使用sklearn的版本(ps:一般都会让用sklearn)
python3:
from sklearn.linear_model import Ridge
import numpy as np
import sys
import json
input = lambda: sys.stdin.readline().strip()
def sigmoid(x):
return 1 / (1 + np.exp(-x))
data = json.loads(input())
X = np.array(data['nodes'])
edges = np.array(data['edges'])
train_idx = data['train_idx']
train_y = data['train_y']
test_idx = data['test_idx']
n, d = X.shape
adj = np.eye(n)
if len(edges) > 0:
adj[edges[:, 0], edges[:, 1]] = 1
adj[edges[:, 1], edges[:, 0]] = 1
row_sums = adj.sum(axis=1)
H = (adj @ X) / row_sums[:, np.newaxis]
model = Ridge(alpha=0.01, fit_intercept=False, solver='cholesky')
model.fit(H[train_idx], train_y)
w = model.coef_
test_h = H[test_idx]
z = test_h @ w
proba = sigmoid(z)
pred = (proba >= 0.5).astype(int)
ans = {
"weights": np.round(w, 6).tolist(),
"test_proba": np.round(proba, 6).tolist(),
"test_pred": pred.tolist(),
}
print(json.dumps(ans))
查看原帖
1 1
相关推荐
昨天 15:26
武汉大学 Java 点赞 评论 收藏
分享
查看3道真题和解析 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# AI让海力士市值突破9000亿美元 #
365次浏览 7人参与
# 百度工作体验 #
335474次浏览 2283人参与
# 在爱玛,骑向未来 #
46323次浏览 440人参与
# 打工人的精神状态 #
155210次浏览 1572人参与
# 职场新人体验 #
193375次浏览 1253人参与
# 百度求职进展汇总 #
731589次浏览 6450人参与
# 工作后,你落下了哪些病根 #
42696次浏览 300人参与
# 机械人,说说你的烦心事 #
149314次浏览 1174人参与
# 简历当中有水分算不算造假? #
176851次浏览 2331人参与
# 机械人,你最希望上岸的公司是? #
218437次浏览 1946人参与
# 你收到了哪些公司的笔试? #
69628次浏览 446人参与
# 米哈游求职进展汇总 #
692126次浏览 3364人参与
# 毕业季,给职场新人一些建议 #
221931次浏览 2608人参与
# 工作压力大,你会干什么? #
82991次浏览 713人参与
# 机械/制造每日一题 #
98103次浏览 1503人参与
# 为了求职,我做过的疯狂伪装 #
88675次浏览 777人参与
# 如果秋招能重来,我会____ #
105739次浏览 514人参与
# 你以为的实习VS真实的实习 #
143038次浏览 758人参与
# 什么专业适合考公 #
69971次浏览 359人参与
# 重来一次,我还会选择这个专业吗 #
467949次浏览 3988人参与
# 应届生第一份工作最好去大厂吗? #
150731次浏览 1230人参与
