スペースやタブ、大文字やアンダーバーを組み合わせた命名規則、コメント…コードの書き方には、人によってスタイルがありますよね。それはもう指紋のようなもので、それさえ見えれば、誰がコードを書いたかほとんど
わかってしまう…そんな驚きの研究結果が発表されました。米ドレクセル大学、メリーランド大学、プリンストン大学、独ゲッティンゲン大学の共同チームの研究によると、自然言語処理と機械学習によるコード分析により、95%の精度で作者は特定できるそうです。解析されるのは、レイアウトや語彙の特性と、「抽象構文木(AST)」です。ASTとは、「コードの書き方からまったく影響を受けずに、コードの型の特性をとらえる」もので、つまり、関数の名前、コメント、スペース入れ方などのクセ以上のものを探し出し、作者を特定するカギにする、というわけです。
研究チームが開発した機械学習ソフトウェアで、Google Code Jamに公開されているコードの分析を試しに行ってみたところ、あるひとりの人が書いた630行のコードを分析すれば、95%の精度でその作者が特定できたそうです。コードの行数を増やして1,900行にすると、特定の精度は97%になるとか!このコード解析、すぐに使えそうな分野が思い浮かびますよね。そう、当局がハッカーを見つけたり、オンライン詐欺の犯人を特定したり、という使い方です。あと、他人のコードをちょっと拝借、なんていうケースもバレちゃったりするんでしょうか。「特定されたら困る!」という人は、今から誰かのコードの書き方をそっくりマネする練習を始めた方がいいかもしれない…ですかね?
<参照>
Anonymous programmers can be identified by analyzing coding style
https://freedom-to-tinker.com/blog/aylin/anonymous-programmers-can-be-identified-by-analyzing-coding-style/
De-anonymizing Programmers via Code Stylometry.
https://www.cs.drexel.edu/~ac993/papers/caliskan_deanonymizing.pdf
10: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:20:24.47 ID:Tgwqrr8b.net
>>1
ハッカーが書いたソースコードなんてどうやって入手するんだ?
69: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 12:37:40.40 ID:KUaP+4y+.net
1人の人が全てのソースを記述すれば特定できると思いますが、
実際の開発現場では複数の人が、一つのファイルどころか、
1つの関数、1つのメソッドを編集したりしているので
誰のソースか特定できないと思いますけどね。
>>1
>>当局がハッカーを見つけたり、 オンライン詐欺の犯人を特定したり、という使い方です
この記事を書いた人は素人?
ソースを難読化すれば特定できない。
(ハッカーが難読化のことを知らないわけがない)
92: 名無しのひみつ@\(^o^)/ 2015/02/13(金) 23:03:57.51 ID:p/RIDtGD.net
>>69
複数人で開発してると、あーここはあいつが書いたコードだなというのはだいたいわかる。
105: 名無しのひみつ@\(^o^)/ 2015/02/16(月) 23:40:31.59 ID:oMuH/35k.net
>>69
何も知らない素人だけど
難読化ってのは余計にクセが出そうな気がするよ
76: 【 ショック・ドクトリン アベノミクス 】 @\(^o^)/ 2015/02/12(木) 16:24:44.39 ID:wTULGSfE.net
>>1
過去最大のバラマキ歳出で
借金を増やして、
GPIFを外債外株で溶かして、
議員数削減も行わず、
公務員の給与は増やし、
既得権益解体と称して
日本解体外資への売国を進め、
尖閣諸島を中国に売渡し、
外国人労働者という名で事実上の移民政策、
特定秘密法案、TPP、国家戦略特区、地方分権分断、
外国人だけ消費税全額免税
富裕層優遇、
サラリーマン首切法で非正規拡大、
女性活用という名の
少子化加速日本人削減政策、
金目似非安全神話で
放射能バラマキ原発再稼働、
ヘイトスピーチ禁止法(人権擁護法)による言論統制、
在日外国人優遇政策、
集団的自衛権で中東派兵韓国防衛など
日本解体売国政策を進めているように見える…。
97: 名無しのひみつ@\(^o^)/ 2015/02/14(土) 22:04:16.74 ID:njgARX1l.net
>>1
AAコピペ荒しを特定して欲しい
108: 名無しのひみつ@\(^o^)/ 2015/02/17(火) 20:06:32.18 ID:ub9VxVN4.net
>>1
逆コンパイルは違法です
115: 名無しのひみつ@\(^o^)/ 2015/03/22(日) 05:02:42.58 ID:NiaNCbAS.net
>>108
>関数の名前、コメント、スペース入れ方
は逆コンパイルではわからんでしょ
ハッカー追跡できるのはスクリプトまでなんじゃないかな
ていうか別に違法じゃなくない?
製作者が禁止してるのにデコンパした場合でも民事だったような
2: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:03:50.84 ID:9RVrKUim.net
コピペばかりで作ったそうは判別できんだろ
3: SBT@\(^o^)/ 2015/02/12(木) 00:03:57.71 ID:PqiEwoz+.net
オレのソースなんて恥ずかしくて見せらんねーよ。(w
4: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:04:28.01 ID:8jQUZ3in.net
ソースコードを漏らすハカーとかいるのか?
70: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 12:41:39.21 ID:YbVdJkwQ.net
>>4
漏らすんじゃない。
自分のだと意図的に痕跡を残したいんだよ。
城を作った大工が…と同じ。
5: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:06:30.61 ID:96LvRZmn.net
スペースの入れ方なんて、統合開発環境でフォーマットすれば
決まったルールに修正されちゃうだろ。
6: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:12:01.50 ID:v8ZWyUEc.net
_ノ乙(、ン、)_2chのバカレスも特定可能スレw
7: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:18:07.38 ID:o4SoUt33.net
全部手打ちなんて自己満足でしかないんだが
論文のコピペじゃないんだから
8: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:19:21.68 ID:9FHAlCmE.net
大手企業なら
新入社員でコーディング規約は徹底的に守るように教えられるから
みんな似たコーディングになる。
特にF会社、N会社など相当厳しいぞw
9: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:19:39.26 ID:ANT1+6pD.net
あー、でも命名規則つけてチェックスタイルするから特定できないわー。
11: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:21:25.34 ID:+JuQPAPT.net
そもそも、95%だろうが97%だろうが99.9%だろうが
その程度の精度で証拠に使える訳ねぇだろが…
14: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:24:14.71 ID:Tgwqrr8b.net
>>11
初期のDNA検査の精度がそのぐらいで近年精度が上がった結果誤認逮捕だったって事件なかったっけ?
67: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 12:16:20.01 ID:ZBWRr3oE.net
>>14
あったあったw
そもそもDNAは相関があるんで通常のガウス分布による確率計算は適用不可なのに
いまだにバカがバカをさらしているw
12: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:21:56.44 ID:ZBWRr3oE.net
ハッカーならふつうにオブファスケートするわな
13: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:22:08.39 ID:iaOmoY4b.net
こういう機械学習使って医療面でどんどん応用できたらいいのに
15: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:25:08.23 ID:VF8EG6mY.net
俺のようなネット検索→コピペ職人ともなると特定は難しいだろう
16: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:31:50.93 ID:ZBWRr3oE.net
これコーディングルールチェッカーにできるよ?
17: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:33:45.76 ID:ZBWRr3oE.net
オブファスケートしても7割で特定できるらしい
25: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 01:14:52.41 ID:+JuQPAPT.net
>>17
原文によると
>There’s zero significance to the difference between the accuracies obtained from the original source code and obfuscated code.
>Obfuscating the data produced no detectable change in the performance of the classifier for this sample.
との事だが…
しかし、どのデータも比較対象が数人から数十人程度で話にならんな。
こんなのに基づいて捜査したら足利事件まっしぐらだろ。
28: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 01:21:54.95 ID:ZBWRr3oE.net
>>25
読み間違えてたわ
102: 名無しのひみつ@\(^o^)/ 2015/02/15(日) 11:33:40.61 ID:H424R4YC.net
>>25
学生に課題与えてプログラム書かせたのを
研究に流用してんじゃねえの
18: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:34:43.11 ID:cdT1vdNl.net
悪い連中は難読化くらいしてそうだけどね
19: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:38:07.47 ID:M5PRx3A/.net
先輩から受け取ったCのソースコードは
mainの中にすべて書かれてて唖然としましたわ
20: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:43:46.78 ID:fIA6HoF3.net
これってメールとかの文章でも応用できそうだな
21: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 00:54:20.23 ID:wPOSpx6b.net
それよりも、ロジックの組み方などからリバースエンジニアリングによって作られたものかどうかを判定できるようにしてもらいたいな
22: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 01:02:48.55 ID:ffrjRGlD.net
じゃっじゃやじゃーん
なりすましソースコード生成プログラム
23: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 01:03:25.68 ID:bkZOmdxY.net
コピペつぎはぎでも遠隔ウイルスくらいつくれるしなぁ
24: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 01:12:15.00 ID:9mV7ipAv.net
特定するも何も プロバイダに金払える奴は、住所も特定できるでしょ
27: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 01:20:45.48 ID:+JuQPAPT.net
>>24
オンライン犯罪集団の住所やら回線やらを特定しても意味ねぇぞw
どうせ全て使い捨てだ。一般人とは違う。
この記事が言ってるのは、
実際捕まえた後に「オラ!これもお前の仕業なんだろ!」と
余罪を追及するのに使えるって考えなんだろうが…
まぁ全く不可能だな。
26: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 01:15:17.64 ID:ZBWRr3oE.net
ソースコードでできるなら日本語でもできるだろ?
29: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 01:23:08.56 ID:nm5HEIvP.net
これでコンピュータウイルスをつくった犯人を特定できるのか?
59: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 10:01:22.71 ID:Y+QfBp08.net
>>29
ソースコードがあればいいけど、普通はコンパイル済みのバイナリファイルだよね。
とすればリバースエンジニアリングが必要になるけど、コンパイルした時点で空白・改行などの
クセの部分は切り捨てられちゃうから、この方法じゃ無理だろう。
30: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 01:25:26.28 ID:ZBWRr3oE.net
とんでもございません。他人の犯罪に見せかけるための最適化ツールです
31: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 01:31:12.11 ID:Qu45d+Gy.net
ロジックなので、ソースコードでなくてもできるはずだが、コンパイラの最適化で情報が少なくなる。
優秀なマは優秀なコードからコピペするので、ロジックが似てくる
32: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 01:56:29.13 ID:/otHwc6t.net
と京都府警が申しております
33: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 01:59:15.69 ID:H97ChTym.net
うちのフローチャートからソースを自動生成するCASEツールなら特定されても気になりません
34: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 02:01:28.44 ID:exqSa1Ox.net
2chのレスも確定できるようになったら褒めてやる。
35: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 02:20:31.48 ID:kkBUltaJ.net
hallo worldも特定できるんかなw
47: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 07:36:14.78 ID:GeC2GemW.net
>>35
そのhallo worldが1900ステップあればな
66: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 11:55:58.14 ID:lM4CxvgH.net
>>35 >>47
そういうスペルミスするやつで特定できそうだけどな
36: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 02:21:25.51 ID:CYkCmrWD.net
2chのネコスレでサッカーの実況している奴はすぐ分かるわ
37: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 02:30:26.66 ID:Pun0ToQu.net
このprintf文は素人が書いたな
38: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 02:55:28.14 ID:PwW1A9jo.net
こ、こいつmallocを使ってやがる!!
39: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 04:54:01.85 ID:1bDpuMz7.net
学術論文などでも 適用できるようにしてほしいものです。
40: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 05:45:37.26 ID:kFfe/qcH.net
>>2->>39特定した
57: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 09:33:22.20 ID:pPgWlIUz.net
>>39
学術論文は著作物ではないので引用無しのコピペは法的に問題ない
58: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 09:59:15.56 ID:MWKppCIL.net
>>57
あれ? 学術論文を出すときに出版社とかわす著作権を出版社に移譲しますって契約書は何?
ちょっと教えて。
41: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 05:51:19.40 ID:a5BdIh43.net
証拠を補強するだけだろ
これだけで逮捕とか無能の極地だわ
42: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 06:20:42.13 ID:pRPGGYyB.net
2chの自演も特定できそうだな
43: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 06:24:55.75 ID:aTZcmKt8.net
直接の証拠にはならないけど血液型程度には有用な捜査資料だな
44: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 06:52:24.82 ID:1E/oMZJ8.net
文章、音声、話ぶり、歩きぶり...もう全て解析されて個人特定
されてしまうかもな。
どれも、外にさらさないようにしないとな。
45: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 07:17:31.38 ID:KpvC+c6H.net
>>44
指示して人に書かせりゃOK。
46: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 07:33:23.70 ID:94vX55yZ.net
複数の人の手が入ってるソースはどうすんの?
48: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 07:37:02.76 ID:Ew5dbwXw.net
難読化ツールの誤認逮捕が捗るね
49: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 07:39:34.55 ID:Ive5Kg79.net
いえ、朝鮮人対策です
50: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 07:43:13.45 ID:MHSzS+h7.net
コピペしまくりだし、結構他人のコードに影響されて
数ヶ月経つと全然変わる自分は追跡不可能ってことだな。
51: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 07:56:23.37 ID:jwDkReMt.net
俺のソースはバレバレすぎ。
書いてる最中にコメントアウトしてメモ帳代わりにしちゃう癖があるんだ。
電話のメモやら、録画メモや買い物メモまで書いてあるから他人から見たら馬鹿みたい。
56: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 09:23:19.15 ID:wBhBTcUs.net
>>51
最低や…
52: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 07:57:32.47 ID:PoGFUnhj.net
「こんなひねくれた組み方する奴はあいつしかいない」ならよく言われる
53: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 08:10:29.48 ID:bGhtoMht.net
バイナリからかいせきできたらほうといってやる
54: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 08:27:11.72 ID:jB32A2/h.net
面白いけど特定率100%でなければ、裁判では意味がないだろう
オープンソースしてなければ特定もされないだろうし
55: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 08:39:20.90 ID:sCK1Fmj3.net
コードで行動が分かります!
60: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 10:18:56.99 ID:3brn+OB6.net
パクりが出来なくなってシナチョン涙目だなw
61: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 10:51:10.27 ID:UkkINqqe.net
62: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 10:58:10.94 ID:l//NVsti.net
>コメント
これで探られる様な奴が
こんなもの残すのか?
63: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 11:10:26.12 ID:de30nKxQ.net
え!?みんなコピペしないで全部自分で書いてんの?
64: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 11:24:55.52 ID:CQMArW10.net
但しバイナリからは何も分かんない悪寒
65: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 11:44:42.41 ID:iKLHriPo.net
たしかに癖ってあるし、perlとかは社内の誰が書いたか分かりやすい
68: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 12:20:45.67 ID:OwWAkyD2.net
精度ってクロスバリデーション込み?
71: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 13:03:31.92 ID:UT4a6DxB.net
?
WEBは自由、オープンソースっていう文化があるからなぁ。
ガチガチの他業界とは違うんだよ
72: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 13:05:49.43 ID:o1Z/cIWf.net
やべw
コメントに顔文字使うからすぐ特定されるわw
73: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 13:27:37.52 ID:XQ+l2MTc.net
<k>コメントってこんな感じにかくんだっけ?</>
74: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 14:19:39.25 ID:R1O7RvYV.net
バイナリになったらわからないだろ。ハッカーが
ウイルスにソースコード同梱とか考えにくい
75: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 14:57:09.47 ID:W6GWA3pn.net
最近はコーディング規約厳しいからわかりづらいんじゃないかなぁ
77: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 17:18:09.50 ID:ViC4gHOy.net
Webページに仕込むようなのならソースは見れるんじゃないの
78: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 17:55:08.02 ID:aod2aU0k.net
※ただしPerlに限る
79: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 18:22:05.72 ID:giHJ2cdA.net
>>78
意味わからん
Perl のソースが送られて来るとか、どこのサイトよ
80: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 19:12:33.71 ID:FYQS/TkE.net
誰が書いたところかわかりやすくなるんで、問題起きた時にその部分書いた人を呼び出しやすくなるんかな?
派遣で使ってた人呼び出して問題解決してもらうとか?
82: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 19:40:24.52 ID:giHJ2cdA.net
>>80
今時派遣含めて SCM で管理してるだろ
90: 名無しのひみつ@\(^o^)/ 2015/02/13(金) 07:37:39.83 ID:cbEgZuaJ.net
>>80
サブバージョン使え
81: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 19:27:39.31 ID:skerT2hw.net
Hello, World!
83: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 21:03:10.57 ID:+uqa5wU0.net
hagee world
84: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 21:08:46.42 ID:v4DneXdb.net
先頭に作成者名入れされられるから誰が書いたかはっきりわかんだね。
85: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 21:33:14.49 ID:UVYzP/k8.net
だいたい他人の作ったライブラリ組み合わせてるからなあ
86: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 21:47:36.11 ID:RK8txZuP.net
大手のIT会社は開発規約作ってやるからコピペSEばかりだよな
87: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 22:27:36.98 ID:7YHXIqDj.net
2chの書き込みも100回書き込み分ぐらい解析すれば、かなり特定の人物を絞り込めるんじゃないだろうか。
88: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 22:48:22.17 ID:skerT2hw.net
おまえらって存在感消すの得意そうだもんな
89: 名無しのひみつ@\(^o^)/ 2015/02/12(木) 23:04:49.39 ID:z9+g3TLf.net
ほほぉ、このソースも ’LINT’ が書いたソースだな
コイツいったいどれだけのソース書いてるんだ?
91: 名無しのひみつ@\(^o^)/ 2015/02/13(金) 12:56:21.54 ID:5+ExYKYI.net
入室する度に
『では、フィボナッチ数列を出力するプログラムを作ってください』
とか言われるのか。
93: 名無しのひみつ@\(^o^)/ 2015/02/14(土) 15:02:10.54 ID:SryPW1C6.net
2chのレスでも特定できそう
同一人物が書いたと分かれば、細切れの個人情報が集まってくしな
たまには文体とか語彙を変えたほうがいいのかもしれない
94: 名無しのひみつ@\(^o^)/ 2015/02/14(土) 21:04:13.86 ID:bHd7Fl0N.net
Goも使ったことが無いアホども
95: 名無しのひみつ@\(^o^)/ 2015/02/14(土) 21:35:29.86 ID:wRJW2L5h.net
次からは手袋して左手で書く
96: 名無しのひみつ@\(^o^)/ 2015/02/14(土) 21:37:59.25 ID:XavSs3Dy.net
信じるなよこんな話w
98: 名無しのひみつ@\(^o^)/ 2015/02/14(土) 22:09:37.19 ID:xu7FgQkO.net
どうしよう
2chに「おっぱい揉みたい」って書いたのが全部俺のせいにされてしまう
99: 名無しのひみつ@\(^o^)/ 2015/02/14(土) 22:33:02.28 ID:YrwPQSUf.net
>>98
大丈夫だ
俺もいるから
あっ、揉みたいじゃなくてなめたいだったっけ…
100: 名無しのひみつ@\(^o^)/ 2015/02/15(日) 05:20:52.25 ID:u6qzDIzR.net
大規模開発で人の個性が出るようなら、それはコントロールが足りない
コーディング規約でしばるのが当然
101: 名無しのひみつ@\(^o^)/ 2015/02/15(日) 11:14:28.51 ID:7L4YJs2p.net
音楽家バッハの作品の特徴を抽出してそれっぽい音楽を作るという研究は
もう50年以上前から行なわれている。いかにもそれらしい音楽ができる
レベルになっては居るが、やはりまだ作品としては凡である。
ソースコードの癖や傾向、小説から文体なりを統計的に抜き出すソフトSが
あったとして、そのSで得られた統計情報を元に作品を模写する文体模写
とかソースコード模倣ができるシステムMができたとするならば、
第三者がソースコードなり小説なりをMを用いて書いてやれは
統計的鑑定ソフトSにかけたら、模倣元のものであると推定するだろう。
つまりMを使って贋作を作っても、鑑定ソフトSではそれが贋作とは
判定されない、見分けが付かないわけだ。このようにつまらない話しである。
本当に価値があるのは、見本を見せてやるとそれに基づいて学習して
見本を書いた人のように創造的で価値のあるものを新規に作り出せる
ソフトGである。文体やスタイルなどの形を真似るだけのMでは、
それは伝統芸能になるだけだ。