示例#1
0
    # res1, iterator_values1 = tensor_three_mode_product(transition_tensor, init_tensor1)
    # res2, iterator_values2 = tensor_three_mode_product(transition_tensor, init_tensor2)
    # res3, iterator_values3 = tensor_three_mode_product(transition_tensor, init_tensor3)
    #
    # print analysis_eigen_tensor(init_tensor1)
    # print analysis_eigen_tensor(init_tensor2)
    # print analysis_eigen_tensor(init_tensor3)
    #
    # print analysis_eigen_tensor(res1)
    # print analysis_eigen_tensor(res2)
    # print analysis_eigen_tensor(res3)

    temp_tensor = [[[random.choice([0, 1, 1000]) for i in range(poi_num)]
                    for j in range(time_num)] for k in range(user_num)]
    temp_tensor = three_tensor_hadarmard(
        1 / three_order_tensor_first_norm(temp_tensor), temp_tensor)

    print "初始张量性质:\n"
    print analysis_eigen_tensor(temp_tensor, "user")
    print analysis_eigen_tensor(temp_tensor, "time")
    print analysis_eigen_tensor(temp_tensor, "poi")
    print "\n"

    temp_tensor1 = temp_tensor[:]
    temp_tensor2 = temp_tensor[:]
    temp_tensor3 = temp_tensor[:]
    temp_tensor4 = temp_tensor[:]

    res1, iterator_values1 = tensor_three_mode_product(transition_tensor,
                                                       temp_tensor1)
    res2, iterator_values2 = tensor_three_mode_product(transition_tensor2,
示例#2
0
    # init_tensor6 = user_slice_sum_one(temp_tensor)

    # res1, iterator_values1 = tensor_three_mode_product(transition_tensor, init_tensor1)
    # res2, iterator_values2 = tensor_three_mode_product(transition_tensor, init_tensor2)
    # res3, iterator_values3 = tensor_three_mode_product(transition_tensor, init_tensor3)
    #
    # print analysis_eigen_tensor(init_tensor1)
    # print analysis_eigen_tensor(init_tensor2)
    # print analysis_eigen_tensor(init_tensor3)
    #
    # print analysis_eigen_tensor(res1)
    # print analysis_eigen_tensor(res2)
    # print analysis_eigen_tensor(res3)

    temp_tensor = [[[random.choice([0, 1, 1000]) for i in range(poi_num)] for j in range(time_num)] for k in range(user_num)]
    temp_tensor = three_tensor_hadarmard(1/three_order_tensor_first_norm(temp_tensor), temp_tensor)

    print "初始张量性质:\n"
    print analysis_eigen_tensor(temp_tensor, "user")
    print analysis_eigen_tensor(temp_tensor, "time")
    print analysis_eigen_tensor(temp_tensor, "poi")
    print "\n"

    temp_tensor1 = temp_tensor[:]
    temp_tensor2 = temp_tensor[:]
    temp_tensor3 = temp_tensor[:]
    temp_tensor4 = temp_tensor[:]

    res1, iterator_values1 = tensor_three_mode_product(transition_tensor, temp_tensor1)
    res2, iterator_values2 = tensor_three_mode_product(transition_tensor2, temp_tensor2)
    # res3, iterator_values3 = shifted_tensor_three_mode_product(transition_tensor3, temp_tensor3, alpha_shift)
示例#3
0
    # res1, iterator_values1 = tensor_three_mode_product(transition_tensor, init_tensor1)
    # res2, iterator_values2 = tensor_three_mode_product(transition_tensor, init_tensor2)
    # res3, iterator_values3 = tensor_three_mode_product(transition_tensor, init_tensor3)
    #
    # print analysis_eigen_tensor(init_tensor1)
    # print analysis_eigen_tensor(init_tensor2)
    # print analysis_eigen_tensor(init_tensor3)
    #
    # print analysis_eigen_tensor(res1)
    # print analysis_eigen_tensor(res2)
    # print analysis_eigen_tensor(res3)

    temp_tensor_all_equal = [[[1/(poi_num * time_num * user_num) for i in range(poi_num)] for j in range(time_num)] for k in range(user_num)]

    temp_tensor = [[[random.choice([0, 1, 2, 3, 4]) for i in range(poi_num)] for j in range(time_num)] for k in range(user_num)]
    temp_tensor_all_ramdom = three_tensor_hadarmard(1/three_order_tensor_first_norm(temp_tensor), temp_tensor)

    temp_tensor_user_equal = [[[1/(poi_num * time_num) for i in range(poi_num)] for j in range(time_num)] for k in range(user_num)]

    temp_tensor = [[[random.choice([0, 1, 2, 3, 4]) for i in range(poi_num)] for j in range(time_num)] for k in range(user_num)]
    temp_tensor_user_ramdom = user_slice_sum_one(temp_tensor)

    print check_six_order_transition_tensor(transition_tensor)
    # print "初始张量性质:\n"
    # print analysis_eigen_tensor(temp_tensor, "user")
    # print analysis_eigen_tensor(temp_tensor, "time")
    # print analysis_eigen_tensor(temp_tensor, "poi")
    # print "\n"

    res1, iterator_values1 = tensor_three_mode_product(transition_tensor, temp_tensor_all_equal)
    res2, iterator_values2 = tensor_three_mode_product(transition_tensor, temp_tensor_all_ramdom)