井出草平の研究ノート

PCゲームの歴史を変えた「沙織事件」(第69回)- 栗下善行

ameblo.jp

当時、無修正グラフィックのソフト自体は他にもあったようですが、1991年、京都の男子中学生がこのゲームを万引する事件が起きたことによって、その内容についても世論の批判の矢面に立たされることになりました。これが、「沙織事件」です。
「沙織」の販売元であるフェアリーテールにおいても刑法175条わいせつ物頒布等の罪で逮捕者が出るなど、事態は深刻化していきますが、他にもそういったソフトがある中で、偶然(故意の可能性も否定できませんが)スポットライトが当たってしまったものが徹底的に摘発されるというのは、マンガ規制における松文館事件のようなもので、現在においては大きな問題になりかねないのではないかと個人的には感じます。

Rでクラスター分析[R]

Gabriel Martosさんによる解説より。

rstudio-pubs-static.s3.amazonaws.com

Rを使ってクラスター分析を行う方法を学ぶ。データセットwinsを使用するために,ライブラリrattleをロードする。

library(rattle)
data(wine, package='rattle')
head(wine)
  Type Alcohol Malic  Ash Alcalinity Magnesium Phenols Flavanoids Nonflavanoids Proanthocyanins Color  Hue Dilution Proline
1    1   14.23  1.71 2.43       15.6       127    2.80       3.06          0.28            2.29  5.64 1.04     3.92    1065
2    1   13.20  1.78 2.14       11.2       100    2.65       2.76          0.26            1.28  4.38 1.05     3.40    1050
3    1   13.16  2.36 2.67       18.6       101    2.80       3.24          0.30            2.81  5.68 1.03     3.17    1185
4    1   14.37  1.95 2.50       16.8       113    3.85       3.49          0.24            2.18  7.80 0.86     3.45    1480
5    1   13.24  2.59 2.87       21.0       118    2.80       2.69          0.39            1.82  4.32 1.04     2.93     735
6    1   14.20  1.76 2.45       15.2       112    3.27       3.39          0.34            1.97  6.75 1.05     2.85    1450

このデータセットでは、異なるワインの組成を観察している。各観察がd次元の実数ベクトルである観察セット(x1,x2,..,xn)が与えられたとき,k-meansクラスタリングは,クラスタ内二乗和(WCS)を最小化するように,n個の観察(k≤n)S={S1,S2,...,Sk}に分割することを目的とするのがクラスター分析である。言い換えればを見つけることである。

f:id:iDES:20210325014222p:plain

ここで、μ_iはS_iの点の平均値である。クラスタリング最適化問題はRの関数kmeansを用いて解く。

wine.stand <- scale(wine[-1])  # 変数を標準化させる
# K-Means
k.means.fit <- kmeans(wine.stand, 3) # k = 3

k.means.fitには、クラスタ出力のすべての要素が含まれている。

attributes(k.means.fit)
$names
[1] "cluster"      "centers"      "totss"        "withinss"     "tot.withinss" "betweenss"    "size"         "iter"         "ifault"      

$class
[1] "kmeans"
## 中央値
k.means.fit$centers
     Alcohol      Malic        Ash Alcalinity   Magnesium     Phenols  Flavanoids Nonflavanoids Proanthocyanins      Color        Hue   Dilution    Proline
1  0.8328826 -0.3029551  0.3636801 -0.6084749  0.57596208  0.88274724  0.97506900   -0.56050853      0.57865427  0.1705823  0.4726504  0.7770551  1.1220202
2  0.1644436  0.8690954  0.1863726  0.5228924 -0.07526047 -0.97657548 -1.21182921    0.72402116     -0.77751312  0.9388902 -1.1615122 -1.2887761 -0.4059428
3 -0.9234669 -0.3929331 -0.4931257  0.1701220 -0.49032869 -0.07576891  0.02075402   -0.03343924      0.05810161 -0.8993770  0.4605046  0.2700025 -0.7517257
## クラスター
k.means.fit$cluster
  [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 3 2 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3 3 3 3 3 3
 [83] 3 2 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 1 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
[165] 2 2 2 2 2 2 2 2 2 2 2 2 2 2
## クラスターサイズ
k.means.fit$size
[1] 62 51 65

基本的な問題は、どのようにしてパラメータkの値を決定するかということである。説明された分散の割合をクラスタ数の関数として見てみよう。別のクラスターを追加してもデータのモデリングがあまり良くならないようなクラスター数を選ぶべきである。より正確には、クラスターによって説明される分散の割合をクラスターの数に対してプロットすると、最初のクラスターは多くの情報を追加するが(多くの分散を説明する)、ある時点で差益marginal gainが下がり、グラフに角度がつく。クラスタの数はこの時点で選択されるため「エルボー基準elbow criterion」と呼ばれている。

wssplot <- function(data, nc=15, seed=1234){
  wss <- (nrow(data)-1)*sum(apply(data,2,var))
  for (i in 2:nc){
    set.seed(seed)
    wss[i] <- sum(kmeans(data, centers=i)$withinss)}
  plot(1:nc, wss, type="b", xlab="Number of Clusters",
       ylab="Within groups sum of squares")}

wssplot(wine.stand, nc=6) 

f:id:iDES:20210325014236p:plain

clusterパッケージでは(PCAの助けを借りて)クラスターソリューションを2次元に表現することができる。

library(cluster)
clusplot(wine.stand, k.means.fit$cluster, main='2D representation of the Cluster solution',
         color=TRUE, shade=TRUE,
         labels=2, lines=0)

f:id:iDES:20210325014437p:plain

クラスタリングの性能を評価するために、混同行列を作成する。

table(wine[,1],k.means.fit$cluster)

階層型クラスタリング

階層型クラスタリングでは,クラスタリングアルゴリズムの入力として距離行列を使用する。ある距離では互いに近く、別の距離では遠くなる要素があるため、適切な指標の選択はクラスタの形状に影響を与える。

d <- dist(wine.stand, method = "euclidean") # ユークリッド距離行列

クラスタリングアルゴリズムの入力として、ユークリッド距離を使用する。(Wardの最小分散基準は、クラスタ内の分散の合計を最小化する)。

H.fit <- hclust(d, method="ward")

ward "メソッドは "ward.D "に改名されている。新しい "ward.D2 "に注意。

クラスタリングの結果をデンドログラムで表示することができる。

plot(H.fit) # デンドログラムを表示
groups <- cutree(H.fit, k=3) # ツリーを3つのクラスターに分割
# 3つのクラスターを赤い枠で囲んだデンドグラムを作成
rect.hclust(H.fit, k=3, border="red") 

f:id:iDES:20210325014507p:plain

以下のような混同行列を用いて評価される。

table(wine[,1],groups)
   groups
     1  2  3
  1 58  1  0
  2  7 58  6
  3  0  0 48

研究事例 I: ヨーロッパのタンパク質消費量

ヨーロッパの25カ国(n=25台)と主要な9つの食品からのタンパク質摂取量(単位:%)を検討する(p=9)。データは以下の通りです。

url = 'http://www.biz.uiowa.edu/faculty/jledolter/DataMining/protein.csv'
food <- read.csv(url)
head(food)
         Country RedMeat WhiteMeat Eggs Milk Fish Cereals Starch Nuts Fr.Veg
1        Albania    10.1       1.4  0.5  8.9  0.2    42.3    0.6  5.5    1.7
2        Austria     8.9      14.0  4.3 19.9  2.1    28.0    3.6  1.3    4.3
3        Belgium    13.5       9.3  4.1 17.5  4.5    26.6    5.7  2.1    4.0
4       Bulgaria     7.8       6.0  1.6  8.3  1.2    56.7    1.1  3.7    4.2
5 Czechoslovakia     9.7      11.4  2.8 12.5  2.0    34.3    5.0  1.1    4.0
6        Denmark    10.6      10.8  3.7 25.0  9.9    21.9    4.8  0.7    2.4

まず赤肉と白肉だけでクラスタリングを行い(p=2)、k=3のクラスタを作成する。

set.seed(123456789) ## ランダムな開始クラスタを固定
grpMeat <- kmeans(food[,c("WhiteMeat","RedMeat")], centers=3, nstart=10)
grpMeat
K-means clustering with 3 clusters of sizes 12, 5, 8

Cluster means:
  WhiteMeat   RedMeat
1  4.658333  8.258333
2  9.000000 15.180000
3 12.062500  8.837500

Clustering vector:
 [1] 1 3 2 1 3 3 3 1 2 1 3 2 1 3 1 3 1 1 1 1 2 2 1 3 1

Within cluster sum of squares by cluster:
[1] 69.85833 35.66800 39.45750
 (between_SS / total_SS =  75.7 %)

Available components:

[1] "cluster"      "centers"      "totss"        "withinss"     "tot.withinss" "betweenss"    "size"         "iter"         "ifault"  
## クラスター割り当てリスト
o=order(grpMeat$cluster)
data.frame(food$Country[o],grpMeat$cluster[o])
   food.Country.o. grpMeat.cluster.o.
1          Albania                  1
2         Bulgaria                  1
3          Finland                  1
4           Greece                  1
5            Italy                  1
6           Norway                  1
7         Portugal                  1
8          Romania                  1
9            Spain                  1
10          Sweden                  1
11            USSR                  1
12      Yugoslavia                  1
13         Belgium                  2
14          France                  2
15         Ireland                  2
16     Switzerland                  2
17              UK                  2
18         Austria                  3
19  Czechoslovakia                  3
20         Denmark                  3
21       E Germany                  3
22         Hungary                  3
23     Netherlands                  3
24          Poland                  3
25       W Germany                  3

クラスタリングソリューションをグラフィカルに表現するために、赤肉と白肉のクラスタ割り当てを散布図にプロットする。

plot(food$Red, food$White, type="n", xlim=c(3,19), xlab="Red Meat", ylab="White Meat")
text(x=food$Red, y=food$White, labels=food$Country,col=grpMeat$cluster+1)

f:id:iDES:20210325014311p:plain

次に、9つのタンパク質グループすべてをクラスター化し、7つのクラスターを作成するようにプログラムを準備する。
できあがったクラスターは、白肉と赤肉の散布図に色で示されていますが(他の特徴のペアを選択することもできる)理にかなっている。地理的に近接した国は、同じグループに分類される傾向がある。

## 同じ分析をするが、今度は全てのタンパク質グループにクラスタリングを行う
## タンパク質グループのクラスタ数を7に変更
set.seed(123456789)
grpProtein <- kmeans(food[,-1], centers=7, nstart=10)
o=order(grpProtein$cluster)
data.frame(food$Country[o],grpProtein$cluster[o])
   food.Country.o. grpProtein.cluster.o.
1          Denmark                     1
2          Finland                     1
3           Norway                     1
4           Sweden                     1
5          Austria                     2
6        E Germany                     2
7      Netherlands                     2
8        W Germany                     2
9         Portugal                     3
10           Spain                     3
11  Czechoslovakia                     4
12         Hungary                     4
13          Poland                     4
14        Bulgaria                     5
15         Romania                     5
16      Yugoslavia                     5
17         Belgium                     6
18          France                     6
19         Ireland                     6
20     Switzerland                     6
21              UK                     6
22         Albania                     7
23          Greece                     7
24           Italy                     7
25            USSR                     7
library(cluster)
clusplot(food[,-1], grpProtein$cluster, main='2D representation of the Cluster solution', color=TRUE, shade=TRUE, labels=2, lines=0)

f:id:iDES:20210325014259p:plain

また、階層的なアプローチを行うこともできる。ここでは、clusterパッケージのagnes関数を使用する。引数 diss=FALSEは、生データから計算される非類似度行列を使用することを示す。引数 metric="euclidian" は、ユークリッド距離を使用することを示す。標準化は使用せず、リンク関数は「平均average」である。

foodagg=agnes(food,diss=FALSE,metric="euclidian")
plot(foodagg, main='Dendrogram') ## デンドログラム

f:id:iDES:20210325014526p:plain f:id:iDES:20210325014535p:plain

groups <- cutree(foodagg, k=4) # ツリーを4つに切り分ける
rect.hclust(foodagg, k=4, border="red")

f:id:iDES:20210325014547p:plain

スタディケースII:顧客セグメンテーション

顧客セグメンテーションとは、簡単に言えば、顧客をその特徴によってグループ化することである。ここでは、Eメールマーケティングを例に説明する。こちらのリンクからデータセットを使用している。

offers<-read.csv("offers.csv", sep = ",", header=T)
head(offers)
  OfferID Campaign           Varietal MinimumQt Discount      Origin PastPeak
1       1  January             Malbec        72       56      France    FALSE
2       2  January         Pinot Noir        72       17      France    FALSE
3       3 February          Espumante       144       32      Oregon     TRUE
4       4 February          Champagne        72       48      France     TRUE
5       5 February Cabernet Sauvignon       144       44 New Zealand     TRUE
6       6    March           Prosecco       144       86       Chile    FALSE
transactions <- read.csv("transactions.csv", sep = ",", header=T)
head(transactions)
  CustomerLastName OfferID
1            Smith       2
2            Smith      24
3          Johnson      17
4          Johnson      24
5          Johnson      26
6         Williams      18

ステップ1:情報の整理

1つはオファー用、もう1つはトランザクション用の2つのデータセットがある。まず必要なのは、取引マトリックスの作成である。つまり、郵送したオファーを、各顧客の取引履歴の横に並べる必要があります。これは、ピボットテーブルで簡単に実現できます。

# トランザクションマトリクス(Excelのようなピボットテーブル)の作成
library(reshape)
pivot<-melt(transactions[1:2])
pivot<-(cast(pivot,value~CustomerLastName,fill=0,fun.aggregate=function(x) length(x)))
pivot<-cbind(offers,pivot[-1])

# write.csv(file="pivot.csv",pivot) # データ保存

cluster.data<-pivot[,8:length(pivot)]
cluster.data<-t(cluster.data)
head(cluster.data)
         1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
Adams    0 0 0 0 0 0 0 0 0  0  0  0  0  0  0  0  0  1  0  0  0  0  0  0  0  0  0  0  1  1  0  0
Allen    0 0 0 0 0 0 0 0 1  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1  0  0  0  0  0
Anderson 0 0 0 0 0 0 0 0 0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1  0  1  0  0  0  0  0  0
Bailey   0 0 0 0 0 0 1 0 0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1  0  0
Baker    0 0 0 0 0 0 1 0 0  1  0  0  0  0  0  0  0  0  1  0  0  0  0  0  0  0  0  0  0  0  1  0
Barnes   0 0 0 0 0 0 0 0 0  1  0  0  0  0  0  0  0  0  0  0  1  1  0  0  0  0  0  0  0  0  1  0

クラスタリングのデータセットでは、行は顧客を、列は異なるワインのブランドやタイプを表している。

ステップ2:距離とクラスタ

ここではk=4とし、4つのクラスターを使用することを示す。これは多少恣意的なものだが、選ぶ数はビジネスとして扱えるセグメントの数を代表するものでなければなりません。つまり、100個のセグメントはEメールマーケティングキャンペーンとしては意味がない。

各顧客がクラスタの平均値からどれだけ離れているかを計算する必要がある。これには多くの距離/非類似度インデックスを使用できるが、その1つにGower's dissimilarityがある。

library(cluster)
D=daisy(cluster.data, metric='gower')

距離行列を作成した後、Ward's hierarchical clusteringの手順を実行する。

H.fit <- hclust(D, method="ward")
plot(H.fit) # デンドログラムの表示

groups <- cutree(H.fit, k=4) # ツリーを4つに切り分ける

# 4つのクラスターを赤い枠で囲んだデノグラムを描く
rect.hclust(H.fit, k=4, border="red") 

f:id:iDES:20210325014607p:plain

# セグメンテーションの2D表示:
clusplot(cluster.data, groups, color=TRUE, shade=TRUE,
         labels=2, lines=0, main= 'Customer segments')

f:id:iDES:20210325014624p:plain

上位の取引を得るためには、少しデータを操作する必要がある。まず、クラスターとトランザクションを結合する必要がある。注目すべきは、トランザクションクラスターを保持する「テーブル」の長さが異なることである。そこで、データを結合する方法が必要となる。そこで、merge()関数を使用し、列にわかりやすい名前をつける。

# データのマージ

cluster.deals<-merge(transactions[1:2],groups,by.x = "CustomerLastName", by.y = "row.names")

colnames(cluster.deals)<-c("Name","Offer","Cluster")
head(cluster.deals)
      Name Offer Cluster
1    Adams    18       1
2    Adams    29       1
3    Adams    30       1
4    Allen     9       2
5    Allen    27       2
6 Anderson    24       3

次に、ピボット処理を繰り返し、オファーを行に、クラスタを列にして、各クラスタトランザクションの合計数をカウントする。ピボットテーブルができたら、先ほどと同様にオファーのデータテーブルとマージする。

# Get top deals by cluster
cluster.pivot<-melt(cluster.deals,id=c("Offer","Cluster"))
cluster.pivot<-cast(cluster.pivot,Offer~Cluster,fun.aggregate=length)
cluster.topDeals<-cbind(offers,cluster.pivot[-1])
head(cluster.topDeals)
  OfferID Campaign           Varietal MinimumQt Discount      Origin PastPeak 1 2 3 4
1       1  January             Malbec        72       56      France    FALSE 0 8 2 0
2       2  January         Pinot Noir        72       17      France    FALSE 0 3 7 0
3       3 February          Espumante       144       32      Oregon     TRUE 1 2 0 3
4       4 February          Champagne        72       48      France     TRUE 0 8 0 4
5       5 February Cabernet Sauvignon       144       44 New Zealand     TRUE 0 4 0 0
6       6    March           Prosecco       144       86       Chile    FALSE 1 5 0 6

Study case III: ソーシャルネットワーククラスタリング分析

この分析には,2006年から2009年にかけて,有名なソーシャル・ネットワーク上にプロフィールを持っていた米国の高校生3万人を無作為に抽出したデータセットを使用している(リンク)。

全ページに掲載された上位500語の中から、「課外活動」「ファッション」「宗教」「恋愛」「反社会的行動」の5つのカテゴリーの興味を表す36語を選んだ。この36個の単語には、「サッカー」「セクシー」「キス」「聖書」「ショッピング」「死」「ドラッグ」などの言葉が含まれています。最終的なデータセットには,各人について,その人のSNSプロフィールに各単語が何回登場したかが示されている。

teens <- read.csv("snsdata.csv")
head(teens,3)
  gradyear gender    age friends basketball football soccer softball volleyball swimming cheerleading baseball tennis sports cute sex sexy hot kissed dance band marching
1     2006      M 18.982       7          0        0      0        0          0        0            0        0      0      0    0   0    0   0      0     1    0        0
2     2006      F 18.801       0          0        1      0        0          0        0            0        0      0      0    1   0    0   0      0     0    0        0
3     2006      M 18.335      69          0        1      0        0          0        0            0        0      0      0    0   0    0   0      0     0    2        0
  music rock god church jesus bible hair dress blonde mall shopping clothes hollister abercrombie die death drunk drugs
1     0    0   0      0     0     0    0     0      0    0        0       0         0           0   0     0     0     0
2     2    2   1      0     0     0    6     4      0    1        0       0         0           0   0     0     0     0
3     1    0   0      0     0     0    0     0      0    0        0       0         0           0   0     1     0     0
dim(teens)
[1] 30000    40

また、データの具体的な内容を簡単に見てみよう。str()の出力の最初の数行は以下の通りである。

str(teens)
'data.frame':    30000 obs. of  40 variables:
 $ gradyear    : int  2006 2006 2006 2006 2006 2006 2006 2006 2006 2006 ...
 $ gender      : chr  "M" "F" "M" "F" ...
 $ age         : num  19 18.8 18.3 18.9 19 ...
 $ friends     : int  7 0 69 0 10 142 72 17 52 39 ...
 $ basketball  : int  0 0 0 0 0 0 0 0 0 0 ...
 $ football    : int  0 1 1 0 0 0 0 0 0 0 ...
 $ soccer      : int  0 0 0 0 0 0 0 0 0 0 ...
 $ softball    : int  0 0 0 0 0 0 0 1 0 0 ...
 $ volleyball  : int  0 0 0 0 0 0 0 0 0 0 ...
 $ swimming    : int  0 0 0 0 0 0 0 0 0 0 ...
 $ cheerleading: int  0 0 0 0 0 0 0 0 0 0 ...
 $ baseball    : int  0 0 0 0 0 0 0 0 0 0 ...
 $ tennis      : int  0 0 0 0 0 0 0 0 0 0 ...
 $ sports      : int  0 0 0 0 0 0 0 0 0 0 ...
 $ cute        : int  0 1 0 1 0 0 0 0 0 1 ...
 $ sex         : int  0 0 0 0 1 1 0 2 0 0 ...
 $ sexy        : int  0 0 0 0 0 0 0 1 0 0 ...
 $ hot         : int  0 0 0 0 0 0 0 0 0 1 ...
 $ kissed      : int  0 0 0 0 5 0 0 0 0 0 ...
 $ dance       : int  1 0 0 0 1 0 0 0 0 0 ...
 $ band        : int  0 0 2 0 1 0 1 0 0 0 ...
 $ marching    : int  0 0 0 0 0 1 1 0 0 0 ...
 $ music       : int  0 2 1 0 3 2 0 1 0 1 ...
 $ rock        : int  0 2 0 1 0 0 0 1 0 1 ...
 $ god         : int  0 1 0 0 1 0 0 0 0 6 ...
 $ church      : int  0 0 0 0 0 0 0 0 0 0 ...
 $ jesus       : int  0 0 0 0 0 0 0 0 0 2 ...
 $ bible       : int  0 0 0 0 0 0 0 0 0 0 ...
 $ hair        : int  0 6 0 0 1 0 0 0 0 1 ...
 $ dress       : int  0 4 0 0 0 1 0 0 0 0 ...
 $ blonde      : int  0 0 0 0 0 0 0 0 0 0 ...
 $ mall        : int  0 1 0 0 0 0 2 0 0 0 ...
 $ shopping    : int  0 0 0 0 2 1 0 0 0 1 ...
 $ clothes     : int  0 0 0 0 0 0 0 0 0 0 ...
 $ hollister   : int  0 0 0 0 0 0 2 0 0 0 ...
 $ abercrombie : int  0 0 0 0 0 0 0 0 0 0 ...
 $ die         : int  0 0 0 0 0 0 0 0 0 0 ...
 $ death       : int  0 0 1 0 0 0 0 0 0 0 ...
 $ drunk       : int  0 0 0 0 1 1 0 0 0 0 ...
 $ drugs       : int  0 0 0 0 1 0 0 0 0 0 ...

予想していた通り、データには3万人のティーンエイジャーが含まれており、個人の特徴を示す4つの変数と、興味を示す36の単語が含まれている。なお、性別という変数にはNAが入っている。

summary(teens$age)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
  3.086  16.312  17.287  17.994  18.259 106.927    5086

欠損値のあるデータはすべてスキップする。

teens = na.omit(teens)
dim(teens)

ここでは、10代の若者のSNSプロフィールに様々な関心事が登場した回数を表す36の特徴のみを考慮して、クラスター分析を始める。便宜上、これらの特徴のみを含むデータフレームを作成する。

interests <- teens[5:40]

z-scoreによる標準化をinterestのデータフレームに適用するには、次のようにlapply()でscale()関数を使用する。

interests_z <- as.data.frame(lapply(interests, scale))

10代の若者を5つのクラスターに分けるには、次のようなコマンドを使う。

teen_clusters <- kmeans(interests_z, 5)

それぞれのグループに該当する例の数。グループが大きすぎたり小さすぎたりすると、あまり役に立たない可能性がある。kmeans()クラスタのサイズを取得するには、次のようにteen_clusters$sizeコンポーネントを使用する。

teen_clusters$size
[1]   405   860  2232  3083 17425

クラスターをより詳しく見るには、teen_clusters$centersコンポーネントを使って、クラスターの重心の座標を調べることができ、最初の8つの特徴については以下のようになる。

teen_clusters$centers
  basketball     football      soccer    softball  volleyball    swimming  cheerleading    baseball      tennis       sports        cute          sex         sexy
1  0.1152395 -0.006253857  0.02844803 -0.04255250  0.02933352  0.04500375  0.0006386251 -0.03888461  0.05637920 -0.009560419  0.01047181  0.025147945 -0.062252867
2  0.3386771  0.350120706  0.15029767  0.13701506  0.07668272  0.20899493  0.1543723921  0.23075537  0.11597610  0.726483103  0.44428148  1.975537523  0.511518309
3  1.2300691  1.200720411  0.47116382  1.11942700  1.04345835  0.09264676  0.0244048830  1.10666395  0.15540779  1.071233927 -0.01010005 -0.038629308 -0.009825837
4  0.0284675  0.104936408  0.06895202 -0.04458681 -0.01021244  0.27949365  0.5623033380 -0.05816003  0.04890366 -0.063436948  0.82253163 -0.004130576  0.303494967
5 -0.1819922 -0.189503466 -0.08063094 -0.14127398 -0.13631801 -0.07267883 -0.1102480224 -0.14194938 -0.03559330 -0.161625338 -0.16640717 -0.092407002 -0.076237420
          hot      kissed        dance        band     marching      music       rock         god     church       jesus        bible         hair       dress
1  0.05344326 -0.03354630 -0.009405618  0.15152951  0.078953661  0.2306109  0.1425621  2.24624560  1.3185507  2.36965404  5.992483246  0.044978265  0.03931601
2  0.26019419  2.94730493  0.414987319  0.60089572  0.206976226  1.2478957  1.1739297  0.35947129  0.1521145  0.05459252  0.005037993  2.498087831  0.53055817
3 -0.01695914 -0.09929714 -0.010316408 -0.03461299 -0.038526778  0.0677092  0.1500378  0.03032044  0.1524046 -0.01081647 -0.095495897 -0.003643109 -0.05968584
4  0.67378454 -0.01425919  0.701985251  0.03514753 -0.028764717  0.2292623  0.1222727  0.06281957  0.2917329  0.02396216 -0.101020641  0.364937887  0.60853128
5 -0.13112404 -0.12944067 -0.143143422 -0.03496375 -0.002025962 -0.1161854 -0.1021044 -0.08494822 -0.1092919 -0.06062510 -0.109422950 -0.188438670 -0.12712116
        blonde        mall     shopping      clothes   hollister abercrombie         die       death       drunk       drugs
1 -0.004136652 -0.09449647 -0.006181435  0.037215586 -0.07401475 -0.03857646  0.21743896  0.29091117  0.05829588  0.08088582
2  0.355703198  0.58040544  0.216368739  1.191676922  0.21324062  0.35608241  1.72250393  0.92678665  1.76315875  2.70938830
3  0.026379582 -0.02753857  0.013336653 -0.004109565 -0.09850342 -0.10399745 -0.06606873 -0.03193388 -0.07480891 -0.09821954
4  0.032535642  0.89065699  1.125189643  0.662218098  0.94076894  0.86188708  0.03601752  0.09025773  0.03793660 -0.06647778
5 -0.026594893 -0.18050542 -0.211322853 -0.176319100 -0.16263656 -0.15584981 -0.08797663 -0.06438127 -0.08550424 -0.11125714

クラスターの特徴は円グラフで知ることができる。

par(mfrow=c(2,2))
pie(colSums(interests[teen_clusters$cluster==1,]),cex=0.5)

pie(colSums(interests[teen_clusters$cluster==2,]),cex=0.5)

pie(colSums(interests[teen_clusters$cluster==3,]),cex=0.5)

pie(colSums(interests[teen_clusters$cluster==4,]),cex=0.5)

f:id:iDES:20210325014653p:plain

「不登校も児童虐待防止法で定義された児童虐待に含まれる」という主張

ci.nii.ac.jp

過激な主張がされている論文である。

虐待は実母によるものが半数

虐待死の加害者は,一般には継父であることが多いと考えられている。しかしながら,継父が加害者であった例は全体の10.0%,実母・継父の組み合わせでも2.2%で,合計12.2%である。これに対し,実の親が加害者であったケースは,実母が49.2%,実父が15.9%,実母・実父の組み合わせが9.6%で,合計で74.7%であることから,実母・継父の家庭はリスク・ファクターのひとつであるという予見は誤りであると言わざるを得ない。

山形県の調査でも似たような結果が出ている。 https://www.pref.yamagata.jp/documents/2583/25houkoku4.pdf

f:id:iDES:20210321181411p:plain f:id:iDES:20210321181420p:plain

一般的には継父による虐待が多いとイメージされがちだが、実母によるものが多いというのが実態である。 ただ、あくまで、これは虐待ケースの中で集計した場合の話である。

日本の継父の数

統計がないらしい。

note.com

日本の年間の婚姻数は53万件で、「ステップファミリー(子連れ再婚家庭)は年間 約2.2万件(世帯) 誕生している」ということで、養子縁組だけで数えられないので、すべてカウントされていないだろうが、継父はやはり珍しい。

一般人口との比較でオッズ比を出すと、継父による虐待率がかなり高くなるはずである。「実母・継父の家庭はリスク・ファクターのひとつであるという予見は誤り」というのは、間違いなく誤りである。

ハッサル小体の石灰化

少し横道。

また,本屍の胸腺は萎縮し,ハッサル小体の石灰化が認められた。このII旬腺の萎縮は被虐待児の特徴的な所見の一つであり2、そのメカニズムは,ストレスに対する生理的反応として分泌される副腎皮質ホルモンである糖質コルチコイドが胸腺細胞のアポトーシスを誘導するためであると考えられている3, 6。すなわち,本屍は長期にわたる虐待を受けていたことが示唆された。

ja.wikipedia.org

  • 2.Fukunaga T, Mizoi Y, Yamashita A, et al : Thymus of abused/neglected children. Forensic Science International, 53; 69 -79, 1992.
  • 3 Gruber J, Sgonc R, Hu YH, et al : Thymocyte apoptosis inducing by elevated endogeneous corticosterone levels. European Journal of Immunology, 24; 1115-1121, 1994.
  • 6.Tarcic N, Ovadia H, Weiss DW, et al : Restraint stress-induced thymic involution and cell apoptosis are dependent on endogeneous glucocorticoids. Journal of Neuroimmunology, 82 ; 40-46, 1998.

不登校児童虐待防止法で定義された児童虐待に含まれる

しかしながらネグレクトを「子どもの健全な育成にとって適切な行為を行わないこと,あるいは子どもの健全な育成にとって不適切な行為を行うこと」と認識すると「不登校」も児童虐待防止法で定義された児童虐待に含まれる。特に,保護者が正当な理由もなく頑なに,面会を拒絶する場合には,児相と協同して早期介入の必要性を検討するとともに,児童の安全を現認すべきであり,学校教職員は,児童虐待防止法第五条において児童虐待の早期発見義務が課せられていることを再認識し,教育現場においても養護教諭を中心とした児童虐待に関する研修の実施が必須である。

不登校児童虐待防止法で定義された児童虐待に含まれる」というのは興味深い見解だが、法的には誤りである。なぜなら「子どもの健全な育成」というのは必ずしも学校に登校することを意味しないからである。

不登校から虐待を発見すべし

本件発生後に大阪府において,同種の事例,すなわち,児童・生徒の安全を現認,「不登校」の背景に隠された児童虐待を見落としてしまい悲惨な結末を招いてしまった事例が平成14年8月(平成16年4月16日毎日新聞)と平成15年11月(平成16年1月26日読売新聞)に発生している。わが国の教育現場が本件を教育界の全国的な問題として積極的に検証していれば,これらの2事例の発生を防ぎ得たものと考えられる。 この事件の後に,この教育委員会が管轄するある小学校に入学予定だった女児が入学式に出席しないまま母親と共に姿を消した。約半年後にその女児は,近隣の町のスーパーマーケットで顔面に複数の変色斑があるのに気付いた女性客に声をかけられ,母親と同居の男性により身体的虐待を受けていたことが判明し保護された(平成16年11月2日中日新聞)。教育委員会は「不就学児」として区役所に届け出ただけであったというが,「不就学児」とは子どもの教育を受ける権利を侵害する行為でネグレクトに他ならないという認識が欠けていたと言わざるを得ない。

不就学児をチェックすると、虐待を防止できるが、放置しているぞ!という話。
全国的な話なのか、大阪という要因が大きいのかは判断しにくい。大阪というよりも大都市の都心部にある貧困地域といった方が正確だろう。同様の地域は東京や神奈川はじめ大都市には存在している。

大都市の都心部にある貧困地域では、家庭環境に起因した不登校は多く、そのた福祉関連の問題が多すぎて、行政の手が回っていない。そういうところでは起こってもおかしくないだろう。

他国の法体系

やや余談。
日本国憲法の3大義務は、義務教育、勤労、納税であるが、教育の義務は親や保護者に課せられたものである。この考え方は世界共通かというと、そうではない。教育を受ける本人(子ども)の権利として教育を位置付けている国もある。例えば、ドイツでは教育は「権利」として規定されている。

さて、なぜドイツがこのように登校に厳格なのか。その理由は、「教育の義務」ではなく「就学の義務」が課されているからだ。そのため、「教育の義務」を最優先とし、学校に通わないホームスクーリングを認めているアメリカとは根本的に異なる。義務を果たさない怠慢な行為と判断すれば、生徒には即座に登校を命じ、親には罰金を科す。基本的にドイツでは、現行の学校教育を拒否する権利が認められていないのである。
端的な例を紹介しよう。2007年2月、ドイツ東部のザクセン州グルリッツで学校を約1ヵ月間無断欠席していた15歳の女子生徒に対し、裁判所は2週間の収監を言い渡した。このニュースにはドイツ国民ですら驚いたが、裁判所は親が罰金を払わず、当の女子生徒も釘時間の地元奉仕活動を拒否したことを判決理由としている。(p.149)

関連リンク

ゲームとモラル・パニック

www.taylorfrancis.com

こちらの本の第2章からモラル・パニックについて。

Nicholas D. Bowman https://www.taylorfrancis.com/chapters/rise-refinement-moral-panic-nicholas-bowman/e/10.4324/9781315736495-2

モラル・パニックとは

モラルパニックでは、社会の一部が、他の一部の行動やライフスタイルの選択を、社会全体にとって重大な脅威であると考える。このような環境では、道徳的信念が科学的研究に大きな影響を与え、その結果が疑われていたことの確認として容易に利用されてしまう。(p32)

  • Elson M, Ferguson C. Gun violence and media effects: Challenges for science andpublic policy. The British Journal of Psychiatry. 2013; 203: 322–324. doi: 10.1192/bjp. bp.113.128652

モラル・パニックの例 天動説

ガリレオ・ガリレイの天動説が挙げられている。

小説

ヴィクトル・ユーゴーの『レ・ミゼラブル』、アレクサンダー・デュマの『モンテ・クリスト伯』や『三銃士』といった作品。

出版当時は冒険小説を読むことで強迫観念に駆られ、愚かで有害な時間の浪費につながると主張された

ここでカトリック教会に焦点を当てたのは、エルソンとファーガソンが提起した重要なポイントを説明するためです。社会の一部(教会)が、他の一部(科学者)をより大きな社会的利益に対する脅威やリスクとみなした場合、視点は大きく制限される。

  • Elson M, Ferguson C. Gun violence and media effects: Challenges for science and public policy. The British Journal of Psychiatry. 2013; 203: 322–324. doi: 10.1192/bjp. bp.113.128652

プラトンエクリチュール

有名な哲学者であるプラトンは、『パイドロス』の中で、師匠であるソクラテスの考えを踏襲し、文字が普及すると、人々は「自分で語ることも、他人に真実を適切に教えることもできない言葉を蒔くようになる」と指摘し、文字は学問の妨げになると糾弾している。

この文章の視点とは少し違うが『パイドロス』は現代思想の読み手にとっては、ジャック・デリダプラトンパルマケイアー』を早期させるだろう。プラトンエクリチュール論をモラル・パニックとして捉える視点は新鮮である。

クロスワードパズルの害悪

コナーは、1920年代の北米(アメリカとカナダ)における新聞のクロスワードパズルの「奴隷化」について説明している。

英字新聞の社説では、クロスワードが労働者や主婦に与える腐食的な影響(1794年にホーシュが読書について懸念したのと同様に、経済的または家庭的な義務から気をそらす)を支持し、読書や知的な会話の著しい減少を促しているとするさまざまな記述を引用している。「クロスワード・パズル」と題された社説もある。

電話

イーバーによると、電話が絶え間なく気を散らすものになるのではないかという懸念があり、電話機の発明者であるアレクサンダー・グラハム・ベル自身が、自分の作業場に電話機を置くことを拒否したという。

  • Eber DH. Genius at Work: Images of Alexander Graham Bell. New York: Viking; 1983.

映画

近代に入ってモラル・パニックを起こしたものの代表例は映画である。

映画にまつわるモラル・パニックに対処する最善の方法は、議論やレトリックではなく、公平な科学的レンズを使って、特定の調査者の偏った視点から影響を観察し、理解することだった。 Lowery SL, DeFleur ML. Milestones in Mass Communication Research (4th edn). London: Longman; 1995.

 モラルパニックに関する最初の科学的研究は、1930年代に行われたペイン基金Payne Fundの研究にさかのぼることができる。これらの研究は、オハイオ州の著名な慈善家であるフランシス・ペイン・ボルトンが資金を提供し、映画が主に青少年の観客に与える影響についての社会的懸念に対処するための学識ある意見を確立することを目的としたものである。

ペイン基金での研究の一つがChartersによるものである。

  • Charters WW. Chairman’s preface. In Charters WW, ed. Motion Pictures and the Social Attitudes of Children: A Payne Fund Study. New York: Macmillan & Company; 1933.

1925年から1935年までの1,500本以上の映画を分析した結果、4分の3近くの映画が犯罪、セックス、恋愛を中心に描いており、タバコやアルコールの使用も公然と描かれていた(LoweryとDeFleurが指摘するように、当時は禁酒法の時代だった)。さらに、様々な体験やインタビューの手法により、子どもたちは映画に対して生理的な反応を示すだけでなく(例えば、アクションやホラーシーンを見ると興奮する)、画面の内容に沿った態度や意見を表明することもわかった(例えば、犯罪、セックス、恋愛に対してよりリベラルな考え方をする)。 こうした結果を受けて、チャーターズは後に「商業映画は不愉快なものだ」と結論づけている。彼の結論が(当時の)最先端の科学に基づいているように見えたことは、映画が少年の堕落の根本原因になっているという一般の人々の懸念を正当化するものであった。

  • Sproule JM. Propaganda and Democracy: The American Experience of Media and Mass Persuasion. Cambridge, UK: Cambridge University Press; 1997.

ペイン基金Payne Fundの研究は「映画は態度に影響を与え、行動のモデルを提供し、人生の相互解釈を形成した。映画は、当時の大人を悩ませたものと同じくらい多くの社会的影響(あるいは少なくとも無害な影響)を与えていたのではないか」というものであった。

  • Lowery SL, DeFleur ML. Milestones in Mass Communication Research (4th edn). London: Longman; 1995.

コミック

映画の議論とほぼ同じように、1950年代には、人気のある娯楽メディアが若者の心に与える悪影響について、同様の議論が行われた。 コリアーズ・マガジン(Collier's Magazine)』の「ホラー・イン・ザ・ナーサリー(Horror in the Nursery)」と題された記事では、米国の精神科医フレドリック・ワーサム(Fredric Wertham)の研究を6ページにわたって特集している。ワーサムは、コミックブックのイラストや物語が全国の少年の非行率に影響を与えているという臨床的証拠を持っていると主張している。精神科医としてではなく、私と同じように子供の福祉を第一に考える、何千もの悩める親たちの声を代弁することが、この研究における自分の役割だと考えていた。また、少年院に収容されている子どもたちへのインタビューでは、彼らの多くが熱心な漫画読みであることがわかった。ワータムは、コミックブックが規制を必要とする危険な娯楽メディアの一形態であることを確認し、最終的には、ワータムが『Seduction of the Innocent』を出版した1954年から2011年1月まで、業界の自主規制(Comics Code Authority)が行われることになった。

ワータムの主張は、若者の行動障害やその他の病理の原因を、子供たちの生活のより広い社会的、文化的、有機的な物理的コンテクストから、コミックを読むという娯楽に転嫁する例で埋め尽くされている。

  • Tilley CL. Seducing the innocent: Fredric Wertham and the falsifications that helped condemn comics. Information & Culture: A Journal of History. 2012: 47(4); 383–413. doi: 10.1353/lac.2012.0024.

岡田尊司や最近売れている『スマホ脳』のような感じである。

murder Simulator

このゲームは、1975年に公開された映画「Death Race 2000」を彷彿とさせるような、攻撃的な車の使い方をプレイヤーに推奨し、車内で殺人を犯すとポイントが加算されるという内容で物議を醸した。米国国家安全保障会議精神科医であるジェラルド・ドリーセン氏は、ニューヨーク・タイムズ紙のインタビューの中で、ビデオゲームインタラクティブな性質に対する懸念を表明し、テレビの暴力が受動的であるのに対し、「(デス・レース)では、プレイヤーが暴力を生み出す最初の一歩を踏み出すことになる」と力強い意見を述べた。プレイヤーはもはや単なる観客ではない。プレイヤーは単なる観客ではなく、その暴力をふるう俳優なのだ」。

Death Race

ビデオゲームとしての「Death Race」は、当時としては初歩的な白黒のシンプルなピクセルグラフィックで、特に革新的なものではなかった。 しかし、Kocurekによれば、このゲームをめぐる論争は、最終的に製造された500台の「Death Race」アーケード・キャビネットをはるかに超えて(開発元であるExidy社の当初の販売予測をはるかに超えて)、ビデオゲームの恐怖の道筋を作ったという。Kocurekにとって、「Death Race」の論争は、ビデオゲームと暴力を表裏一体のものとして世間に知らしめ、ビデオゲームにおけるインタラクティブ性が潜在的に危険な役割を果たすことに特別な注意を喚起した。

Death Raceは以下のようなゲームである。これがモラル・パニックを起こしたのは今からすると驚きである。

www.youtube.com

ウォーカーは、1982年に発売されたポルノゲーム「Custer's Revenge」についても同様の懸念を示している。このゲームでは、プレイヤーは矢印のフィールドを操作して、サボテンに繋がれたアメリカ先住民の女性に自分の体を押し付けるという内容だったが、当時の技術的な限界を考えると、ポルノ的な要素は非常に初歩的なものだった。ドリーセンのパニックを再現するために、ドウォーキンはこのゲームが「ネイティブ・アメリカンの女性に対する多くのギャング・レイプを発生させた」と主張したが、その根拠となったのは、たったひとつの逸話だった。

Custer's Revengeは以下のようなゲーム。

www.youtube.com

このゲームが原因で集団レイプが多く発生したというのは妄想がひどい。フェミニズムでは比較的人気の高いアンドレア・ドウォーキンだが、このCuster's Revengeに関する主張が特に際立っておかしいとは思えない。基本的に、1)証拠がない、2)議論が飛躍しているという特徴がある。モラル・パニックだと捉えると、アンドレア・ドウォーキンやそれを支持する人たちが存在することが謎であることが、クリアに理解できる。目から鱗である。

Mortal Kombat

問題になった暴力的なビデオゲームで最も有名なものはMortal Kombatである。

ゲームメーカーは、家庭用『モータルコンバット』に対する批判をある程度予測していました。任天堂は発売前に、スーパーファミコン版のゲームで、血や暴力を検閲し、動きを生々しくないものに変更した。しかし、ゲームが殺人者を養成し、生々しい暴力を助長しているのではないかという疑問に答えるため、議会の監視が強化される中、両社は代わりに互いの道徳的立場を議論することにした。セガは、自分たちのゲームには親が心配するようなラベルが貼られているから道徳的に優れていると主張し、任天堂は、会社の内部方針として自分たちの製品にそのような暴力が含まれることは許されていないから道徳的に優れていると主張した。

乱射事件とゲーム

レーティングシステムが確立されても、ビデオゲームの暴力に対するモラルパニックを鎮めることはできなかった。米国では学校での銃乱射事件が相次いで発生し、ビデオゲームインタラクティブな殺人シミュレーションであるという懸念が再燃した。ケンタッキー州パデューカ(1997年12月1日)やコロラド州コロンバイン(1999年4月20日)で起きた悲劇的な事件の原因を、当時の米国司法長官ジョン・アシュクロフトなどの政治家が調査した結果、ビデオゲームが根本的な原因であることが明らかになった37 。表面的には、1990年代に一人称視点のシューティングゲームの人気が高まったことから、暴力的なビデオゲームと学校での銃乱射事件を結びつけられた。

  • Associated Press. Ashcroft warns about culture, effect of violent video games. Associated Press. April 5, 2001.

米国第6控訴裁判所は、パデューカの銃撃事件について次のように述べている。「我々は、ビデオ画面上のキャラクターを撃つこと(何百万人もの人が行う活動)から、教室で人を撃つこと(せいぜい一握りの人が行う活動)への飛躍があまりにも大きすぎると判断する...」

  • James v. Meow Media, Inc. United States Court of Appeals, Sixth Circuit, Decided and filed, August 13, 2002. Available at: http://scholar.google.com/scholar_case?case= 2909369074319697416&q=300+F.3d+683&hl=en&as_sdt=2,5

ダンジョンズ&ドラゴンズ

有名な例として、ファインは1979年8月に行方不明になったミシガン州立大学の学生、ジェームズ・ダラス・エグバート3世の話を紹介している。エグバートの失踪については、彼がロールプレイングゲームダンジョンズ&ドラゴンズ」(D&D)に夢中になっていたことが問題視され、初期の報道では、彼がゲームのシナリオを再現するために学校の地下にある蒸気トンネルに避難していたという説が多かった(後に、エグバートは重度のうつ病を患っており、隠遁自殺を図るために蒸気トンネルに入ったことが判明した)。このエグバートの話を受けて、アメリカやイギリスでは、D&Dプレイヤーが空想と現実の区別がつかない不満分子であるというパニックが多発し、同様の疑惑が浮上した。アリソンはBBCに寄稿して、その恐怖をまとめている。今振り返ってみると、古典的なモラル・パニックの痕跡を見ることができ、少し難解なロールプレイの世界のいくつかの要素は、パニックに陥った外部の人々の想像力をかきたてた。

  • Allison PR. The great 1980s Dungeons & Dragons panic. BBC. April 11, 2014.Available at: www.bbc.com/news/magazine-26328105

暴力的なビデオゲームの社会的危険性に関する意見は個人のバックボーンよって違う

オックスフォード大学のAndrew Przybylski研究員は、イギリスの調査会社YouGovと共同で行った2013年の世論調査で、暴力的なビデオゲームの社会的危険性に関する意見は、様々な人口統計学的変数や経験変数によって異なることを発見した。このような研究は、ビデオゲームの経験が少ない人ほどビデオゲームを恐れる傾向があることを示唆している。

- Przybylski AK. Americans skeptical of link between mass shootings and video games. YouGov Report, October 2013. Available at: https://today.yougov.com/news/2013/10/17/americans-skeptical-link-between-mass-shootings-an/

また、興味深いことに、若いゲーマーは、「ゲームの入手を制限するための新たな法律の制定が必要である」という意見にも同意する傾向があった。これは、ゲーマーが、ゲームにラベルを付けたり、年齢にふさわしいかどうかを評価したりすることに抵抗がないことを示している可能性がある。

例えば、悪名高い(現在は弁護士資格を剥奪された)米国弁護士で、反ビデオゲームの狂信者であるJack Thompson氏は、ビデオゲームを「knuckleheads」のための「精神的な自慰行為」(Benedettiからの引用)と断じたように、非ゲーマーによるコメントは、ゲームに対する規範的な視点が非ゲーマーからもたらされる傾向があるという点を補強するものである。

  • Benedetti W. Were video games to blame for massacre? MSNBC. April 20, 2007.Available at: www.nbcnews.com/id/18220228/#.U-HgNfmSzSY

ハロルド・ラズウェルのモデル

彼の自慰行為への言及が、ゲームが自己満足的なレジャー活動であることを示唆していると仮定すると、社会学者のハロルド・ラズウェルHarold Lasswellが1948年に策定した、おそらく最も初期のマスコミュニケーションのモデルの1つが思い出される。ラスウェルはそのモデルの中で、現代のマスメディアの機能として、(a)社会的な出来事の監視、(b)それらの出来事と一般的な世論との相関関係の説明、(c)文化遺産の伝達方法としての役割、の3つを挙げている。

  • Lasswell HD. The structure and function of communication in society. In Bryson L, ed. The Communication of Ideas. New York: Institute for Religious and Social Studies; 1948: 37–51.

ラスウェルのモデルは、社会学者の視点からマスメディアの理想的な役割を説明した規定的なものであり、ライトのモデルは、社会で使われているマスメディアを自分なりに観察して説明した記述的なものであった。ゴンザレスは、NASAのチャールズ・ボールデン長官が、宇宙を旅するスーパーヒーロー『フラッシュ・ゴードン』が彼の宇宙飛行士としてのキャリアに果たした役割を懐かしんでいるという話を紹介している。

ゲームは無害、が規範化していないか

同時に、ビデオゲーム学者(開発者やプレイヤーも)も同様に「ビデオゲームには悪影響を及ぼすことがない」という規範的なスタンスをとることの危険性を警告している。Huesmann、Debow、Yangの3人は、「知的な人々がいまだに(暴力的なビデオゲームが攻撃性に与える)影響を疑っている」理由の多くは、研究者や政策立案者の多くが、自分たちが個人的に行っている活動(ゲーム)が悪影響を及ぼす可能性があることを受け入れたくないという事実に関係していると論じている。

  • Huesmann LR, Dubow ER, Yang G. Why is it hard to believe that media violence causes aggression? In Dill KE, ed. The Oxford Handbook of Media Psychology. Cambridge, UK: Oxford University Press; 2013: 159–171.

また、同記事では、暴力に対する一般的な脱感作や、強い三人称効果third-person effect(コンテンツの影響を受けるのは自分よりも他人であるという潜在的心理的思い込み)により、多くのメディア心理学者が「ビデオゲームが有害であるはずがない」という規範的スタンスを採用していると指摘している。

ビデオゲームの暴力とプレーヤーの罪悪感

Bogostは、ビデオゲームに対する嫌悪感や無関心反応の可能性という観点から、ゲーマーが画面上のインタラクティブなコンテンツ(「The Torture Game」の能動的なサディズムなど)に嫌悪感を抱くと、プレイングの動機が高まるよりもむしろ低下する可能性があると指摘している。

  • Bogost I. Disinterest. In Bogost I. How to Do Things with Video Games. Minneapolis:University of Minnesota Press; 2012: 134–140.

最近の2つの研究は、この主張を実証的に示しており、ビデオゲームがゲーマーに道徳的な違反行為を提示した場合、ゲーマーは反規範的な行動(暴力行為など)を積極的に避けるか、またはそれを行った場合に深い罪悪感を感じることがわかっている。

  • Joeckel S, Bowman ND, Dogruel L. Gut or game: The influence of moral intuitions on decisions in virtual environments. Media Psychology. 2012; 15(4): 460–485.doi: 10.1080/15213269.2012.727218
  • Grizzard M, Tamborini R, Lewis RJ, Wang L, Prabhu S. Being bad in a video game can make us morally sensitive. CyberPsychol Behav. 2014; 17(8): 499–504. doi: 10.1089/cyber.2013.0658