<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://provided21.github.io//feed.xml" rel="self" type="application/atom+xml" /><link href="https://provided21.github.io//" rel="alternate" type="text/html" /><updated>2026-09-20T11:10:43+08:00</updated><id>https://provided21.github.io//feed.xml</id><title type="html">Haoran Hu · Data &amp;amp; Media</title><subtitle>Personal website of Haoran Hu, an undergraduate at Nanjing University studying model routing and computational communication.</subtitle><author><name>Haoran Hu</name><email>huhr@smail.nju.edu.cn</email><uri>https://provided21.github.io</uri></author><entry><title type="html">Can LLMs Simulate Public Opinion? Initial Findings</title><link href="https://provided21.github.io//research/computational-social-science/llm-population-simulation/" rel="alternate" type="text/html" title="Can LLMs Simulate Public Opinion? Initial Findings" /><published>2026-06-10T00:00:00+08:00</published><updated>2026-06-10T00:00:00+08:00</updated><id>https://provided21.github.io//research/computational-social-science/llm-population-simulation</id><content type="html" xml:base="https://provided21.github.io//research/computational-social-science/llm-population-simulation/"><![CDATA[<p>In my current research project, I’ve been exploring whether large language models can accurately simulate how different demographic groups respond to policy questions. Using the <a href="https://huggingface.co/datasets/Pleias/Nemotron-Personas-France">Nemotron-Personas-France</a> dataset — which contains 6 million synthetic French adult personas based on the 2025 French census — we’re comparing LLM-generated responses against real public opinion survey data.</p>

<h2 id="the-core-question">The Core Question</h2>

<p>The fundamental question is: <strong>How well do LLM-simulated policy attitudes align with actual survey data?</strong> And critically, <em>which</em> types of questions show better alignment, and how much does this vary across different models?</p>

<h2 id="approach">Approach</h2>

<p>Our technical pipeline involves:</p>

<ol>
  <li><strong>Retrieval</strong> — matching survey questions to relevant demographic-conditioned prompts</li>
  <li><strong>LLM Simulation</strong> — generating persona-conditional responses at scale</li>
  <li><strong>Statistical Validation</strong> — comparing simulated distributions against ground-truth survey results</li>
</ol>

<h2 id="early-observations">Early Observations</h2>

<p>While we’re still in the early stages, a few patterns are emerging:</p>

<ul>
  <li>LLMs tend to capture broad demographic trends (e.g., age-based opinion gaps) reasonably well</li>
  <li>But they often <strong>underestimate variance</strong> — the simulated responses are more “centrist” than real survey data</li>
  <li>Different models (and model sizes) show meaningfully different levels of alignment</li>
</ul>

<h2 id="why-this-matters">Why This Matters</h2>

<p>If LLMs can reliably simulate population attitudes, this could complement traditional survey methods — especially for rapid pre-testing of questionnaires or exploring hypothetical scenarios. But if the alignment is poor or systematically biased, using LLMs as “synthetic respondents” could lead to misleading conclusions.</p>

<p>I’ll share more detailed results as the project progresses. Stay tuned!</p>

<hr />

<p><em>This project is part of my coursework in the Big Data Communication program at Nanjing University.</em></p>]]></content><author><name>Haoran Hu</name><email>huhr@smail.nju.edu.cn</email><uri>https://provided21.github.io</uri></author><category term="research" /><category term="computational-social-science" /><category term="LLM" /><category term="survey" /><category term="simulation" /><summary type="html"><![CDATA[In my current research project, I’ve been exploring whether large language models can accurately simulate how different demographic groups respond to policy questions. Using the Nemotron-Personas-France dataset — which contains 6 million synthetic French adult personas based on the 2025 French census — we’re comparing LLM-generated responses against real public opinion survey data.]]></summary></entry><entry><title type="html">Building a Knowledge Graph for Digital Communication: A Student’s Approach</title><link href="https://provided21.github.io//learning/knowledge-management/building-knowledge-graphs/" rel="alternate" type="text/html" title="Building a Knowledge Graph for Digital Communication: A Student’s Approach" /><published>2026-05-20T00:00:00+08:00</published><updated>2026-05-20T00:00:00+08:00</updated><id>https://provided21.github.io//learning/knowledge-management/building-knowledge-graphs</id><content type="html" xml:base="https://provided21.github.io//learning/knowledge-management/building-knowledge-graphs/"><![CDATA[<p>Over the past semester, I’ve been building a comprehensive knowledge graph covering 14 areas of digital marketing communication. What started as a simple note-taking exercise evolved into something much more interesting: a structured, queryable map of how concepts in digital communication connect to each other.</p>

<h2 id="the-framework">The Framework</h2>

<p>The knowledge base is organized around three layers:</p>

<ol>
  <li><strong>Chapter Notes (14 topics)</strong> — from search marketing and e-commerce to AI marketing and data privacy</li>
  <li><strong>Concept Notes (19 entries)</strong> — deep dives into specific mechanisms like RFM models, recommendation systems, and private domain traffic</li>
  <li><strong>Mechanism Notes</strong> — cross-cutting themes that span multiple chapters, like “Cookie deprecation → first-party data rise”</li>
</ol>

<h2 id="human-ai-collaboration">Human-AI Collaboration</h2>

<p>One design principle I stuck to: <strong>the human perspective leads, AI supports</strong>. Each note follows a format where:</p>

<ul>
  <li>🙋 <strong>My questions</strong> drive the exploration</li>
  <li>🤖 <strong>AI responses</strong> provide technical depth</li>
  <li>📎 <strong>Cross-references</strong> link related concepts</li>
</ul>

<p>This isn’t about letting AI write the knowledge base — it’s about using AI as a thought partner to probe deeper into concepts I’m genuinely curious about.</p>

<h2 id="the-graph-view">The Graph View</h2>

<p>The most satisfying part is watching the Obsidian graph view grow organically over time. What began as disconnected notes gradually formed clusters, then bridges between clusters. The visual representation makes it obvious which concepts are central hubs and which are peripheral — a kind of intellectual cartography.</p>

<h2 id="tools-used">Tools Used</h2>

<ul>
  <li><strong>Obsidian</strong> for note-taking and graph visualization</li>
  <li><strong>Mermaid.js</strong> for inline diagrams</li>
  <li><strong>Claude</strong> as an AI discussion partner</li>
  <li><strong>Python</strong> for data processing and analysis</li>
</ul>

<p>If you’re interested in knowledge management or computational approaches to learning, I’d love to <a href="mailto:huhr@smail.nju.edu.cn">connect and chat</a>!</p>]]></content><author><name>Haoran Hu</name><email>huhr@smail.nju.edu.cn</email><uri>https://provided21.github.io</uri></author><category term="learning" /><category term="knowledge-management" /><category term="obsidian" /><category term="knowledge-graph" /><category term="digital-communication" /><summary type="html"><![CDATA[Over the past semester, I’ve been building a comprehensive knowledge graph covering 14 areas of digital marketing communication. What started as a simple note-taking exercise evolved into something much more interesting: a structured, queryable map of how concepts in digital communication connect to each other.]]></summary></entry></feed>