当前位置: 首页 > news >正文

桥东区住房和建设局网站网站开发工具 哪个好

桥东区住房和建设局网站,网站开发工具 哪个好,wordpress微信朋友圈,dw里面怎么做网站轮播图贝叶斯决策论是概率框架下实施决策的基本方法,对分类任务来说,在所有相关概率都已知的理想情形下,贝叶斯决策论考虑如何基于这些概率和误判损失来选择最优的类别标记。 贝叶斯定理是贝叶斯决策论的基础#xff0c;描述了如何根据新的证据更新先验概率#xff0c;贝叶斯定理描述了如何根据新的证据更新先验概率贝叶斯定理 P ( A ∣ B ) P ( B ∣ A ) P ( A ) P ( B ) P(A|B) \frac {P(B|A) P(A)} {P(B)} P(A∣B)P(B)P(B∣A)P(A)​ 后验概率P(A|B)在观测B的条件下A的概率指在观测到数据之后对某个假设的概率估计。它是通过贝叶斯定理计算得到的结合了先验概率和似然概率。事情已经发生求这件事情发生的原因是由某个因素引起的可能性的大小。似然概率P(B|A)在A发生的条件下B的概率指在某个假设下观测数据的概率。它描述了在某个假设下数据出现的可能性。先验概率P(A)没有观测到B的条件下A的概率指在没有观测到任何数据之前对某个事件的概率估计。它通常基于先验知识或经验。根据以往经验或经过数据统计得到的概率。边际概率P(B)B的总概率 贝叶斯决策论通过结合先验知识和观测数据使用贝叶斯定理计算后验概率从而做出最优决策。即 P ( c ∣ x ) P ( c ) P ( x ∣ c ) P ( x ) P(c|x) \frac {P(c) P(x|c)} {P(x)} P(c∣x)P(x)P(c)P(x∣c)​ P©是样本空间中各类样本所占的比例根据大数定理当训练集包含充足的独立同分布样本时P©可以通过各类样本所占的比例来进行估计。 但是对于类条件概率P(x|c)来说涉及了关于x所有属性的联合概率因此很难进行估计。 例如每个样本具有d个属性每个属性都有10个属性值那么样本空间将有 1 0 d 10^d 10d种可能值导致组合爆炸。 朴素贝叶斯对条件概率分布做了条件独立性假设 即现在有 10 × d 10 \times d 10×d种可能值。 P ( x ∣ c ) ∏ j 1 n P ( x j ∣ c ) P(x|c) \prod_{j1}^{n}P(x^j|c) P(x∣c)j1∏n​P(xj∣c) 先验概率 P ( c k ) ∑ i N I ( y i c k ) N P(c_k) \frac {\sum_i^NI(y_i c_k)} {N} P(ck​)N∑iN​I(yi​ck​)​ 属性值是离散情况下条件概率为 P ( x j a j l ∣ y c k ) ∑ i 1 N I ( x i ( j ) a j l , y i c k ) ∑ i 1 N I ( y i c k ) P(x^j a_{jl}|y c_k) \frac {\sum_{i1}^NI(x_i^{(j)} a_{jl}, y_ic_k)} {\sum_{i1}^{N}I(y_ic_k)} P(xjajl​∣yck​)∑i1N​I(yi​ck​)∑i1N​I(xi(j)​ajl​,yi​ck​)​ 属性值是连续情况下条件概率为 假设概率密度P(x|c)服从正太分布 N ( μ , σ 2 ) N(\mu, \sigma^2) N(μ,σ2)通过极大似然估计得到的正态分布均值就是样本均值方差就是 ( x − μ c ^ ) ( x − μ c ^ ) T (x - \hat{\mu_c})(x - \hat{\mu_c})^T (x−μc​^​)(x−μc​^​)T。 这样假设使其问题变得简单但是估计准确性严重依赖所假设的概率分布形式是否符合潜在的真实数据分布。不过准确性却较高。 例如 代码示例 数据处理将DataFrame转为numpy.array类型并自定义分出训练集和测试集用来检验正确性。 import pandas as pd import numpy as np from io import StringIOdata 编号,色泽,根蒂,敲声,纹理,脐部,触感,密度,含糖率,好瓜\n\ 1,青绿,蜷缩,浊响,清晰,凹陷,硬滑,0.697,0.46,是\n\ 2,乌黑,蜷缩,沉闷,清晰,凹陷,硬滑,0.774,0.376,是\n\ 3,乌黑,蜷缩,浊响,清晰,凹陷,硬滑,0.634,0.264,是\n\ 4,青绿,蜷缩,沉闷,清晰,凹陷,硬滑,0.608,0.318,是\n\ 5,浅白,蜷缩,浊响,清晰,凹陷,硬滑,0.556,0.215,是\n\ 6,青绿,稍蜷,浊响,清晰,稍凹,软粘,0.403,0.237,是\n\ 7,乌黑,稍蜷,浊响,稍糊,稍凹,软粘,0.481,0.149,是\n\ 8,乌黑,稍蜷,浊响,清晰,稍凹,硬滑,0.437,0.211,是\n\ 9,乌黑,稍蜷,沉闷,稍糊,稍凹,硬滑,0.666,0.091,否\n\ 10,青绿,硬挺,清脆,清晰,平坦,软粘,0.243,0.267,否\n\ 11,浅白,硬挺,清脆,模糊,平坦,硬滑,0.245,0.057,否\n\ 12,浅白,蜷缩,浊响,模糊,平坦,软粘,0.343,0.099,否\n\ 13,青绿,稍蜷,浊响,稍糊,凹陷,硬滑,0.639,0.161,否\n\ 14,浅白,稍蜷,沉闷,稍糊,凹陷,硬滑,0.657,0.198,否\n\ 15,乌黑,稍蜷,浊响,清晰,稍凹,软粘,0.36,0.37,否\n\ 16,浅白,蜷缩,浊响,模糊,平坦,硬滑,0.593,0.042,否\n\ 17,青绿,蜷缩,沉闷,稍糊,稍凹,硬滑,0.719,0.103,否df pd.read_csv(StringIO(data)) # print(df.info())def obj_to_int(series: pd.Series):return pd.Categorical(series).codesdef label_encoder(df: pd.DataFrame):for col in df.columns:if df[col].dtype object:df[col] obj_to_int(df[col])return df# 已完成2025年2月9日 14点27分 # # 保存处理后的数据 # df label_encoder(df) # df.to_csv(data.csv, indexFalse)# # 已完成2025年2月9日 14点30分 # # 随机选择三行作为测试集 # test_set df.sample(n3, random_state42) # # 获取剩余的行作为训练集 # train_set df.drop(test_set.index) # # 保存训练集和测试集 # train_set.to_csv(train.csv, indexFalse) # test_set.to_csv(test.csv, indexFalse)def get_train_data():df pd.read_csv(train.csv)return np.array(df.iloc[:, :])def get_test_data():# 2025年2月9日 16点19分df pd.read_csv(test.csv)return np.array(df.iloc[0:, :])# 随机选择一半的数据作为训练集# df pd.read_csv(data.csv)# bool_array np.random.choice([True, False], sizelen(df), p[0.5, 0.5])# return np.array(df[bool_array].iloc[:, :]) # print(get_train_data()) # print(get_test_data())朴素贝叶斯 计算先验概率 def get_prior_prob(train_data: np.array):# 先验概率prior_prob {}# 计算先验概率for i in range(len(train_data)):if train_data[i][-1] not in prior_prob:prior_prob[int(train_data[i][-1])] 1else:prior_prob[int(train_data[i][-1])] 1for key in prior_prob:prior_prob[key] / len(train_data)return prior_prob计算条件概率 离散值 n len(train_data[0]) - 1cond_prob [ {} for i in range(n) ]# 计算条件概率# (特征值, 类别) - 出现次数fea_res_cnt [[0,0] for i in range(n)]for i in range(len(train_data)):for j in range(1, n):if int(train_data[i][-1]) 0:fea_res_cnt[j][0] 1else: fea_res_cnt[j][1] 1for i in range(len(train_data)):# 仅计算特征值为离散值的条件概率for j in range(1, n - 2):fea int(train_data[i][j])res int(train_data[i][-1])if (fea, res) not in cond_prob[j]:cond_prob[j][(fea, res)] 1else:cond_prob[j][(fea, res)] 1连续值使用极大似然法球的均值、标准差进行正太分布 # 计算特征值为连续值的条件概率reslist [ [ [] for i in range(2)] for j in range(2)]for i in range(len(train_data)):for j in range(n - 2, n):res int(train_data[i][-1])reslist[j - n 2][res].append(float(train_data[i][j]))for i in range(2):for j in range(2):mean,std np.mean(reslist[i][j]),np.std(reslist[i][j])cond_prob[i n - 2][(j, mean, std)] 0 总的这个函数代码 def get_cond_prob(train_data: np.array):n len(train_data[0]) - 1cond_prob [ {} for i in range(n) ]# 计算条件概率# (特征值, 类别) - 出现次数fea_res_cnt [[0,0] for i in range(n)]for i in range(len(train_data)):for j in range(1, n):if int(train_data[i][-1]) 0:fea_res_cnt[j][0] 1else: fea_res_cnt[j][1] 1for i in range(len(train_data)):# 仅计算特征值为离散值的条件概率for j in range(1, n - 2):fea int(train_data[i][j])res int(train_data[i][-1])if (fea, res) not in cond_prob[j]:cond_prob[j][(fea, res)] 1else:cond_prob[j][(fea, res)] 1# 计算特征值为连续值的条件概率reslist [ [ [] for i in range(2)] for j in range(2)]for i in range(len(train_data)):for j in range(n - 2, n):res int(train_data[i][-1])reslist[j - n 2][res].append(float(train_data[i][j]))for i in range(2):for j in range(2):mean,std np.mean(reslist[i][j]),np.std(reslist[i][j])cond_prob[i n - 2][(j, mean, std)] 0# 计算条件概率for i in range(1, n - 2):for key in cond_prob[i]:cond_prob[i][key] / fea_res_cnt[i][key[1]]return cond_prob 进行测试 # 正太分布密度概率 def probability_density_function(mean:float, std:float, var:float) - float:return (1/(std * np.sqrt(2 * np.pi))) * np. exp(-0.5 * ((var - mean)/std)**2)def test():cond_prob get_cond_prob(get_train_data())prior_prob get_prior_prob(get_train_data())test_data get_test_data()# 预测right_cnt 0for i in range(len(test_data)):good bad 1good prior_prob[1]bad prior_prob[0]for j in range(len(cond_prob)):for key in cond_prob[j]:if len(key) 2:if key[1] 0:bad * cond_prob[j][(int(test_data[i][j]), key[1])]else:good * cond_prob[j].get((int(test_data[i][j]), key[1]), 0) # 有可能出现未知的特征值elif len(key) 3:if key[0] 0:bad * probability_density_function(key[1], key[2], float(test_data[i][j]))else:good * probability_density_function(key[1], key[2], float(test_data[i][j]))if good bad:print(good)if int(test_data[i][-1]) 1:print(right)right_cnt 1else:print(bad)if int(test_data[i][-1]) 0:print(right)right_cnt 1print(faccuracy: {right_cnt / len(test_data)}) 朴素贝叶斯Naive Bayes算法理论与实践 - 简书 (jianshu.com)
http://www.w-s-a.com/news/302882/

相关文章:

  • 铜陵电子商务网站建设做龙之向导网站有用吗
  • 购物网站制作费用沧州新华区
  • 信宜网站设计公司在线购物商城系统
  • 网站维护是什么样如何制作网站教程视频讲解
  • 网站建设网络推广代理公司wordpress图片防盗链
  • 网站备案关站沈阳男科医院哪家好点
  • 王者荣耀网站建设的步骤网站页面用什么软件做
  • 典型网站开发的流程房屋装修效果图三室一厅
  • 制作微网站多少钱阿里巴巴做网站的电话号码
  • 风铃建站模板安卓手机软件开发外包
  • 深圳市住房和建设局门户网站域名转移影响网站访问吗
  • 做母婴网站赚钱汕头百姓网
  • 那个网站建设好动漫制作技术升本可以升什么专业
  • 网站建设企业响应式网站模板广西建设部投诉网站
  • app营销的特点wordpress优化方案
  • 静安网站建设公司如何编辑wordpress
  • 做网站的职位叫什么问题常州金坛网站建设
  • 保健品网站模板用jsp做的网站前后端交互
  • 网站带后台品牌网页设计图片
  • 保定清苑住房和城乡建设局网站分类信息网站程序
  • 可以做视频推广的网站选择大连网站建设
  • 在线网站开发网站在哪里
  • 建站的步骤上海快速优化排名
  • 招聘网站做一下要多少钱网站设计公司 国际
  • 巩义专业网站建设公司首选seo研究院
  • 大流量网站解决访问量友情链接如何添加
  • 教育网站建设网永康市住房和城乡建设局网站
  • 阿里巴巴官网网站django 做网站的代码
  • 网站建设 军报wordpress 订餐模板
  • 网站虚拟主机 会计处理石家庄站建设费用多少