generated from LufsX/Challenge-kNN
101 lines
3.6 KiB
Markdown
101 lines
3.6 KiB
Markdown
# 挑战一:kNN 算法
|
|
|
|
## 挑战说明
|
|
|
|
- 自行在 [`function.py`](./function.py) 中编写实现 KNN 分类算法。
|
|
- 函数输入: 待分类的样本 `inX`, 训练数据集 `dataSet`, 训练集对应的标签 `labels`。
|
|
- 函数返回: 预测的分类标签。
|
|
|
|
成功上传的评测结果将在 [rank.intcplab.cn](https://rank.intcplab.cn/) 展示。
|
|
|
|
## 注意事项
|
|
|
|
挑战开始前必须在 [`function.py`](./function.py#L28-L29) 中填写自己的学号和姓名!
|
|
|
|
- 可以自行导入其他库,需要在 [`requirements.txt`](./requirements.txt) 添加依赖,若未在 [`requirements.txt`](./requirements.txt) 中添加使用到的依赖,则无法自动评测,**不记录成绩**。
|
|
- 需要在 [`function.py`](./function.py) 中实现完整的 kNN 分类算法。
|
|
- 默认 **k=0**,需**自行设置**最佳的默认 k 值,不修改默认值将**无法通过**自动评测,**成绩为零**。
|
|
- 自动评测脚本仅会加载 [`classify0`](./function.py#L43) 函数,请勿修改函数名。
|
|
- 训练集在本目录下的 [`datingTrainSet2.tsv`](./datingTrainSet2.tsv) 中。
|
|
- 评测数据集在本目录下的 [`datingTestSet2.tsv`](./datingTestSet2.tsv) 中。
|
|
- 本地调试完成后,**需要更新提交代码**,否则无法自动评测,**没有挑战成绩**。
|
|
- 评测的运行时间受机器性能影响,运行时间仅供参考。
|
|
- 若有评测相关问题,请在[项目工单](https://git.intcplab.cn/LufsX/Evaluation-Backend/issues)处提出,或联系 QQ: `1968647927`。
|
|
|
|
代码提交后会进行自动评测,评测所用的环境如下:
|
|
|
|
- CPU: Intel Xeon(R) CPU E3-1231 v3 @ 3.40GHz
|
|
- OS: Ubuntu 22.04.4 LTS
|
|
- Python: 3.10.12
|
|
- numpy: 2.1.1
|
|
|
|
## 挑战操作
|
|
|
|
挑战赛与实验为两个**不同**的仓库,注意不要混淆!
|
|
|
|
---
|
|
|
|
[注册平台帐号](https://git.intcplab.cn/user/sign_up),若有平台帐号相关问题,联系 QQ: `1968647927`。
|
|
|
|

|
|
|
|
进入对应仓库的页面,点击页面的「使用模版」按钮。
|
|
|
|

|
|
|
|
填写仓库名称(建议和对应仓库一致,例如本仓库名 `Challenge-kNN`),勾选模版选项中的「Git 数据(默认分支)」后,点击「创建仓库」按钮。
|
|
|
|
如果你不想让你的代码被其他人看见,可以勾选上「将仓库设为私有」。
|
|
|
|
当然,创建完成后也可以更改,自行摸索~
|
|
|
|

|
|
|
|
可以选择拉取到本地写代码,也可以直接在线编辑。
|
|
|
|
---
|
|
|
|
下面以在线编辑为例。
|
|
|
|
打开对应的文件,点击编辑按钮即可。
|
|
|
|

|
|
|
|
编辑完成后,点击「提交变更」按钮提交修改。
|
|
|
|

|
|
|
|
---
|
|
|
|
下面以拉取到本地写代码为例。
|
|
|
|

|
|
|
|
点击后会叫你选个地方保存代码,选择目录后继续。
|
|
|
|
然后编辑器就会打开,你可以开始写代码了。
|
|
|
|

|
|
|
|
编辑完成后,点侧栏的分叉图标,选择你要提交的变更,再点提交按钮。
|
|
|
|

|
|
|
|
接下来会弹出一个窗口,填写你平台帐号的用户名和密码后即可。
|
|
|
|
---
|
|
|
|
提交完成后,会自动开始评测。
|
|
|
|
这里就可以看到你评测的实时情况与最终得分。
|
|
|
|

|
|
|
|

|
|
|
|
## 其它
|
|
|
|
若有流程、优化等相关建议和问题,欢迎在[评测后端项目工单](https://git.intcplab.cn/LufsX/Evaluation-Backend/issues)中提出。
|
|
|
|
同时欢迎参与[评测后端](https://git.intcplab.cn/LufsX/Evaluation-Backend)的开发与优化!
|