一文讲清楚线性回归(Linear Regression)、逻辑回归(Logistic Regression)
前言被各种ddl加上期末考试耽搁了一段时间,准备继续肝机器学习了,对前面学的东西做个阶段性总结。刷的是吴恩达的课:[中英字幕]吴恩达机器学习系列课程
一、线性回归(Linear Regression)1. 问题描述已知m组数据$x^{(1)}, x^{(2)}, …, x^{(m)}$,每组数据表示n个特征,可写为一个n+1维的向量即:(x^{(i)})^T = (x^{(i)}_0, x^{(i)}_1, ..., x^{(i)}_n),其中,$x^{(i)}_0=1$每组数据对应一个真实值$y^{(i)}$,所有$y$值在一块可表示为一个m维向量$y$我们需要构造一个预测值:$\widehat{y}=\theta_0+\theta_1x_1+…+\theta_nx_n$该函数叫做我们的hypothesis(假设),记为$h_\theta(x)$,那么有$h_\theta(x)=\theta^Tx$,其中$\theta^T$和$x$都为n+1维的向量,我们要求解的就是使预测值最准确的$\theta$值
2. 梯度下降(Gradient Descend)那么要怎么表示我们的预测和真实值 ...
DS图-最小生成树
复习数据结构打OJ顺便梳理一下Prim和Kruskal求最小生成树的思路
题目描述根据输入创建无向网。分别用Prim算法和Kruskal算法构建最小生成树。(假设:输入数据的最小生成树唯一。)
输入顶点数n\n个顶点\边数m\m条边信息,格式为:顶点1顶点2权值\Prim算法的起点v
6\v1 v2 v3 v4 v5 v6 \10\v1 v2 6\v1 v3 1\v1 v4 5\v2 v3 5\v2 v5 3\v3 v4 5\v3 v5 6\v3 v6 4\v4 v6 2\v5 v6 6\v1
输出输出最小生成树的权值之和\对两种算法,按树的生长顺序,输出边信息(Kruskal中边顶点按数组序号升序输出)15\prim:\v1 v3 1\v3 v6 4\v6 v4 2\v3 v2 5\v2 v5 3\kruskal:\v1 v3 1\v4 v6 2\v2 v5 3\v3 v6 4\v2 v3 5
实现思路Prim
维护一个数组dis,表示节点到最小生成树直接距离(有相邻节点在最小生成树中,否则为正无穷,初始为正无穷),已放到最小生成树中则为0。
当有相邻节点被放入最小生成树中,且与 ...
AI导论实验之网格游戏(马尔可夫决策)
问题1:价值迭代问题描述实验来源于伯克利CS188\项目已将问题形式化为马尔可夫决策过程(Markov decision process,MDP),即MDP\在 valueIterationAgents.py 中,ValueIterationAgent 类构造方法接收MDP(无折扣因子)及折扣因子\我们需要做的是实现以下方法包括:
runValueIteration: 执行价值迭代
computeActionFromValues(state):根据self.values给出的值函数计算最佳行动
computeQValueFromValues(state, action):返回根据self.values给出的值函数给出的(状态, 动作)对的Q值原理介绍
马尔可夫决策过程由五元组$$构成,项目的MDP已经提供了以下接口:
mdp.getStates():获取MDP的所有状态
mdp.getPossibleActions(state):当状态确定时,可能发生的所有动作
mdp.getTransitionStatesAndProbs(state, action):当状态和动作确定时,所有 ...
Java利用RMI实现http请求服务
一、题目描述编写Java程序,实现RMI远程调用。客户端指定某个http网站,把这个网址传递给服务器端,服务器端提供http下载服务,通过http get 请求访问http网站,把对应的html文件返回给客户端
二、实现思路1. 客户端在GUI界面输入访问的网址,按下按钮提交请求\监听按钮点击事件,引用远程访问的类,将处理结果反馈到文本框中
2. 服务器端定义服务接口,需要继承自Remote类\定义实现服务接口的类,在类中编写业务逻辑,需要继承 UnicastRemoteObject 类\在主函数中注册服务
三、实现过程1. 客户端编写基本的GUI界面(不熟。。要是写前端三件套就好了1234567891011121314151617181920212223public class RMIClient extends JFrame { public static void main(String[] args) { new RMIClient("Client"); } public RM ...
Java利用UDP实现客户端之间通信
题目描述利用数据报通信方式编写一程序,该程序生成两个客户端,一个服务器端,两个客户端可以相互进行简短的文字交流。
实现思路为使客户端能够接收到其他客户端的数据报,客户端在创建时应该指定端口号,开启接收数据的线程和等待发送消息的线程,当接收到数据或发送数据后,重启线程。并且发送方在数据报中应包含接收端的地址,由服务器端对地址进行解析并转达数据包。
实现过程1. 服务器端:在Server.java中实现Server类,静态变量指定服务器端口,接收数据报的大小
123public class Server { static int serverPort = 8000; static int packetSize = 1024;
进入主函数时,初始化数据报套接字及接收数据报
12345public static void main(String[] args) throws Exception { DatagramSocket server = new DatagramSocket(serverPort); byt ...