1 điểm bởi GN⁺ 2023-12-23 | 1 bình luận | Chia sẻ qua WhatsApp
  • Nếu không có mẫu số để ước lượng toàn bộ nền tảng, các kết quả nghiên cứu như thông tin sai lệch hay tác động của đề xuất rất dễ mất bối cảnh, nên nhóm nghiên cứu tìm cách ước tính quy mô toàn bộ YouTube bằng mẫu ngẫu nhiên
  • ID video YouTube dài 11 ký tự và không gian địa chỉ khả dĩ là 2^64, nên gần như không thể tìm được video hợp lệ chỉ bằng cách thử URL ngẫu nhiên đơn giản
  • Nhóm nghiên cứu đã dùng phương pháp “drunk dialing” cùng các kỹ thuật tối ưu hóa để thu thập hơn 10.000 video ngẫu nhiên thực sự trong vài tháng, và ước tính hiện YouTube có khoảng 13,325 tỷ video
  • Kết quả phân tích mẫu cho thấy chỉ riêng năm 2023 đã có hơn 4 tỷ video được tải lên, và số lượt xem trung vị là 39 lượt, cho thấy phần đuôi dài của YouTube cực kỳ lớn
  • Tubestats muốn tiếp tục cập nhật ước tính quy mô, nhưng vẫn tồn tại ràng buộc đạo đức về việc không để lộ URL của những video dù ở trạng thái công khai nhưng trên thực tế gần như không được phát hiện

Vấn đề mẫu số khiến nghiên cứu YouTube trở nên khó khăn

  • Nghiên cứu mạng xã hội thường dễ tập trung vào việc tìm các hiện tượng nổi bật như thông tin sai lệch hay phát ngôn thù ghét, nhưng nếu không biết chúng chiếm tỷ lệ bao nhiêu trên toàn bộ nền tảng thì việc đánh giá quy mô sẽ bị lung lay
    • Chẳng hạn có thể đếm số kết quả bằng các từ khóa như “white genocide” hay “ivermectin”
    • Báo cáo về thông tin sai lệch COVID của Avaaz vào tháng 8/2020 ghi nhận 3,8 tỷ lượt xem trong một năm, nhưng nếu không có mẫu số là tổng lượt xem của toàn nền tảng thì khó biết đó là con số lớn hay nhỏ
  • Reddit và Twitter từng cung cấp quyền truy cập dữ liệu giúp ước lượng toàn bộ nền tảng
    • Reddit cho phép Pushshift thu thập toàn bộ bài đăng, nhờ đó có thể so sánh quy mô theo từng cộng đồng
    • Khi quyền truy cập công khai vào Pushshift bị chặn vào mùa hè 2023, Redditmap.social chỉ còn có thể dùng dữ liệu được tạo vào đầu năm đó
    • Twitter từng cung cấp mẫu 1/10 hoặc 1/100 toàn bộ tweet qua API nghiên cứu, nhưng sau đó đã chặn quyền truy cập và tính phí rất cao cho mức truy cập ít hơn

Khó lấy mẫu đại diện trên YouTube

  • YouTube là một nền tảng lớn mà gần như mọi người dùng Internet đều sử dụng
    • Theo Pew, 93% thanh thiếu niên dùng YouTube
    • Các dịch vụ gần nhất là TikTok 63% và Snapchat 60%
  • Dù có API được ghi tài liệu, vẫn không có cách tốt để lấy mẫu đại diện ngẫu nhiên của toàn bộ YouTube
  • Các nghiên cứu YouTube hiện có chủ yếu dựa vào hai cách
    • Thu thập và phân tích tất cả video từ các kênh người dùng đã chọn
    • Bắt đầu từ một video cụ thể rồi lần theo các video được đề xuất để thu thập
  • Cả hai cách đều có thể dùng cho nghiên cứu có ý nghĩa, nhưng không đủ để tạo mẫu toàn bộ video YouTube hoặc tính quy mô nền tảng

“Drunk dialing”: thử các URL ngẫu nhiên

  • Jason Baumgartner đề xuất tận dụng InnerTube, API không chính thức của YouTube, để thử các URL ngẫu nhiên
  • ID video trong URL YouTube là chuỗi 11 ký tự nằm sau watch?v=
    • 10 ký tự đầu có thể là a-z, A-Z, 0-9, _, -
    • Ký tự cuối chỉ có thể là một trong 16 giá trị
    • Số địa chỉ YouTube khả dĩ là 2^64, khoảng 18,4 quintillion
  • Ngay cả nếu giả định YouTube có 1 tỷ video, xác suất một URL ngẫu nhiên hợp lệ cũng chỉ khoảng 1 trên 18,4 tỷ
  • Nhóm nghiên cứu gọi cách này là “drunk dialing”, và Jason Baumgartner đã tìm ra một cách обход để tăng hiệu suất khoảng 32.000 lần
  • Kevin Zheng viết script tìm kiếm và thu thập hơn 10.000 video YouTube ngẫu nhiên thực sự trong vài tháng

Quy mô và phân bố YouTube nhìn từ mẫu ngẫu nhiên

  • Ước tính quy mô hiện tại của YouTube là 13,325 tỷ video, được cập nhật vài tuần một lần tại tubestats.org
  • Dựa vào độ tuổi của các video ngẫu nhiên, có thể tính tốc độ tăng trưởng của YouTube
    • Ước tính chỉ riêng năm 2023 đã có hơn 4 tỷ video được đăng lên YouTube
  • Phân bố lượt xem cho thấy phần đuôi dài rất rõ
    • Lượt xem trung vị của video YouTube là 39 lượt
    • YouTube có xu hướng thích đề xuất các video có hơn 10.000 lượt xem
    • Video có hơn 10.000 lượt xem chiếm khoảng 4% tập dữ liệu, nhưng chiếm tỷ trọng lớn trong tổng lượt xem của toàn YouTube
  • Các video ngẫu nhiên thu thập được cũng được dùng để ước tính phân bố ngôn ngữ
    • Kevin Zheng kết nối script tìm kiếm với nhiều hệ thống phát hiện ngôn ngữ
    • Ước tính này có thể bảo vệ được về mặt phương pháp, nhưng không hoàn hảo

Dash method hiệu quả hơn

  • Việc dò URL ngẫu nhiên nhắm vào toàn bộ không gian địa chỉ, nên có thể dùng làm chuẩn để kiểm chứng tính ngẫu nhiên của các phương pháp lấy mẫu khác
  • Nhóm nghiên cứu cho rằng nếu một cách tạo danh sách video khác cho kết quả tương tự như dò ngẫu nhiên, thì có thể xem là “có vẻ ngẫu nhiên”
  • Phương pháp do Jia Zhou và cộng sự phát hiện năm 2011 hoạt động như một cách thu thập mẫu hiệu quả hơn
    • Tạo một chuỗi 5 ký tự trong đó một ký tự là dấu gạch ngang
    • Tính năng tự hoàn thành của YouTube hoàn thiện URL đó và trả về video khớp nếu tồn tại
  • Kevin Zheng hiện định kỳ truy vấn YouTube bằng dash method này để duy trì dashboard Tubestats

Video đuôi dài và các ràng buộc đạo đức

  • Mẫu ngẫu nhiên không chỉ dùng để quan sát các influencer thành công, mà còn để xem ở phần đáy của đuôi dài truyền thông do người dùng tạo, các nhà sáng tạo đang sử dụng công cụ như thế nào
  • Phần lớn video được thu thập chỉ có vài chục người xem
    • Nếu công khai URL, những video dù ở trạng thái “công khai” nhưng trên thực tế gần như không hiển thị có thể bị đưa ra trước sự xem xét của công chúng
    • Vì vậy bài báo không đưa vào danh sách URL các video đã phát hiện
  • Ryan McGrady đã dẫn dắt công việc trực tiếp xem và mã hóa thủ công 1.000 video ngẫu nhiên
  • Bài báo liên quan được đăng trên Journal of Quantitative Description, còn phần giới thiệu kết quả mã hóa thủ công được tóm tắt trong bài viết của Ryan

Vì sao muốn duy trì Tubestats

  • Nhóm nghiên cứu dự định duy trì Tubestats trong khả năng có thể
  • YouTube cũng có khả năng phản đối tài nguyên này hoặc cách tạo ra nó
  • Các nền tảng truyền thông lớn do người dùng tạo là một phần quan trọng của không gian thảo luận công cộng số, nên dữ liệu cấp cao về việc nền tảng có gì, ai tạo ra và nó tiếp cận ai cần được công bố định kỳ

1 bình luận

 
GN⁺ 2023-12-23
Các ý kiến trên Hacker News
  • Cách lấy mẫu thật sự rất thông minh, xin vỗ tay cho các tác giả. Khi còn ở Pew, chúng tôi từng cố lập bản đồ YouTube bằng cách đi ngẫu nhiên theo endpoint "related videos" của YouTube API, và sau khoảng 1 năm tưởng như đã đạt điểm bão hòa, nhưng nhìn vào quy mô nêu ở đây thì có vẻ vẫn còn một cái đuôi dài khá lớn nằm dưới radar.
    Ngay khi chúng tôi công bố nghiên cứu, Google gần như lập tức bắt đầu khóa API, nên thật vui khi vẫn có người tiếp tục nghiên cứu bằng kiểu scraping truyền thống. Phân tích khi đó ở cấp kênh và chỉ tập trung vào các kênh phổ biến, nhưng cũng thú vị là một số con số của TubeStats khá giống với những gì chúng tôi tìm thấy. Ví dụ như phân bố ngôn ngữ: https://www.pewresearch.org/internet/2019/07/25/a-week-in-th...

    • Nghĩ đến việc bot của Google liên tục quét web và gõ vào các trang đến mức gần như làm chúng chết ngắc, việc Google khóa API quả là khá mỉa mai
    • Với cách này cũng có thể tìm được những thứ như một số video công khai bị hạn chế không được liên kết trong phần đề xuất
    • Kỹ thuật này không mới. Đây là cách các nhà sinh học dùng để đếm số cá trong hồ
      Họ bắt 100 con cá, đánh dấu chúng, đợi một tuần rồi lại bắt 100 con và đếm số cá có dấu trong đó
    • Tôi nghĩ YouTube khóa API là sau vụ bê bối Cambridge Analytica
  • Đây là một cách thú vị để nhắm vào biện pháp giảm nhẹ cho bài toán xe tăng Đức https://en.m.wikipedia.org/wiki/German_tank_problem
    Lời giải tối ưu có lẽ là mở rộng không gian địa chỉ để mẫu ngẫu nhiên không thu thập được đủ dữ liệu nhằm đi đến kết luận có ý nghĩa thống kê. Chắc cũng có các lời giải hay khác nhằm thay đổi phân bố theo nhiều cách, nhưng nếu là mẫu thật sự ngẫu nhiên thì hướng đối phó đó sẽ bị giới hạn

    • Tôi không thấy trong bài, nhưng điều này phụ thuộc vào giả định về phân bố đều rời rạc. Không biết Google đã làm trò gì với các mã định danh
    • Tôi không hiểu mẫu ngẫu nhiên sẽ xử lý thế nào với những thứ như phân bố theo cụm. Ước tính chẳng phải dựa vào giả định về tính liên tục sao?
      Ví dụ nếu địa chỉ chạy từ /v=0x00 đến 0xff nhưng thực tế chỉ dùng từ f0 đến ff, thì khi giả định video được phân bố ngẫu nhiên, chẳng phải ước tính luôn bị lệch sao?
      Tức là áp một bộ lọc tùy ý lên không gian có thể định địa chỉ rồi mới gán địa chỉ. Mẫu ngẫu nhiên cùng kiểu sẽ lệch ở mức tương tự, nhưng tôi không biết độ thưa mà mình đã áp bằng bộ lọc
  • Bộ dữ liệu "YouTube dislikes" cũng đáng xem: https://clickhouse.com/docs/en/getting-started/example-datas...
    Sở dĩ có tên như vậy là vì đây là một nỗ lực lưu trữ nhằm thu thập thông tin trước khi tính năng dislike bị gỡ bỏ. Có thể dùng để tìm những video gây tranh cãi nhất hoặc các video hàng đầu có mô tả bằng một ngôn ngữ cụ thể

    • YouTube là một nền tảng lớn và công khai đến mức gần như là hàng hóa công, nên các thống kê như số lượt dislike rất quan trọng
      Trong bài cũng nói rằng “YouTube có thể phản đối tài nguyên này hoặc cách tạo ra nó. Phản biện lại, tôi tin rằng loại dữ liệu cấp cao như vậy nên được công bố định kỳ cho mọi nền tảng truyền thông lớn do người dùng tạo nội dung. Những nền tảng này là một trong những phần quan trọng nhất của không gian thảo luận công cộng số, và chúng ta cần nhiều thông tin hơn nữa về những gì có trong đó, ai tạo ra chúng và chúng tiếp cận đến ai”
      Chính phủ nên quản lý để buộc các nền tảng phơi bày những thống kê như vậy, để các cơ quan thống kê có thể thu thập
    • Người viết bình luận này là CEO của ClickHouse
  • Tôi muốn biết YouTube có bao nhiêu dữ liệu, nhưng không có con số đó. Tính sơ bộ từ các thống kê được cung cấp thì độ dài video trung bình khoảng 500 giây
    Nếu lấy bitrate là 400KB/s và số video là 13 tỷ, sẽ ra 2,7 exabyte. 400KB/s là con số lấy từ vài video FHD 24~30fps mà tôi tự tải xuống, nên đây là ước tính rất thô. YouTube hẳn sẽ mã hóa các đoạn có lượng thông tin cảm nhận thấp ở bitrate thấp hơn, còn video thì có đủ loại độ phân giải và tốc độ khung hình, và phân bố đó cũng thay đổi theo lịch sử của dịch vụ. Nếu giả định mọi video đều là 4K với bitrate 1,5MB/s thì là 10 exabyte
    Ước tính này đang tính thấp dung lượng lưu trữ mà YouTube cần. Vì các video phổ biến sẽ được lưu ở nhiều trung tâm dữ liệu, cả VP9 lẫn AV1. Ngược lại, nếu họ nén các video ít phổ biến hoặc transcoding theo yêu cầu từ định dạng khác thì ước tính này cũng có thể cao, nhưng khả năng đó có vẻ thấp

    • Ước tính dung lượng lưu trữ đó rất có thể sai lệch ở cỡ một bậc độ lớn
      400KB/s, tức 3,2Mbps thường dùng trong mã hóa video, là khá thấp đối với FHD chất lượng gốc, tức bản upload 1080p. Con số cho video 4K khá gần với bản upload gốc trung bình
      Còn phải tính đến việc YouTube nén ít nhất bằng hai codec video là H.264 và VP9. Với mỗi codec, tùy chất lượng upload gốc mà có đủ độ phân giải từ 320p đến trên 1080p. Nhiều video phổ biến và video 4K cũng được mã hóa bằng AV1. Một số còn có cả HEVC cho video vòm 360 độ. Bạn đọc đúng rồi đấy. Trên YouTube có H.265 HEVC
      Và tất cả những thứ này còn chưa tính đến sao chép hay lưu trữ trùng lặp. Sẽ không ngạc nhiên nếu tổng dung lượng dễ dàng vượt 100EB. Tương đương 100 Dropbox vào năm 2020
    • Mặt khác, không phải chỉ có “hai định dạng” đâu. Còn có những thứ như H.264 nữa, và cũng có thể có nhiều độ phân giải. Ngoài ra có thể đang hoặc từng có nghĩa vụ hợp đồng phải luôn cung cấp một độ phân giải nhất định ở một định dạng nhất định
      Mặt khác nữa, có thể có rất nhiều video có lượt xem thấp đến mức khó tin. Và cũng phải nhớ rằng YouTube thậm chí đã phải tự làm chip transcoding riêng. Nói đúng nghĩa là rất phức tạp
      10 năm trước tôi từng biết câu trả lời cho câu hỏi này, và đã giúp những người phụ trách lưu trữ giảm chi phí. Vài ngày trước tôi biết tin một trong số họ, R.L., đã qua đời vào tháng 2 năm nay. RIP
    • Bạn đang bỏ sót overhead của sao chéperasure coding. 10 exabyte nói thật là có vẻ rất thấp. Giờ tôi nghĩ có lẽ gần 50~100EB hơn
    • Năm 2013, khi tính dựa trên số liệu báo cáo hằng năm về số giờ được upload mỗi phút, nội dung là 375PB, tăng thêm 185TB mỗi ngày và tốc độ tăng trưởng hằng năm là 70%
      Tính toán này không bao gồm nhiều bản mã hóa hay lưu trữ bản gốc
    • Cũng phải tính đến việc YouTube lưu vĩnh viễn bản sao upload gốc. Bản gốc có thể là tệp lớn hơn
  • Có một trang được liên kết kèm như kết quả của bài viết này: https://tubestats.org/

  • Trước đây Google từng hỏi một số vị trí trong phỏng vấn về bài toán mở rộng quy mô liên quan đến YouTube. Thường nó dẫn đến vấn đề đồng bộ dữ liệu log trong một hạ tầng phân tán ngày càng lớn, rồi ra những kết quả kiểu Big-O(f(n)) buồn cười đến mức gần như khó diễn tả bằng lời
    Nguồn: tôi đã phỏng vấn ở Google vài lần

  • Tác giả viết rằng họ dùng “cheats”. Tùy thứ này làm gì, nó có thể phá vỡ giả định iid rằng các mẫu là độc lập
    Nếu nó giống lấy mẫu quả cầu tuyết, có thể tạo ra tỷ lệ thành công “quá cao” và làm con số bị phóng đại. Có đoạn: “Jason đã tìm ra vài mánh giúp phương pháp này hiệu quả hơn khoảng 32.000 lần, nên các ‘cuộc gọi’ của chúng tôi kết nối thường xuyên hơn rất nhiều”

    • Đọc hết bài là được
      Có ghi rằng “được Jia Zhou và cộng sự phát hiện năm 2011, và hiệu quả hơn nhiều so với cách ngây thơ của chúng tôi. Nếu tạo một chuỗi năm ký tự trong đó một ký tự là dấu gạch ngang, YouTube sẽ tự động hoàn thành URL đó và nếu tồn tại thì trả về video khớp”
    • Rất có khả năng trong URL có checksum, nên có thể phát hiện lỗi gõ mà không cần thật sự truy cập video
      Dù không biết checksum được tạo ra thế nào, vẫn có thể thử toàn bộ giá trị đó cho một mẫu trong không gian ID thực
    • Mánh đó có lẽ là dùng thứ gì đó như API playlist, trả về từng kết quả về việc video có tồn tại hay không
      Ví dụ gọi API tạo playlist chứa các ID x, x+1, x+2, ... rồi lấy danh sách, thì trong đó chỉ có x+2 là ID đã được cấp
    • Nếu mẫu bị méo thì dữ liệu có lẽ đã không trông gọn gàng như vậy. Nếu Google đã làm điều gì thú vị, có lẽ nó sẽ không chỉ dừng ở mức méo nhẹ
    • Đồng ý
      Với một người mới học thống kê như tôi, cần có chứng minh rằng dù dùng mánh và tự động hoàn thành thì tính độc lập của mẫu vẫn không bị phá vỡ, và việc lấy mẫu ngẫu nhiên được duy trì nhiều nhất có thể
      Tình huống giống như say rượu rồi gọi điện ngẫu nhiên, nhưng mỗi lần bấm nhầm số lại có người như tổng đài viên giúp bạn vẫn kết nối được với ai đó, thì trông không giống ngẫu nhiên
      Tuy nhiên tôi chưa đọc bài báo 85 trang. Có thể trong đó đã xử lý chuyện này
  • Đây là một tập dữ liệu thú vị. Bài báo để lại ấn tượng hơi sai về thống kê kênh
    Theo tôi hiểu, khi xem số người đăng ký, họ không hiệu chỉnh và tái trọng số theo thiên lệch lấy mẫu. Nếu mẫu chỉ là một phần nhỏ của toàn bộ quần thể, xác suất một kênh cụ thể xuất hiện sẽ tỷ lệ với số video công khai của kênh đó, nên đại khái cần gán trọng số bằng 1/số video của từng kênh

    • Tôi cũng thấy điểm đó. Việc 1 triệu người đăng ký là phân vị 98 nghe rất không hợp lý, và có vẻ khó mà không phải là phân vị 99,999
  • Giải thích cho những ai tò mò: cách ước tính của họ đại khái là thế này
    Giả định một phạm vi giá trị, và giả định một hàm xác suất công bằng để lấy mẫu trong phạm vi đó. Kích thước ước tính là tỷ lệ trúng nhân với toàn bộ phạm vi giá trị

    • Tôi lướt qua bài, và nếu đúng vậy thì có khá nhiều giả định
      Cứ cho là phạm vi các giá trị khả dĩ là đúng. Nếu nó là dạng 10 ký tự trong một phạm vi cụ thể cộng thêm 1, thì nó biểu diễn một vòng tròn khổng lồ nơi video có thể tồn tại
      Vấn đề là định danh, tức phân bố của các video hợp lệ. Nếu YouTube áp đặt những ràng buộc hay độ lệch nào đó lên ID mà chúng ta không biết, thì các ID video thật sự tồn tại có thể chỉ là một vòng tròn nhỏ hơn bên trong vòng tròn khả năng lớn đó, và không phân bố đều trên toàn bộ. Cũng có thể có các cụm. Khi đó, để có được hình bóng của độ lệch đó hoặc xem nó có gần ngẫu nhiên hay không, có lẽ phải lấy mẫu kiểu ném phi tiêu vào không gian, chẳng hạn theo phân bố Poisson
      Rồi sau đó mới có thể ước tính kích thước. Họ có đang làm vậy không? Và không ai thử hỏi thẳng YouTube sao?
  • Cách này thực ra rất dễ chặn. Chỉ cần trả về video ngẫu nhiên cho một tỷ lệ nhất định trong số các định danh không tồn tại. Thêm một chút tính ngẫu nhiên vào đó là đủ
    Rủi ro khi mô tả phương pháp chính là ở chỗ này

    • Như vậy có vẻ sẽ rất khó triển khai mà không phá vỡ nhiều bất biến trên toàn hệ thống
      Chẳng hạn như điều kiện ID video phải là bất biến, và một video chỉ được biểu diễn bằng đúng một ID video duy nhất
    • Nếu một video xuất hiện từ ID được tạo ngẫu nhiên, chỉ cần truy vấn lại ngay lập tức để xem có phải cùng video như trước không
      Nếu không giống, hãy bỏ kết quả đó và coi ID được tạo ra thực ra không tồn tại. Nếu giống, có thể biết đó là ID thật
      Miễn là URL video YouTube là bất biến, cách này có thể chống lại biện pháp chặn nói trên
    • Tuy nhiên, nếu YouTube không công bố rằng họ làm như vậy, chúng ta sẽ không biết phương pháp đó đã bị vô hiệu hóa hay chưa. Hơn nữa, video khác đó sẽ có UID hiện có của riêng nó, nên về lý thuyết cũng có thể biết liệu nó có bị sao chép để cản trở phép đo này hay không
    • Cũng khó mà tưởng tượng việc debug lỗi production trong một hệ thống như vậy
    • ID video có tuần tự trong miền khả dụng không, hay hoàn toàn phân tán? Các ID video còn sống đã biết có điểm chung nào giúp việc rà qua quy mô quintillion khả năng trở nên dễ hơn không?