การขุดข้อมูลสำหรับการวิเคราะห์เครือข่ายโซเชียลเชิงทำนาย

เผยแพร่แล้ว: 2022-03-11

โซเชียลเน็ตเวิร์กไม่ว่าจะในรูปแบบใดรูปแบบหนึ่ง เกิดขึ้นตั้งแต่ผู้คนเริ่มมีปฏิสัมพันธ์กันในครั้งแรก อันที่จริง นำคนสองคนขึ้นไปมารวมกัน และคุณมีรากฐานของเครือข่ายโซเชียล ดังนั้นจึงไม่น่าแปลกใจที่เครือข่ายสังคมออนไลน์ทุกที่ในโลกทุกวันนี้มีอินเตอร์เน็ตแพร่หลายไปหมด

ภายในโลกของเครือข่ายสังคมออนไลน์นี้ ปรากฏการณ์ที่น่าสนใจเป็นพิเศษในทศวรรษที่ผ่านมาคือการเติบโตอย่างรวดเร็วของ Twitter ซึ่งมักถูกเรียกว่า "SMS ของอินเทอร์เน็ต" เปิดตัวในปี 2549 Twitter ได้รับความนิยมทั่วโลกอย่างรวดเร็วและกลายเป็นหนึ่งในสิบเว็บไซต์ที่มีผู้เข้าชมมากที่สุดในโลก ในเดือนพฤษภาคม 2015 Twitter มีผู้ใช้งานอยู่ 302 ล้านคนซึ่งผลิตรวมกัน 500 ล้านทวีตต่อวัน และตัวเลขเหล่านี้ก็เพิ่มขึ้นเรื่อยๆ

ด้วยข้อมูลโซเชียลมีเดียจำนวนมหาศาลนี้ นักวิเคราะห์จึงมองว่า Twitter เป็นขุมทรัพย์เสมือนของข้อมูลสำหรับการขุดข้อมูล การวิเคราะห์เครือข่ายสังคมออนไลน์ และข้อมูลสำหรับรับรู้แนวโน้มความคิดเห็นของประชาชนและการสนับสนุน (หรือต่อต้าน) ทางการเมืองและ ความคิดริเริ่มทางสังคม บริษัทด้านวิทยาศาสตร์ข้อมูลพบว่าหัวข้อแนวโน้มของ Twitter มีประโยชน์มากขึ้นในฐานะตัวแทนที่มีคุณค่าสำหรับการวัดความคิดเห็นของประชาชน

การวิเคราะห์เครือข่ายโซเชียลและการขุดข้อมูล

บทความนี้อธิบายเทคนิคที่ฉันใช้สำหรับการพิสูจน์แนวคิดที่วิเคราะห์หัวข้อเทรนด์ของ Twitter อย่างมีประสิทธิภาพเพื่อคาดการณ์รูปแบบการลงคะแนนเสียงระดับภูมิภาคในการเลือกตั้งประธานาธิบดีบราซิลปี 2014 เป็นตัวอย่างกรณีทดสอบ

การเลือกตั้ง

การเลือกตั้งประธานาธิบดีทั่วไปจัดขึ้นในบราซิลเมื่อวันที่ 5 ตุลาคม 2014 ไม่มีผู้สมัครคนใดได้รับคะแนนเสียงมากกว่า 50% ดังนั้นจึงมีการเลือกตั้งรอบที่สองในวันที่ 26 ตุลาคม

ในรอบแรก Dilma Rousseff (Partido dos Trabalhadores) ชนะคะแนนโหวต 41.6% นำหน้า Aecio Neves (Partido da Social Democracia Brasileira) ด้วยคะแนน 33.6% และ Marina Silva (Partido Socialista Brasileiro) ด้วยคะแนน 21.3% Rousseff และ Neves แข่งขันกันเรื่องการไหลบ่าเมื่อวันที่ 26 ตุลาคม โดย Rousseff ได้รับเลือกใหม่ด้วยอัตรากำไรที่แคบ 51.6% ต่อ Neves 48.4% บทวิเคราะห์ในบทความนี้เกี่ยวข้องกับการเลือกตั้งที่ไหลบ่าในวันที่ 26 ตุลาคมโดยเฉพาะ

Partido dos Trabalhadores (PT) เป็นหนึ่งในพรรคการเมืองที่ใหญ่ที่สุดในบราซิล เป็นพรรคการเมืองสำหรับประธานาธิบดีในปัจจุบันและอดีตประธานาธิบดี Dilma Roussef และ Luis Inacio Lula da Silva Partido da Social Democracia Brasileira (PSDB) เป็นพรรคการเมืองของประธานาธิบดีคนก่อน Fernando Henrique Cardoso

การขุดข้อมูลและการแยกข้อมูลหัวข้อเทรนด์ Twitter

ฉันเริ่มการขุดข้อมูลโซเชียลมีเดียโดยดึงข้อมูลหัวข้อเทรนด์ Twitter สำหรับ 14 เมืองในบราซิลซึ่งข้อมูลถูกจัดหาผ่าน Twitter API ได้แก่ บราซิเลีย เบเลม เบโลโอรีซอนตี กูรีตีบา ปอร์ตูอาเลเกร เรซีเฟ ริโอเดจาเนโร ซัลวาดอร์ เซา เปาโล, กัมปีนัส, ฟอร์ตาเลซา, โกยาเนีย, มาเนาส์ และเซา หลุยส์

ฉันสอบถาม Twitter REST API เพื่อรับ 10 หัวข้อยอดนิยมของ Twitter สำหรับ 14 เมืองเหล่านี้ในช่วงเวลา 20 นาที (จำกัด โดยข้อจำกัดบางประการที่ Twitter มีใน API) การจำกัดการค้นหาเฉพาะ 14 เมืองทำได้โดยการระบุ Yahoo! GeoPlanet WOEIDs (ตำแหน่งบน Earth ID)

สำหรับการพิสูจน์แนวคิดนี้ ฉันใช้ Python และห้องสมุด Twitter (เรียกอย่างชาญฉลาดว่า “twitter”) เพื่อรับข้อมูลเครือข่ายโซเชียลทั้งหมดสำหรับวันเลือกตั้งที่ไหลบ่า (26 ต.ค.) รวมถึงสองวันก่อน (ต.ค. วันที่ 24 และ 25) ในแต่ละวัน ฉันดำเนินการค้นหาประมาณ 70 รายการเพื่อช่วยระบุหัวข้อแนวโน้มแบบทันที

ด้านล่างนี้คือตัวอย่างของออบเจ็กต์ JSON ที่ส่งคืนในการตอบกลับแต่ละคิวรี (ตัวอย่างนี้อิงจากการสืบค้นข้อมูลในวันที่ 26 ตุลาคม เวลา 00:40:00 น. และแสดงเฉพาะข้อมูลสำหรับเบโลโอรีซอนตี)

 [{"created_at": "2014-10-26T02:32:59Z", "trends": [{"url": "http://twitter.com/search?q=%23GolpeNoJN", "name": "#GolpeNoJN", "query": "%23GolpeNoJN", "promoted_content": null}, {"url": "http://twitter.com/search?q=%23SomosTodosDilma", "name": "#SomosTodosDilma", "query": "%23SomosTodosDilma", "promoted_content": null}, {"url": "http://twitter.com/search?q=%23EAecio45Confirma", "name": "#EAecio45Confirma", "query": "%23EAecio45Confirma", "promoted_content": null}, {"url": "http://twitter.com/search?q=Uilson", "name": "Uilson", "query": "Uilson", "promoted_content": null}, {"url": "http://twitter.com/search?q=%22Lucas+Silva%22", "name": "Lucas Silva", "query": "%22Lucas+Silva%22", "promoted_content": null}, {"url": "http://twitter.com/search?q=%22Marcelo+Oliveira%22", "name": "Marcelo Oliveira", "query": "%22Marcelo+Oliveira%22", "promoted_content": null}, {"url": "http://twitter.com/search?q=Cruzeiro", "name": "Cruzeiro", "query": "Cruzeiro", "promoted_content": null}, {"url": "http://twitter.com/search?q=Tupi", "name": "Tupi", "query": "Tupi", "promoted_content": null}, {"url": "http://twitter.com/search?q=%22Real+x+Bar%C3%A7a%22", "name": "Real x Bar\u00e7a", "query": "%22Real+x+Bar%C3%A7a%22", "promoted_content": null}, {"url": "http://twitter.com/search?q=Wanessa", "name": "Wanessa", "query": "Wanessa", "promoted_content": null} ], "as_of": "2014-10-26T02:40:03Z", "locations": [{"name": "Belo Horizonte", "woeid": 455821}] }]

บทนำสั้นๆ เกี่ยวกับการวิเคราะห์เครือข่ายสังคม

ทฤษฎีเครือข่ายสังคมคือการศึกษาวิธีที่ผู้คน องค์กร หรือกลุ่มมีปฏิสัมพันธ์กับผู้อื่นภายในเครือข่ายของตน เครือข่ายโซเชียลมีสามประเภทหลัก:

  • เครือข่าย Egocentric เชื่อมต่อกับโหนดเดียวหรือส่วนบุคคล (เช่น คุณและเพื่อนและญาติทั้งหมดของคุณ)
  • เครือข่ายทางสังคมเป็นศูนย์กลางเป็นเครือข่าย ปิดโดยค่าเริ่มต้น สองตัวอย่างที่ใช้กันทั่วไปของเครือข่ายประเภทนี้ ได้แก่ เด็กในห้องเรียนหรือคนงานในองค์กร
  • เครือข่ายระบบเปิด คือเครือข่ายที่ไม่ได้กำหนดเส้นเขตอย่างชัดเจน ซึ่งทำให้เครือข่ายประเภทนี้โดยทั่วไปยากต่อการศึกษามากที่สุด ประเภทของเครือข่ายทางสังคมและการเมืองที่เรากำลังวิเคราะห์ในบทความนี้เป็นตัวอย่างของเครือข่ายระบบเปิด

โซเชียลเน็ตเวิร์กถือเป็นเครือข่ายที่ซับซ้อน เนื่องจากแสดงคุณลักษณะทอพอโลยีที่ไม่สำคัญ โดยมีรูปแบบการเชื่อมต่อระหว่างองค์ประกอบต่างๆ ที่ไม่ใช่แบบปกติล้วนๆ หรือเป็นแบบสุ่มล้วนๆ

การวิเคราะห์เครือข่ายโซเชียลตรวจสอบโครงสร้างของความสัมพันธ์ระหว่างหน่วยงานทางสังคม หน่วยงานเหล่านี้มักเป็นกลุ่มคน แต่อาจเป็นกลุ่มทางสังคม องค์กรทางการเมือง เครือข่ายการเงิน ผู้อยู่อาศัยในชุมชน พลเมืองของประเทศ และอื่นๆ การศึกษาเชิงประจักษ์เกี่ยวกับเครือข่ายมีบทบาทสำคัญในสังคมศาสตร์ และเครื่องมือทางคณิตศาสตร์และสถิติจำนวนมากที่ใช้สำหรับการศึกษาเครือข่ายได้รับการพัฒนาขึ้นเป็นครั้งแรกในสังคมวิทยา

การสร้างเครือข่าย

ในการสร้างเครือข่ายโดยใช้หัวข้อเทรนด์ Twitter ฉันได้กำหนดกฎต่อไปนี้:

  • แต่ละเมืองเป็นจุดยอด (เช่น โหนด) ในเครือข่าย
  • หากมีหัวข้อแนวโน้มร่วมกันอย่างน้อยหนึ่งหัวข้อระหว่างสองเมือง ก็มีความได้เปรียบ (เช่น ลิงก์) ระหว่างเมืองเหล่านั้น
  • แต่ละขอบจะถ่วงน้ำหนักตามจำนวนหัวข้อเทรนด์ที่เหมือนกันระหว่างสองเมืองนั้น (กล่าวคือ ยิ่งเมืองสองเมืองมีหัวข้อเทรนด์ที่เหมือนกันมากเท่าใด น้ำหนักก็จะยิ่งหนักขึ้นซึ่งเป็นผลมาจากความเชื่อมโยงระหว่างกัน)

ตัวอย่างเช่น ในวันที่ 26 ตุลาคม เมืองฟอร์ตาเลซาและกัมปีนัสมีหัวข้อแนวโน้ม 11 หัวข้อที่เหมือนกัน ดังนั้นเครือข่ายในวันนั้นจึงมีความได้เปรียบระหว่างฟอร์ตาเลซาและกัมปีนัสที่มีน้ำหนัก 11:

กระบวนการสร้างเครือข่ายสังคมที่แสดงภาพประกอบ

นอกจากนี้ เพื่อช่วยในกระบวนการถ่วงน้ำหนักความสัมพันธ์ระหว่างเมือง ฉันยังพิจารณาหัวข้อที่ไม่เกี่ยวข้องกับการเลือกตั้งด้วย (โดยสมมุติฐานว่าเมืองที่มีลำดับความสำคัญและความสนใจร่วมกันอื่นๆ อาจมีแนวโน้มที่จะมีความเอนเอียงทางการเมืองแบบเดียวกันมากกว่า ).

แม้ว่าลำดับของหัวข้อเทรนด์อาจมีนัยสำคัญต่อการวิเคราะห์ แต่เพื่อจุดประสงค์ในการทำให้การพิสูจน์แนวคิดเข้าใจง่ายขึ้น ฉันเลือกที่จะเพิกเฉยการเรียงลำดับของหัวข้อในรายการหัวข้อเทรนด์

โทโพโลยีเครือข่าย

โทโพโลยีเครือข่ายคือการจัดเรียงองค์ประกอบต่างๆ (ลิงก์ โหนด ฯลฯ) ของเครือข่ายโดยพื้นฐานแล้ว สำหรับเครือข่ายโซเชียลที่เรากำลังวิเคราะห์ โทโพโลยีเครือข่ายจะไม่เปลี่ยนแปลงอย่างมากในช่วง 3 วัน เนื่องจากโหนดของเครือข่าย (เช่น 14 เมือง) ยังคงได้รับการแก้ไข อย่างไรก็ตาม ความแตกต่างสามารถตรวจพบได้ในน้ำหนักของลิงก์ระหว่างโหนด เนื่องจากจำนวนหัวข้อแนวโน้มทั่วไประหว่างเมืองจะแตกต่างกันไปในช่วง 3 วัน ดังที่แสดงในการเปรียบเทียบด้านล่างของโทโพโลยีเครือข่ายในวันที่ 24 กับวันที่ 25

แสดงโทโพโลยีเครือข่ายสังคม

การทำนายผลการเลือกตั้งโดยใช้ข้อมูลหัวข้อเทรนด์ทวิตเตอร์

เพื่อช่วยเราในการทำนายผลการเลือกตั้ง เราไม่ได้พิจารณาเฉพาะหัวข้อแนวโน้มที่เหมือนกันระหว่างเมืองเท่านั้น แต่ยังพิจารณาว่าเนื้อหาของหัวข้อเหล่านั้นเกี่ยวข้องกับการสนับสนุนที่เป็นไปได้สำหรับพรรคการเมืองหลักสองพรรคอย่างไร เช่น Partido dos Trabalhadores (PT) และ Partido da Social Democracia Brasileira (PSDB)

อันดับแรก ฉันสร้างรายการคำและวลีที่รับรู้เพื่อบ่งบอกถึงการเอนเอียงไปทางบวกหรือสนับสนุนฝ่ายใดฝ่ายหนึ่ง (ยอมรับว่าการเติมรายการนี้เป็นงานที่ซับซ้อนมาก ในบริบทของการพิสูจน์แนวคิดนี้ ข้าพเจ้าจงใจใช้แนวทางที่ง่ายขึ้น หากมีสิ่งใด สิ่งนี้จะทำให้ความสามารถของผลลัพธ์น่าสนใจยิ่งขึ้น เนื่องจากมีรายการคำศัพท์ที่ได้รับการปรับแต่งมากขึ้น และวลีน่าจะปรับปรุงความถูกต้องของผลลัพธ์ต่อไป)

จากนั้น สำหรับแต่ละโหนด ฉันนับ:

  • จำนวนลิงก์ที่มีเงื่อนไขที่ระบุการสนับสนุนสำหรับ PT
  • จำนวนลิงค์ที่มีเงื่อนไขที่ระบุการสนับสนุนสำหรับ PSDB

ใช้เมือง Fortazela อีกครั้งเป็นตัวอย่าง ฉันลงเอยด้วยการนับ:

 Fortaleza['PT'] = 56 Fortaleza['PDSB'] = 37

ด้วยเหตุนี้ เราจึงสรุปได้ว่าชาวฟอร์ตาเลซามีความพึงพอใจโดยรวมสำหรับ Partido dos Trabalhadores (PT)

ผลลัพธ์และบทสรุป

จากอัลกอริธึมนี้ การวิเคราะห์จะให้ผลลัพธ์ที่คล้ายกับผลการเลือกตั้งจริงอย่างน่าประหลาดใจ โดยเฉพาะอย่างยิ่งเมื่อพิจารณาถึงความเรียบง่ายโดยทั่วไปของแนวทางของเรา ต่อไปนี้คือการเปรียบเทียบผลการทำนายตามข้อมูลหัวข้อเทรนด์ Twitter เมื่อเปรียบเทียบกับผลการเลือกตั้งจริง (สีแดงใช้เพื่อแสดงถึง Partido dos Trabalhadores และสีน้ำเงินใช้เพื่อแสดงถึง Partido da Social Democracia Brasileira):

การวิเคราะห์เครือข่ายโซเชียลและการขุดข้อมูล

ความเข้มงวดทางวิทยาศาสตร์ที่ได้รับการปรับปรุง เช่นเดียวกับอัลกอริธึมและเมตริกที่ซับซ้อนยิ่งขึ้น จะช่วยปรับปรุงผลลัพธ์ให้ดียิ่งขึ้นไปอีกอย่างไม่ต้องสงสัย

ต่อไปนี้คือตัวชี้วัดสองสามตัว ตัวอย่างเช่น ที่สามารถใช้เพื่อสรุปความสำคัญหรืออิทธิพลของโหนด ซึ่งสามารถแจ้งประเภทของการวิเคราะห์เชิงคาดการณ์ที่อธิบายไว้ในบทความนี้:

  • ศูนย์กลางของโหนด มีหลายมาตรการที่สามารถใช้เป็นศูนย์กลางของโหนดเพื่อช่วยระบุโหนดที่สำคัญที่สุดหรือมีอิทธิพลในเครือข่าย ความเป็นศูนย์กลาง ตัวอย่างเช่น ถือว่าโหนดมีความสำคัญอย่างมาก หากเป็นสะพานเชื่อมระหว่างโหนดอื่นๆ จำนวนมาก ในทางกลับกัน ความเป็นศูนย์กลางของค่าลักษณะเฉพาะ อิงตามความสำคัญของโหนดตามจำนวนโหนดที่มีความสำคัญสูงอื่นๆ ที่เชื่อมโยงกับโหนดนั้น

  • ค่าสัมประสิทธิ์การจัดกลุ่ม ค่าสัมประสิทธิ์การจัดกลุ่มของโหนดวัดขอบเขตที่ "เพื่อนบ้าน" ของโหนดเชื่อมต่อถึงกัน นี่เป็นอีกมาตรการหนึ่งที่เกี่ยวข้องกับการประเมินระดับอิทธิพลที่สันนิษฐานไว้ของโหนดที่มีต่อโหนดข้างเคียง

  • องศาที่เป็นศูนย์กลาง ระดับความเป็นศูนย์กลางขึ้นอยู่กับจำนวนลิงก์ (เช่น การเชื่อมต่อ) ไปยังโหนด นี่เป็นหนึ่งในมาตรการที่ง่ายที่สุดของ "ความสำคัญ" ของโหนดภายในเครือข่าย

แต่ถึงแม้จะไม่มีระดับความซับซ้อนขนาดนั้น ผลลัพธ์ที่ได้จากการพิสูจน์แนวคิดง่ายๆ นี้ก็เป็นการสาธิตที่น่าสนใจของการวิเคราะห์เชิงคาดการณ์ที่มีประสิทธิภาพโดยใช้ข้อมูลหัวข้อเทรนด์ของ Twitter มีศักยภาพที่ชัดเจนในการวิเคราะห์ข้อมูลโซเชียลมีเดียในอนาคต


อ่านเพิ่มเติมในบล็อก Toptal Engineering:

  • กราฟวิทยาศาสตร์ข้อมูลด้วย Python/NetworkX