爱丁堡大学 CS 作业辅导指南:Informatics 系 Assignment 全攻略
爱丁堡大学(University of Edinburgh)的 Informatics 系是全英 CS 顶尖院系之一,在 AI 和机器学习领域尤其享有国际声誉。课程前沿、导师研究背景强,但评分标准也相当严格。
爱大 Informatics 系概况
爱丁堡 CS 课程独特之处在于它深度整合了AI、认知科学和数据科学。本科采用苏格兰四年制(Undergraduate Master's),第四年相当于 Integrated Master's。
成绩权重(四年制参考):
- 大一/大二:基础课,不计入 Honours 学位等级
- 大三:约 40%
- 大四:约 60%
核心课程与作业特点
INFR08025 — Introduction to Computation
大一核心课,用 Haskell 函数式编程入门,这是让很多有面向对象背景学生头疼的地方。
Haskell 作业基本功:
-- 爱丁堡 CS 要求写清楚类型签名
-- 不写类型签名会被扣分
factorial :: Integer -> Integer
factorial 0 = 1
factorial n = n * factorial (n - 1)
-- List comprehension 是高分写法
primes :: [Integer]
primes = sieve [2..]
where
sieve (p:xs) = p : sieve [x | x <- xs, x `mod` p /= 0]
关键原则:爱丁堡特别强调纯函数(Pure Functions)和不可变性(Immutability),不要试图用命令式思维解题。
INFR11145 — Applied Machine Learning
这是爱丁堡 Informatics 系最受欢迎的大三/大四选修课之一。
典型作业结构:
- Part A:在给定数据集上实现并比较至少两种 ML 算法
- Part B:参数调优实验(Learning Curves, Validation Curves)
- Part C:报告(分析实验结果,解释选择依据)
关键评分点: 爱丁堡的 ML 课程特别注重实验的可复现性(Reproducibility):
import random
import numpy as np
SEED = 42
random.seed(SEED)
np.random.seed(SEED)
# 使用 sklearn 时也要设置
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.2, random_state=SEED
)
报告里要写明你的实验环境(Python 版本、库版本),让导师能复现你的结果。
INFR09031 — Extreme Computing
这是爱丁堡大四高级课程,讲授大规模数据处理(Hadoop、Spark)和高性能计算。
作业类型:
- MapReduce 任务实现(用 Java 或 Python Streaming)
- Spark 数据分析(DataFrame API + Spark SQL)
- 性能分析报告(比较不同实现的执行时间、资源消耗)
Spark 作业高分写法:
from pyspark.sql import SparkSession
from pyspark.sql.functions import col, count, avg
spark = SparkSession.builder.appName("AnalysisTask").getOrCreate()
# 使用 DataFrame API 而非 RDD(更现代,性能更好)
df = spark.read.csv("data.csv", header=True, inferSchema=True)
result = (df
.filter(col("year") >= 2020)
.groupBy("category")
.agg(
count("*").alias("total_count"),
avg("revenue").alias("avg_revenue")
)
.orderBy(col("avg_revenue").desc())
)
result.show()
result.write.mode("overwrite").parquet("output/")
INFR11182 — Natural Language Processing
NLP 方向课程,是 AI 专业方向的必修/热门选修。
常见作业:
- 用 NLTK 或 spaCy 实现文本分类、情感分析
- Transformer 模型微调(通常用 HuggingFace)
- 语言模型评估报告(BLEU score、Perplexity 等指标解释)
报告写作重点: 不要只汇报指标数字,要定性分析错误案例(Error Analysis):拿出几个模型预测错误的例子,分析为什么错了,这能显示你真正理解了模型的局限性。
爱大作业提交系统(Learn)
爱丁堡使用 Learn(Moodle 定制版)管理课程和提交作业。
- 多数编程作业通过 Gradescope 提交,支持自动评分
- 报告提交走 Learn,通常要求 PDF 格式
- 苏格兰学校作息时间:注意爱丁堡的 Semester 2 从 1 月开始,比英格兰学校早
- 延迟提交:标准政策每天扣 5%,但申请 Extension 相对容易(需提前沟通导师)
爱大留学生特别提示
**Peer Review 文化:**爱丁堡部分课程有同伴代码互评(Code Review),这在锻炼你沟通能力的同时也会影响你的分数。学会用专业语言给出建设性反馈。
**Coursework vs. Exam 比例:**爱丁堡不少课程 Coursework 比重较高(50-70%),对勤奋的同学相对友好。但大四的部分高级课程笔试比重会上升。
需要帮助?
无论是 Haskell 函数式编程、Spark 大数据作业还是 NLP 报告,学霸留学生辅导 有爱丁堡 Informatics 系的学长学姐提供专属辅导:
