TIM Labs

fujiによるエントリー一覧

前回、『DNAの98%は謎』で、DNAで遺伝に関係している、つまりタンパク質の生成に関係しているデータは、たった2%程度で、残りの98%は、謎であるという本を紹介した。

AIには、ディープラーニング以外に、進化、遺伝の仕組みを模した方法が存在する。
生物の進化をモデルにした、かなり広範囲なものを進化計算とよび、さまざまな最適化に使われている。
その中でも一番良く知られているのが、遺伝をモデルにした遺伝的アルゴリズムである。
つまり、染色体の交叉や突然変異を利用しているのだが、一般に行われているモデル化は、最適化したいデータを染色体のように長い糸状(配列)に並べ、データの交叉や突然変異を行い、出来たものを淘汰させるのを何世代も繰り返すことで、最適化を進め、満足できるようなデータを求めようとするものである。

つまり、配列の全データが有効データなのである。
ということは、実際のDNAをちゃんとモデル化していないと言えるはずなのだ。

長い長い染色体(配列)の一部に有効なデータを置き、染色体と同様な交叉や突然変異をしていない。

人間ではDNAの98%が謎なのだが、高等な生物ほど謎の部分が大きいということだから、現状の遺伝的アルゴリズムは下等生物を真似ているに過ぎないと考えられる。
DNAの98%の謎の部分の意味、意義、効用は今世紀になってから研究が本格化し、まだまだ研究途上のようだ。
だからこそ、この謎の部分を反映した進化計算ができれば、もっと高度なことができるようになるかも知れない。

さて、下等生物であるはずのウイルスがとても賢い(?)ので、対策が難しいことを知っているだろうか。
あるウイルスに対する薬を作っても、ウイルスの遺伝情報が変化するので、新しい薬を作ってもダメになる。
つまり、ウイルスはとても賢いと言えるのではないだろうか。
ウイルスは、DNAまたはRNAを持っており、遺伝の仕組みが異なるために、薬に対抗する能力が高いと言われている。
そのため、ウイルス進化論なる専門用語もあるようだ。

ならば、ウイルス進化論をモデルにしたアルゴリズムは無いかと調べたら、ウイルス進化型遺伝的アルゴリズムというのがあり、論文もかなり存在するようである。
通常の遺伝的アルゴリズムでは進化が停滞してしまうような場合でも、ウイルスの寄生能力をモデル化することで、もっと有効なアルゴリズムにしようというものらしい。
今までの遺伝的アルゴリズムのための染色体以外に、ウイルスを用意し、ウイルスを染色体に感染させることで、進化を促進(?)するらしい。

98%の謎部分をモデルにした遺伝的アルゴリズムはまだないらしいが、ウイルス版は存在する。
といっても、出版されている遺伝的アルゴリズムの本で、ウイルス進化型を説明している本は無いらしいので、ぜひ論文を読もう。
DNA98Mystery.jpg

DNAの98%は謎
生命の鍵を握る「非コードDNA」とは何か
ブルーバックス B-2034

著者  小林武彦
発行日  2017年10月20日
サイズ   新書, 208頁  
ISBN  978-4-06-502034-0
価格   920円(本体) 
発行所  講談社 

前2回に渡って、脳とニューラルネットについて書いた。

前回は脳だったが、今回は遺伝、DNAについて紹介しよう。

1990年に人間のゲノムを全部解読しようというヒトゲノム計画(Human Genome Project)が世界中の協力で始まった。
最初はなかなか解読ペースが上昇しなかったが、ゲノム解読情報を商用化しようとする動きも現れ、その後、解読技術の向上もあり急激に解読ペースが上昇し、2003年に解読作業が終わった。

ゲノムの情報が解読できたことで、治療や新薬の開発に非常に役立つと言われている。
人ゲノムだけでなく、さまざまな生き物のDNAが解読されつつあり、地球上の生命の進化の全体像が徐々に明確になりつつあるようだ。

さて、本書のタイトルによると、DNAの98%は謎とある。
DNAの情報からタンパク質が作られて、その種類は5万種とも10万種とも言われている。
それで、長い長いDNAのどのくらいがタンパク質の生成に関わっているかを調べたら、2%だったと。

遺伝子はDNAの2%の部分に存在し、DNAの残りの98%はタンパク質を作らないことが分かった。
遺伝のことだけ考えれば、2%の部分だけ存在すれば大丈夫なはずだが、そうなっていなかった。
これは、AGTC4種の塩基列の並び情報はほとんどが利用されていないということ。
DNAはゴミだらけであり、無駄だらけであると思われていた。

それが、ゴミと言われているタンパク質の生成に関わらない部分も何か働きがあるのではと研究が進んだ。
それが「ゲノムを支える非コードDNA領域の機能」プロジェクトであり、本書の著者がプロジェクトの代表者で、プロジェクトの成果をわかりやすく説明したのが本書である。

98%は無駄に作られているように見えるが、無駄がほとんどであることで、DNAが放射能から受ける影響を軽減したりすることが分かり、また、高等生物になるほど非コード領域が増えていることが分かった。
どうやら、とても重要な働きをしているらしいのだ。

DNAの非コード領域の働きについての説明は省略するので、本書を読むか、他の書物、ネット情報などを参考に学習されたい。

脳のグリアといい、DNAの非コード領域といい、無用の長物と思われていたものが、とても大切だったことが分かってきたのだ。
よくよく調べると、無駄と思われていたものが非常に大切だった、主要部分だったということはしばしばある。

....ということはAIにも影響するかもという話は次回に書くことにする。


前回、『もうひとつの脳』を紹介した。
脳はニューロンで出来ているという話をよく聞くと思うが、実際の脳のうち、ニューロンの割合は少ない。
重さ、容積で言っても2割に満たない。
より正確に言うと、大脳のニューロンの割合は19%程度らしいが、小脳はニューロンが80%にもなるらしい。
神経細胞はとても大きな細胞なので、細胞数で比較すると、大脳ではニューロンは2%くらいになり、とても数が少ない。

ニューラルネットワークは、人間の脳を構成している神経細胞・ニューロンのネットワークを模して作られている

というようなことがよく言われているのだが、小脳はともかく、大脳には全然当てはまらない。
大脳を手本とするなら、より多くある細胞のシミュレーションをしないと、脳を手本にしたとは言えない。

全脳シミュレーションという言葉がある。脳の全神経細胞数と同レベルのニューラルネットワーク(ニューロン、シナプス)を作って、どんな働きをするかを研究しているらしい。
しかし、全脳というと、脳の働き全てをシミュレーションすることに思えるが、大脳についていえば、ごく一部であるニューロンについてだけのシミュレーションを行っているに過ぎない。
より正確には、全脳規模神経回路シミュレーションと言うらしい。あくまでも、神経回路のシミュレーションである。

脳は、ニューロンよりもその間に詰め込まれていると考えられていたグリアの方が割合が多く、どうやらグリアが色々な働きをしていることが21世紀になって次々とわかり出した。
ならば、グリアの働きも含めた脳のシミュレーションが必要ではないだろうか。

といっても、どうすれば良いかは分からないのだが、今のニューラルネットワークによる人工知能は、いろいろ今までにない性能を発揮し、さまざまなことに役立ちそうであるが、グリアが果たしている機能が抜け落ちているはずなので、今後問題も色々出てくると予想される。

第3世代のAIはニューラルネットを中心にまだまだ進みそうだが、第4世代のAIはグリアも含めた本当の意味の全脳シミュレーションに基づいたAIとなるのであろうか。
21世紀半ばにはそういう時代が来るかもしれないと思う。
TheOtherBrain.jpg

もうひとつの脳
ブルーバックス B-2054

著者  R・ダグラス・フィールズ( R. Douglas Fields, Ph.D.)
監訳  小西史朗   
翻訳  小松佳代子
発行日  2018年4月20日
サイズ  新書, 538頁  
ISBN  978-4-06-502054-8
価格  1,500円(本体) 
発行所 講談社 

The Other Brain
The Scientific and Medical Breakthroughs That Will Heal Our Brains and Revolutionize Our Health
By R. Douglas Fields
発売日: 2011/1/11
ISBN-13: 978-0743291422
出版社: Simon & Schuster; 1版 (2011/1/11)

今回は、数学・コンピュータ系とはちょっと違う脳科学系の本を紹介しようと思う。
といっても、専門書ではなく、BLUE BACKSであり、ポピュラーサイエンスの本である。

今非常に(異常に)騒がれている人工知能は、多くの場合ニューラルネット、ディープラーニングの場合が多い。
人工知能は、もっともっと多様なのだが、フィーバーとは得てしてそんなものである。

その技術の根拠(参考)になっているのが、脳であり、ニューロン(神経細胞)である。
ニューロンは大脳皮質だけだと150億、大脳全体で850億、小脳はさらに多くて1000億くらいあるという。
結局、大脳皮質は、ニューロンの総数の約1割に過ぎないようだ。
なので、大脳皮質だけをシミュレーションしても、一部のシミュレーションしかしていないと思うべきだろうか。

シナプスの総数の説明はなかなか見つからないが、ひとつのニューロンが数千のシナプスを持っているようなので、シナプスの総数は数百兆というとんでもない数になる。

さて、ここまでは、古い話だ。古いというのは、20世紀の脳科学といっても良いだろうか。

この本のタイトルの「もうひとつの脳」の研究が21世紀になって急激に研究が進んで、さまざまなことが分かってきた。
脳は、ニューロンだけで出来ている訳ではない。
血管も張り巡らされているが、それ以外にグリア細胞(Glial cell)がある。
このネーミングは、Glueから来ているらしく、神経細胞を支えている詰物、接着剤、固定剤で、たいした働きはしていないと長らく考えられていた。

しかし、脳の神経細胞の割合は、重さで1割、細胞数だとたった2%程度らしい。
つまり、神経細胞は、脳のごく一部でしかないということだ。
残りの大部分はグリア細胞である。
といっても、その他の細胞をまとめてグリアと呼んでいたのだが、何種類かあり、いろいろ働きが違うことが分かってきた。
ここでは、グリアの詳細の説明は省く。

そして、頭が良いとかは、脳の病気の原因とかは、どうやらグリアに由来することが多いらしい。

アインシュタインの脳が保管され、天才の研究に使われ続けてきたのだが、頭が良い理由とまことしやかに言われていたことと、アインシュタインの脳は一致しないことが多かった。
脳は小さめで、神経細胞にはめだった特徴はなかったようだ。
しかし、グリア細胞は圧倒的に違っていた。

AIについて勉強するなら、同時に脳科学や遺伝についても、ある程度知っておくことが望ましいだろう。
そして、この分野は今世紀になって、急激に発達した。
20世紀までの知識が大幅に修正されたというか、革命が起きたくらい違うのである。
それらは、医学、看護学、薬学など医療分野では当然の知識として今では教えられている。
脳、脳科学について古い考えに基づいて話していると、「あ、この人、若い時に得た知識しかなくて、新しいことを何も知らない」と思われてしまうので注意しよう。
大人になると、神経細胞は死ぬだけというのは典型的なミスであり、老人でも神経細胞が生まれることもあり、これを利用した治療方法などが盛んに研究されている。

本書は、グリア細胞に関してかなり網羅的に、今後の影響なども含めていろいろ説明されている。

脳の主役はニューロンであるとい考え方は古いのだ。
主客転倒し、脳の主役はグリア細胞で、もうひとつの脳こそ主役かも。



risansuugakunosusume.jpg

離散数学のすすめ

編著者  伊藤大雄・宇野裕之

発行  2010年5月15

サイズ  A5, 325頁  

ISBN  978-4-7687-0412-7

価格  2,700円(本体) 

発行所 現代数学社 


プログラミングを本格的にやろうと思う場合、理工系の一般常識である線型代数学、微積分学を勉強し、さらに最近は統計学も習得するのが一般的であろうか。
さらにアルゴリズムなどを勉強すると、離散数学という言葉を知るはずである。
離散数学というと、線型代数学や微積分学などのような非常にかっちりした大きな体系とは違い、さまざまなことがごちゃごちゃと出てくる感じである。

離散数学というと、どうしても野崎昭弘先生を思い出してしまうのだが、ここではあえて避けて、この本を紹介する。

本書は、「理系への数学」(現代数学社)にリレー連載されたものを元に、加筆したもののようである。
執筆メンバーは20名を超え、そのうち何名かはパズル系の研究会で顔を合わせる大学の先生方である。

こういう作りなので、22章あるのだが各章は独立しているため好きな所から読めて、かつ1つの章が10から20ページ前後とちょっと時間があれば読み切れる感じになっている。

離散数学は、見かけは簡単そうに見える問題が、実は未解決問題というのがよくある怖い世界である。

離散数学を知っておくことは、非常に高速なプログラムを作ったり、とても面倒と思われることをエレガントに解決するには絶対に勉強しておくべき分野である。
しかし、離散数学の本は、それほど多くはない。
世の中にプログラミングの本が溢れているが、それに比べて、離散数学の本はあまりにも少ない気がする。
これでは、エレガントなアルゴリズムを考えられる人が十分には育たない。

取り上げている話題を少々挙げておこう。

ケーキ分割問題、ハノイの塔、安定結婚問題、、、

ハノイの塔はよく知られていて、n枚の場合は、 2^n - 1 回が最小移動回数で、再帰でそれが最小であることも含めて証明できる。
ここまでは、多くの本に書かれていることで、いまさら説明の必要はあるまい。

よく知られているのは、棒が3本の場合であるが、k本(k≧3)の場合の最小手数と動かし方の説明があった。
また、棒が3本でも、横に3本が並んでいて、隣の棒にしか円盤を移動できないと制限をつけるとどうなるだろうか?
このような一般化ハノイの塔の説明があるのだ。

これは、他の問題でもそうだが、できるだけ一般化したときどうなるかの説明がある。

そのあたりを書き出すと終わらなくなるので、詳しくは本書を参照のこと。

Python_text_mining.jpg
Pythonによる
 
テキストマイニング入門


著者  山内 長承

発行  2017/11

サイズ  A5, 256頁  

ISBN  978-4-274-22141-5

価格  2,500円(本体)  


AI,AIととても騒がしくなり、AIの新刊書が次々と出ているが、その殆どがディープラーニングが対象で、とりわけ画像処理系の本が多い。

しかし、人間のビジネス活動、社会活動、学術活動などを考えると、画像処理関連だけではなく、人間を人間たらしめている言葉、テキストを扱わないわけにはいかない。

自然言語処理、テキストマイニングなどのタイトルの本も、多くはないが、それなりに増えている。

それで、Pythonでテキスト処理の説明をしている本として、本書を入手し、読んでみた。

内容は、

第1章 テキストマイニングの概要
第2章 テキストデータの構造
第3章 Python の概要と実験の準備
第4章 出現頻度の統計の実際
第5章 テキストマイニングの様々な処理例

となっているのだが、第3章までは、Pythonの基本的な説明が中心である。
そして、第4章が統計である。
そして、最後の第5章だけがテキストマイニングになっているのだ。

それでも、統計のために、形態素解析ソフトMeCabを使った例があった。

ということで、テキストマイニング自体の説明は、全体の1/3程度、70ページ位しかないのだった。

第5章の最後に一応Word2Vecの節が設けられており、簡単な説明がされていた。
つまり、やっと話が始まったと思ったら、本が終わってしまったのだ。

巷にはPythonの本が溢れているのだから、Pythonの基本や統計の基本的なことまで載せる必要はないと思う。
それに、ちょこちょこっと載せるだけになるので、とても中途半端なものになってしまう。

ということで、Pythonに慣れていて、統計の基礎も知っていれば、本書は一気に読み飛ばしてしまえる。
まあ、入門書だからそれで良いのかもしれないが、同じページ数で、テキストマイニングについてもっと丁寧な本にして欲しいところだ。

まず、以下の文字を見てみよう。

dakutenhandakuten-1.png通常はありえない場合がいっぱいである。
これを見ると、どうやらあらゆる文字に濁点( ゛ )と半濁点( ゜ )を付けることができるようだ。

どうやったらこんな文字(?)を表示できるかを説明する前に、なぜこういうことを調べることになったかの経緯を説明しよう。

ちょっと自然言語処理の練習をするのに、サンプルデータがいろいろあった方が良いので、このところ流行のWebスクレイピングでサンプル集めをした。
そして、集めた文章を、PythonのGUIであるTkinterのTextウィジェットに表示してみたら、こんな状況になってしまった。

dakutenhandakuten-2.pngブラウザ上やエディタ上では(a)のように見えていたのが、TkinterのTextウィジェット上では(b)の表示になってしまった。
半濁点が1つの文字として、1文字分の文字幅を確保して表示されてしまった。

つまり、「パ」が1文字ではなく、「ハ」+「濁点文字」の2文字になっていたからだ。
それでも、多くのブラウザやエディタでは、直前の文字に重ねて濁点・半濁点を表示していたのだが、一部の文字表示ソフトでは、何も考えず、別の文字として表示処理をしているということだ。

これは、Mac系でよく見られる現象であり、こういう状態のWebページに出会ってしまったのである。

上の (b)を(a)に変換する問題に取り組む前に、Pythonでの文字の扱いをちょっと練習しておこう。

今回は突然だが、文字コードの話をする。
というのは、ちょっとPythonでAI日本語処理らしきことをやっていたら、引っかかってしまったからである。
図に、3つの土を、そのUTF-8のコードと共に示す。

tsuchi-utf8.png引っかかった文字は土の異体字の一つの下図の右端の字である。
今では多くのソフトがUTF-8を標準として採用し、たとえ英語圏で開発されたソフトでも日本語処理に困らないことが多い。
しかし、それは、3バイトの漢字までで、4バイトになってしまう「土の異体字 」は扱えないことに出くわすことが多い。

最近、世のブームに引きずられてという訳ではないのだが、AI、言語処理系の何かをするとき、Pythonはツールが揃っているので使うことが多い。
Python自体は、4バイトの漢字も扱えるのだが、Pythonに非常にたくさんあるパッケージの中には扱えないものもある。

Pythonで文字処理をしていたのだが、GUIを用意しないと不便だなと思い、PythonのGUIツールキットのTkinterを使って簡単なGUIを作りつつあるところだ。
それで、用意してあるテキストファイルを処理しようとしたら、「土屋(異体字)」さんの情報を処理しようとしたところで止まってしまった。

実際には、長いテキストをTextウィジェットに貼り付けるメソッドを呼び出しただけなのだが、エラーが出てしまった。
直接Textウィジェットに、「????」を挿入したらとりあえず文字は表示されたのだが、その後テキストを編集してみたら、消去やカーソル移動が発狂してしまった。

要するに、UTF-8の4バイトコードに対応できていない。
地名、人名などを扱う、つまり事務処理、文字情報の整理などをしようとすると、UTF-8の4バイト文字に必ず遭遇してしまう。

UTF-8は、4バイトどころか、6バイト文字までサポートしているので、完全サポートというなら、そこまでちゃんとやらないとダメなのだが、ASCII文字だけで暮らしているエンジニアが多国語対応すると、こういうことになっているので、気をつける必要がある。

このあたり、東アジアの漢字圏のエンジニアが対処しないときちんとしたものにならないようだ。
昔は、データベースの対応もボロボロだったが、今は良くなっているのかな。






自然言語処理をやろうとすると、日本語の場合全ての文字がベタッとくっついているため意味のある最小単位の形態素(単語)に区切ってから処理する必要がある。
そのために、最初に日本語文字列の形態素解析を行う。
ChaSen, KAKASI, MeCab などがあるが、今はMeCabを使うことが多いのではと思う。
とりあえずフリーで使え、よく利用されているMeCabを紹介しようと思う。

インストールついては、環境によって違うので、MeCab公式サイトを参考にして欲しい。

ということで、さっそく使ってみよう。
実行例はUbuntu上である。
$ mecab 
吾輩は人工知能である。
吾輩	名詞,代名詞,一般,*,*,*,吾輩,ワガハイ,ワガハイ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
人工	名詞,一般,*,*,*,*,人工,ジンコウ,ジンコー
知能	名詞,一般,*,*,*,*,知能,チノウ,チノー
で	助動詞,*,*,*,特殊・ダ,連用形,だ,デ,デ
ある	助動詞,*,*,*,五段・ラ行アル,基本形,ある,アル,アル
。	記号,句点,*,*,*,*,。,。,。
EOS

mecab[Return]とすると、入力を受け付けるので、何かを入れて[Return]すると、形態素解析した結果が示され、また次の解析対象文字列の入力待ちになる。
入力した文字列には下線をつけた。
ゼロ9784873118369.jpgから作るDeep Learning?
自然言語処理編

斎藤 康毅 著

A5版、448ページ
2018/6/25 発売
3600円(本体)
オライリー・ジャパン
ISBN-13: 978-487311-836-9


本書、発売が6月25日ということで、まだ発売されていないのだが、紹介しようと思う。
オライリーのホームページのオラの村に、以下が用意されているのだ。

『ゼロから作るDeep Learning ?』公開レビューのお知らせ

公開レビューということで、まだ執筆、修正中なのだが、できるだけ多くの人に読んで様々な指摘をしてもらい、修正に反映させようということである。

言い方は色々あって、公開レビュー、プレビュー、Early Release、 Early Edition などがあるだろうか。

オライリー本社の方からは、例えば "Tensor Flow for Deep Learning" の Early Release がある。

正式発売前に、まだ未完成でも読んでみたいという人はいる。
そういう人は、一般に能力も高く、情報は人より一足先に入手する。
そういう人々からの指摘を取り入れると、本がより良くなる。from_zero_deep_learning (283x400).jpg


さて、『ゼロから作るDeep Learning ? ―自然言語処理編 』であるが、コンピュータ出版業界で空前のベストセラーになった『ゼロから作るDeep Learning―Pythonで学ぶディープラーニングの理論と実装』の続編で、今度は自然言語編である。
大いに期待できるのではと思う。

なお、公開レビュー版なので、あれこれ書評は書かず、お知らせだけで終わりとする。

◇  ◇  ◇
日本では少ないと思うのだが、海外では執筆中から公開されていたり、発売されてもそのまま公開が続くことは多々ある。それも、非常に有名で、よく売れている本でそうなっていることがある。

日本の大学も、このくらいやってくれたらと思うが....

このアーカイブについて

このページには、fujiが最近書いたブログ記事が含まれています。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。