個人的に1年ほどスクリプトを使ってTwitterのシャドウバン監視をしているため,そこで得られた知見をまとめておきます.

なおシャドウバンとはなんとなく世間で言われているだけで明確な定義がない気がするため, だからこそ個人的というタイトルで分類してみました. これは一般的な法則ではないことを断っておきます.

Twitterシャドウバンとは

Twitterシャドウバンは俗語, Twitter公式ではその用語はない.

さらにはチェックサイトが2018年くらいにできてそれで用語が定着していったがTwitterの仕様は常に変わっているため現状の規制と乖離しはじめている.

たとえばSearchBanやGhost BanはEntities(Text/URL/Media)ごとに規制されるようになった. そしてSearch BanがかかることとGhost Banがかかることは同じなので両者を分ける必要もないかもしれない. Reply Deboostingについてはかつては攻撃的な内容を含むだったが, 2022現在はヌード, 暴力, センシティブの3つに細分化されている.

また2020年ごろから,アカウントをロックや凍結をするのではなくツイートを隠したり通知規制をするようになった気がする. それはコロナ流行やアメリカ大統領選挙にあわせて都市伝説やデマを拡散するTwitter Botが大量生産されたための対策のように思われる. つまり本人は今までどおり情報発信をしていてもタイムラインに流れなかったりリプライが届かなかった通知欄に表示されなかったり. その変化によって最近(2022現在)より一層このあたりのアルゴリズムが変化している.

shadowban.euによるシャドウバンの分類

推測部分が多いですがシャドウバンというワードが英語圏で生まれ, それらの概念をソフトウェアに実装したサービスがいわゆる本家サイトと言われている shadowban.eu.

現在は閉鎖済み, GitHubにはArchiveがある.

そこでは4つに規制を分類している. そしてこれがだいたい世間で定着化しているように思う.

  • Search Suggestion Ban
    • This type of ban causes an account to not populate search suggestions and people search results when it is searched for while being logged out. Twitter seems to take tie strength or a similar metric into account. While an account may be suggested to users you are strongly tied to, it may not be shown to others.
  • Search Ban
    • This type of ban causes your tweets to be hidden from the search results entirely, no matter whether the quality filter is turned on or off. This behavior includes hashtags as well. This type of ban seems to be temporally limited for active accounts.
  • Ghost Ban
    • This is what is referred to as conventional shadowban or thread banning as well. It comprises a search ban while threads are completely ripped apart by hiding reply tweets of the affected user to others. Everything will look perfectly normal to the affected user but many others will not be able to see reply tweets of the affected user at all. Reasons for this ban include behavior like excessive tweeting or following. Again, this type of ban seems to be temporally limited for active accounts.
  • Reply Deboosting
    • If Twitter’s signals determine that an account might engage in harmful behavior, Twitter hides their replies behind a barrier and only loads them when “Show more replies” is clicked. This behavior is personalized, i.e. Twitter does not hide the tweets of accounts you follow. We therefore use an unbiased reference account without followings in order to determine whether tweets within a thread can be retrieved without clicking “Show more replies” from its view. In some cases, Twitter classifies accounts as offensive. In this case, replies are hidden behind a second barrier within the “Show more replies” section.
    • The outcome of this test may depend on the conversation which we found one of your tweets in. For testing, we take your latest reply tweet that is not within a conversation you started. Note that test results are cached for a short period of time.
    • A failure to test is neither a positive nor a negative test result. This test relies on some conditions that are not fulfilled by all accounts. In some cases, we cannot test for purely technical reasons.

個人的なシャドウバンの分類

たとえばTwitterアカウントをハードウェアに見立ててファームウェアでシャドウバン状態のウォッチドッグをかけてステータス遷移するとすると状態の設計は以下のようになる.

  • Normal
    • 正常(Online)
    • 非公開(Protected)
  • Warning
    • ShadowBan(シャドウバン)
      • URL規制(URL Ban)
      • ハッシュタグ規制(HashTag Ban)
      • メディア規制(Media Ban)
        • 画像規制/動画規制(entities, extended entities)
      • メンション規制(Mention Ban)
    • GhostBan(ゴーストバン)
      • URL規制(URL Ban)
      • ハッシュタグ規制(HashTag Ban)
      • メディア規制(Media Ban)
        • 画像規制/動画規制(entities, extended entities)
      • メンション規制(Mention Ban)
  • Critical
    • ALLゴーストバン(ThreadBan)
    • ALLサーチバン(SearchBan)
    • アカウントロック(Locked)
    • 永久凍結(Suspended)

TwitterのAPIで情報を取得するとEntitiesという属性がサブカテゴリに分かれていてurl/hashtag/entities/extended_entites/mention/symbolの分類がされているためおそらくこの分類で規制をしている. しかしこれはv1の仕様であり最近(2022)はv2へ移行して仕様がかわっているので今後どうなるかわからない. 少なくともsymbolがもう使われてないように思う.

用語の定義しては, プロフィールタイムラインからは表示され相手のタイムラインからは表示されない(検索含む)ものをサーチバン, プロフィールタイムラインからは表示され相手のタイムラインからは表示されない(さらに表示しようとすると「このツイートは表示できません」となる)ものをスレッドバンとする.

その上で, WarningとCriticalに分類したのは, テキストも含む全ての投稿が制限されるか一部が制限されるかには明確に危険度でレベルがある気がする. いわばサーチバンやスレッドバンがかかったら次はロックへのリーチ, 一方それより軽い規制状態ならスパムとTwitterが判定するような行為を継続してもスレッドバンやサーチバンには格上げされるがロックには至らない(至ったケースも有るが… ).

さらにWarningレベルは24時間放置で解除されるがCriticalになるといつ解除されるかわからない. これは30分ごとに監視スクリプトをかけているときっちり24時間でステータスが変更したことを検出できる. またCriticalからWarningにこっそり移行しているケースもありテキストだけつぶやいて初めてステータス遷移と認識できることもある.

ツイート投稿が原因だとWarning or Criticalのどれかの規制になるがいいねやフォローRTの過剰によるスパム判定はだいたいサーチバンになる. スレッドバンとサーチバンはほぼ同時に起こるがサーチバンはスレッドバンを兼ねることが多い. しかし全く同義ではなく,たとえばおなじようなコンテンツをリプライしすぎてスパム判定されるとスレッドバンになるがテキストだけ検索に表示される状態になり,これはシャドウバンにあたるがサーチバンではない. しかしサーチバンであるがスレッドバンでないケースはみたことがない.

ゴーストバンは基本的に24時間放置で解除されるもののこの状態で再びゴーストバントリガーになるアクションをするとすぐにゴーストバンになりループするだけなので,ゴーストバンから復帰してもしばらくおとなしくしていたほうがいい. なにがきっかけである程度のアクションがでるようになるのかはまだわからないが時間とフォロワー数が解決してくれることは間違いない.

おまけ: シャドウバンチェックサービス2022

2022だと以下がよさそう.わたしは自前スクリプトなのでつかってない. Twitterの仕様はころころ変わるため今後も使えるかどうかは開発者のやる気次第(本家潰れたのもメンテが面倒になったからか?). わたしのスクリプトは伝家の宝刀なので非公開だお🙂

本家は終了.

そんなことよりGoogleはいつになったら このブログをIndexing してくれるんだよ!素晴らしい記事もGoogleシャドウバンじゃしょうがないじゃないか!TwitterとGoogleの両方から規制されて世界から存在を否定される日々…