台大李宏毅机器学习—学习笔记03

    xiaoxiao2022-07-06  213

    作业1:预测PM2.5的值

     在这个作业中,我们将用梯度下降方法预测PM2.5的值 hw1要求:      1、要求python3.5+      2、只能用(1)numpy(2)scipy(3)pandas      3、请用梯度下降手写线性回归      4、最好的公共简单基线      5、对于想加载模型而并不想运行整个训练过程的人:     请上传训练代码并命名成 train.py     只要用梯度下降的代码就行了 hw_best要求:      1、要求python3.5+      2、任何库都可以用      3、在kaggle上获得你选择的更高的分

    数据介绍: 本次作業使用豐原站的觀測記錄,分成train set跟test set,train set是豐原站每個月的前20天所有資料test set則是從豐原站剩下的資料中取樣出來。 train.csv:每個月前20天每個小時的氣象資料(每小時有18種測資)。共12個月。 test.csv:從剩下的資料當中取樣出連續的10小時為一筆,前九小時的所有觀測數據當作feature,第十小時的PM2.5當作answer。一共取出240筆不重複的test data,請根據feauure預測這240筆的PM2.5。

           自己的实践能力很差,所以本次作业只能读他人的博客,对于一些不懂的地方予以理解。

    .iloc:根据标签的所在位置,从0开始计数,选取列

    concat 方法用于连接两个或多个数组。

    python assert断言是声明其布尔值必须为真的判定,如果发生异常就说明表达示为假。可以理解assert断言语句为raise-if-not,用来测试表示式,其返回值为假,就会触发异常。

    numpy中的stack操作:hstack()、vstack()、stack()、dstack()、vsplit()、concatenate()

    stack():沿着新的轴加入一系列数组。vstack():堆栈数组垂直顺序(行)hstack():堆栈数组水平顺序(列)。dstack():堆栈数组按顺序深入(沿第三维)。concatenate():连接沿现有轴的数组序列。vsplit():将数组分解成垂直的多个子数组的列表。

    用法:zeros(shape, dtype=float, order='C')

    返回:返回来一个给定形状和类型的用0填充的数组;

    参数:shape:形状

                dtype:数据类型,可选参数,默认numpy.float64

                dtype类型:t ,位域,如t4代表4位

                                     b,布尔值,true or false

                                     i,整数,如i8(64位)

                                    u,无符号整数,u8(64位)

                                    f,浮点数,f8(64位)

                                   c,浮点负数,

                                    o,对象,

                                   s,a,字符串,s24

                                   u,unicode,u24

                order:可选参数,c代表与c语言类似,行优先;F代表列优先

    ones和zeros用法相似。

    希望自己能慢慢记录,革命尚未成功,同志仍需努力!

    最新回复(0)