PAFit_data
object, which contains summary statistics of the dataset, PAFit estimates the attachment function $A_k$ and node fitness $\eta_i$ by penalized log-likelihood maximization. It also infers the remaining uncertainties in the estimated results by approximating the confidence intervals of $A_k$ and $\eta_i$. Estimation of either the attachment function or node fitness in isolation are also supported. Estimation of the PA function with $\eta_i = 1$ can be specified by setting only_PA = TRUE
. Estimation of node fitness with either $A_k = k$ or $A_k = 1$ can be specified by setting only_f = TRUE
.
PAFit (net_stat, only_PA = FALSE , only_f = FALSE , mode_f = "Linear_PA" , true_A = NULL , true_f = NULL , mode_reg_A = 0 , weight_PA_mode = 1 , s = 10 , lambda = 1 , auto_lambda = TRUE , r = 0.01 , alpha_start = 1 , start_mode_A = "Log_linear", start_mode_f = "Constant" , auto_stop = TRUE , stop_cond = 10^-7 , iteration = 200 , max_iter = 2e+05 , debug = FALSE , q = 1 , step_size = 0.5 , normalized_f = FALSE , interpolate = TRUE)
"PAFit_data"
containing all the summary statistics summerized from the data by the function GetStatistics
.
TRUE
means that the attachment function $A_k$ is estimated in isolation(fixing $\eta_i = 1$). Default is FALSE
.
TRUE
means that the fitness function is estimated in isolation. Default is FALSE
.
"Linear_PA"
, "Constant_PA"
or "Log_linear"
. In the first two cases, the PA function is fixed. If mode_f == "Linear_PA"
then $A_k = k$ for $k \ge 1$ and $A_0 = 1$. If mode_f == "Constant_PA"
then $A_k = 1$ for all $k$. In the final case of mode_f == "Log_linear"
, we set $A_k = k^\alpha$ for $k \ge 1$ and $A_0 = 1$. The value of $\alpha$ is also estimated. Default values is "Linear_PA"
.
true_A
is supplemented, then only node fitnesses are estimated.
true_f
is supplemented, then only the PA function is estimated.
0
, 1
or 2
. Indicates which regularization term is used for the PA function. For the regularization function used in the PLOS ONE and SR paper, use 0
. Default value is 0
.weight_PA_mode == 0
, the regularization term for $A_k$ is weighted by the total number of edges connected to degree $k$ nodes. If weight_PA_mode == 1
, the regularization terms have uniform weights. Default value is $0$.
s
for node fitness. Default value is 10
.
auto_lambda == TRUE
. Default value is 1
. lambda == 0
means no regularization for PA.
auto_lambda == TRUE
, lambda
will be determined automatically from the data by r
. Default is TRUE
.
r
for the PA function indicates the relative strength of the regularization term. From r
, the value of lambda
is automatically determined if auto_lambda == TRUE
. Default value is 0.01
.
1
."Log_linear"
(the initial PA function set to k^alpha_start) or "Random"
(the initial function is randomly sampled from a uniform distribution). Default value is "Log_linear"
."Constant"
(the initial node fitnesses are all set to 1
) or "Random"
(the initial node fitnesses are randomly sampled from a gamma distribution). Default value is "Constant"
.TRUE
auto_stop = TRUE
, the iterative algorithm stops when $abs(h(ii) - h(ii + 1)) / (abs(h(ii)) + 1) < stop_cond$ where $h(ii)$ is the value of the objective function at iteration $ii$. We recommend to choose stop_cond at most equal to $10^(- number of digits of h - 2)$, in order to ensure that when the algorithm stops, the increase in posterior probability is less than 1% of the current posterior probability. Default is 10^-7
.auto_stop == TRUE
. Default value is 20
.
2e+05
.
debug == TRUE
, the value of the objective function $h$ is printed out at each step. Defaule is FALSE
.1.=>
0.5.=>
FALSE
.TRUE
.2. Pham, T., Sheridan, P. & Shimodaira, H. (2015). PAFit: A Statistical Method for Measuring Preferential Attachment in Temporal Complex Networks. PLoS ONE 10(9): e0137796. doi:10.1371/journal.pone.0137796 (http://dx.doi.org/10.1371/journal.pone.0137796).
3. Pham, T., Sheridan, P. & Shimodaira, H. (2016). Joint Estimation of Preferential Attachment and Node Fitness in Growing Complex Networks. Scientific Reports 6, Article number: 32558. doi:10.1038/srep32558 (www.nature.com/articles/srep32558).
library("PAFit")
net <- GenerateNet(N = 50,m = 1, mode = 1, alpha = 1, shape = 10, rate = 10)
net_stats <- GetStatistics(net$graph)
result <- PAFit(net_stats)
Run the code above in your browser using DataLab