SciAes

机器学习的自我重建之路


  • Home

  • About

  • Tags

  • Lab

  • Fav

  • Categories

  • Archives

Leetcode刷题记录(置顶)

Posted on 2018-12-30 | In 算法 |

Leetcode-70 爬楼梯问题(DP)

You are climbing a stair case. It takes n steps to reach to the top.
Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?
Note: Given n will be a positive integer.
Input: 2
Output: 2
Explanation: There are two ways to climb to the top.

Read more »

Deep learning

Posted on 2024-07-23 | In 算法 |

FM

class FactorizationMachine(tf.keras.Model):
    def __init__(self, num_features, embedding_size):
        super(FactorizationMachine, self).__init__()
        self.num_features = num_features
        self.embedding_size = embedding_size
        
        # 初始化参数
        self.w0 = tf.Variable(tf.zeros([1]), name='bias')
        self.w = tf.Variable(tf.random.normal([num_features, 1]), name='linear_weights')
        self.V = tf.Variable(tf.random.normal([num_features, embedding_size]), name='interaction_weights')

    def call(self, inputs):
        # embedding 部分
        embedding_first = tf.nn.embedding_lookup(self.w, inputs)
        embedding = tf.nn.embedding_lookup(self.V, inputs)
        value = tf.reshape(inputs, [-1, self.num_features, 1])
        embedding_value = tf.multiply(embedding, value)
        
        # 前向传播
        # first order 部分
        first_order = tf.reduce_sum(tf.multiply(embedding_first, value), axis=1)
        liner = tf.add(self.w0, first_order)
        
        # second order 部分
        mul_square = tf.square(tf.reduce_sum(embedding_value, 1))
        square_mul = tf.reduce_sum(tf.square(embedding_value), 1)
        second_order = 0.5 * tf.reduce_sum(tf.subtract(mul_square, square_mul), 1, keepdims=True)
        
        # FM 模型的预测值
        fm_model = tf.add(liner, second_order)
        return tf.nn.sigmoid(fm_model)
Read more »

信息流推荐算法小结

Posted on 2021-10-23 | In 算法 |
Here's something encrypted, password is required to continue reading.
Read more »

分类总结

Posted on 2021-07-25 | In 算法 |

目录

双指针

  • LC-1 2数求和
    先带上index排序
  • LC-15 三数之和
    排序,3指针: i,left=i+1, right=len(nums)-1;i/left/right都需要考虑去重
  • LC-16 最接近的三数之和
    同,排序,3指针
  • LC-75 颜色分类
    荷兰旗,head,mid=0,tail=n-1, mid=0交换mid和head前进, mid=2交换mid和tail,tail-1, 不然mid+1
  • LC-11 盛最多水的容器
    首尾指针,wide=j-i, height=min(h[i], h[j]), max(wide*height)
  • LC-763 划分字母区间
    转成字典,key:字母,value:[start, end]的index,合并区间模板
  • LC-80 删除排序数组中的重复项
    重复k个的问题。核心:if i < k or nums[i] != nums[length - k],重新组织数组
  • LC-581 最短无序连续子数组
    分段左、中、右,找到左和右的边界
Read more »

Logistics到softmax推导整理

Posted on 2019-02-13 | In 算法 |

最近复习了一些基础知识,摘取了一些重要的做了一点推导,也为了之后可能面试会用到。应该是机器学习类的,但是也懒得分那么多类了,就先放在慢学NLP下面吧。这里选择把逻辑回归和softmax归到一起来讲,原因在于更好的比较两者的异同和联系。总结为以下两点:

逻辑回归的优化目标是极大化对数似然估计,采用梯度上升来学习及更新参数 $\theta$ 向量的值。

Softmax的优化目标是极小化交叉熵损失函数,采用梯度下降和链式法则来更新各层权值。

Logistics Regression

先从线性回归开始

$$h _ { w } \left( x ^ { i } \right) = w _ { 0 } + w _ { 1 } x _ { 1 } + w x _ { 2 } + \ldots + w _ { n } x _ { n }$$

$$h _ { w } \left( x ^ { j } \right) = w ^ { T } x _ { i } = W ^ { T } X$$

$$X = \left[ \begin{array} { c } { 1 } \newline { x _ { 1 } } \newline { \dots } \newline { x _ { n } } \end{array} \right] \quad W = \left[ \begin{array} { c } { w _ { 0 } } \newline { w _ { 1 } } \newline { \dots } \newline { w _ { n } } \end{array} \right]$$

针对线性分类器而言,他解决的是回归问题,为了能更好进行分类问题的探讨,这里就引出了 Logistics 回归。

Read more »

回首2018 -- 每天都是夏天的新加坡留学生活

Posted on 2018-12-31 | In 生活感悟 |


(文章主要记录2018年在新加坡国立大学读企业商务分析Master的点点滴滴)

可能是夏天出生的缘故,我向来就不喜欢冷,那种刺骨血液冰冻僵住的感觉,想来真是让我不舒服。加上又是易出汗体质,也就很不喜欢裹棉衣,稍微活动几下,毛线夹着背脊的汗,那滋味着实让我难受。曾经也幻想过,要是能天天过上夏天,大拖鞋大短裤,没事就可以跳水里游泳吃冷饮,应该会是及其惬意吧。老天有眼,2018年,我就在新加坡就得偿所愿的过了整整365天的夏天,曾经一年有春夏秋冬,四季分明,如今就只剩初夏,盛夏,仲夏。反而贱嗖嗖的有点想念冬天的滋味了哈哈哈。

2018年年初办完离职,来到新加坡国立大学再次成为了一名学生。今年的足迹大多只局限在北纬1度的新加坡(十足的赤道),出没于NUS Utown、ISS school、实习待的IBM CBP,也去过马来西亚(亚庇)和越南(胡志明,芽庄)旅行。

2018年整体而言,关键词是充实和自我重建。

Read more »

Data analytics about the Movie Industry using R and ggplot from IMDB-5000

Posted on 2018-04-07 | In Data Analytics |

写在前面

在NUS的学习过程中所涉及到的一些Assignments,会陆陆续续整理然后放上来,由于是英语书写同时也为了锻炼自己的英文写作,遂会尽量用英文来写整个的过程(其实也是照抄作业而已)。本Assignment是关于IMDB5000电影评分的一个分析,比较偏入门的一个作业,通过这个作业可以对R中重要的可视化作图模块有一个较为整体的认识。

Introduction

IMDB 5000 is an Internet movie database with highest rated TV series with at least 5000 votes. In this task, IMDB 5000 is implemented as our database to explore and visualize the different distributions depending on various factors. This dataset could be found in data.world or Kaggle dataset, which includes 28 factors and 5043 movies. The metadata is listed below:

Variables Variables Variables Variables
color actor_2_facebook_likes actor_3_name budget
director_name movie_facebook_likes facenumber_in_poster title_year
num_critic_for_reviews gross imdb_score aspect_ratio
duration genres plot_keywords content_rating
director_facebook_likes actor_1_name movie_imdb_link cast_total_facebook_likes
actor_3_facebook_likes movie_title num_user_for_reviews actor_1_facebook_likes
actor_2_name num_voted_users language country
Read more »

来新杂感

Posted on 2018-03-21 | In 生活感悟 |

交代

距离上一次写博客已经过去2年多了,期间有过好几次想重新开启的时刻,也都随着自己角色的转变以及没救的拖延和懈怠中流逝了。2年前的现在,我还在重庆忙着自己的毕业论文答辩,在一场一场的火锅和KTV中肆意挥洒最后的青春。研究生毕业之后,一个人来到魔都张江,开始了一个真正意义上的程序员的生活,并且也算以此为自己的职业,能在上海养活自己,并且还养的不错,从体重不断的飙升中可见一斑,期间有机会去韩国出差,算是第一次踏出国门。2018年年初又一次下南洋,开始了在国大的另一段求学的生涯,如今坐在NUS的自习室里,云淡风轻的回忆这两年发生的不多不少的种种,有些值得骄傲,有些也感到无力。但这2年总体而言,都是向着好的方向在前进,尤其完成了自己多年以来的出国梦,可能我这一辈子余下的时光都庸庸碌碌,唯有这件事能称之为闪光点吧。

Read more »

我的2015总结和2016的Todo

Posted on 2015-12-31 | In 生活感悟 |

总体

2015还是随风而逝了,有点感伤,也有点感动。感伤于很多时候的无所事事,耽误了不少时间。感动在于一整年也算是完成了自己的一系列小目标,看到了自己的成长。而更多的是看到了_差距_,差距来源于自己视野的不断打开,正因为如此我会有很多对自己的不满足,不满足于自己的拖沓,不满足于自己的懒散。但总体来说这些都算是人生路上的好事,因为我不可能永远停留着做个学生,这一年我也看到了自己的多面性,因为人这一生也是自我认识的过程。
2015年足迹经过了无锡,上海,杭州,重庆,成都,哈尔滨。
过去的旧时光我都记得,但是更重要的还是向前看。我还是要对自己的2015做一些总结。
2015对我而言的年度词语我觉得应该是——开眼。

Read more »

Mactex+Sublime3+Skim集成环境安装及LaTeX常用命令

Posted on 2015-12-16 | In 工具Tools |

刚转战到mac上来工作,涉及到文本的书写离开了X软的Word还是有些许不适应,恰逢最近写paper也决心把latex好好折腾下。遂搜了一大顿帖子,发现了**MacTex+Sublime3+Skim**的爆炸组合,做点小总结。所以本文主要涉及以下几个核心方面:

Read more »
12

Alex Jiang

身下万丈深渊,头上无尽苍穹

11 posts
4 categories
6 tags
RSS
© 2024 Alex Jiang
Powered by Hexo
|
Theme — NexT.Gemini v5.1.4