diff --git a/README.md b/README.md index cdba53f..260167a 100644 --- a/README.md +++ b/README.md @@ -1,58 +1,56 @@ -# 机器学习 - 作业 +# Machine Learning - Homework and Report -课程的学习资料在[这里](https://gitee.com/pi-lab/machinelearning_notebook)。由于这门课程需要大量的编程、练习才能学好,因此需要大家积极的把作业做好,通过作业、练习来牵引学习、提高解决问题的能力、提高自学能力等,这样才能扎实的把这门科学好。 +* [中文说明](README_CN.md) -关于如何提交作业,如何使用git,markdown等等,可以参考下面使用帮助。 +This material is the homework and report for course [<>](https://gitee.com/pi-lab/machinelearning_notebook). To master the course better, it is necessary to do programming practices, therefore, everyone need to do the homework and report diligently. Through these practices capabilities of problem solving of self learning can be boosted. +Please refer following help for submitting homework/report, also instructions of `git` and `markdown` are also included. -**具体的操作步骤:** +**Submitting Instructions:** -1. 大家fork这个项目到自己的项目 -2. 然后git clone自己的项目到本地机器 -3. 在作业的目录里写入各自的代码、报告等。 -4. 通过`git push ...`上传作业到自己的项目里 -5. 由于本作业会更新因此需要更新到最新的版本,可以如下操作 +1. Fork the project to your project +2. Use `git clone` to download the forked project +3. Write your code and report into the corresponding directories +4. Upload your code & report through `git push ...` +5. If the homework or report are updated by teacher, you can do the following steps to newest version ``` git remote add upstream git@gitee.com:pi-lab/machinelearning_homework.git git pull upstream master ``` -6. 在本目录新建一个`name.txt`文件(UTF-8编码),写下自己的名字和学号,例如 +6. Create a file named with `name.txt` (UTF-8 encoding) under the root directory of the project. Please write your name and ID as: ``` -布树辉 +Shuhui Bu 2011010101 ``` -大家提交作业后,我会在大家的项目里写入批注、建议等等,从而构建良好的反馈机制,能够更有效的取得学习效果。 +## Homework +1. [Python](homework_01_python/README_EN.md) +2. [numpy & matplotlib](homework_02_numpy_matplotlib/README_EN.md) +3. [kmeans](homework_03_kmeans/README_EN.md) +4. [logistic regression](homework_04_logistic_regression/README_EN.md) +5. [neural networks](homework_05_nn/README_EN.md) -## 作业 -1. [Python基础](homework_01_python/README.md) -2. [numpy & matplotlib](homework_02_numpy_matplotlib/README.md) -3. [kmeans](homework_03_kmeans/) -4. [logistic regression](homework_04_logistic_regression) -5. [neural networks](homework_05_nn/) +## Report +1. [Traffic accident claims review forecast](report_01_accident_claims/README_EN.md) +2. [Titanic](report_02_Titanic/README_EN.md) +3. [Fashion](report_03_Fashion/README_EN.md) -## 报告 -1. [交通事故理赔审核预测](report_01_交通事故理赔审核预测/) -2. [Titanic](report_02_Titanic/) -3. [Fashion](report_03_Fashion/) - - -## 使用帮助 -* [学习资料的汇总](https://gitee.com/pi-lab/machinelearning_notebook/blob/master/References.md) +## Manuals/Tutorials +* [List of References](https://gitee.com/pi-lab/machinelearning_notebook/blob/master/References.md) * Git - * [Git快速入门 - Git初体验](https://my.oschina.net/dxqr/blog/134811) - * [在win7系统下使用TortoiseGit(乌龟git)简单操作Git](https://my.oschina.net/longxuu/blog/141699) - * [Git系统学习 - 廖雪峰的Git教程](https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000) - * [PILAB的Git使用教程](help/Git使用教程_PILAB.pdf) + * [Quick to learn Git](https://my.oschina.net/dxqr/blog/134811) + * [TortoiseGit on Windows](https://my.oschina.net/longxuu/blog/141699) + * [Complete Git course](https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000) + * [Git tutorial from PILAB](help/Git使用教程_PILAB.pdf) * Markdown - * [Markdown——入门指南](https://www.jianshu.com/p/1e402922ee32) + * [Markdown for beginer](https://www.jianshu.com/p/1e402922ee32) diff --git a/README_CN.md b/README_CN.md new file mode 100644 index 0000000..8435fa9 --- /dev/null +++ b/README_CN.md @@ -0,0 +1,60 @@ +# 机器学习 - 作业 + +* [English Description](README.md) + +课程的学习资料在[这里](https://gitee.com/pi-lab/machinelearning_notebook)。由于这门课程需要大量的编程、练习才能学好,因此需要大家积极的把作业做好,通过作业、练习来牵引学习、提高解决问题的能力、提高自学能力等,这样才能扎实的把这门科学好。 + +关于如何提交作业,如何使用git,markdown等等,可以参考下面使用帮助。 + + + +**具体的操作步骤:** + +1. 大家fork这个项目到自己的项目 +2. 然后git clone自己的项目到本地机器 +3. 在作业的目录里写入各自的代码、报告等。 +4. 通过`git push ...`上传作业到自己的项目里 +5. 由于本作业会更新因此需要更新到最新的版本,可以如下操作 +``` +git remote add upstream git@gitee.com:pi-lab/machinelearning_homework.git +git pull upstream master +``` +6. 在本目录新建一个`name.txt`文件(UTF-8编码),写下自己的名字和学号,例如 +``` +布树辉 +2011010101 +``` + + +大家提交作业后,我会在大家的项目里写入批注、建议等等,从而构建良好的反馈机制,能够更有效的取得学习效果。 + + + +## 作业 + +1. [Python基础](homework_01_python/README.md) +2. [numpy & matplotlib](homework_02_numpy_matplotlib/README.md) +3. [kmeans](homework_03_kmeans/README.md) +4. [logistic regression](homework_04_logistic_regression/README.md) +5. [neural networks](homework_05_nn/README.md) + + + +## 报告 + +1. [交通事故理赔审核预测](report_01_accident_claims/README.md) +2. [Titanic](report_02_Titanic/README.md) +3. [Fashion](report_03_Fashion/README.md) + + + +## 使用帮助 +* [学习资料的汇总](https://gitee.com/pi-lab/machinelearning_notebook/blob/master/References.md) +* Git + * [Git快速入门 - Git初体验](https://my.oschina.net/dxqr/blog/134811) + * [在win7系统下使用TortoiseGit(乌龟git)简单操作Git](https://my.oschina.net/longxuu/blog/141699) + * [Git系统学习 - 廖雪峰的Git教程](https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000) + * [PILAB的Git使用教程](help/Git使用教程_PILAB.pdf) +* Markdown + * [Markdown——入门指南](https://www.jianshu.com/p/1e402922ee32) + diff --git a/homework_01_python/README_EN.md b/homework_01_python/README_EN.md new file mode 100644 index 0000000..7ba06c7 --- /dev/null +++ b/homework_01_python/README_EN.md @@ -0,0 +1,105 @@ +# Homework 1 - Python + + +## Python + +### (1) String +Given a short article, please find the occurance number of each word. You can use the following sentences to test your program. + +``` +One is always on a strange road, watching strange scenery and listening to strange music. Then one day, you will find that the things you try hard to forget are already gone. +``` + +**Deep Thinking:** +* After finished the first version, please consider the how to resolve the problem that there are two blank between two words, or `\t` between words. If the input paragraph has the situation, how to improve the robustness of the program? +* If `?` or `/` punctuation marks appears after words, how to resolve the case? + + +### (2) Combination +Given number 1, 2, 3, 4, how many three-digit numbers can be formed that are different from each other and have no duplicate numbers? What are they? + + +**Deep Thinking:** +* Please consider the algorithm complexity. + + +### (3) Judgement +企业发放的奖金根据利润提成。利润(I): +* 低于或等于 10 万元时,奖金可提 10%; +* 高于 10 万元,低于 20 万元时,低于 10 万元的部分按 10%提成,高于 10 万元的部分,可提成 7.5%; +* 20 万到 40 万之间时,高于 20 万元的部分,可提成 5%; +* 40 万到 60 万之间时,高于 40 万元的部分,可提成 3%; +* 60 万到 100 万之间时,高于 60 万元的部分,可提成 1.5%, +* 高于 100 万元时, 超过 100 万元的部分按 1%提成, +从键盘输入当月利润 I,求应发放奖金总数? + +**深入思考:** +* 除了用`if`手写,能否用其他方式(例如用list,然后自动实现所有的判断)来实现? + + +### (4)循环 +输出9x9的乘法口诀表 + +**深入思考:** +* 如何对齐,看着更清楚? + +### (5)使用while循环实现输出2-3+4-5+6.....+100的和 + +**深入思考:** +* 除了直接的方法,能否用一句话写完? + + +### (6)算法 +给一个数字列表,将其按照由大到小的顺序排列 + +例如 +``` +1, 10, 4, 2, 9, 2, 34, 5, 9, 8, 5, 0 +``` + +### (7) 算法2 +编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性: +* 每行的元素从左到右升序排列。 +* 每列的元素从上到下升序排列。 + +示例: +现有矩阵 matrix 如下: +``` +[ +[1, 4, 7, 11, 15], +[2, 5, 8, 12, 19], +[3, 6, 9, 16, 22], +[10, 13, 14, 17, 24], +[18, 21, 23, 26, 30] +] +``` + +* 给定 target = 5,返回 true。 +* 给定 target = 20,返回 false。 + + +### (8)应用1 +做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券),使用 Python 如何生成 200 个激活码(或者优惠券)? + +需要考虑什么是激活码?有什么特性?例如`KR603guyVvR`是一个激活码 + +### (9)应用2 +需要把某个目录下面所有的某种类型的文件找到。 +例如把`c:`下面所有的`.dll`文件找到。*需要注意的是,需要递归到每一个目录去查找。* + +### (10)应用3 +你有个目录,里面是程序(假如是C或者是Python),统计一下你写过多少行代码。包括空行和注释,但是要分别(例如C程序多少行,Python程序多少行,等等)列出来。 + + + +## References +上面的程序只是简单的练练手,仅仅通过上面的程序练习还是不够的,大家需要更多的程序练习才能把Python学好,下面是一些参考的练习题,大家可以挑选一些去做做。 + +* [Python 练习册,每天一个小程序](https://github.com/Yixiaohan/show-me-the-code) +* [70个python练手项目](practice_projects.md) +* [PythonExercises](https://github.com/greyli/PythonExercises) +* [Python Challenge](http://www.pythonchallenge.com) +* [Python 100例](http://www.runoob.com/python/python-100-examples.html) +* [Python练习题](https://blog.csdn.net/qq_28356833/article/details/54963342) +* [python实现 66道算法题](https://blog.csdn.net/u012193416/article/details/79253398) + diff --git a/report_01_交通事故理赔审核预测/.ipynb_checkpoints/report_template-checkpoint.ipynb b/report_01_accident_claims/.ipynb_checkpoints/report_template-checkpoint.ipynb similarity index 100% rename from report_01_交通事故理赔审核预测/.ipynb_checkpoints/report_template-checkpoint.ipynb rename to report_01_accident_claims/.ipynb_checkpoints/report_template-checkpoint.ipynb diff --git a/report_01_交通事故理赔审核预测/README.md b/report_01_accident_claims/README.md similarity index 100% rename from report_01_交通事故理赔审核预测/README.md rename to report_01_accident_claims/README.md diff --git a/report_01_交通事故理赔审核预测/data.zip b/report_01_accident_claims/data.zip similarity index 100% rename from report_01_交通事故理赔审核预测/data.zip rename to report_01_accident_claims/data.zip diff --git a/report_01_交通事故理赔审核预测/data/sample_submit.csv b/report_01_accident_claims/data/sample_submit.csv similarity index 100% rename from report_01_交通事故理赔审核预测/data/sample_submit.csv rename to report_01_accident_claims/data/sample_submit.csv diff --git a/report_01_交通事故理赔审核预测/data/test.csv b/report_01_accident_claims/data/test.csv similarity index 100% rename from report_01_交通事故理赔审核预测/data/test.csv rename to report_01_accident_claims/data/test.csv diff --git a/report_01_交通事故理赔审核预测/data/train.csv b/report_01_accident_claims/data/train.csv similarity index 100% rename from report_01_交通事故理赔审核预测/data/train.csv rename to report_01_accident_claims/data/train.csv diff --git a/report_01_交通事故理赔审核预测/data_tutorial.ipynb b/report_01_accident_claims/data_tutorial.ipynb similarity index 100% rename from report_01_交通事故理赔审核预测/data_tutorial.ipynb rename to report_01_accident_claims/data_tutorial.ipynb diff --git a/report_01_交通事故理赔审核预测/data_tutorial.py b/report_01_accident_claims/data_tutorial.py similarity index 100% rename from report_01_交通事故理赔审核预测/data_tutorial.py rename to report_01_accident_claims/data_tutorial.py diff --git a/report_01_交通事故理赔审核预测/images/data_description.png b/report_01_accident_claims/images/data_description.png similarity index 100% rename from report_01_交通事故理赔审核预测/images/data_description.png rename to report_01_accident_claims/images/data_description.png diff --git a/report_01_交通事故理赔审核预测/my_RF_prediction.csv b/report_01_accident_claims/my_RF_prediction.csv similarity index 100% rename from report_01_交通事故理赔审核预测/my_RF_prediction.csv rename to report_01_accident_claims/my_RF_prediction.csv diff --git a/report_01_交通事故理赔审核预测/report_template.ipynb b/report_01_accident_claims/report_template.ipynb similarity index 100% rename from report_01_交通事故理赔审核预测/report_template.ipynb rename to report_01_accident_claims/report_template.ipynb diff --git a/report_01_交通事故理赔审核预测/report_template.py b/report_01_accident_claims/report_template.py similarity index 100% rename from report_01_交通事故理赔审核预测/report_template.py rename to report_01_accident_claims/report_template.py diff --git a/report_01_交通事故理赔审核预测/submit_data.csv b/report_01_accident_claims/submit_data.csv similarity index 100% rename from report_01_交通事故理赔审核预测/submit_data.csv rename to report_01_accident_claims/submit_data.csv