YucongDuan的个人博客分享 http://blog.sciencenet.cn/u/YucongDuan

博文

Running Knowledge Test for DIKWP Artificial Conscious(初学者版)

已有 12538 次阅读 2024-10-24 11:46 |系统分类:论文交流

Running Knowledge Test for DIKWP Artificial Consciousness System 

Yucong Duan

International Standardization Committee of Networked DIKWfor Artificial Intelligence Evaluation(DIKWP-SC)

World Artificial Consciousness CIC(WAC)

World Conference on Artificial Consciousness(WCAC)

(Email: duanyucong@hotmail.com)

Introduction

Building on the processed data (D_subj) and the extracted information (I_subj) from the Data and Information Modules, we'll now proceed to the Knowledge Module (K). In this module, we'll construct a knowledge network that represents the relationships between data points, incorporating the subjective differences and confidence levels calculated earlier. This network will serve as the foundation for reasoning and decision-making in the Wisdom Module (W).

Knowledge Module (K)Goals of the Knowledge Module
  1. Construct the Knowledge Network: Build a network (graph) where nodes represent data points and edges represent the relationships (differences) between them.

  2. Incorporate Uncertainty: Utilize the confidence levels from the Information Module to weight the edges, reflecting the reliability of each relationship.

  3. Prepare for Decision-Making: Organize knowledge in a way that facilitates effective reasoning in the Wisdom Module.

Step-by-Step Implementation of the Knowledge Module1. Define the Knowledge Network Structure

We'll represent the knowledge network as a graph:

  • Nodes: Representing the data points (D_subj).

  • Edges: Representing the relationships between data points, including:

    • The attribute the relationship is based on.

    • The calculated difference.

    • The confidence level.

2. Implement the Knowledge Network ClasspythonCopy codeclass SubjectiveKnowledgeNetwork:    def __init__(self):         self.nodes = {}         self.edges = []    def add_node(self, data_point):        if data_point['id'] not in self.nodes:             self.nodes[data_point['id']] = data_point    def add_edge(self, data_point_i, data_point_j, attribute, difference, confidence):         edge = {            'node_i': data_point_i['id'],            'node_j': data_point_j['id'],            'attribute': attribute,            'difference': difference,            'confidence': confidence,         }         self.edges.append(edge)    def get_network(self):        return {'nodes': self.nodes, 'edges': self.edges}3. Build the Knowledge Network

Using the information set (I_subj), we'll populate the knowledge network.

pythonCopy code# Initialize the Knowledge NetworkK_subj = SubjectiveKnowledgeNetwork()# Populate the networkfor info in I_subj:     data_point_i = next(dp for dp in D_subj if dp['id'] == info['data_point_i'])     data_point_j = next(dp for dp in D_subj if dp['id'] == info['data_point_j'])     K_subj.add_node(data_point_i)     K_subj.add_node(data_point_j)     K_subj.add_edge(         data_point_i,         data_point_j,         info['attribute'],         info['difference'],         info.get('confidence', 1.0)  # Default confidence to 1.0 if not specified     )4. The Resulting Knowledge Network

Nodes:

pythonCopy code{    1: {'id': 1, 'color_category': 'Red', 'size': 0.80},    2: {'id': 2, 'color_category': 'Red', 'size': 0.75},    3: {'id': 3, 'color_category': 'Green', 'size': 0.85}, }

Edges:

pythonCopy code[     {'node_i': 1, 'node_j': 2, 'attribute': 'color_category', 'difference': 0, 'confidence': 1.0},     {'node_i': 1, 'node_j': 3, 'attribute': 'color_category', 'difference': 1, 'confidence': 1.0},     {'node_i': 2, 'node_j': 3, 'attribute': 'color_category', 'difference': 1, 'confidence': 1.0},     {'node_i': 1, 'node_j': 2, 'attribute': 'size', 'difference': 0.05, 'confidence': 1.0},     {'node_i': 1, 'node_j': 3, 'attribute': 'size', 'difference': 0.05, 'confidence': 1.0},     {'node_i': 2, 'node_j': 3, 'attribute': 'size', 'difference': 0.10, 'confidence': 1.0}, ]5. Incorporating Uncertainty into the Network

If we had confidence levels less than 1.0 due to uncertainty in the data, these would be included in the edges. For example:

pythonCopy code# Example where confidence is less than 1.0{'node_i': 1, 'node_j': 2, 'attribute': 'size', 'difference': 0.05, 'confidence': 0.9}

This would indicate that we're 90% confident in the size difference between nodes 1 and 2.

6. Visualizing the Knowledge Network (Optional)

For better understanding, you might consider visualizing the network using a graph library such as NetworkX and Matplotlib.

pythonCopy codeimport networkx as nximport matplotlib.pyplot as plt# Create a graphG = nx.Graph()# Add nodesfor node_id, data_point in K_subj.nodes.items():     G.add_node(node_id, **data_point)# Add edges with attributesfor edge in K_subj.edges:     G.add_edge(         edge['node_i'],         edge['node_j'],         attribute=edge['attribute'],         difference=edge['difference'],         confidence=edge['confidence']     )# Draw the graphpos = nx.spring_layout(G) nx.draw(G, pos, with_labels=True) edge_labels = { (edge['node_i'], edge['node_j']): f"{edge['attribute']} ({edge['difference']})"                 for edge in K_subj.edges } nx.draw_networkx_edge_labels(G, pos, edge_labels=edge_labels) plt.show()Handling Uncertainty in the Knowledge Network1. Weighting Edges Based on Confidence

We can weight the edges in the graph based on the confidence levels. This weighting can be used in algorithms that traverse the network, influencing the decisions made in the Wisdom Module.

pythonCopy code# When adding edges, include weightsdef add_edge_with_weight(self, data_point_i, data_point_j, attribute, difference, confidence):     weight = confidence  # You may also factor in the difference     edge = {        'node_i': data_point_i['id'],        'node_j': data_point_j['id'],        'attribute': attribute,        'difference': difference,        'confidence': confidence,        'weight': weight,     }     self.edges.append(edge)2. Utilizing the Knowledge Network

The Knowledge Network now represents:

  • Relationships between data points.

  • Differences and similarities based on attributes.

  • Confidence levels reflecting our certainty.

This network is prepared to be used in the Wisdom Module, where we'll apply reasoning to make informed decisions, taking into account both the relationships and the associated uncertainties.

Conclusion of the Knowledge Module

We've successfully constructed the Knowledge Network (K_subj) that captures the relationships between data points, including the subjective differences and confidence levels derived from the Information Module. This network provides a structured representation of our knowledge, accommodating incomplete, imprecise, and inconsistent data, and is ready to be utilized for decision-making in the Wisdom Module.

Next Steps:

  • Wisdom Module (W): We'll proceed to apply reasoning and decision-making processes using the knowledge network, handling uncertainty and aligning with the system's goals.

  • Purpose Module (P): Ensure that the decisions made are aligned with the overarching purpose of the system, even in the presence of uncertainty.

References for Further Reading

  1. International Standardization Committee of Networked DIKWP for Artificial Intelligence Evaluation (DIKWP-SC),World Association of Artificial Consciousness(WAC),World Conference on Artificial Consciousness(WCAC)Standardization of DIKWP Semantic Mathematics of International Test and Evaluation Standards for Artificial Intelligence based on Networked Data-Information-Knowledge-Wisdom-Purpose (DIKWP ) Model. October 2024 DOI: 10.13140/RG.2.2.26233.89445 .  https://www.researchgate.net/publication/384637381_Standardization_of_DIKWP_Semantic_Mathematics_of_International_Test_and_Evaluation_Standards_for_Artificial_Intelligence_based_on_Networked_Data-Information-Knowledge-Wisdom-Purpose_DIKWP_Model

  2. Duan, Y. (2023). The Paradox of Mathematics in AI Semantics. Proposed by Prof. Yucong Duan:" As Prof. Yucong Duan proposed the Paradox of Mathematics as that current mathematics will not reach the goal of supporting real AI development since it goes with the routine of based on abstraction of real semantics but want to reach the reality of semantics. ".



https://blog.sciencenet.cn/blog-3429562-1456775.html

上一篇:Running Information Test for DIKWP Artificial Consciou(初学者版)
下一篇:Running Wisdom Test for DIKWP Artificial Consciousness(初学者版)
收藏 IP: 140.240.39.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-11-21 17:15

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部