雑誌や印刷

ざっくり言って、ここ10年で、書籍、さらには印刷の市場は2割縮小している。そのあいだ、景気が回復しているにも関わらず。

じつは、書籍や印刷物は税金で救われている側面がある。

たとえば全国の市町村や大学の図書館には、雑誌がそろっている。で、もともと雑誌というのは発行部数が少ないので、発行部数に対する図書館比は高い、と言える。いうまでもなく、図書館の雑誌の購入費は税金だ。

パンフレットをあまり見かけなくなった。けれど行政機関というには、みんなに同じサービスをする性質(義務?)があるので、ネットにつながっていない人を考えて、パンフレットを発行している。もちろん、こちらも税金による。

そもそも、行政機関って、みんなに均しく同じサービスを付与する余裕、あるのかねぇ。

財政の縮小を余儀なくされたとき、雑誌、印刷というのは厳しくなりと思うよ。もっとも、これは、ほかにも当てはまるんだけれど。

Pixel4

グーグルからPixel4が発売された。同社のスローガンは「AIファースト」だ。それが凝縮された一機だと思う。

オッケー。今春のGoogle I/Oを振り返ってみよう。

その中で「100GBのディープラーニングのモデルを0.5GBで実現した」ので、「ネットの接続環境でなくてもローカル(スマホ)だけでデータが処理される」という発言があった。

数年前から、iPhoneでも、ローカルのAIエンジンでデータが処理されている、とおもう。けれど、ほら、アップルはスペックを多く語らないでしょ。それに対して、グーグルは語ってくれるよねぇ。

で、グーグルってさ、一種のソフトウェアおたくだから。

ソフトウェアによる抽象化で従来のハードウェアに置き換える傾向がある。「その意気、よし」である。支持するついでにPixel4を買うぞ、と言いたいところだけれど…ま「余裕があったらな」だねぇ。

Google I/O 2019 22分〜

 

以前より正解には意味がない

専門的な分野、と書いてみる。

ならば「どこから専門的なんだよ」って、突っ込みたくもなる。

だって、じぶん以外(その人はその人にしかないような)一意の人でしょう。

学校にはテストというものがある。

これは解答というお手本に近づけば良いとされる。

すると多くの生徒は、解答に近づこうするし、少なくとも先生は近づくように指導する。

かくして生徒は同じ解答を解こうとするわけで。一方で、個性、個性と言っているのだから、ま、いい加減なものである。

専門的なことや、正解に近づくことは、わりとモダンなことだとおもうわけ。

こういうのと、同じことをする、同じものを作ることと、相性が良いかったりする。

梅棹忠夫さんが情報産業という言葉を作ったのは、もう50年以上前のことで。これ、アルビン・トフラーより前だぜ、というのは、誰かの受け売りだけだけれど、ま、先見性があったわけネ。

げんざいは、もはやモノづくりより、ソフトウェア、さらには情報中心の社会になっているでしょう。

そうなると、正解よりむしろ仮説を立てたり、誤差を考慮した方が有効かもしれないだわ。

1+1=3は誤差が50%もあるので、さすがにマズいけれど、1000+1000=2001なら誤差0.5%なので、ま、そんなもんだろうみたいな考え方。

 

ネット上のパフォーマンス

ネット上で得をする人と、損をする人がいる。

前者は、利益/ コストが高く、後者は利益/コストが低い。

ホリエモンや、メンタリストDaigoは、コストに対する利益がケタ違いに高い。一方、ケタ違いに低いのは、たとえば俺である。とはいえ、そういう感じが可愛くもある、好きな性格でもある。

しかしだよ、どうすればネット上のコストパフォーマンスが高くなのか考えてみるのも面白いと思う今日この頃である。

ナイアガラ

大瀧詠一がハッピーエンドのメンバーだったことくらいは知っていた。

YouTubeのおかげで大瀧詠一のその良さを知った。

ぼくらの世代、音楽といえば、言うまでもなくアメリカだった。

ハッピーエンドの世代は、ぼくらより、ひとまわり上の世代で、アメリカの音楽に対して、またひと味ちがう、あたたかみのある親近感を感じていたのではないだろうか。

なにかで、ハッピーエンド当時の細野晴臣は、アメリカ音楽に対抗しうる日本音楽を目指していた話を、読んだことがある。

けれど、YoutubeやSpotifyのおかげで、世界中の音楽は相対化され、じつはハッピーエンドは、十分に世界レベルであった。そんな感想を持っている。じっさい、ハッピーエンドは世界中でも評価が高いもんね。

以下のYouTubeは、大滝詠一のナイアガラに関する対談。お相手は、なんと渋谷陽一〜。

シャノン

クロード・シャノンという名まえを耳にする。

わかりやすいハナシから、はじめよう。

重さの単位はg(グラム)、距離はm(メートル)、気圧はhpa(ヘクトパスカル)だ。

そして情報の単位は…というとb(ビット)である。

この単位を提唱したのがシャノン、である。

歴史に埋もれていたブール代数を応用し、機械的に真偽をアウトプットできる、としたのもシャノンである(AND、OR、NOTという演算子だけで、真偽が出せる)

最も刺激的なのが、データの冗長性に関するアイデアだ。

情報を通信する際には、冗長性が少ない方が良い、とされる。

たとえば、A、B、C、Dの文字だけのメッセージを送るとする。

このメッセージの半分はAで、Bは1/4だ。CとDはそれぞれ1/8である。

さて、どのようなビットで送れば冗長性は少ないだろう。

A=00
B=01
C=10
D=11

こ場合の平均は、
(2×1/2)+(2×1/4)+(2×1/8)×(2×1/8)=2.0
となる。

A=0
B=10
C=110
D=111
の場合は、
(1×1/2)+(2×1/4)+(3×1/8)+(3×1/8)=1.75
だ。

なので、後者の方が1文字あたりの助長性が少ない、つまり送信しやすい、ということになる。

参考:「クロード・シャノン 情報時代を発明した男」(ジミー・ソニ、ロブ・グッドマン)

高階関数/コールバック関数

JavaScriptをやっていたとき、コールバック関数について理解できていなかった。

やっと、理解できたわ。

こちらはpythonネ。

# 高階関数
def func1(f,x):
    return x

#コールバック関数
def func2(x):
    return x+1

func1(func2,1)

>>1

 

せっかく、理解できたので、微分を高階関数にした場合のコードを書いてみようー。

def diff(f,x):
    h=1e-10 
    return f(x+h)-f(x)

def squared(x):
     return x**2

diff(squared,2)

4.000000330961484e-10

情報の「経路」

N国党が話題になっている。同党の党首や幹事長の発言をチェックしてみた。

着目しているのは、国内の既存のメディアをYouTuybeで相対化している点だ。

日本は変わらないと言われて久しい。

既存のメディアによる国内の情報空間が当たり前のように存在し、そこから抜け出せない状態が続いているからだ。じつは、変わらない根本は、そこにある。そんなことを気づかせてくれた。

「NHKをぶっこわす」の対象は文字通りNHKだけれど、一方で、NHKという言葉は、既存メディア、ひいては既存の日本の象徴でもあるわわけね。

情報の「経路」について考えたりしている。

すいぶん昔から、既存のものを変えようとチャレンジして来た人がいる。しかし、それは、すべて成功はしていない。でも、それは、情報の「経路」がなかったから、と思わなくもないわけネ。

__init__

このへんの、わかりにくさも定説。

クラスの中に、初期化メソッド
__inti__
を作成することで、
インスタンスを作るさいに、値を保持することができる。

class Food:
    udon = 'うどん'  
    
    def curry():  
        print('カレー')
        
    def __init__(self,name): #インスタンス化に際して値を保持できる。
        self.name = name

 

Food.udon
>>うどん

Food.curry()
>>カレー

food = Food(‘牛丼’)
food.name
>>牛丼

self

pythonは、いっそ、「すべてがオブジェクトなのだ」と思ってしまいたい。

インスタンスも、もちろん、オブジェクトだ。

で、インスタンスがつくられるとき、インスタンスのなかに、じぶん自身がつくられる、というのが、とても分かりにくかったりする。

なにも、これは、ぼくだけでなく、ネットをチェックしてみると、同意見のひとが少なくないんだね。

まずは任意のクラスをつくり、インスタンス化のあと、わざと、エラーを出してみよう。

# クラスをつくる
class Food:
    def curry():
        print("インドカレー")

# インスタンスをつくる
food= Food()

#インスタンスからメソッドを呼び出す
food.curry()

#つぎのようなエラーメッセージがでる
----> 1 food.curry()
TypeError: curry() takes 0 positional arguments but 1 was given

 

food.curry( )は引数をとらない。けれど引数が与えられている。

引数が与えられている? なんだろう?

じつは…インスタンスが作られるとき、第一引数に自分自身が引数として与えられている、というんだなぁ…このへんは、ほーんとに、わかりずらい。

ま、良くわからないまま、クラス側のメソッドに引数を明示的に入れる、というんですねぇ。で、pythonでは、このさい、selfという文字をつかうことが慣習となっている。

オッケー。さきほどのコードを書きなおしてみようか。

# クラスをつくる
class Food:
    def curry(self):
        print("インドカレー")

# インスタンスをつくる
food= Food()

#インスタンスからメソッドを呼び出す
food.curry()

インドカレー

 

こんどはエラーにならない。