<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Nana-Korobi</title>
	<atom:link href="http://aokiji.science/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://aokiji.science/blog</link>
	<description>Without haste, but without rest.</description>
	<lastBuildDate>Mon, 18 Apr 2016 01:53:08 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.1.1</generator>
	<item>
		<title>Pythonで辞書の初期値をまとめて登録する方法</title>
		<link>http://aokiji.science/blog/?p=289</link>
		<comments>http://aokiji.science/blog/?p=289#comments</comments>
		<pubDate>Mon, 18 Apr 2016 01:53:08 +0000</pubDate>
		<dc:creator><![CDATA[AoYu]]></dc:creator>
				<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://aokiji.science/blog/?p=289</guid>
		<description><![CDATA[辞書内包表記 zip()関数に2つのシーケンスまたはイテレート可能オブジェクトを与えることで、同一箇所の要素の組み合わせからなるタプルのリストを生成することができる（i番目のタプルは各引数オブジェクトのi番目の要素を含む [&#8230;]]]></description>
				<content:encoded><![CDATA[<h4>辞書内包表記</h4>
<p><b>zip()関数</b>に2つの<u>シーケンス</u>または<u>イテレート可能オブジェクト</u>を与えることで、同一箇所の要素の組み合わせからなるタプルのリストを生成することができる（i番目のタプルは各引数オブジェクトのi番目の要素を含む）。さらに、このタプルのリストを<b>dict()関数</b>に引数として与えることで、辞書オブジェクトに変換することができる。この方法を利用することで、KeyリストとValueリストから辞書オブジェクトを簡便に作ることが可能となる。</p>
<p></p>
<pre class="brush: python; title: ; notranslate">
k = ['A', 'B', 'C', 'D', 'E']
v = [1, 5, -3, 9, 0]
zipped = zip(k, v)
d = dict(zipped)
print 'd :', d
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
d : {'A': 1, 'C': -3, 'B': 5, 'E': 0, 'D': 9}
</pre>
<p>この方法を使って、コドン-アミノ酸変換用辞書などを簡単に作製できる。</p>
<pre class="brush: python; title: ; notranslate">
bases = ['T', 'C', 'A', 'G']
codons = [b1+b2+b3 for b1 in bases for b2 in bases for b3 in bases]
aminoacids = 'FFLLSSSSYY**CC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG'
codon_dict = dict(zip(codons, aminoacids))
for k, v in sorted(codon_dict.items()):
    print k, '&gt;&gt;&gt;', v
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
AAA &gt;&gt;&gt; K
AAC &gt;&gt;&gt; N
AAG &gt;&gt;&gt; K
AAT &gt;&gt;&gt; N
ACA &gt;&gt;&gt; T
ACC &gt;&gt;&gt; T
ACG &gt;&gt;&gt; T
ACT &gt;&gt;&gt; T
AGA &gt;&gt;&gt; R
AGC &gt;&gt;&gt; S
AGG &gt;&gt;&gt; R
AGT &gt;&gt;&gt; S
ATA &gt;&gt;&gt; I
ATC &gt;&gt;&gt; I
ATG &gt;&gt;&gt; M
ATT &gt;&gt;&gt; I
CAA &gt;&gt;&gt; Q
CAC &gt;&gt;&gt; H
CAG &gt;&gt;&gt; Q
CAT &gt;&gt;&gt; H
CCA &gt;&gt;&gt; P
CCC &gt;&gt;&gt; P
CCG &gt;&gt;&gt; P
CCT &gt;&gt;&gt; P
CGA &gt;&gt;&gt; R
CGC &gt;&gt;&gt; R
CGG &gt;&gt;&gt; R
CGT &gt;&gt;&gt; R
CTA &gt;&gt;&gt; L
CTC &gt;&gt;&gt; L
CTG &gt;&gt;&gt; L
CTT &gt;&gt;&gt; L
GAA &gt;&gt;&gt; E
GAC &gt;&gt;&gt; D
GAG &gt;&gt;&gt; E
GAT &gt;&gt;&gt; D
GCA &gt;&gt;&gt; A
GCC &gt;&gt;&gt; A
GCG &gt;&gt;&gt; A
GCT &gt;&gt;&gt; A
GGA &gt;&gt;&gt; G
GGC &gt;&gt;&gt; G
GGG &gt;&gt;&gt; G
GGT &gt;&gt;&gt; G
GTA &gt;&gt;&gt; V
GTC &gt;&gt;&gt; V
GTG &gt;&gt;&gt; V
GTT &gt;&gt;&gt; V
TAA &gt;&gt;&gt; *
TAC &gt;&gt;&gt; Y
TAG &gt;&gt;&gt; *
TAT &gt;&gt;&gt; Y
TCA &gt;&gt;&gt; S
TCC &gt;&gt;&gt; S
TCG &gt;&gt;&gt; S
TCT &gt;&gt;&gt; S
TGA &gt;&gt;&gt; *
TGC &gt;&gt;&gt; C
TGG &gt;&gt;&gt; W
TGT &gt;&gt;&gt; C
TTA &gt;&gt;&gt; L
TTC &gt;&gt;&gt; F
TTG &gt;&gt;&gt; L
TTT &gt;&gt;&gt; F
</pre>
<h4>参考情報</h4>
<ul>
<li><a href="http://docs.python.jp/2/library/functions.html#zip" target="_blank">http://docs.python.jp/2/library/functions.html#zip</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://aokiji.science/blog/?feed=rss2&#038;p=289</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>メールソフトThunderbirdの強制改行文字数変更</title>
		<link>http://aokiji.science/blog/?p=282</link>
		<comments>http://aokiji.science/blog/?p=282#comments</comments>
		<pubDate>Wed, 20 Jan 2016 01:24:17 +0000</pubDate>
		<dc:creator><![CDATA[AoYu]]></dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://aokiji.science/blog/?p=282</guid>
		<description><![CDATA[Thunderbirdの強制改行 Thunderbirdで作製したメールは、初期設定では1行72文字で強制改行されてしまう。1行当たりの文字数が多いメールは可読性が低下してしまうので救済措置としてはありがたいが、「メール [&#8230;]]]></description>
				<content:encoded><![CDATA[<h4>Thunderbirdの強制改行</h4>
<p>Thunderbirdで作製したメールは、初期設定では<strong>1行72文字</strong>で強制改行されてしまう。1行当たりの文字数が多いメールは可読性が低下してしまうので救済措置としてはありがたいが、「メール作製時のレイアウトが崩れてしまう」や「URLを記載した場合にリンクが壊れる」などのトラブルのもとになっているのも事実。強制改行の文字数上限は、以下の手順で変更することができる。</p>
<p></p>
<p>以下、Thunderbird 31.7.0 (Mac OS X 10.9.5) 環境下での</p>
<ol>
<li>[環境設定]>[詳細]>[一般]を選択</li>
<li>右下の[設定エディタ]を選択</li>
<li>警告表示されるので承諾</li>
<li>検索窓に&#8221;mailnews.wraplength&#8221;を入力</li>
<li>ヒットした設定項目をダブルクリック</li>
<li>整数値入力ウィンドウに任意の強制改行上限文字数を入力 (初期値は72)</li>
<li>&#8220;OK&#8221;をクリックして設定完了</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://aokiji.science/blog/?feed=rss2&#038;p=282</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pythonで辞書のKeyとValueを入れ替える方法</title>
		<link>http://aokiji.science/blog/?p=271</link>
		<comments>http://aokiji.science/blog/?p=271#comments</comments>
		<pubDate>Tue, 19 May 2015 01:16:11 +0000</pubDate>
		<dc:creator><![CDATA[AoYu]]></dc:creator>
				<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://aokiji.science/blog/?p=271</guid>
		<description><![CDATA[辞書内包表記 Python 2.7以降では、リスト内包表記と同様の記法で辞書オブジェクトを生成することができる。これを利用することで、既存の辞書オブジェクトのKeyとValueを入れ替えた辞書オブジェクトを容易に作ること [&#8230;]]]></description>
				<content:encoded><![CDATA[<h4>辞書内包表記</h4>
<p>Python 2.7以降では、リスト内包表記と同様の記法で辞書オブジェクトを生成することができる。これを利用することで、既存の辞書オブジェクトのKeyとValueを入れ替えた辞書オブジェクトを容易に作ることが可能となる。</p>
<p></p>
<pre class="brush: python; title: ; notranslate">
d1 = {'a':123, 'b':456, 'c':789}
d2 = {v:k for k, v in d1.items()}
print 'd1 :', d1
print 'd2 :', d2
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
d1 : {'a': 123, 'c': 789, 'b': 456}
d2 : {456: 'b', 123: 'a', 789: 'c'}
</pre>
<h4>参考情報</h4>
<ul>
<li><a href="https://docs.python.org/2/tutorial/datastructures.html#dictionaries" target="_blank">https://docs.python.org/2/tutorial/datastructures.html#dictionaries</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://aokiji.science/blog/?feed=rss2&#038;p=271</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>バイアスとバリアンス</title>
		<link>http://aokiji.science/blog/?p=263</link>
		<comments>http://aokiji.science/blog/?p=263#comments</comments>
		<pubDate>Thu, 14 May 2015 07:03:10 +0000</pubDate>
		<dc:creator><![CDATA[AoYu]]></dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://aokiji.science/blog/?p=263</guid>
		<description><![CDATA[統計モデルを作製するアルゴリズムの評価 統計モデルを作製する（学習する）アルゴリズムの良し悪しを測る指標としてバイアス (Bias)とバリアンス (Variance)がある。参考ページにも記載されているが、&#8221; [&#8230;]]]></description>
				<content:encoded><![CDATA[<h4>統計モデルを作製するアルゴリズムの評価</h4>
<p>統計モデルを作製する（学習する）アルゴリズムの良し悪しを測る指標として<strong>バイアス (Bias)</strong>と<strong>バリアンス (Variance)</strong>がある。参考ページにも記載されているが、&#8221;モデルそのものの性能&#8221; を評価するための指標ではないことに注意する。</p>
<p></p>
<p>以下の図に示すように、<strong>モデル精度の悪さ</strong>を<strong>バイアス</strong>、<strong>モデル作製の不安定さ（再現性の悪さ）</strong>を<strong>バリアンス</strong>と定義する。</p>
<p><a href="http://aokiji.science/blog/wp-content/uploads/2015/05/Bias_and_Variance.png"><img src="http://aokiji.science/blog/wp-content/uploads/2015/05/Bias_and_Variance.png" alt="Bias_and_Variance" width="1084" height="922" class="alignnone size-full wp-image-268" /></a></p>
<p>理想的なモデル作製アルゴリズムは、低いバイアス・低バリアンスなもの。</p>
<h4>バイアスとバリアンスはトレードオフ</h4>
<p>直感的には、</p>
<ul>
<li>モデルが単純<br />
⇒ 性能は良くないが、教師データに対して安定<br />
⇒ 高バイアス・低バリアンス</li>
<li>モデルが複雑<br />
⇒ 性能は良いが、教師データに対して不安定（過学習など）<br />
⇒ 低バイアス・高バリアンス</li>
</ul>
<p>であるため、両者はトレードオフの関係にあると言える。回帰モデルの正則化手法と絡めて考えると、</p>
<ul>
<li>L1正則化（LASSO）<br />
⇒ 一部の入力変数を用いてモデルを構築、入力変数の数を制限<br />
⇒ モデルが単純<br />
⇒ 高バイアス・低バリアンス</li>
<li>L2正則化（Ridge回帰）<br />
⇒ 全ての入力変数を用いてモデルを構築、重みの大きさを制限<br />
⇒  モデルが複雑<br />
⇒ 低バイアス・高バリアンス</li>
</ul>
<p>となり、バランスの良いモデル作製のために両者を組み合わせた <strong>Elastic Net</strong> が使われるようになっている。</p>
<h6>以下の情報を参考にさせていただきました。</h6>
<ul>
<li><a href="http://d.hatena.ne.jp/isobe1978/20130906/1378438914" target="_blank">http://d.hatena.ne.jp/isobe1978/20130906/1378438914</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://aokiji.science/blog/?feed=rss2&#038;p=263</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pythonで画像処理</title>
		<link>http://aokiji.science/blog/?p=219</link>
		<comments>http://aokiji.science/blog/?p=219#comments</comments>
		<pubDate>Fri, 17 Apr 2015 07:35:48 +0000</pubDate>
		<dc:creator><![CDATA[AoYu]]></dc:creator>
				<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://aokiji.science/blog/?p=219</guid>
		<description><![CDATA[画像の編集 Pythonの画像処理用ライブラリである PIL (Python Imaging Library) を用いて、各種画像データの読み込み・操作・保存を行うことができる。PIL をインストールするには、こちらから [&#8230;]]]></description>
				<content:encoded><![CDATA[<h4>画像の編集</h4>
<p>Pythonの画像処理用ライブラリである <strong>PIL (Python Imaging Library)</strong> を用いて、各種画像データの読み込み・操作・保存を行うことができる。<strong>PIL</strong> をインストールするには、<a href="http://www.pythonware.com/products/pil/" target="_blank">こちら</a>からデータをダウンロードし、以下のコマンドを実行する。</p>
<p></p>
<pre class="brush: bash; title: インストール用コマンド; notranslate">
sudo python setup.py install
</pre>
<p>基本的には、<strong>Image</strong> モジュールをimportして種々の操作を行う。</p>
<pre class="brush: python; title: ; notranslate">
import Image

d1 = Image.open('RIMG0828.JPG') # 画像の読み込み
print d1.format, d1.size, d1.mode # メタ情報の表示
d1.show() # 画像の表示
d1.save('d1.jpg') # 画像の保存

d2 = d1.rotate(-90) # 画像の回転
print d2.size # sizeは（幅、高さ）
d2.show()
d2.save('d2.jpg')

d3 = d1.crop((824, 368, 2824, 2368)) # 画像の切り出し、切り出し範囲の指定は（左、上、右、下）
print d3.size
d3.show()
d3.save('d3.jpg')

d4 = d3.resize((500, 500)) # 画像のサイズ変更、サイズ指定は（幅、高さ）
print d4.size
d4.save('d4.jpg') # 画像の保存
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
JPEG (3648, 2736) RGB
(2736, 3648)
(2000, 2000)
(500, 500)
</pre>
<ul>
<li>
  d1<br />
  <a href="http://aokiji.science/blog/wp-content/uploads/2015/04/d1.jpg"><img src="http://aokiji.science/blog/wp-content/uploads/2015/04/d1-300x225.jpg" alt="d1" width="300" height="225" class="alignnone size-medium wp-image-244" /></a>
</li>
<li>
  d2<br />
  <a href="http://aokiji.science/blog/wp-content/uploads/2015/04/d2.jpg"><img src="http://aokiji.science/blog/wp-content/uploads/2015/04/d2-225x300.jpg" alt="d2" width="225" height="300" class="alignnone size-medium wp-image-245" /></a>
</li>
<li>
  d3<br />
  <a href="http://aokiji.science/blog/wp-content/uploads/2015/04/d3.jpg"><img src="http://aokiji.science/blog/wp-content/uploads/2015/04/d3-300x300.jpg" alt="d3" width="300" height="300" class="alignnone size-medium wp-image-246" /></a>
</li>
<li>
  d4<br />
  <a href="http://aokiji.science/blog/wp-content/uploads/2015/04/d4.jpg"><img src="http://aokiji.science/blog/wp-content/uploads/2015/04/d4-300x300.jpg" alt="d4" width="300" height="300" class="alignnone size-medium wp-image-247" /></a>
</li>
</ul>
<h4>配列データとしての画像の取り扱い</h4>
<p>Pythonのグラフ描画用ライブラリである <strong>Matplotlib</strong> では、前述した <strong>PIL</strong> を利用して〜〜〜。</p>
<pre class="brush: python; title: ; notranslate">
import matplotlib.pyplot as plt
d4.save('d4.png')
img = plt.imread('d4.png') # 画像の読み込み（PNGにしか対応していないようなので事前にファイル形式を変更する）
print img.shape # shapeは（高さ、幅、色次元）
plt.imshow(img) # 画像の描画
plt.show() # 描画結果の表示

img_r = img[:,:,0] # 赤（R）成分の抽出
img_g = img[:,:,1] # 緑（G）成分の抽出
img_b = img[:,:,2] # 青（B）成分の抽出
print img_r.shape, img_g.shape, img_b.shape
plt.subplot(131) # 複数の描画（1行3列の1番目に描画） 
plt.imshow(img_r)
plt.subplot(132) # 複数の描画（1行3列の2番目に描画） 
plt.imshow(img_g)
plt.subplot(133) # 複数の描画（1行3列の3番目に描画） 
plt.imshow(img_b)
plt.show()

img_part = img[190:240, 230:280, :] # 特定領域の切り出し（行方向：画像のy軸、列方向：画像のx軸）
plt.imshow(img_part)
plt.show()
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
(500, 500, 3)
(500, 500) (500, 500) (500, 500)
</pre>
<ul>
<li>
  全体の描画<br />
  <a href="http://aokiji.science/blog/wp-content/uploads/2015/04/test1.png"><img src="http://aokiji.science/blog/wp-content/uploads/2015/04/test1-300x225.png" alt="test1" width="300" height="225" class="alignnone size-medium wp-image-252" /></a>
</li>
<li>
  色成分毎の描画<br />
  <a href="http://aokiji.science/blog/wp-content/uploads/2015/04/test2.png"><img src="http://aokiji.science/blog/wp-content/uploads/2015/04/test2.png" alt="test2" width="800" height="300" class="alignnone size-full wp-image-260" /></a>
</li>
<li>
  特定領域の描画<br />
  <a href="http://aokiji.science/blog/wp-content/uploads/2015/04/test3.png"><img src="http://aokiji.science/blog/wp-content/uploads/2015/04/test3-300x225.png" alt="test3" width="300" height="225" class="alignnone size-medium wp-image-254" /></a>
</li>
<p></ui></p>
<h6>以下の情報を参考にさせていただきました。</h6>
<ul>
<li><a href="http://daemon.ice.uec.ac.jp/~shouno/2012.Programming/ImageHandling.html" target="_blank">http://daemon.ice.uec.ac.jp/~shouno/2012.Programming/ImageHandling.html</a></li>
<li><a href="http://www.lifewithpython.com/2013/09/pil.html" target="_blank">http://www.lifewithpython.com/2013/09/pil.html</a></li>
<li><a href="http://typea.info/tips/wiki.cgi?page=Python+Imaging+Library" target="_blank">http://typea.info/tips/wiki.cgi?page=Python+Imaging+Library</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://aokiji.science/blog/?feed=rss2&#038;p=219</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>最急降下法</title>
		<link>http://aokiji.science/blog/?p=206</link>
		<comments>http://aokiji.science/blog/?p=206#comments</comments>
		<pubDate>Mon, 06 Apr 2015 02:56:18 +0000</pubDate>
		<dc:creator><![CDATA[AoYu]]></dc:creator>
				<category><![CDATA[機械学習]]></category>

		<guid isPermaLink="false">http://aokiji.science/blog/?p=206</guid>
		<description><![CDATA[15/04/06 書きかけ 以下の情報を参考にさせていただきました。  http://gihyo.jp/dev/serial/01/machine-learning]]></description>
				<content:encoded><![CDATA[<p>15/04/06 書きかけ</p>
<h6>以下の情報を参考にさせていただきました。</h6>
<ul>
<li> <a href="http://gihyo.jp/dev/serial/01/machine-learning" target="_blank">http://gihyo.jp/dev/serial/01/machine-learning</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://aokiji.science/blog/?feed=rss2&#038;p=206</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Theano -基本編-</title>
		<link>http://aokiji.science/blog/?p=112</link>
		<comments>http://aokiji.science/blog/?p=112#comments</comments>
		<pubDate>Fri, 03 Apr 2015 03:16:48 +0000</pubDate>
		<dc:creator><![CDATA[AoYu]]></dc:creator>
				<category><![CDATA[Theano]]></category>
		<category><![CDATA[機械学習]]></category>

		<guid isPermaLink="false">http://aokiji.science/blog/?p=112</guid>
		<description><![CDATA[Pythonの数値計算用モジュールの一つである Theano について、基本的な使い方を整理する。余裕があれば、最終的には 公式チュートリアル の和訳版とする。 事前準備 以下の3つは常にimportしておく。 tens [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Pythonの数値計算用モジュールの一つである <a href="http://deeplearning.net/software/theano/index.html">Theano</a> について、基本的な使い方を整理する。余裕があれば、最終的には <a href="http://deeplearning.net/software/theano/tutorial/index.html">公式チュートリアル</a> の和訳版とする。</p>
<p></p>
<h4>事前準備</h4>
<p>以下の3つは常にimportしておく。</p>
<pre class="brush: python; title: ; notranslate">
import numpy as np
from theano import *
import theano.tensor as T
</pre>
<p><code>tensor</code> サブモジュールは頻繁に使うので、扱いやすい名前 (ここでは<strong>T</strong>) でimportしておく。</p>
<h4>NumPyのおさらい</h4>
<p>機械学習において、<a href="http://deeplearning.net/software/theano/index.html">Theano</a> と併せて使うことが多い <a href="http://www.numpy.org">NumPy</a> モジュールについて、基本的な使い方 (主に行列演算の方法) を整理する。</p>
<blockquote><p><ins datetime="2015-04-03T07:04:01+00:00">そのうちまとめる</ins></p></blockquote>
<h4>基本的な使い方</h4>
<ol>
<li><strong>シンボル (変数) </strong>の宣言</li>
<p>数値計算で変数として扱う記号を<strong>シンボル</strong>として宣言する。</p>
<pre class="brush: python; title: ; notranslate">
x = T.dscalar('x')
y = T.dscalar('y')
</pre>
<p>ここでは、倍精度浮動小数点数 (d, double) のスカラー (scalar) を表すシンボル <strong>x</strong> と <strong>y</strong> を宣言している。<code>dscalar</code> というクラスはなく、 <strong>x</strong> や <strong>y</strong> はあくまで <code>TensorVariable</code> クラスのインスタンスである。各インスタンスのtypeという変数に、<strong>変数の型</strong>を示す情報が収納される。</p>
<pre class="brush: python; title: ; notranslate">
type(x)
x.type
T.dscalar
x.type is T.dscalar
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
&lt;class 'theano.tensor.basic.TensorVariable'&gt;
TensorType(float64, scalar)
TensorType(float64, scalar)
True
</pre>
<p>また、括弧の中の文字列はシンボルの名前を指定するもので、必須ではないが、名前を与えておくとエラーメッセージ上に表示されるためデバッグしやすくなる。シンボルの宣言についての詳細は、<strong>4. Tips</strong> で解説する。</p>
<li><strong>数式</strong>の定義</li>
<p>1.で宣言した<strong>シンボル</strong>を組み合わせて、計算したい<strong>数式</strong>を定義する。</p>
<pre class="brush: python; title: ; notranslate">
z = x + y
</pre>
<p>xやyは値を持たない<strong>シンボル</strong>なので、zにも具体的な値は入らず、<strong>&#8216;x + y&#8217;</strong> を意味する<strong>シンボル</strong>になる。<code>theano.pp</code> を用いることで、数式の中身を確認することができる。</p>
<pre class="brush: python; title: ; notranslate">
print pp(z)
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
(x + y)
</pre>
<li><strong>関数</strong>の生成</li>
<p>2.で定義した<strong>数式</strong>を実際に計算するための<strong>関数</strong>を生成する。<strong>関数</strong>は、 <code>theano.function</code> を用いて生成する。第1引数として<strong>シンボルのリスト</strong>、第2引数として<strong>計算したい数式</strong>を与える。それぞれ、<strong>inputs</strong>・<strong>outputs</strong>というキーワード引数としても指定可能。</p>
<pre class="brush: python; title: ; notranslate">
f = function([x, y], z)
# f = function(inputs=[x, y], outputs=z)
</pre>
<p>作成した関数に具体的な値を引数として与えて実行すると、数式の計算結果が返される。引数はNumPy配列 (<code>numpy.array</code>) として解釈され、戻り値もNumPy配列となる。</p>
<pre class="brush: python; title: ; notranslate">
f(2, 3)
f(16.3, 12.1)
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
array(5.0)
array(28.4)
</pre>
<p><code>theano.function</code> を呼び出した際に、対象の数式を実現するC言語の計算プログラムがコンパイルされる。そのため、この関数の実行には少し時間がかかる。1つの関数で複数の計算結果を出力したい場合は、<strong>outputs</strong>を数式シンボルのリストにすることもできる。この場合は、<strong>inputs</strong>に与える変数シンボルのリストが全ての数式をカバーしている必要がある。</p>
<pre class="brush: python; title: ; notranslate">
y2 = T.dscalar('y2')
z2 = x + y2
f2 = function([x, y, y2], [z, z2])
f2(3, 5, 9)
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
[array(8.0), array(12.0)]
</pre>
<li><strong>Tips</strong></li>
<p>1.の<strong>シンボル</strong>宣言の際に、<strong>変数の型</strong>を適切に指定することで、スカラー演算のみならず、ベクトル演算や行列演算も計算できる。<strong>変数の型</strong>には、<strong>テンソルの階数</strong>（スカラー・ベクトル・行列などの次元的な概念）と<strong>数値の型</strong>があり、これらを組み合わせることによって指定する。例えば、<code>dmatrix</code> は、倍精度浮動小数点数 (d, double) の行列 (matrix) を意味する。</p>
<pre class="brush: python; title: ; notranslate">
x = T.dmatrix('x')
y = T.dmatrix('y')
z = x + y
f = function([x, y], z)
f([[1, 2], [3, 4]], [[10, 20], [30, 40]])
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
array([[ 11.,  22.],
       [ 33.,  44.]])
</pre>
<p>指定できる<strong>変数の型</strong>は、以下の通り (<a href="http://deeplearning.net/software/theano/tutorial/adding.html#adding-two-matrices">公式チュートリアル</a>より引用)。詳細は<a href="http://deeplearning.net/software/theano/library/tensor/basic.html">こちら</a>も参照。</p>
<ul>
<li><strong>byte</strong>: bscalar, bvector, bmatrix, brow, bcol, btensor3, btensor4</li>
<li><strong>16-bit integers</strong>: wscalar, wvector, wmatrix, wrow, wcol, wtensor3, wtensor4</li>
<li><strong>32-bit integers</strong>: iscalar, ivector, imatrix, irow, icol, itensor3, itensor4</li>
<li><strong>64-bit integers</strong>: lscalar, lvector, lmatrix, lrow, lcol, ltensor3, ltensor4</li>
<li><strong>float</strong>: fscalar, fvector, fmatrix, frow, fcol, ftensor3, ftensor4</li>
<li><strong>double</strong>: dscalar, dvector, dmatrix, drow, dcol, dtensor3, dtensor4</li>
<li><strong>complex</strong>: cscalar, cvector, cmatrix, crow, ccol, ctensor3, ctensor4</li>
</ul>
</ol>
<h4>微分の計算</h4>
<p><code>theano.tensor.grad</code> を用いて微分を計算することができる。第1引数として<strong>微分の対象となる数式</strong>、第2引数として<strong>微分を取るシンボル</strong>を与える。それぞれ、 <strong>cost</strong>・<strong>wrt</strong> (with respect to ?) というキーワード引数としても指定可能。実際に数値を求めるためには、通常の<strong>数式</strong>と同じように<strong>関数</strong>を生成する必要がある。</p>
<pre class="brush: python; title: ; notranslate">
x = T.dscalar('x')
y = x ** 2
gy = T.grad(y, x)
f = function([x], gy)
f(4)
f(94.2)
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
array(8.0)
array(188.4)
</pre>
<p><code>theano.pp</code> を用いることで、微分式の中身を確認することができる。また、 <code>theano.function.maker.fgraph.outputs[0]</code> に対して <code>theano.pp</code> を用いることで、最適化された微分式を確認することができる。</p>
<pre class="brush: python; title: ; notranslate">
pp(gy)
pp(f.maker.fgraph.outputs[0])
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
'((fill((x ** TensorConstant{2}), TensorConstant{1.0}) * TensorConstant{2}) * (x ** (TensorConstant{2} - TensorConstant{1})))'
'(TensorConstant{2.0} * x)'
</pre>
<p><strong>wrt</strong> に微分を取るシンボルのリストを与えれば、最終的に偏微分値のリストが返される。ここで、偏微分値の順番は、<strong>wrt</strong> に与えたシンボルの順番に対応する。</p>
<pre class="brush: python; title: ; notranslate">
x1, x2, x3 = T.dscalars('x1', 'x2', 'x3')
y = x1 ** 3 + x2 ** 2 + x3
gy = T.grad(y, [x1, x2, x3])
f = function([x1, x2, x3], gy)
f(1, 1, 1)
f(2, 4, 6)
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
[array(3.0), array(2.0), array(1.0)]
[array(12.0), array(8.0), array(1.0)]
</pre>
<h4>tensorのメソッド</h4>
<p>微分以外にも、<code>theano.tensor.XXX</code> を用いて様々な計算をすることができる。以下に、主要なものをまとめる。詳細は<a href="http://deeplearning.net/software/theano/library/tensor/basic.html">こちら</a>を参照。</p>
<ul>
<li>tensor.sum()</li>
<p>引数として与えた<strong>シンボル</strong>（ベクトルなど）の<strong>総和</strong>を返す。</p>
<pre class="brush: python; title: ; notranslate">
x = T.dvector('x')
sum_x = T.sum(x)
f = function([x], sum_x)
f([1, 2, 3, 4, 5])
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
array(15.0)
</pre>
<li>tensor.prod()</li>
<p>引数として与えた<strong>シンボル</strong>（ベクトルなど）の<strong>総乗</strong>を返す。</p>
<pre class="brush: python; title: ; notranslate">
x = T.dvector('x')
prod_x = T.prod(x)
f = function([x], prod_x)
f([1, 2, 3, 4, 5])
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
array(120.0)
</pre>
<li>tensor.mean()</li>
<p>引数として与えた<strong>シンボル</strong>（ベクトルなど）の<strong>平均</strong>を返す。</p>
<pre class="brush: python; title: ; notranslate">
x = T.dvector('x')
mean_x = T.mean(x)
f = function([x], mean_x)
f([1, 2, 3, 4, 5])
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
array(3.0)
</pre>
<li>tensor.var()</li>
<p>引数として与えた<strong>シンボル</strong>（ベクトルなど）の<strong>分散</strong>を返す。</p>
<pre class="brush: python; title: ; notranslate">
x = T.dvector('x')
var_x = T.var(x)
f = function([x], var_x)
f([1, 2, 3, 4, 5])
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
array(2.0)
</pre>
<li>tensor.std()</li>
<p>引数として与えた<strong>シンボル</strong>（ベクトルなど）の<strong>標準偏差</strong>を返す。</p>
<pre class="brush: python; title: ; notranslate">
x = T.dvector('x')
std_x = T.std(x)
f = function([x], std_x)
f([1, 2, 3, 4, 5])
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
array(1.4142135623730951)
</pre>
<li>tensor.exp()</li>
<p>引数として与えた<strong>シンボル</strong>（スカラー）を冪指数とする<strong>ネイピア数の冪乗</strong>を返す。</p>
<pre class="brush: python; title: ; notranslate">
x = T.dscalar('x')
exp_x = T.exp(x)
sigmoid_x = 1.0 / (1.0 + T.exp(-x))
f = function([x], [exp_x, sigmoid_x])
for x in [-4, -2, -1, 0, 1, 2, 4]:
    print x, f(x)
# Create Sigmoid Curve
X = range(-10,11)
Y = []
for x in X:
    Y.append(f(x)[1])
import matplotlib.pyplot as plt
plt.plot(X, Y)
plt.show()
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
-4 [array(0.01831563888873418), array(0.01798620996209156)]
-2 [array(0.1353352832366127), array(0.11920292202211755)]
-1 [array(0.36787944117144233), array(0.2689414213699951)]
0 [array(1.0), array(0.5)]
1 [array(2.718281828459045), array(0.7310585786300049)]
2 [array(7.38905609893065), array(0.8807970779778823)]
4 [array(54.598150033144236), array(0.9820137900379085)]
</pre>
<p><a href="http://aokiji.science/blog/wp-content/uploads/2015/04/sigmoid1.png"><img src="http://aokiji.science/blog/wp-content/uploads/2015/04/sigmoid1.png" alt="sigmoid" width="800" height="502" class="alignnone size-full wp-image-200" /></a></p>
<li>tensor.log()</li>
<p>引数として与えた<strong>シンボル</strong>（スカラー）の<strong>自然対数</strong>を返す。<code>tensor.log2()</code> および <code>tensor.log()</code> を用いることで、底を2または10とした対数を返すこともできる。</p>
<pre class="brush: python; title: ; notranslate">
x = T.dscalar('x')
log_x = T.log(x)
log2_x = T.log2(x)
log10_x = T.log10(x)
f = function([x], [log_x, log2_x, log10_x])
f(8)
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
[array(2.0794415416798357), array(3.0), array(0.9030899869919435)]
</pre>
<li>tensor.dot()</li>
<p>引数として与えた<strong>2つのシンボル</strong>（ベクトルか行列）の<strong>内積</strong>を返す。</p>
<pre class="brush: python; title: ; notranslate">
x1, x2 = T.dvectors('x1', 'x2')
dot_x = T.dot(x1, x2)
f = function([x1, x2], dot_x)
f([1, 2, 3], [6, -5, 4])
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
array(8.0)
</pre>
</ul>
<h4>共有変数</h4>
<p><code>theano.shared</code> を用いて<strong>共有変数</strong>を宣言することができる。<strong>共有変数</strong>は、複数の関数から参照することができる。値の参照には <code>shared.get_value()</code> を、値の変更には <code>shared.set_value()</code> を用いる。</p>
<pre class="brush: python; title: ; notranslate">
s = shared(5, name='s')
x = T.iscalar('x')
f1 = function([x], x+s)
f2 = function([x], x-s)
f3 = function([], s*3)
s.get_value()
f1(7), f2(7), f3()
s.set_value(-10)
s.get_value()
f1(7), f2(7), f3()
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
5
(array(12), array(2), array(15))
-10
(array(-3), array(17), array(-30))
</pre>
<p>確率モデルのパラメータなどの計算過程で頻繁に更新する変数は、<strong>共有変数</strong>で宣言しておくことで無駄なメモリコピーを削減できる。<code>theano.function</code> のパラメータの1つである <code>updates</code> と組み合わせることで効率的な計算が可能となる。</p>
<pre class="brush: python; title: ; notranslate">
state = shared(0)
inc = T.iscalar('inc')
accumulator = function([inc], state, updates=[(state, state+inc)])
decrementor = function([inc], state, updates=[(state, state-inc)])
state.get_value()
accumulator(5)
state.get_value()
decrementor(3)
state.get_value()
</pre>
<pre class="brush: plain; title: 実行結果; notranslate">
0
array(0)
5
array(5)
2
</pre>
<h4>応用例：ロジスティック回帰</h4>
<p>上述した<strong>基本的な使い方</strong>、<strong>微分の計算</strong>、<strong>共有変数</strong>を組み合わせることで、ロジスティック回帰を実装することができる (<a href="http://deeplearning.net/software/theano/tutorial/examples.html#a-real-example-logistic-regression">公式チュートリアル</a>より引用)。最急降下法については<a href="http://aokiji.science/blog/?p=206" title="最急降下法">こちらの記事</a>を参照。</p>
<pre class="brush: python; title: ; notranslate">
import numpy
import theano
import theano.tensor as T
rng = numpy.random

N = 400
feats = 784
D = (rng.randn(N, feats), rng.randint(size=N, low=0, high=2))
training_steps = 10000

# Declare Theano symbolic variables
x = T.matrix(&quot;x&quot;)
y = T.vector(&quot;y&quot;)
w = theano.shared(rng.randn(feats), name=&quot;w&quot;)
b = theano.shared(0., name=&quot;b&quot;)
print &quot;Initial model:&quot;
print w.get_value(), b.get_value()

# Construct Theano expression graph
p_1 = 1 / (1 + T.exp(-T.dot(x, w) - b))   # Probability that target = 1
prediction = p_1 &gt; 0.5                    # The prediction thresholded
xent = -y * T.log(p_1) - (1-y) * T.log(1-p_1) # Cross-entropy loss function
cost = xent.mean() + 0.01 * (w ** 2).sum()# The cost to minimize
gw, gb = T.grad(cost, [w, b])             # Compute the gradient of the cost
                                          # (we shall return to this in a
                                          # following section of this tutorial)

# Compile
train = theano.function(
          inputs=[x,y],
          outputs=[prediction, xent],
          updates=((w, w - 0.1 * gw), (b, b - 0.1 * gb)))
predict = theano.function(inputs=[x], outputs=prediction)

# Train
for i in range(training_steps):
    pred, err = train(D[0], D[1])

print &quot;Final model:&quot;
print w.get_value(), b.get_value()
print &quot;target values for D:&quot;, D[1]
print &quot;prediction on D:&quot;, predict(D[0])
</pre>
<h6>以下の情報を参考にさせていただきました。</h6>
<ul>
<li> <a href="http://d.hatena.ne.jp/saket/20121207/1354867911" target="_blank">http://d.hatena.ne.jp/saket/20121207/1354867911</a></li>
<li> <a href="http://qiita.com/mokemokechicken/items/3fbf6af714c1f66f99e9" target="_blank">http://qiita.com/mokemokechicken/items/3fbf6af714c1f66f99e9</a></li>
<li> <a href="http://www.chino-js.com/ja/tech/theano-rbm/" target="_blank">http://www.chino-js.com/ja/tech/theano-rbm/</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://aokiji.science/blog/?feed=rss2&#038;p=112</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>保護中: WordPressのセキュリティ対策</title>
		<link>http://aokiji.science/blog/?p=88</link>
		<comments>http://aokiji.science/blog/?p=88#comments</comments>
		<pubDate>Tue, 31 Mar 2015 02:16:14 +0000</pubDate>
		<dc:creator><![CDATA[AoYu]]></dc:creator>
				<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://aokiji.science/blog/?p=88</guid>
		<description><![CDATA[この投稿はパスワードで保護されているため抜粋文はありません。]]></description>
				<content:encoded><![CDATA[<form action="http://aokiji.science/blog/wp-login.php?action=postpass" class="post-password-form" method="post">
<p>このコンテンツはパスワードで保護されています。閲覧するには以下にパスワードを入力してください。</p>
<p><label for="pwbox-88">パスワード <input name="post_password" id="pwbox-88" type="password" size="20" /></label> <input type="submit" name="Submit" value="送信" /></p>
</form>
]]></content:encoded>
			<wfw:commentRss>http://aokiji.science/blog/?feed=rss2&#038;p=88</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQLデータベースのバックアップ</title>
		<link>http://aokiji.science/blog/?p=78</link>
		<comments>http://aokiji.science/blog/?p=78#comments</comments>
		<pubDate>Mon, 30 Mar 2015 11:27:44 +0000</pubDate>
		<dc:creator><![CDATA[AoYu]]></dc:creator>
				<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://aokiji.science/blog/?p=78</guid>
		<description><![CDATA[MySQLのデータベースは、mysqldumpコマンドでファイルに出力し、バックアップを取ることができる。ダンプファイルを読み込むことで、MySQLデータベースを復元することができる。 バックアップの方法 ユーザ名、デー [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>MySQLのデータベースは、<code>mysqldump</code>コマンドでファイルに出力し、バックアップを取ることができる。ダンプファイルを読み込むことで、MySQLデータベースを復元することができる。</p>
<p></p>
<h4>バックアップの方法</h4>
<p>ユーザ名、データベース名、出力ファイル名を指定してコマンドを実行する。</p>
<pre class="brush: plain; title: ; notranslate">
mysqldump -u DBユーザ名 -p DB名 &gt; 出力先ファイル名
</pre>
<p>全てのデータベースのバックアップを取る場合は以下のように指定する。</p>
<pre class="brush: plain; title: ; notranslate">
mysqldump -u root -p -x --all-databases &gt; 出力ファイル名
</pre>
<p>-xはバックアップ中のデータ操作を禁止するオプション。</p>
<h4>復元の方法</h4>
<p><code>mysql</code>コマンドを用いて、ダンプファイルを読み込む。</p>
<pre class="brush: plain; title: ; notranslate">
mysql -u DBユーザー名 -p DB名 &lt; ダンプファイル名
</pre>
<p>全てのデータベースを復元する場合は以下のように指定する。</p>
<pre class="brush: plain; title: ; notranslate">
mysql -u DBユーザー名 -p &lt; ダンプファイル名
</pre>
<p>復元したいデータベースは、事前にDBサーバ上に作成しておく必要がある。</p>
<h6>以下の情報を参考にさせていただきました。</h6>
<ul>
<li><a href="http://weblabo.oscasierra.net/mysql-mysqldump-01/" target="_blank">http://weblabo.oscasierra.net/mysql-mysqldump-01/</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://aokiji.science/blog/?feed=rss2&#038;p=78</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPressの記事上でソースコードを美しく表示する方法</title>
		<link>http://aokiji.science/blog/?p=36</link>
		<comments>http://aokiji.science/blog/?p=36#comments</comments>
		<pubDate>Mon, 30 Mar 2015 08:04:29 +0000</pubDate>
		<dc:creator><![CDATA[AoYu]]></dc:creator>
				<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://aokiji.science/blog/?p=36</guid>
		<description><![CDATA[WordPressの記事上でソースコードをわかりやすく表示するには、ソースコード表示用プラグインの1つである SyntaxHighlighter Evolved (詳細) を利用する。このプラグインはWordPressの [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>WordPressの記事上でソースコードをわかりやすく表示するには、ソースコード表示用プラグインの1つである <strong>SyntaxHighlighter Evolved</strong> <a href="https://wordpress.org/plugins/syntaxhighlighter/" target="_blank">(詳細)</a> を利用する。このプラグインはWordPressのショートコード機能を用いて、ソースコードの修飾を行っている。</p>
<p></p>
<p>具体的には、</p>
<ol>
<li><strong>SyntaxHighlighter Evolved をインストールする</strong></li>
<li><strong>記事中のソースコード領域を使用言語タグで囲む</strong></li>
</ol>
<p>の手順で実現できる。</p>
<h4><strong>1. SyntaxHighlighter Evolved をインストールする</strong></h4>
<ul>
<li>WordPressの管理画面から、<strong>プラグイン</strong> → <strong>新規追加</strong> に進む。</li>
<li><strong>SyntaxHighlighter Evolved </strong>を検索し、インストールした後に有効化する。</li>
<li><strong>設定</strong> ページで以下の設定を行う。
<ul>
<li>バージョンを選択する。→ 今回は Version 3.x を使用</li>
<li>ソースコード中のリンクを無効化したい場合は、「自動リンクを有効にする」のチェックを外す。</li>
</ul>
</li>
</ul>
<h4><strong>2. 記事中のソースコード領域を使用言語タグで囲む</strong></h4>
<ul>
<li>修飾したいソースコード領域を <strong>[使用言語]</strong> と<strong> [/使用言語]</strong> で囲む。</li>
</ul>
<pre>
&#x5b;html]
&lt;html&gt;
&lt;body&gt;
  &lt;p class="test"&gt;
    Hello Wonderful World !
    &lt;a href="http://aokiji.science/blog"&gt;AoYu's Blog&lt;/a&gt;
  &lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;
&#x5b;/html]
</pre>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;↓</p>
<pre class="brush: xml; title: ; notranslate">
&lt;html&gt;
&lt;body&gt;
  &lt;p class=&quot;test&quot;&gt;
    Hello Wonderful World !
    &lt;a href=&quot;http://aokiji.science/blog&quot;&gt;AoYu's Blog&lt;/a&gt;
  &lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<ul>
<li>あるいは、修飾したいソースコード領域を <strong>&#x5b;code language=&#8221;使用言語&#8221;]</strong> と <strong>&#x5b;/code]</strong>で囲む。</li>
<li>language以外にも複数のパラメータを設定することができる。</li>
</ul>
<pre>
&#x5b;code language="html" title="Example" highlight="5" autolinks="true" collapse="true"]
&lt;html&gt;
&lt;body&gt;
  &lt;p class="test"&gt;
    Hello Wonderful World !
    &lt;a href="http://aokiji.science/blog"&gt;AoYu's Blog&lt;/a&gt;
  &lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;
&#x5b;/code]
</pre>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;↓</p>
<pre class="brush: xml; auto-links: true; collapse: true; highlight: [5]; light: false; title: Example; toolbar: true; notranslate">
&lt;html&gt;
&lt;body&gt;
  &lt;p class=&quot;test&quot;&gt;
    Hello Wonderful World !
    &lt;a href=&quot;http://aokiji.science/blog&quot;&gt;AoYu's Blog&lt;/a&gt;
  &lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<ul>
<li>利用できる言語 (ショートコード) は以下の通り
<ol>
<li>actionscript3</li>
<li>bash</li>
<li>clojure</li>
<li>coldfusion</li>
<li>cpp</li>
<li>csharp</li>
<li>css</li>
<li>delphi</li>
<li>erlang</li>
<li>fsharp</li>
<li>diff</li>
<li>groovy</li>
<li>html</li>
<li>javascript</li>
<li>java</li>
<li>javafx</li>
<li>matlab</li>
<li>objc</li>
<li>perl</li>
<li>php</li>
<li>text</li>
<li>powershell</li>
<li>python</li>
<li>r</li>
<li>ruby</li>
<li>scala</li>
<li>sql</li>
<li>vb</li>
<li>xml</li>
</ol>
</li>
</ul>
<h6>以下の情報を参考にさせていただきました。</h6>
<ul>
<li><a href="http://www.saka-en.com/wordpress/syntaxhighlighter-wordpress-plugin/" target="_blank">http://www.saka-en.com/wordpress/syntaxhighlighter-wordpress-plugin/</a></li>
<li><a href="http://netaone.com/wp/syntaxhighlighter-evolved/" target="_blank">http://netaone.com/wp/syntaxhighlighter-evolved/</a></li>
<li><a href="http://attosoft.info/blog/syntaxhighlighter-usage/" target="_blank">http://attosoft.info/blog/syntaxhighlighter-usage/</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://aokiji.science/blog/?feed=rss2&#038;p=36</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
