限りなき知の探訪

45年間、『知の探訪』を続けてきた。いま座っている『人類四千年の特等席』からの見晴らしをつづる。

軟財就計:(第8回目)『私のソフトウェア道具箱(その 8)』

2022-04-24 20:24:35 | 日記
前回

前回紹介したオンラインOCRのサイト、onlineocr.net の変換は非常に精度が高い。ありがたいことに、このサイトは無料で使えるが、一日に変換できるページ数やドキュメント本数には制約がある。それで、分量が多い場合は、全部を変換するのにかなり日数がかかる。(もっとも、インターネットやコンピュータシステムのからくりが分かっている人なら、「一日に」という文句が何を意味しているのか、簡単に推測がつくはずだし、同時に、この制約を回避する方法も分かるはずだ。同社の営業妨害になるので、これ以上の説明は省略する。)

さて、サイトを使って、Britannica 9th の index 部分を全て OCRでテキスト化した。例えば、 Plato(プラトン)の部分のページ(画像データ)は次のようにテキスト化できる。


#348-32770: 
PLATO : , Greek philosopher, xix. 194;
 his method of analysis, I. 793; in 
relation to Aristotle, II. 510; on astro-
nomy, II. 747; on the beautiful, I. 
215 ; on communism, vi. 212; econo-
mic ideas of, xix. 349; his ethics, 
VIII. 579; on evolution, VIII. 756; on 
the fine arts, IX. 199; his logic, xiv. 
785; his metaphysics, xvi. 90; on the 
Mysteries, xvii. 125; on Socrates, XXII. 
232; in relation to Socrates's teaching, 
xxii. 237; on sophistry, XXII. 266; 
on transmigration of the soul, xvi. 
106; his place in Greek literature, XI. 
142; Ast's translations and comment-
aries on, II. 735; Trendelenburg on, 
XXIII. 542.


テキストデータを見ると、いくつかの個所で、大文字、小文字の誤変換はあるものの、内容的にはほぼ完璧だといえる高い精度の変換がなされていることが分かる。

このOCRデータをもとにして、インデックスページ数と、変換データの行数、の2つの情報を追加したインデックスファイルを作った。ここまでくれば、以前紹介した xge でインデックスファイル検索すれば、検索項目が掲載されている該当ページが分かる。例えば、Plato を検索すれば、上で示したような結果が得られる。該当ページは 19巻の194ページ(xix. 194)であることが瞬時に分かる。この情報を元にして、ダウンロードした19巻のPDFファイルの 194ページにアクセスすればよいのだが、ここでもちょっとしたプログラムが組めるか組めないかで、効率が大幅に異なる。

プログラムが組めない場合、たいていの人は、 Explorerで該当フォルダーのPDFファイルをクリックして、ファイルが開き、該当のページ数を打ち込むだろう。これだけでも大層だが、それにも増して手間のかかることがある。それは、PDF内のページ数と、PDFファイルのページ数が一致しないことだ。例えば、Platoの場合、PDF内のページ数は194ページであるが、 PDFファイルではそれに差分の10ページを足した、204ページとなる。厄介なことに、この差分のページ数は、巻数ごとに異なる。いちいち計算するのは面倒だ!しかし、プログラムを組んでこの差分を自動的に計算して直ちに目的のページに飛んでいくことはいともたやすい。さらに、PDF閲覧で厄介なのはページ数の問題だけではない。自分にとって、見やすいフォントサイズや画面サイズにいちいちセットするのは面倒だ。結局これらすべてを以下に示すように、バッチファイル(pg.bat)でやらせることで Britannica 9thのデータを直ぐ閲覧することを可能にした。

===============================================

@echo off
REM Britannica 9th --  指定された巻とページ数を開く

if '%1' == ''  goto MSG

set /A baseoffset=10
set /A entvol=%1

set /A entpg=%2
echo  pg [vol %entvol% ] [page %entpg%] -- Britannica 9th version

REM 以下の offset の値、差が 12 であれば、2 をセットする

if %entvol% GTR 24 goto ERR_GTR

if %entvol% EQU  1 set offset=4 & goto DO_CONT1
if %entvol% EQU  2 set offset=2 & goto DO_CONT1
if %entvol% EQU  3 set offset=2 & goto DO_CONT1
if %entvol% EQU  4 set offset=6 & goto DO_CONT1
if %entvol% EQU  5 set offset=0 & goto DO_CONT1
if %entvol% EQU  6 set offset=0 & goto DO_CONT1
if %entvol% EQU  7 set offset=0 & goto DO_CONT1
if %entvol% EQU  8 set offset=0 & goto DO_CONT1
if %entvol% EQU  9 set offset=2 & goto DO_CONT1
if %entvol% EQU 10 set offset=0 & goto DO_CONT2
if %entvol% EQU 11 set offset=2 & goto DO_CONT2
if %entvol% EQU 12 set offset=0 & goto DO_CONT2
if %entvol% EQU 13 set offset=0 & goto DO_CONT2
if %entvol% EQU 14 set offset=0 & goto DO_CONT2
if %entvol% EQU 15 set offset=0 & goto DO_CONT2
if %entvol% EQU 16 set offset=0 & goto DO_CONT2
if %entvol% EQU 17 set offset=0 & goto DO_CONT2
if %entvol% EQU 18 set offset=0 & goto DO_CONT2
if %entvol% EQU 19 set offset=0 & goto DO_CONT2
if %entvol% EQU 20 set offset=4 & goto DO_CONT2
if %entvol% EQU 21 set offset=0 & goto DO_CONT2
if %entvol% EQU 22 set offset=2 & goto DO_CONT2
if %entvol% EQU 23 set offset=0 & goto DO_CONT2
if %entvol% EQU 24 set offset=2 & goto DO_CONT2

:DO_CONT1
set myfile0=eb0%entvol%.pdf & goto DO_CONT

:DO_CONT2
set myfile0=eb%entvol%.pdf & goto DO_CONT

:DO_CONT
set /A mypage=%baseoffset% + %entpg% + %offset%
REM echo  myfile [ %myfile% ] mypage[ %mypage% ] offset[ %offset% ]

set mycmd="X:Adobe\Reader 9.0\Reader\AcroRd32.exe"
set myfile=X:\xxx\brit09\%myfile0%

if exist %myfile% goto CONT
goto ERR

:CONT
start /B "" /max %mycmd% /A " page=%mypage%&zoom=200&pagemode=none&view=Fit"  %myfile%
goto END

:ERR_GTR 
echo ERROR Vol #[ %entvol% ] must be ( 1 -- 24 )
goto END

:MSG
echo Usage :  pg [vol #] [page #] -- Britannica 9th version
goto END

:END

===============================================


さて、今回は150年近く前の Britannica 9th の内容にアクセスする方法を紹介したが、ウェブ上にはこれ(Britannica)以外にもPDF形式でしか見ることのできない有用な情報がたくさん存在している。上で述べたように、PDF形式のファイルを閲覧する時にはいくつか厄介な操作が必要だが、プログラムが組めるとそれらの操作を自動化することができる。あるいは、そこまでいかなくとも操作を極めて簡略化することができるようになる。私の場合、Windows10環境での作業であるので、Dos Promptのバッチファイル、awk ファイル、それと自作あるいはネットからダウンロードした exe ファイルを組み合わせて処理している。商用のプログラムではないので、わざわざ無理して一気通貫な処理をする必要はない。幾つもの小さなプログラムを重ね合わせることで、短時間でほぼほぼ目的を達成するプログラムを組むことができる。

続く。。。
コメント
  • Twitterでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

智嚢聚銘:(第5回目)『中国四千年の策略大全(その5)』

2022-04-17 13:55:00 | 日記
前回

前回に書いたように、今回出版した『中国四千年の策略大全』は全体の1/5程度(約230条)の抄訳である。ただ、用意した原稿はさらに 100条近くあった。諸般の事情で出版できなかったが、これから暫くの間、これらの項目を紹介しようと思う。なお、出版した本では、ページ数の関係上、原文を載せることはできなかったが、ウェブではそういった制約もないので、原文も掲載しよう。ところどころに馮夢龍の活躍した明の時代の文語文ならではの言い回しも混じっているものの、学校で習う漢文と多少の違いはあるが決して難解ではない。

尚、巻数は、馮夢龍の『智嚢』(正式名称:『智嚢補』あるいは『智嚢全集』)を示し、それに続く番号やタイトルは、ウェブからダウンロードしたWikisourceの原文に載せられている名称を参考のために示す。
(原文サイト: https://zh.wikisource.org/wiki/%E6%99%BA%E5%9B%8A

最初は、唐の官僚・劉晏のすぐれたビジネス感覚の話だ。

 ***************************
 馮夢龍『智嚢』【巻 2 / 95 / 劉晏】(私訳・原文)

唐の時代、劉晏が揚州に造船所を造り、一隻あたりの建造費に千緡(1億円程度)を払った。ある人が「実際の費用はこの半分ぐらいですから支払を減らしてはどうか?」と提言した。劉晏は「それはよくない、大きな事を成そうとするなら、こまかい所をけちってはいけない。およそ、事を為すには恒久的な観点が必要だ。今、造船所を作ったので、造船業者が多くできたが、初期費用がかなりかかっているはずだ。まず為すべきことは、業者が資金的に困らないようにして、丈夫な官製の船を造らせることだ。もしこまごまとした計算でぎりぎりの支払いしかしなかったらどうして事業が長続きしようか。必ず、後になって支払を半分にしようと提案する者がでてくるであろう。支払を半分にしても、かつかつにやっていけるかも知れないが、それ以下になると到底むりだ。」

その後、50年経ち、果たして劉晏の予想通り、支払を半額にしようと提議する官僚が出てきた。そして遂には、懿宗の咸通年間になると、製造コストぎりぎりにしか支払をしなかったので、官製の船は板が薄く壊れやすくなって、とうとう揚州の造船所は廃止された。

劉晏於揚子置場造船、艘給千緡。或言所用実不及半、請損之。晏曰:「不然。論大計者不可惜小費、凡事必為永久之慮。今始置船場、執事者至多、当先使之私用無窘、則官物堅完矣。若遽与之屑屑較計、安能久行乎?異日必有減之者、減半以下猶可也、過此則不能運矣。」後五十年、有司果減其半。及咸通中、有司計費而給之、無復羨余、船益脆薄易壊、漕運遂廃。〔辺批:惜小妨大。〕
 ***************************

ビジネス原理からいえば、コストカットすることは利益向上に直結するので、善い施策だといえよう。しかし、劉晏が指摘するように下請け業者の経営が成り立たなくなるほどの低い価格で発注すれば当然、どこかに手抜きが出てくる。そうなれば、回り回って結局は発注者に不利益のつけがやってくる。かつて、日産では、カルロス・ゴーンがコストカットで急激なV字回復をしたというが、その結末はどうであったであろうか?



次は、中国のどろどろした政争まみれの宮廷でのスパイ映画もどきの策略の話。

 ***************************
 馮夢龍『智嚢』【巻 2 / 98 / 羊馬因劉慶祖】(私訳・原文)

南宋の初期、趙汝愚と韓侂冑が光宗を退位させて太上皇にし、寧宗に帝位を譲らせようとした。その譲位計画を実行するに当たって、趙汝愚は近衛隊長の郭杲に言い含めて、兵士500人を祥禧殿の前に集めて御璽を取り立てようとした。郭杲が殿内に入って御璽を要求した時、御璽の保管を担当していた宦官の羊馬因と劉慶祖の二人はひそかに話し合った「今、宮殿の外ではいろいろと不穏な空気が流れている。もし万一、この御璽が曲者の手に渡ってしまったならどういう不測の事態になるやもしれぬ。」

それで、二人は共謀して、郭杲には空箱を封印して渡した。一方、本物の御璽は秘密の通路を通ってこっそりと徳寿宮に居る憲聖太后のところに運んだ。趙汝愚が御璽の箱の封印を開いて御璽を取り出そうとした時、憲聖太后は隠し持っていた本物の御璽をこっそりと袖から出して、趙汝愚に渡した。

趙汝愚与韓侂冑既定策、欲立寧宗、尊光宗為太上皇。汝愚諭殿帥郭杲、以軍五百至祥禧殿前祈請御宝。杲入、索於職掌内侍羊馬因、劉慶祖。二人私議曰:「今外議洶洶如此、万一璽入其手、或以他授、豈不利害?」〔辺批:也慮得是。〕於是封識空函授杲。二璫取璽従間道詣徳寿宮、納之憲聖。及汝愚開函奉璽之際、憲聖自内出璽与之。
********

御璽が盗まれてしまうと、政権が転覆する恐れがある。それで、郭杲には空の御璽箱を渡して、万が一、運搬途中で盗まれてもよいようにした。そして、御璽そのものは秘かに別ルートで運んだ。まるで、007のサスペンス映画のような情景だ!『智嚢』には、ここだけではなく、何度も登場してくる「敵の作戦の裏の裏まで読む」策略だ。ここまでしないと、安心できないというのが中国社会であったし、多分、今もそうだろう。。

続く。。。
コメント
  • Twitterでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

軟財就計:(第7回目)『私のソフトウェア道具箱(その 7)』

2022-04-10 17:42:15 | 日記
前回

ブリタニカの第9版(Britannica 9th)は学術的に評価の高いが、いかんせん100年以上も前の出版(1875年から1899年)であるため、現代人にとっての価値は極めて低い。それゆえ、Web上でもいささかぞんざいに扱われている。具体的に言えば、Britannica 11th はウェブ上の幾つかのサイトで全文がテキスト化されていて、検索もできるようになっている。さらに、文字だけでなく、図版も埋め込んだフルセットの次のようなサイトも存在する。
 Wikisource:WikiProject 1911 Encyclopadia Britannica

このようなサイトを利用することで、1910年発行の Britannica 11th をあたかも現在の百科事典のように気軽に利用することが可能だ。実際、英語版の Wikipedia では Britannica 11th から文章をそのまま引用している個所が数多くある。

それに反し、Britannica 9th を参照するのは大事(おおごと)だ。まず第一、紙の本を買おうと思っても日本では入手は、不可能とは言わないにしても、非常に困難だ。それではと、外国の古本屋から輸入すると本体は10万円から20万円の価格帯だが、それに送料の数万円が上乗せされるので、よほど意思を固めないことには注文できないであろう。


従って、9th を本の形態で読むのは、私の場合のようによほど幸運に恵まれない限りは現状、日本国内では不可能なので、 Web上の電子化データをチェックすることになる。幸運なことに、本文は全て PDF形式で公開されているが、立ちはだかるのが検索の不便さだ。この難関を解消するには、自分でプログラムを書く必要がある。

順序として先ず、本文のPDFを入手することから始めよう。

Britannica発祥の地であるスコットランドのサイト、 National Library of Scotland に 9thの全巻(24巻+インデックス)の PDF データが公開されている。単純に考えれば、これを全てダウンロードして、探したい項目のページを開けばいいということになる。とはいえ紙と違い、PDF の電子データは目的の項目に飛ぶにはひと苦労だ。まず、インデックスの PDF を開いて該当のページを見つけ、それから目的の巻のページにアクセスしないといけない。つまり、常に二重手間がかかるわけだ。あるいは直接、該当項目のページに飛ぶにも、PDFは紙のようにぱらぱらとめくることができないので、該当ページに辿りつくまで何ページもめくらないといけない。

この手間を簡略化するプログラムの説明が本稿の目的だ。そのためには、インデックス巻の PDFデータをテキスト化し、検索することで、該当項目の巻数、ページ数を瞬時に表示できるようにしたい。それには2つの方法がある。

1.Archive.org のデータを取得する
2.PDF をOCRで文字化する


それぞれの説明をしよう。

1.Archive.org のデータを取得する

欧米で著作権の切れている図書は近年続々と電子データ化されている。有名なところでは、Google Booksがある。その以外には Microsoft も電子化に積極的だが、私がもっぱら利用しているのは Archive.org である。ここには、英語の図書だけでなく、ドイツ語やフランス語の古い書籍も数多く電子化されている。私が Google Booksよりこちらを利用している理由は、図書の電子化データとしてページの画像データをPDF形式にしただけでなくほとんどの場合、テキストデータも載せられているからである。もっとも、そのテキストデータはOCRで作成されたデータなので、変換の間違いも多いのも事実だ。それでも大体の内容を知るにはテキストデータの方が便利な場合も多い。例えば、9th のインデックス情報は次のような検索語でググれば見つけることができる。
 Encyclopedia Britannica 9th index site:archive.org
今回、9th のインデックス情報をテキスト化したものをダウンロードしたが、残念ながら、OCRの精度が悪く、誤読が多く、使い物にならないことが判明した。

2.PDF をOCRで文字化する

それでは、新たにOCRで解読しないといけない。Web上のオンラインで無料でOCRしてくれるサイトを探して、試してみたところ、onlineocr.netの変換が一番正確であった。フリーで使うにはページ数や回数の制限はあるものの、非常に精度の高いテキストを得ることができた。次はいよいよこのインデックスファイルを使って項目を検索して、目的のページを表示させるプログラムを作ることになる。

続く。。。
コメント
  • Twitterでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

智嚢聚銘:(第4回目)『中国四千年の策略大全(その4)』

2022-04-03 16:27:18 | 日記
前回

本書『中国四千年の策略大全』は明の文人の馮夢龍が書いた『智嚢』の抄訳である。私がなぜ、この本の名前を知り、興味をもったのは増井経夫氏の抄訳本『智嚢 ― 中国人の知恵』がきっかけだった。(その後の経緯などについては本書のP.37からP.39に書いたので、ご参照頂きたい。)増井氏の本は『智嚢』の1/7程度の抄訳であるので元の構成がどうなっているのか分からなかった。本文にも書いたように、それから40年近く経過して、ようやく漢文の全文をウェブ上で発見して、ダウンロードしてようやく全貌を掴むことができた。

ちなみに全文はWeb上で幾つかのサイトでみることができる。たとえば、中国版 Wikisource の https://zh.wikisource.org/wiki/智嚢 にある。困ったことに、サイト間で多少の食い違いがある。例えば、複数の話が一つのタイトルの下にまとめられている場合、それぞれを別の話と見るか同じ範疇の話と見るかによって、番号付けが異なる。いづれにせよ、概略 1060条の話が『智嚢』には載せられている。

原文がデータとして入手できると、紙媒体では得られない情報を得ることができる。一つの例は語数の統計分布だ。馮夢龍が『智嚢』を書いた主目的は策略のバリエーションを網羅的に記すことであったので、歴史書では重要な人物の思想・経歴や事件の背景の説明は極力簡略化して、ツボにはまった策略が際立つようにしている。それで、基本的には文章は星新一流のショートショートになっている。
語数をカウントした表を下に示す。(語数のカウントには句読点や括弧などは含めず。)



この図から分かるように、語数が400語以下の話が全体の8割にもなり、500語以下で9割となる。500語は、簡単なメール文程度の極めて短い文章となる。この中に話の起承転結が詰まっているということは、いかに馮夢龍の文章編纂が優れていたかという証拠となる。

さて、この本には1000条にものぼる中国人の策略が紹介されている。本書『中国四千年の策略大全』ではその内、1/5ほど紹介してある。増井氏の本とのダブりは極力避けるようにした。それは、『智嚢』という本の幅広さと中国人の策略の凄さを知ってもらいたいと思ったからあった。ところで、これは私の勝手な推測だが、中国文学者の増井氏は中国人のいや~な面を如実に示すような薄汚い話をあまり選んでいない。私が『智嚢』を読んで一番感心したのは、第 5章の《雑智》策略に「賢い」も「ずる賢い」もない、の部分だ。この章を読めば、本書の帯に書いてあるように:
「詐」の中国、「誠」の日本。両国の文化の差を表わすのにこれほど適切なことばはない。詐の根源を辿れば春秋時代の孫子が力説する策略に行きつく。もっとも、詐と誠というのは必ずしも善/悪の対比ではなく、策略のあり/なしと理解すべきだ。

という文句が十分納得できるであろう。私が《雑智》(本書第5章)でとりわけ感心したのは、《孫三 真赤な猫で大儲けした老人の策略》(P.270)、《京邸の仮宦官 大金を借りようとして手土産をかすめ取られる》(P.272)、《京師の騙子 都の一流の詐欺師の腕前》( P.274)のような中国の策略の粋が詰まっている話だ。もっとも、増井氏も流石にこの中からは《狡訟師 依頼人の耳を噛みちぎって無罪を勝ち取る》(P.265)を取り上げているのは、日本人には到底考えつくことすらできない策略に思わず膝を打ったからであろう。

ところで、世間で有名な識者のいうことは真理だと考える人は多いが、私の今までの読書体験からいうと、中には「トンでも論」も間々見受けられる。たとえば、近代資本主義の勃興に関しても、元来商売が盛んであった中国ではなく、ヨーロッパだけに近代資本主義が発達した理由をキリスト教の教義に関連づける識者は多い。一例として小室直樹氏は『イスラム原論』(P.395)で「利益を得るのが悪いというキリスト教があったから、それにカルヴァン派が猛反発し、それが資本主義の発展につながった」との趣旨を述べている。しかしこれは、一面の真理でしかないと思う。というのは、資本主義の発展のためには、「見知らぬ人から資本を集め、利益が出れば適切に配分する」ということが正しく履行されないといけない。つまり、見知らぬ人の間で、公正な倫理観が共有され、信頼関係が構築されないといけない。この点から資本主義を見てみると、資本を集めた人は出資者から信頼されていなければいけない。英語の単語でいうと、sincerety、integrity、trust が見知らぬ人達の間で確立されている社会の存在が資本主義発展の大前提となる。本書『中国四千年の策略大全』を読むとそういった社会は中国にはかつては(そして、多分現在も?)存在していない。これが結局、世界中の富を多く集めた宋以降の中国に近代資本主義が成立しなかった根本原因であることが分かる。

続く。。。
コメント
  • Twitterでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする