-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
325 lines (227 loc) · 17.6 KB
/
index.html
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title> - Computer Generated Foundation</title>
<meta http-equiv="content-type" content="text/html;charset=UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<meta http-equiv="content-language" content="en"/>
<style type="text/css" id="internal-style">
/* modules */
@import url(resources/PageRateWidgetModule.css);
/* theme */
@import url(resources/style.css);
@import url(resources/1.css);
</style>
<link rel="shortcut icon" href="local--favicon/favicon.gif"/>
<link rel="icon" type="image/gif" href="local--favicon/favicon.gif"/>
</head>
<body id="html-body">
<div id="skrollr-body">
<a name="page-top"></a>
<div id="container-wrap-wrap">
<div id="container-wrap">
<div id="container">
<div id="header">
<h1><a href="index.html"><span>Computer Generated Foundation</span></a></h1>
<h2><span>SCPs generated by a neural network</span></h2>
<!-- google_ad_section_start(weight=ignore) -->
<div id="top-bar">
</div>
<div id="header-extra-div-1"><span></span></div><div id="header-extra-div-2"><span></span></div><div id="header-extra-div-3"><span></span></div>
</div>
<div id="content-wrap">
<div id="side-bar">
<div class="side-block">
<div class="menu-item"><img src="resources/nav_side/home.png" alt="home.png" class="image" /><a href="index.html">Main</a></div>
<div class="heading">
<p>SCP Database</p>
</div>
<div class="menu-item"><img src="resources/nav_side/series.png" alt="series.png" class="image" /><a href="series_1.html">Series I</a> <span class="sub-text">(001-999)</span></div>
<div class="menu-item"><img src="resources/nav_side/series.png" alt="series.png" class="image" /><a href="bonus_scps.html">Bonus SCPs</a></div>
<div class="menu-item"><img src="resources/nav_side/main.png" alt="main.png" class="image" /><a href="javascript:'" onclick='window.location.href = "scp-" + (Math.floor(Math.random() * (999)) + 1) + ".html";'>Random SCP</a></div>
<div class="menu-item"><img src="resources/nav_side/series.png" alt="series.png" class="image" /><a href="tales.html">Tales & stuff</a></div>
<div class="menu-item"><img src="resources/nav_side/series.png" alt="series.png" class="image" /><a href="wikipedia.html">SCP-net writing Wikipedia</a></div>
</div>
<div style="clear:both; height: 0px; font-size: 1px"></div>
<a class="close-menu" href="#"><br />
<img src="resources/nav_side/black.png" style="z-index:-1; opacity: 0.3;" alt="black.png" class="image" /><br /></a>
</div>
<div id="main-content">
<div id="action-area-top"></div>
<div id="page-title">
</div>
<div id="page-content">
<h3>What is this?</h3>
<p>A page full of articles generated by a computer trying to mimic <a href="http://www.scp-wiki.net/">SCP Foundation wiki</a>. Just in case it isn't clear all of the articles are generated by a computer and not a human, if you decide to use them anywhere please include a similar disclaimer.<p>
<p>You might have heard of <a href="https://openai.com/blog/better-language-models/">OpenAI's GPT-2 model</a> which is basically a magic box that has been trained to generate text on about 40GB of internet data. People have done <a href="https://www.gwern.net/GPT-2">all kinds</a> of <a href="https://iforcedabot.com/">stuff</a> with it and I decided to make it write SCP articles. Interestingly the raw model is quite good at this, the SCP wiki must have been in the training data and the model is robust enough that it can reproduce the style of SCP articles. However, I used <a href="https://github.com/nshepperd/gpt-2">this fork</a> which adds finetuning and finetuned it on SCP articles for better accuracy.</p>
<h4>Why do articles sometimes stop in the middle of a sentence?</h4>
<p>There is a fixed window size in the model and I didn't manage to get the model to output arbitrarily long outputs so often it hits the limit of ~1024 words before generating the whole article. If you have any tips on how to modify the GPT-2 code to produce longer outputs I would love to know.</p>
<h4>Are the SCP numbers relevant in any way?</h4>
<p>The article with number X almost certainly has no connection to the articles with the same number on the SCP wiki. However, as the article generation progressed I kept fixing bugs and the finetuning progressed so articles with later numbers should be slightly better. The <a href="bonus_scps">Bonus SCPs</a> page is completely separate and should probably contain the best SCPs as its generated by the latest version of the model.</p>
<h4>Some of the articles are complete gibberish!</h4>
<p>Yeah, that's how the cookie crumbles when it comes to machine learning. I didn't filter the item database itself at all. The tales and other pages are manually filtered because otherwise there would be empty pages and many copies of the Log of Unexplained Locations.</p>
<h4>Why is it not possible to vote on the articles?</h4>
<p>Hosting static webpages is easier and voting would require dynamic webpage.</p>
<h4>Why not host it directly on wikidot.com like the SCP wiki?</h4>
<p>Yeah, that seems like a good idea, I should have thought of that before I had written all of this static page generation.<p>
<h4>Formatting is kinda broken or less pretty than on the actual wiki!</h4>
<p>Another thing I wish I would have done differently from the start. When transoforming the website to a text format I removed most of the formatting data. I should have put in some markers for stuff like collapsable sections of an article or interviews. As of now the only way to add the formatting to the articles would be manually and I'm not gonna do that to 1000+ articles.</p>
<h3>Technical details</h3>
<p>I used the bigger 345M model, trained it for several days (about 10 000 epochs) and got to ~2.5 average loss. The dataset was created by webscraping the SCP wiki, running it through elinks to convert it to text and then using sed to fix details that got mixed up when converting to text. In the end it was 110MB of raw text data. I removed most of the "useless" files, like lists of articles but didn't quite catch everything. There were several copies of the <a href="http://www.scp-wiki.net/log-of-unexplained-locations">Log of Unexplained Locations</a> so once in a while the model just generates that article word for word. Other than that I didn't notice any overfitting.</p>
<h3>Some highlights</h3>
<p><a href="scp-595">SCP-595</a> - "SCP-595 is a Machete-brand, fully-automatic, .45-caliber Glock 19 that is engraved with the phrase “Christ there,” as well as the phrase “Can’t he suffer for his sins?” "</p>
<p><a href="ww26">Ordinary toaster</a> - "A toaster, also known as a "regular" toaster, is a non-anomalous item commonly found in or near a home. Toasters are no more or less dangerous than other toasters, but they do not produce the same works as a normal toaster. The difference is that toasters are designed specifically as to be used for automated, repetitive or homicidal purposes."</p>
<p><a href="g72">Jude's Last Ride</a> - "There are six evils in the world. The Karcists, the Monsters, the Mad Men and the S Theologians. "</p>
<p><a href="t80">The Old Laboratory</a> - "He smiled. "You're right. It's pretty clear that this building is some kind of resummoning facility. Snake Oil is a big brand." "<p>
<p><a href="t176">The Vampire Who</a> - " "Hey Doc. Why do they have to be so fucking ugly?" I asked, poking around my swanky multicolored jumpsuit. "Well, we give them great lighting, shade, and gear and all that. They'll still probably look good, though." "<p>
<p><a href="bonus_scp_5">SCP-1599</a> - Gothic cathedral from the future along with an exploration log (?) - "Dog: Sputrino. Sputrino is bullshit. Sputrino is ugly. Sputrino never lasts. Sputrino is a Crooked Stitcher. Sputrino can't be going anywhere. It's bullshit. Sputrino is just a cliche term for Crooked Stitcher. Sputrino is garbage. Can't you see how retarded this is taking me? Like, how can I even comprehend how bullshit this is? Sputrino is crap. Sputrino is not a… thing."<p>
<p><a href="scp-99">SCP-099</a> - A magnetic hexagon that dissolves everything in its field of view and teleports so its visible to all observers.</p>
<p><a href="scp-960">SCP-960</a> - "Happy Employment Times!!!"</p>
<p><a href="scp-594">SCP-594</a> - Emerald lump that emits "purple noise", floats in peoples' faces and eats throats.</p>
<p><a href="scp-38">SCP-038</a> - "SCP-038 is a 20.7cm (tall) aftershock pistol defined in ancient Greek mythology as a tool used by the Prometheus' Warrior and a regular security weapon for the Greek god Odysseus. "</p>
<p><a href="scp-288">SCP-288</a> - A camper van of unknown anomalous properties, a D-class has a nice one-sided conversation with the van (about his four boats among other things).</p>
<div class="footer-wikiwalk-nav">
<div style="text-align: center;">
</div>
</div>
</div>
<!-- wikidot_bottom_300x250 -->
<div class="page-tags">
<span>
</span>
</div>
<div id="page-info-break"></div>
<div id="page-options-container">
<div id="page-info">page revision: 1, last edited: <span class="">2019-05-14 12:54:22.852705</span></div>
<div id="page-options-bottom" class="page-options-bottom">
<a href="javascript:;" class="btn btn-default" id="edit-button">Edit</a>
<a href="javascript:;" class="btn btn-default" id="pagerate-button">Rate (<span id="prw54355">+</span>)</a>
<a href="javascript:;" class="btn btn-default" id="tags-button">Tags</a>
<a href="https://www.reddit.com/r/SCP/comments/boij7u/scp_articles_generated_by_a_neural_network/" class="btn btn-default" id="discuss-button">Discuss</a>
<a href="javascript:;" class="btn btn-default" id="history-button">History</a>
<a href="javascript:;" class="btn btn-default" id="files-button">Files</a>
<a href="javascript:;" class="btn btn-default" id="print-button">Print</a>
<a href="javascript:;" class="btn btn-default" id="site-tools-button">Site tools</a>
<a href="javascript:;" class="btn btn-default" id="more-options-button">+ Options</a>
</div>
<div id="page-options-area-bottom">
</div>
</div>
<div id="action-area" style="display: none;"></div>
</div>
</div>
<div id="footer" style="display: block; visibility: visible;">
<div class="options" style="display: block; visibility: visible;">
<a href="http://www.wikidot.com/doc" id="wikidot-help-button">Help</a>
|
<a href="http://www.wikidot.com/legal:terms-of-service" id="wikidot-tos-button">Terms of Service</a>
|
<a href="http://www.wikidot.com/legal:privacy-policy" id="wikidot-privacy-button">Privacy</a>
|
<a href="javascript:;" id="bug-report-button" onclick="WIKIDOT.page.listeners.pageBugReport(event)">Report a bug</a>
|
<a href="javascript:;" id="abuse-report-button" onclick="WIKIDOT.page.listeners.flagPageObjectionable(event)">Flag as objectionable</a>
</div>
Not powered by <a href="http://www.wikidot.com">Wikidot.com</a>
</div>
<div id="license-area" class="license-area">
Unless otherwise stated, the content of this page is licensed under <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution-ShareAlike 3.0 License</a>
</div>
<div id="extrac-div-1"><span></span></div><div id="extrac-div-2"><span></span></div><div id="extrac-div-3"><span></span></div>
<div id="footer-bar">
<div>
</div>
<h2>Other interesting sites</h2>
<div class="units">
<div class="unit">
<div class="inner"></div></div>
<div class="unit">
<div class="inner">
<a target="_blank" class="image" href="http://scp-wiki.wikidot.com">
<img class="thumbnail" alt="" src="resources/scp-thumbnail.jpg"/>
</a>
<h3><a target="_blank" href="http://scp-wiki.wikidot.com">SCP Foundation Wiki</a></h3>
<div class="desc">
</div>
</div>
</div>
<div class="unit">
<div class="inner">
<a target="_blank" class="image" href="https://openai.com/blog/better-language-models/">
<img class="thumbnail" alt="" src="resources/openai-thumbnail.jpg"/>
</a>
<h3><a target="_blank" href="https://openai.com/blog/better-language-models/">OpenAI post about GPT-2</a></h3>
<div class="desc">
</div>
</div>
</div>
</div>
</div>
</div>
<!-- These extra divs/spans may be used as catch-alls to add extra imagery. -->
<div id="extra-div-1"><span></span></div><div id="extra-div-2"><span></span></div><div id="extra-div-3"><span></span></div>
<div id="extra-div-4"><span></span></div><div id="extra-div-5"><span></span></div><div id="extra-div-6"><span></span></div>
</div>
</div>
<div id="dummy-ondomready-block" style="display: none;" ></div>
<!-- Google Analytics load -->
<script type="text/javascript">
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'stats.g.doubleclick.net/dc.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<!-- Quantcast -->
<script type="text/javascript">
_qoptions={
qacct:"p-edL3gsnUjJzw-"
};
(function() {
var qc = document.createElement('script'); qc.type = 'text/javascript'; qc.async = true;
qc.src = ('https:' == document.location.protocol ? 'https://secure' : 'http://edge') + '.quantserve.com/quant.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(qc, s);
})();
</script>
<noscript>
<img src="../pixel.quantserve.com/pixel/p-edL3gsnUjJzw-.gif" style="display: none;" border="0" height="1" width="1" alt="Quantcast"/>
</noscript>
<div id="page-options-bottom-tips" style="display: none;">
<div id="edit-button-hovertip">
Click here to edit contents of this page. </div>
</div>
<div id="page-options-bottom-2-tips" style="display: none;">
<div id="edit-sections-button-hovertip">
Click here to toggle editing of individual sections of the page (if possible). Watch headings for an "edit" link when available. </div>
<div id="edit-append-button-hovertip">
Append content without editing the whole page source. </div>
<div id="history-button-hovertip">
Check out how this page has evolved in the past. </div>
<div id="discuss-button-hovertip">
If you want to discuss contents of this page - this is the easiest way to do it. </div>
<div id="files-button-hovertip">
View and manage file attachments for this page. </div>
<div id="site-tools-button-hovertip">
A few useful tools to manage this Site. </div>
<div id="backlinks-button-hovertip">
See pages that link to and include this page. </div>
<div id="rename-move-button-hovertip">
Change the name (also URL address, possibly the category) of the page. </div>
<div id="view-source-button-hovertip">
View wiki source for this page without editing. </div>
<div id="parent-page-button-hovertip">
View/set parent page (used for creating breadcrumbs and structured layout). </div>
<div id="abuse-report-button-hovertip">
Notify administrators if there is objectionable content in this page. </div>
<div id="bug-report-button-hovertip">
Something does not work as expected? Find out what you can do. </div>
<div id="wikidot-help-button-hovertip">
General Wikidot.com documentation and help section. </div>
<div id="wikidot-tos-button-hovertip">
Wikidot.com Terms of Service - what you can, what you should not etc. </div>
<div id="wikidot-privacy-button-hovertip">
Wikidot.com Privacy Policy.
</div>
</div>
</body>
</html>