Mining social networks to predict your app choices

麻省理工学院的研究人员通过分析智能手机用户的社交网络行为来预测他们可能会安装的应用程序。研究团队使用了包括电话记录、蓝牙检测及Facebook活动在内的多种数据源,以此来识别用户最紧密的朋友及其使用的应用程序,并据此预测用户安装特定应用程序的可能性。
 

UNSURE which app to download to your smartphone? While you waver, internet giants like Apple and Google could soon be predicting what you will install by analysing how you interact with your friends.

A team at MIT's Media Lab in Cambridge, Massachusetts, analysed social-network behaviour among smartphone users to see if it could help forecast app downloads. The research could give developers a valuable insight into why someone chooses to download particular apps.

"We thought, 'Can we use social networks to find which apps people might find interesting?' " says team member Wei Pan. "We found it difficult."

The team gave smartphones running Google's Android software to 55 postgraduate students living in university accommodation. Each phone recorded masses of social interactions from several sources over a period of five months: logging phone calls, detecting physical proximity using Bluetooth and keeping track of activity on Facebook.

They also logged when each student installed a new app from the more than 30,000 available on the Android Market app store.

They created software that analysed these data in three stages. First, it aimed to identify a user's most significant friends. It then noted the apps those friends were using. Finally, it worked out the probability that a given app is owned by a user, based on what their closest friends owned.

Judging the importance of each friend proved a tricky task. "We ended up wanting to compute the optimum social network, to describe exactly who were your closest friends," says Pan. But data taken from a single source didn't offer enough insight. So their software combined all the sources to predict a list of apps that a particular user had installed from the 821 different ones downloaded by the entire group. On average across their tests, 45 per cent of the apps on each person's list was predicted correctly. In comparison, complete guesses were only about 10 per cent accurate (arxiv.org/abs/1106.0359).

The work will be presented at an artificial intelligence conference in San Francisco in August.

The technology could one day be rolled into any app, allowing developers to analyse social network data from a user's smartphone and shift their marketing focus accordingly. "They're reinforcing that we don't have one social network - it's the combined effect of networks that's important," says Bernie Hogan of the Oxford Internet Institute, UK. "These guys are at the forefront of figuring out what to do with them."

 

refer to:http://www.newscientist.com/article/mg21128195.600-mining-social-networks-to-predict-your-app-choices.html

### 使用图神经网络增强遗传算法以实现社交网络中的多跳影响力最大化 #### 图神经网络在社交网络分析中的应用 图神经网络(GNNs)能够有效捕捉节点之间的复杂关系,在处理具有高度连接性的数据结构方面表现出色。对于社交网络传播模型而言,通过学习节点特征表示可以更好地理解个体间的互动模式以及信息扩散路径[^1]。 #### 遗传算法优化过程概述 遗传算法是一种基于自然选择原理设计出来的全局搜索方法,适用于解决组合优化问题。其核心在于模拟生物进化过程中基因传递机制来寻找最优解集。当应用于社交网络环境下的影响范围扩大化场景时,则需考虑如何定义适应度函数以便评估候选种子集合的好坏程度。 #### 结合两者优势的方法论探讨 为了提升传统GA求解效率并改善最终结果质量,可引入GNN作为辅助工具参与整个计算流程: - **初始化种群阶段**:利用预训练好的GNN模型预测各节点成为活跃传播者的潜在可能性得分;依据此概率分布随机采样生成初始染色体; - **交叉变异操作期间**:借助于已构建的社会关系子图谱指导新个体创造方向——即优先保留那些高影响力的局部区域内的成员构成下一代样本空间; - **评价体系重构环节**:除了常规考量被激活用户的数量外,还应加入由GNN推断得出的预期后续波及效应因子共同决定单条记录对应的适配值大小。 ```python import torch from torch_geometric.nn import GCNConv import numpy as np class GNNEnhancedGeneticAlgorithm(): def __init__(self, data, population_size=100, generations=50): self.data = data self.population_size = population_size self.generations = generations # Initialize the GNN model for node importance prediction num_features = data.num_node_features hidden_channels = 16 self.model = GCNModel(num_features, hidden_channels) def initialize_population(self): predictions = self.predict_importance_scores() initial_population = [] while len(initial_population) < self.population_size: chromosome = select_nodes_based_on_probabilities(predictions) if validate_chromosome(chromosome): # Ensure no duplicates or invalid selections initial_population.append(chromosome) return initial_population def predict_importance_scores(self): with torch.no_grad(): out = self.model(self.data.x, self.data.edge_index).softmax(dim=-1) scores = out[:, 1].cpu().numpy() # Assuming binary classification where class '1' indicates higher influence normalized_scores = (scores - min(scores)) / (max(scores) - min(scores)) return normalized_scores def main(): dataset = load_social_network_data() ga_instance = GNNEnhancedGeneticAlgorithm(dataset) best_solution = run_genetic_algorithm(ga_instance) evaluate_and_report_results(best_solution) if __name__ == "__main__": main() ``` 上述代码片段展示了如何创建一个融合了GCN特性的改进版遗传算法框架用于探索最佳的影响者群体配置方案。值得注意的是实际应用场景可能涉及更多细节调整和技术选型工作,这里仅提供了一个简化版本供参考[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值