# 1.Machine Learning Basics

## Brief Introduction

根据预测变量是否已知，机器学习问题通常可以分为两类：

* **Supervised Learning** ( 监督学习): 模型有明确的输入（自变量/特征）和输出（因变量/响应变量）。如果目标变量（要预测的变量）是类别信息（例如正/负），该问题称为分类问题。如果目标变量是连续的（例如身高）则为回归问题。
* **Unsupervised Learning** (无监督学习): 目标变量是未指定的。模型的目的是挖掘样本点之间的关系。常见的无监督学习任务包括降维和聚类。

我们这里主要聚焦于有监督学习，分5个小节介绍在实践中如何解决一个分类问题：

* [1.1.Data Pre-processing](/teaching/part-iv.-machine-learning/1.machine-learning-basics/1.1.data-preprocessing.md) (数据预处理)
* [1.2 Dimension Reduction and Visualization](/teaching/part-iv.-machine-learning/1.machine-learning-basics/1.2.data-dimension-reduction.md) (数据降维和可视化)
* [1.3 Feature Extraction and Selection](/teaching/part-iv.-machine-learning/1.machine-learning-basics/1.3.feature-engineering.md) (特征提取和选择)
* [1.4 Model training](/teaching/part-iv.-machine-learning/1.machine-learning-basics/1.4.machine-learning-model.md) (模型训练)
* [1.5 Model Evaluation](/teaching/part-iv.-machine-learning/1.machine-learning-basics/1.5.model-evaluation.md) (模型评估)

希望大家意识到，机器学习是一个很大的领域，我们这里介绍的仅仅是利用现有的工具已经实现好的一些传统的分类模型，来解决生物信息分析中可能会遇到的分类问题。如果大家希望更深入的了解机器学习理论，以及其他机器学习问题，如各种无监督的模式挖掘和聚类算法，强化学习，神经网络/深度学习的各种应用，概率图模型等等，请参考相应的相应的教材和文档。

## More Reading

### **Recommended**

* [Machine Learning by Ng Andrew](https://www.coursera.org/learn/machine-learning) @ coursera
* [Education Papers - Machine Learning](/teaching/appendix/appendix1.keep-learning.md#4-machine-learning)
* 《机器学习》- 周志华

### **Others**

* [An Introduction to Machine Learning with R](https://lgatto.github.io/IntroMachineLearningWithR/)
* [机器学习算法Python实现](https://github.com/lawlite19/MachineLearning_Python)
* [《机器学习(推导版)》](https://datawhalechina.github.io/pumpkin-book/#/)
* [Advanced Tutorial](https://lulab1.gitbook.io/training/part-ii.-machine-learning-skills/1.machine-learning-basics) by Lu Lab (Machine Learning, Feature Selection, Deep Learning)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://book.ncrnalab.org/teaching/part-iv.-machine-learning/1.machine-learning-basics.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
