解释性人工智能(XAI)

引言

        解释性人工智能(XAI)是指一类旨在使人能够理解和解释机器学习模型的方法和技术。XAI的目标是提高AI系统的透明度和可理解性,让人们能够理解机器学习模型的决策过程、推理方式和结果。这对于社会应用和用户信任非常重要,因为AI系统的不可解释性可能带来风险和问题。

        例如,在医疗领域,基于机器学习的诊断系统可能会出现错误的判断,如果这些错误不能被解释或理解,就会严重影响医生和患者的信任和满意度。同样,在金融领域,决策树或神经网络等模型的输出结果可能会影响到人们的投资和贷款等决策,如果这些决策不能被理解或解释,就难以建立起用户对AI系统的信任和依赖。

        因此,XAI对于提高AI系统的透明度和可理解性具有重要的作用和意义。通过XAI技术,人们可以更好地理解机器学习模型的决策过程,从而提高其可靠性和准确性。

1. 概念和背景

        解释性人工智能(XAI)是指一类旨在使人能够理解和解释机器学习模型的方法和技术。其目标是提高AI系统的透明度和可理解性,让人们能够理解机器学习模型的决策过程、推理方式和结果。

AI系统的透明度和可理解性对于社会应用和用户信任非常重要的原因如下:

  1. 可解释性促进可信度:当AI系统的决策过程可以被解释和理解时,人们更容易相信该系统的准确性和可靠性。这对于关键领域如医疗、金融和法律等至关重要,因为这些领域的决策往往需要有合理的解释和依据。

  2. 误判和错误纠正:如果AI系统做出错误的决策,可解释性使人们能够追溯决策的原因,并纠正错误。例如,在医疗诊断中,如果机器学习模型错误地将一个患者诊断为正常,医生可以通过理解模型的决策过程来找到错误的原因并进行修正。

  3. 避免偏见和不公平:AI系统的不可解释性可能导致潜在的偏见和不公平现象。例如,招聘中使用的自动筛选系统可能会对某些人群产生不公平的影响,但如果无法解释其决策过程,就很难发现和纠正这个问题。

下面是几个实际案例,说明AI系统的不可解释性可能带来的问题和风险:

  1. 信用评分系统:银行和金融机构使用AI算法来评估借款人的信用风险。然而,这些算法通常非常复杂且不可解释,导致借款人难以理解为何被拒绝贷款。这可能引发争议和不满,破坏用户对金融系统的信任。

  2. 自动驾驶汽车:自动驾驶汽车依赖于深度学习模型进行决策和感知。然而,当发生事故时,由于无法解释模型的决策过程,很难确定责任和原因。这可能引发法律纠纷和安全担忧。

  3. 医疗诊断系统:医疗领域利用AI系统进行疾病诊断和预测。如果这些系统不能提供解释和依据,医生和患者难以信任其结果。此外,不可解释的系统也难以满足医疗行业对于透明性和责任的要求。

        为了解决这些问题,XAI技术被广泛研究和应用,例如使用特征重要性分析、模型可视化和规则提取等方法来提高模型的可解释性和透明度。通过增加AI系统的可解释性,我们可以提高其社会应用的可信度和用户的信任水平。

2. XAI的应用和意义

  1. 医疗领域:XAI在医疗诊断和治疗决策中具有重要作用。通过解释模型的决策过程,医生可以更好地理解AI系统如何做出诊断,并与其共同决策。例如,通过可视化模型的特征重要性,医生可以了解到模型在诊断中关注的关键特征,从而提高对疾病的理解和判断。

代码示例:

# 使用LIME算法解释模型的决策过程
import lime
import lime.lime_tabular
​
# 创建LIME解释器
explainer = lime.lime_tabular.LimeTabularExplainer(training_data, feature_names=feature_names, class_names=class_names)
​
# 解释一个样本的预测结果
exp = explainer.explain_instance(test_sample, model.predict_proba, num_features=5)
exp.show_in_notebook()  # 在Jupyter Notebook中显示解释结果
  1. 金融领域:XAI在信用评分、风险管理和投资决策中发挥着重要作用。通过解释机器学习模型的决策过程,金融从业者可以更好地理解模型的预测依据,并评估其合理性和准确性。同时,可解释性还有助于发现和纠正潜在的偏见和不公平现象。

代码示例:

# 使用SHAP算法解释模型的预测结果
import shap
​
# 创建SHAP解释器
explainer = shap.Explainer(model)
​
# 解释一个样本的预测结果
shap_values = explainer(test_sample)
shap.plots.waterfall(shap_values[0])  # 绘制瀑布图来展示特征对预测结果的贡献
  1. 自动驾驶:XAI在自动驾驶领域有助于提高系统的可靠性和安全性。通过解释模型的决策过程,车辆乘客和监管部门可以更好地理解自动驾驶系统如何进行决策,并评估其合理性和安全性。这对于调查事故责任、改进系统设计和满足监管要求非常重要。

代码示例:

# 使用LIME算法解释模型的决策过程
import lime
import lime.lime_image
​
# 创建LIME解释器
explainer = lime.lime_image.LimeImageExplainer()
​
# 解释一张图像的预测结果
explanation = explainer.explain_instance(image, model.predict_proba, top_labels=1, hide_color=0, num_samples=1000)
explanation.show_in_notebook()  # 在Jupyter Notebook中显示解释结果

XAI不仅提供了更可靠和可解释的决策支持,还在解决AI伦理和偏见问题上发挥着重要作用:

  1. 减少算法歧视:通过解释模型的决策过程,可以发现和纠正潜在的算法歧视问题。例如,在招聘中使用自动筛选系统时,可解释性可以帮助评估其决策是否受到性别、种族等因素的影响,并采取相应的措施来减少偏见。

  2. 错误判断纠正:当AI系统做出错误的决策时,XAI可以帮助用户理解错误的原因,并采取相应的措施进行纠正。例如,在司法系统中使用AI进行罪犯判定时,如果模型的决策结果存在错误,可解释性可以帮助律师和法官理解模型的决策依据,从而发现和纠正错误。

        XAI在医疗、金融、自动驾驶等领域的应用能够提供更可靠和可解释的决策支持,帮助用户理解AI系统的决策过程。同时,它还有助于解决AI伦理和偏见问题,减少算法歧视和错误判断。通过使用适当的XAI技术和方法,可以增强AI系统的透明度和可信度,推动其在各个领域的应用。

XAI的研究领域和方法

1. 算法改进

  1. 透明机器学习算法

        透明机器学习算法是指那些可以提供模型决策过程的详细信息的算法。这些算法通常使用可解释性模型(例如线性回归、决策树等)或添加了可解释性约束的复杂模型(例如LASSO回归、ElasticNet等)来进行训练。这些算法的主要优点是提供了对模型决策过程的深入理解,从而帮助提高模型的可信度和预测准确性。

代码示例:

# 使用透明机器学习算法(如决策树)进行分类
from sklearn.tree import DecisionTreeClassifier
​
model = DecisionTreeClassifier()
model.fit(X_train, y_train)
​
# 显示模型的特征重要性
feature_importances = model.feature_importances_
print(feature_importances)
        2.规则提取

规则提取是一种从黑盒模型中提取可理解规则的技术。它通常通过分析模型的输入输出关系来提取模型的行为和决策规则。这些规则可以用于解释模型的预测结果,并帮助用户理解模型的决策依据。

代码示例:

# 使用规则提取算法(如OneR)进行分类
from sklearn.naive_bayes import GaussianNB
from sklearn.datasets import load_iris
from sklearn.metrics import accuracy_score
​
iris = load_iris()
X, y = iris.data, iris.target
​
model = GaussianNB()
model.fit(X, y)
​
# 使用OneR算法提取规则
from sklearn.experimental import enable_hist_gradient_boosting
from sklearn.tree import DecisionTreeClassifier, export_text
​
rules = export_text(DecisionTreeClassifier(random_state=42).fit(X, y))
print(rules)
        3.局部可解释性模型

        局部可解释性模型是指那些可以提供关于单个预测的解释的模型。这些模型通常使用局部拟合算法来训练,例如局部加权线性回归(LWLR)或局部加权核密度估计(LWKDE)。这些模型的主要优点是提供了针对单个预测的解释和可信度评估,从而帮助用户更好地理解AI系统的决策过程。

代码示例:

# 使用局部加权线性回归(LWLR)进行预测
import numpy as np
from sklearn.linear_model import LinearRegression
​
def lwlr(test_point, x_data, y_data, k=1.0):
    m = np.shape(x_data)[0]
    weights = np.mat(np.eye((m)))
    for j in range(m):
        diff_mat = test_point - x_data[j, :]
        weights[j, j] = np.exp(diff_mat * diff_mat.T / (-2.0 * k ** 2))
    xTx = x_data.T * (weights * x_data)
    if np.linalg.det(xTx) == 0.0:
        return None
    ws = xTx.I * (x_data.T * (weights * y_data))
    return test_point * ws
​
# 使用LWLR进行预测
test_point = np.array([0.5, 0.5, 0.5, 0.5])
lwlr(test_point, X_train, y_train, k=1.0)

        透明机器学习算法、规则提取和局部可解释性模型是提高AI系统可解释性和可靠性的常用方法。它们都可以提供对模型决策过程的深入理解,并帮助用户更好地理解AI系统的决策依据。这些方法在各个领域都有广泛的应用,例如医疗、金融、自动驾驶等。

2. 可视化技术

        可视化技术在可解释人工智能(XAI)中起着至关重要的作用,它能够帮助用户理解AI系统的决策过程、增强对模型的信任,并提供直观的解释。以下是两个常见的可视化技术示例:特征重要性可视化和决策路径可视化。

        1.特征重要性可视化

        特征重要性可视化是一种展示模型特征对预测结果的相对重要性的方法。它可以帮助用户了解模型对不同特征的依赖程度,从而更好地理解模型的决策依据。

代码示例:

import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestClassifier
​
model = RandomForestClassifier()
model.fit(X_train, y_train)
​
# 获取特征重要性
feature_importances = model.feature_importances_
​
# 可视化特征重要性
plt.bar(range(len(feature_importances)), feature_importances)
plt.xticks(range(len(feature_importances)), feature_names, rotation=90)
plt.xlabel('Feature')
plt.ylabel('Importance')
plt.title('Feature Importance')
plt.show()

        上述代码使用随机森林分类器训练了一个模型,并通过feature_importances_属性获取了特征重要性。随后,使用matplotlib库进行可视化,将特征重要性以柱状图的形式展示出来。

        2.决策路径可视化

        决策路径可视化是一种将模型的决策路径以图形化的方式展示出来的技术。它可以帮助用户了解模型在预测过程中的决策流程,并提供对预测结果的解释。

代码示例:

from sklearn import tree
import graphviz
​
model = tree.DecisionTreeClassifier()
model.fit(X_train, y_train)
​
# 可视化决策树
dot_data = tree.export_graphviz(model, out_file=None, feature_names=feature_names, class_names=class_names, filled=True)
graph = graphviz.Source(dot_data)
graph.render("decision_tree")  # 将决策路径保存为PDF或图片文件
graph.view()  # 在浏览器中显示决策路径

        上述代码使用决策树分类器训练了一个模型,并使用export_graphviz函数将决策树导出为DOT格式的数据。随后,使用graphviz库将DOT数据渲染成决策树的可视化图形。

        通过特征重要性可视化和决策路径可视化,用户可以更好地理解AI系统的决策过程,并对预测结果的可靠性产生信任。这些可视化技术在XAI中起着关键作用,有助于提高用户对AI决策的理解和接受度。

3. 应用场景

  1. 医疗诊断

        在医疗诊断领域,AI系统可以通过分析患者的病历、体征和检查结果来预测病情,但这些AI系统通常是黑盒子,难以解释其决策依据。XAI技术可以帮助医生理解AI系统的决策过程,并提供更准确的判断依据。

        应用案例: 病情预测:AI系统可以根据患者的病历、体征和检查结果预测疾病的发展趋势,例如预测癌症的生存率或心脏病发作的风险。

XAI的帮助:

  • 解释特征重要性:XAI技术可以分析AI系统对预测结果所使用的特征,将其排序并显示给医生,从而帮助医生了解哪些特征对预测结果最为重要。

  • 提供可信的解释:通过可视化或文字形式的解释,XAI技术可以向医生解释AI系统如何结合特征进行决策,并提供对决策的信心度量。

优势:

  • 提高诊断准确率:XAI技术帮助医生理解AI系统的决策过程,从而帮助医生更好地使用AI系统作出准确的诊断。

  • 个性化治疗:通过理解AI系统的决策过程,医生可以根据患者的特定情况制定个性化的治疗方案。

  • 增加对AI系统的信任:通过提供透明和可解释的决策过程,XAI技术增加了医生对AI系统的信任,使其更愿意接受和使用AI系统。

挑战:

  • 模型可解释性问题:大多数AI模型是黑盒子,难以解释其决策依据,这使得医生难以理解AI系统如何得出某一诊断结果。

  • 数据质量问题:医疗数据通常复杂且存在噪声,这可能影响AI系统的预测准确性,同时也增加了解释AI系统决策的难度。

  • 法律和伦理问题:解释AI系统的决策过程可能涉及患者隐私和数据保护等法律和伦理问题。

解决方案:

  • 可解释人工智能技术:使用XAI技术,如局部线性可解释性(LIME)或SHapley Additive exPlanations(SHAP),可以帮助解释AI模型的决策过程。

  • 数据清洗和预处理:通过对医疗数据进行清洗和预处理,可以提高数据质量,减少噪声和错误。

下面是一个使用LIME解释模型决策的示例代码:

import lime
import lime.lime_tabular
​
# 训练模型
model.fit(X_train, y_train)
​
# 初始化解释器
explainer = lime.lime_tabular.LimeTabularExplainer(X_train, feature_names=feature_names, class_names=class_names, discretize_continuous=True)
​
# 选择一条样本进行解释
sample_idx = 10
sample = X_test[sample_idx]
​
# 解释该样本的预测结果
explanation = explainer.explain_instance(sample, model.predict_proba)
​
# 可视化解释结果
explanation.show_in_notebook()
        金融风险评估

        在金融风险评估中,AI系统可以通过分析客户的个人信息、财务状况和历史信用记录来评估其信用风险。XAI技术可以帮助金融专家理解AI系统的决策过程,并提供更准确的判断依据。

        应用案例: 信用评分:AI系统可以根据客户的个人信息和历史信用记录评估其信用风险,例如为客户分配信用分数或决定是否批准贷款申请。

        XAI的帮助:

        特征重要性解释:XAI技术可以解释哪些特征对于AI系统评估信用风险最为重要,从而帮助金融专家了解决策的依据。

        决策可信度评估:XAI技术可以提供对AI系统预测结果的置信度评估,帮助金融专家判断AI系统的决策是否可靠。

        优势:

        提高风险评估准确率:通过理解AI系统的决策过程,金融专家可以更好地使用模型评估客户的信用风险,从而提高评估准确率。

        降低信贷风险:通过更准确地评估客户的信用风险,金融机构可以更好地管理信贷风险,减少坏账率。

        加快决策速度:AI系统可以快速评估客户的信用风险,从而加快贷款决策的速度。

        挑战:

        模型可解释性问题:大多数AI模型是黑盒子,难以解释其决策依据,这使得金融专家难以理解AI系统如何评估客户的信用风险。

        数据质量问题:金融数据通常包含噪声和缺失值,这可能影响AI系统的预测准确性,并增加解释AI系统决策的难度。

        法律和伦理问题:使用AI系统评估信用风险可能涉及公平性和歧视等法律和伦理问题。

解决方案:

  • 可解释人工智能技术:使用XAI技术,如SHAP或LIME,可以帮助解释AI模型的决策过程。

  • 数据清洗和预处理:通过对金融数据进行清洗和预处理,可以提高数据质量,并减少噪声和错误。

使用XAI方法改进算法可解释性

        当使用常见的机器学习算法(如决策树或逻辑回归)时,可以应用可解释性技术来改进算法的可解释性。下面是一个使用LIME(局部线性可解释性)技术来解释决策树模型的示例代码:

import numpy as np
from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier
import lime
import lime.lime_tabular
​
# 加载数据集
data = load_iris()
X = data.data
y = data.target
feature_names = data.feature_names
class_names = data.target_names
​
# 训练决策树模型
model = DecisionTreeClassifier()
model.fit(X, y)
​
# 初始化解释器
explainer = lime.lime_tabular.LimeTabularExplainer(X, feature_names=feature_names, class_names=class_names, discretize_continuous=True)
​
# 选择一条样本进行解释
sample_idx = 0
sample = X[sample_idx]
​
# 解释该样本的预测结果
explanation = explainer.explain_instance(sample, model.predict_proba, num_features=len(feature_names))
​
# 可视化解释结果
explanation.show_in_notebook()

        上述代码使用了sklearn库加载鸢尾花数据集,并使用DecisionTreeClassifier训练了一个决策树模型。接下来,我们使用lime.lime_tabular.LimeTabularExplainer初始化了一个解释器,并传入特征名称、类别名称和训练数据。然后,我们选择一条样本进行解释,并使用explain_instance方法来解释该样本的预测结果。最后,我们使用show_in_notebook方法将解释结果可视化展示出来。

        LIME技术通过生成局部可解释模型来解释决策树模型的决策过程。它通过对原始样本进行微小的特征扰动来生成类似的数据集,并使用这些数据集训练一个线性模型,从而解释原始样本的预测结果。在解释器中,我们使用num_features参数来指定要选择的特征数量。

        解释结果的可视化展示了特征的重要性和对预测结果的影响程度。在每个特征的解释中,我们可以看到特征的权重以及对应的预测结果的变化。这些解释可以帮助我们理解决策树模型是如何根据特征进行决策的,从而提高模型的可解释性。

通过使用XAI技术(如LIME)解释决策树模型,我们可以获得以下好处:

  1. 特征重要性解释:解释器会根据特征的权重显示出每个特征对预测结果的重要性,帮助我们理解模型是如何利用不同特征进行决策的。

  2. 决策可信度评估:解释器可以提供对预测结果的置信度评估,帮助我们判断模型的决策是否可靠。

结论

        首先,XAI可以增强AI系统的可理解性和透明度。传统的机器学习算法在解决实际问题时,常常缺乏可解释性,难以解释模型的运行过程,造成了不可信的感觉。而XAI技术可以提高AI系统的可解释性,帮助用户理解AI系统的决策和行为,增加对AI系统的信任度和透明度。

        其次,XAI对于AI技术发展和社会应用具有推动作用。AI技术的应用范围越来越广泛,但很多领域的AI系统都需要遵守一些道德、法律、规范等方面的要求。XAI可以帮助我们更好地理解AI系统的决策和行为,从而为制定相关规范和政策提供依据,推动AI技术的健康发展。

        未来,我们需要继续探索更先进的XAI技术,以提高AI系统的可解释性和透明度。同时,我们还需要解决一些挑战,例如:

  1. 如何平衡可解释性和预测性能之间的矛盾。

  2. 如何在处理大型、复杂数据集时提高解释器的效率和准确性。

  3. 如何应对对抗性攻击和隐私泄露等问题。

        为了解决这些挑战,我们需要加强学术界和工业界之间的合作,共同推动XAI技术的发展,并探索新的研究方向,以提高AI系统的可解释性和透明度,促进AI技术的健康发展。

下面是一个使用SHAP(Shapley Additive Explanations)技术来解释深度神经网络模型的示例代码:

import numpy as np
import tensorflow as tf
import shap
​
# 加载数据集
data = tf.keras.datasets.mnist.load_data()
X_train, y_train = data[0]
X_test, y_test = data[1]
​
# 构建深度神经网络模型
model = tf.keras.Sequential([
    tf.keras.layers.Flatten(input_shape=(28, 28)),
    tf.keras.layers.Dense(128, activation='relu'),
    tf.keras.layers.Dense(10)
])
model.compile(optimizer='adam', loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True), metrics=['accuracy'])
model.fit(X_train, y_train, epochs=5)
​
# 初始化解释器
explainer = shap.DeepExplainer(model, X_train[:100])
​
# 选择一条测试样本进行解释
sample_idx = 0
sample = X_test[sample_idx]
​
# 解释该样本的预测结果
explanation = explainer.shap_values(sample.reshape(1, -1))
​
# 可视化解释结果
shap.image_plot(explanation, -sample.reshape(1, 28, 28))

        上述代码使用了tensorflow库加载MNIST数据集,并使用Sequential模型构建了一个深度神经网络模型。接下来,我们使用shap.DeepExplainer初始化了一个解释器,并传入训练数据。然后,我们选择一条测试样本进行解释,并使用shap_values方法来解释该样本的预测结果。最后,我们使用shap.image_plot方法将解释结果可视化展示出来。

        SHAP技术通过对每个特征的影响进行分析来解释深度神经网络模型的决策过程。它通过对样本空间进行采样,生成类似的数据集,并使用这些数据集计算每个特征的Shapley值,从而解释原始样本的预测结果。在解释器中,我们使用shap.DeepExplainer来初始化一个解释器,并使用shap_values方法来解释样本的预测结果。

        解释结果的可视化展示了特征的重要性和对预测结果的影响程度。在每个特征的解释中,我们可以看到特征的权重以及对应的预测结果的变化。这些解释可以帮助我们理解深度神经网络模型是如何根据特征进行决策的,从而提高模型的可解释性。

通过使用XAI技术(如SHAP)解释深度神经网络模型,我们可以获得以下好处:

  1. 特征重要性解释:解释器会根据特征的Shapley值显示出每个特征对预测结果的重要性,帮助我们理解模型是如何利用不同特征进行决策的。

  2. 决策可信度评估:解释器可以提供对预测结果的置信度评估,帮助我们判断模型的决策是否可靠。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/362843.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

计算机速成课Crash Course - 26. 图形用户界面

今天继续计算机速成课Crash Course的系列讲解。 更多技术文章,全网首发公众号 “摸鱼IT” 锁定 -上午11点 - ,感谢大家关注、转发、点赞! 计算机速成课Crash Course - 26. 图形用户界面 (qq.com) 26. 图形用户界面 我们上集最后&#xff0…

【人工智能领域之深度学习】

人工智能领域之深度学习 深度学习的进展深度学习在过去几年取得了很多新进展。以下是其中一些重要的方面:总结 深度学习的进展 深度学习是人工智能领域的一个重要分支,它利用神经网络模拟人类大脑的学习过程,通过大量数据训练模型&#xff0…

虚拟机(VMware)ubuntu16.04 直接连接网口设备 USRP 吊舱

编辑虚拟网络编辑器 点击之后 选择网卡之后,点击确定。 电脑配置 使用了:192.168.2.56 虚拟机内部配置 和PC的配置一致

机器学习 - 代价函数

场景 上次简单学习了支持向量机的概念。概念如下: 支持向量机(SVM):SVM是一种监督学习算法,常用于分类问题。它的目标是找到一个超平面(在二维空间中是一条线,在更高维空间中是一个面&#xf…

简单实践 java spring cloud nacos注册中心

1.概要 1.1 说明 使用nacos做为注册中 1.2 要点 spring-cloud-alibaba-dependenciesspring-cloud-starter-alibaba-nacos-discovery spring-boot-starter-web SpringBootApplication EnableDiscoveryClient SpringApplication.run(Main.class); RestController Reques…

如何在树莓派安装运行Nginx实现无公网ip环境访问内网静态网站

文章目录 1. Nginx安装2. 安装cpolar3.配置域名访问Nginx4. 固定域名访问5. 配置静态站点 安装 Nginx(发音为“engine-x”)可以将您的树莓派变成一个强大的 Web 服务器,可以用于托管网站或 Web 应用程序。相比其他 Web 服务器,Ngi…

SW-LIMS实现化工企业危险化学品信息化管理

随着化工产业的不断发展,危险化学品的生产和使用在经济和社会发展中扮演着重要的角色。然而,危险化学品的安全隐患也同样日益突出,从危化品的生产到储存、运输和使用,如果控制不当,很容易造成安全事故,而一旦发生安全事故,不仅会造成巨大的经济损失,还将威胁到人类的生命健康与…

【Linux】VMware Workstation16安装银河麒麟高级服务器操作系统V10 SP3 AMD64

目录 一、麒麟服务器概述 二、安装步骤 设置硬盘大小 完成配置 修改内存 处理器等设备配置 选择直接安装 配置磁盘 网络配置 设置root账号密码 开始安装 启动完成 一、麒麟服务器概述 银河麒麟高级服务器操作系统V10是针对企业级关键业务,适应虚拟化、云…

从零学习Linux操作系统 第二十三部分 系统中火墙的管理及优化

1 、实验环境设定 第一台主机需要两个网卡 另一台主机一个网卡桥接到VMnet0上 第一台主机保证能够和windows保持连接 设定第一块儿网卡能够与Windows连接 设定第二台主机能够与第一台主机连接 二、火墙中的基本名词及知识 火墙就相当于是一个表格,这个表格里写…

一个 WPF + MudBlazor 的项目模板(附:多项目模板制作方法)

最近做了几个 WPF MudBlazor 的小东西,每次从头搭建环境比较繁琐,然鹅搭建过程还没啥技术含量,索性就直接做了个模板,方便以后使用。 1. 介绍 一个用来创建 .NET 8 WPF MudBlazor 的项目模板 适用于 VS2022 用法:…

【Linux】初始进程地址空间

最近,我发现了一个超级强大的人工智能学习网站。它以通俗易懂的方式呈现复杂的概念,而且内容风趣幽默。我觉得它对大家可能会有所帮助,所以我在此分享。点击这里跳转到网站。 目录 一、再谈fork二、程序地址空间2.1代码验证 三、虚拟地址&am…

Oracle 集群】RAC知识图文详细教程(四)--缓存融合技术和主要后台进程

Cache Fusion 原理 前面已经介绍了 RAC 的后台进程,为了更深入的了解这些后台进程的工作原理,先了解一下 RAC 中多节点对共享数据文件访问的管理是如何进行的。要了解 RAC 工作原理的中心,需要知道 Cache Fusion 这个重要的概念,要…

canvas自定义扩展方法:文字自动换行

查看专栏目录 canvas实例应用100专栏,提供canvas的基础知识,高级动画,相关应用扩展等信息。canvas作为html的一部分,是图像图标地图可视化的一个重要的基础,学好了canvas,在其他的一些应用上将会起到非常重…

专业邮件营销系统选蜂邮EDM:0.0041元/封!

邮件营销系统如何选择?做电子邮件营销的软件推荐? 邮件营销系统,您是否还在为高昂的价格而犹豫不决?是否还在寻找性价比超高的解决方案?别着急,蜂邮EDM来帮您解决问题! 邮件营销系统的魅力 邮…

【2024全网最详细】Google 搜索命令终极指南

💂 个人网站:【 海拥】【神级代码资源网站】【办公神器】🤟 基于Web端打造的:👉轻量化工具创作平台💅 想寻找共同学习交流的小伙伴,请点击【全栈技术交流群】 你是否尝试过使用 Google 搜索作为免费的 SEO …

Flink 读取 Kafka 消息写入 Hudi 表无报错但没有写入任何记录的解决方法

博主历时三年精心创作的《大数据平台架构与原型实现:数据中台建设实战》一书现已由知名IT图书品牌电子工业出版社博文视点出版发行,点击《重磅推荐:建大数据平台太难了!给我发个工程原型吧!》了解图书详情,京东购书链接:https://item.jd.com/12677623.html,扫描左侧二维…

OceanBase OBCA题目解析第3题:关于自动负载均衡与智能路由描述正确的是哪个?

考试科目:OceanBase OBCA 考试题量:50题 通过分数:60% 关于自动负载均衡与智能路由描述正确的是哪个? A、系统默D认配置下,主副本都在同一台服务器上 B、系统默认配置下,主副本都在同一个Zone内 C、SQL不…

TiDedup: A New Distributed Deduplication Architecture for Ceph——论文泛读

ATC 2023 Paper 分布式元数据论文汇总 问题 Ceph 是一个广泛部署的分布式存储系统,Ceph 中的集群级去重设计,由于一些缺点难以在生产环境中使用:(1)去重唯一数据会导致过多的元数据消耗;(2&am…

麒麟V10 mate-indicator进程占用内存过高问题

给客户新划的5台虚拟机,操作系统是麒麟V10,用户反映什么软件都没装系统内存占用就达到80%。 百度了一下是麒麟的bug,内存泄漏。官方分析报告。 解决方法:下载相应rpm包并安装即可解决。 1.确定麒麟版本 cat /etc/*release Ter…

Docker 入门第一篇 安装Docker Desktop并结合Springboot在Idea中应用

🌹作者主页:青花锁 🌹简介:Java领域优质创作者🏆、Java微服务架构公号作者😄 🌹简历模板、学习资料、面试题库、技术互助 🌹文末获取联系方式 📝 往期专栏回顾 专栏描述…