はてなキーワード: 形態素解析とは
https://anond.hatelabo.jp/20170918004847
続き
テキストマイニング勉強して増田に頻出する人間の種類をパターン化しようとしてるんだけど、方法が思いつかない
スクレイピングでデータを取る→mecabで形態素解析して頻出名詞をデータ化する→頻出名詞によって元増田がどのカテゴリーの属するのか判定する
の最後のカテゴリーを作るのがむずい。カテゴリーに名前を人力でつけようとするから難しいのか。ある程度頻出名詞が似通ったら(閾値を作って似てるの基準を作る)適当に振った名前group1,group2等に放り込むか。頻出名詞が似てるかどうかを判定するのは何の理論を使うのか、もしくは何のライブラリを使ったらどれだけ似てるかの判定を簡単にできるのか
最後のどれだけ似てるかの判定が自分は分からないってことが分かった
こういうのはどこで質問したら良い回答が得られるかな
弊学では、2年生の時に必修のプログラミングの授業でC言語を習う。
中学生の頃からパソコン大先生でスクリプト言語を軽く触ってた自分としては、わざわざ面倒な書き方で面倒なコンパイルをして動かす事に疑問を感じていた。
ちなみに、試験は紙ベースで、手書きでプログラミングをさせられる。つらい。
スクリプト言語で良いと思ってた自分は、C言語を覚えることに疑問を感じていた。
結局、授業以外で全く勉強せずに試験結果は散々だったが、なんとか単位が取れたので良しとしよう。
プログラミング初学者である人は苦労して書き方を覚えていたように思う。
脱落していった人を何人も見たが、人間やれば出来ないと思っていたことが出来るのである。
今学期、PHPを書く授業とPythonを書く授業を履修してみた。
PHPは、某テキストをもくもくと写経して動かしてみる授業で、独学でテキストのコードを動かす気力のない自分にとっては最高の授業だ。
Pythonは、MeCabなどで形態素解析や構文解析をする授業で、サンプルコードを自分で考えてカスタマイズして毎回レポートで提出する。
Pythonの書き方に慣れないからか、かなりハードであるが、やりがいがあっていい感じだ。
書いたらすぐに目に見える成果が出るところが大きい。
自分は、プログラミングを授業で教えるのならスクリプト言語に限るはずだと思う。
そう思っていた矢先に事件が起こった。
最近、研究室に入ったところ先生が手当たり次第Javaを教え始めたのである。
せめてJavaScriptでいいからスクリプト言語を教えてほしいところなのに、なんでJavaなんだと発狂した。
それでも、30億のデバイスで動くハイブリッドさとオブジェクト指向を理解する上での分かりやすさという面ではJavaが手軽なのかもしれない。
ところで、最近になってプログラミング教育義務化とか叫ばれてるが、Scratchでパーツを並べてプログラミングをするなんてただの積み木に過ぎないと思う。
絶対にツマラナイだろう。
自分は、プログラミングの授業で数字を足し算して黒い画面に表示させるとかツマラナイと感じてしまった。
こんな複雑なことをしても、これしか成果が出ないならやってられないと思うのは自分だけなのだろうか。
お願いだから、プログラミングを教えるのならツマラナイ授業をしないで欲しい。
生徒に分かるように、生徒は楽しんでプログラミングをするべきだ。
別にどんな言語でもいいと思うが、プログラミング言語は人それぞれ好き嫌いが激しいだろう。
自分は、分かりやすくて直感的なRubyというプログラミング言語が学校の授業で採用されるべき言語に間違いないと思う。
別にRubyにこだわる必要はなくて、スクリプト言語であればなんでも良いと思う。
CやJavaなどのコンパイル言語は複雑で分かりにくいし、教えにくいはずだ。
スクリプト言語を教えた後に、コンパイル言語、オブジェクト指向の概念を教えていくのがいいのではないだろうか。
みんなの意見を知りたい。
あらゆる事象を『マウンティング』を使って説明しようとする傾向を不思議に感じる。マウンティングと言われても機械の取付金具のたぐいしかイメージできない。いつから『マウンティング』が人口に膾炙し始めたのだろうか?
純正の検索機能で見つかる増田での初出は2014年11月25日18時25分。でもこれははてなの検索が『マウンティング』を形態素解析可能になったのが2014年秋頃というだけの話で、それ以前のエントリでもマウンティングが見られないことはない。2014年7月13日には既に見つけることができた。
Googleトレンドで見てみると2014年の春頃に急増している。その頃のニュース記事を検索してみると、渡辺千穂脚本、沢尻エリカ様主演のテレビドラマ『ファースト・クラス』が女性同僚間での『マウンティング』をテーマとして描いていてそれで一気に流行語になったのだと書かれている。
Googleトレンドでは2014年2月時点で既にグラフが上昇しつつある。これは2月8日に発行された瀧波ユカリ、犬山紙子著『女は笑顔で殴りあう:マウンティング女子の実態』https://www.amazon.co.jp/dp/4480815198の影響が大きいのではないかと思われる。
2014年1月以前も細々とながら使われていた。その中には2013年4月20日発行の『嫌われ女子50』https://www.amazon.co.jp/dp/4584134928という本についての言及も見られる。これも犬山紙子氏の著作である。犬山 紙子氏がこの人間の行動を『マウンティング』で解説するブームを作ったと見ていいのではないだろうか。
はてな村では2011年に内田樹氏がブログ内で使ってプチブームが発生した。「暴言と知性について」http://blog.tatsuru.com/2011/07/05_1924.php
更に前になると2008年ごろからid:Nagise氏がはてなダイアリーで多用されてきた。はてな村での流行はid:Nagise氏にルーツがある可能性もある。
真面目に答えず、出来る限り嘘と虚構を織り交ぜて答えていきたい。
広義的にいうならスパムだな。
で、この文章がどうやって作られているかというと、主にコンピューターによって自動生成されている。
自然言語処理には「形態素解析」や「構文解析」などの技術が用いられているのだが、よく分からないのでスキップしよう。
で、それらが文法を解するのだが、致命的な弱点がある。
つまり、それで出来上がる文章は文法的には正しく見えるかもしれないが、文意がないので支離滅裂になる。
言語障害を「ワードサラダ」と通称することがあって、そこからこのスパムはそう呼ばれるようになった。
これの厄介なところは、検索エンジンがそれら支離滅裂な文章をスパムとして弾くことが困難なことだろう。
ザックリいうなら、コンピューターが書いたものなのだから、それはコンピューターにとって「正しい文章」だと判断される、と考えてくれ。
SEO(検索エンジン最適化)にとって、ワードサラダの対策は永遠の課題……らしい。
このようなことをする目的としては、労力なしに広告収入を得るため、SEOの妨害とか愉快犯など、人によって目的は様々のようだ。
誤解してはいけないが、自動で文章を生成する技術自体が悪いのではなく、それの利用方法の問題であることは知っておいたほうがいい。
エゴサーチしてたら見つけたんだけど、こういうブログってなんのためにやってるんだろう。
気味が悪い。
http://www.wufangbuhuanbaodai.com/
http://www.keycitymarketing.com/
http://www.floatingdockswavearmor.com/
1. 取得したいページのURL配列を作る ["http://www.hogehoge.com/1","http://www.hogehoge.com/2"・・・]
2. URLを引数とした、該当のページから取得したい情報を抜き出すプログラム(関数)を書く タイトル、xvideoのURL、xvideoのIDなどなど
3. 2のプログラムの最後に、抜き出した情報をデータベースに登録する処理を書く。この時、xvideoのidなどで登録済みか未登録かを場合分けして、登録済みの場合はスキップする。
4. 1の配列に対してループを回して、2のプログラムをそれぞれのURLで実行する。
・埋め込みタグは取らなくていいんじゃないかな?xvideoのidを差し替えるだけで、表示できると思う。
これはかなり難しいと思う。そもそも、xvideoのタイトルが英語だし、きちんと付けられていない。そうすると、動画の中身を読み取ることになるけれど、それはかなり難しいだろう。日本語の説明文がないから、形態素解析も役に立たない。自分だったら、見た人に協力してもらって、日本語でのタイトル付けをしてもらう機能を実装する。
なんかこの前ここで書いたダイアリーが400はてブとかついてすごいビックリした増田だよ。
お陰ではてブしてもらった日はいろんな人に見てもらえたみたいで
1日で12,000PVくらいいったんだけど、次の日から順当にPVは下がり続けて
今は1日1000PVくらいをうろうろしてる弱小エロサイトになった。
あれからPHP書いたりWordPress更新したりってちょくちょくやってるんだけど、
PHPってなんであんなむずいんだよ。ふざけんな。アドバイスしろくださいおまいら。
いろいろ改善してみたり、失敗したりした。
こんなめんどくさがりな俺でも続けていけるものが見つかるなんて
まずこれ。これはなかなか成功したんじゃないかと思う。
といってもテーマファイルを差し替えて、自分で少しHTML/CSSいじった程度なんだけど。
iPhoneからみてもPCから見てもそれなりな感じになったのでとりあえずこれで満足。
プロからみたらダメなところたくさんあるかもしれないけど妥協しとく。
うん、まともに変わったところといえばこれくらいか。
SEOについて調べていくとどうやらエロサイトは検索流入と同じくらい
アクセストレードってのが大事らしい。性質上ソーシャルからの流入はあまり見込めないから当然か。
なのでよくわからんけど主要っぽいアンテナサイトに相互RSS登録した。
いまのところあんまアクセス流れてこない。どうなってんだよアンテナどころか圏外じゃねーか。
そんでこれが本題。
やっぱり記事の更新作業がくそだるい。ニートなのでラクをしたい。そのためなら勉強する。
やりたいことってのはまとまってるんだけどそれを実現するためのソースコードが思い浮かばない。
Simple HTML DOM Parserってのを使えばいいってところまではわかった。
・指定のサイト、もしくはXVIDEOSから新着のサムネイルとXVIDEOS埋め込みタグを拾ってくる。
・それをデータベースに登録する。(この時にWordPressには下書きの状態で投稿されると最高)
・6時間おきとかに1日4回くらい実行する。
こんなことがしたいんだけどもうわけわかめ。
さらにそれぞれに紐づく下層ページにある埋め込み動画タグをスクレイピングするってのがわからない。
ここで書くのは間違いかもしれないけど教えてエロい人。
いい感じのタイトルを自動でつけてくれるとかいう神プログラムを組みたい。
ヤフーが提供してるAPIで形態素解析なんちゃらとかいうのを使えばできそうだなーとか思ったけど、
あまりに光の見えないトンネルに突っ込みそうだったからこれはまた今度。
ってことで整理するために書き起こしてみたけど
PHP,MySQLあたりの勉強をもっと頑張ればうまくいくのかな。
他のエロサイトがどうやってスクレイピングしてるのかまじで知りたい。
やっぱりRuby on Railsとかでスクレイピングしたほうがラクなのかな。
あーなにか目標持ってこんなに1日中ひとつのことに没頭してるの何年ぶりだろ。
思わずスクショに撮っちゃったんだけど、『はてな匿名ダイアリー』のエントリの題名で
携帯から検索をかけたら、「48 secs ago」という表示が題名の後に表示された。
yahooのリアルタイム検索で、自分のTwitterの投稿内容がどれくらいで反映されるのか
セルフ検索にかけてみたことはあるけど、一分以上はかかっていたと思う。
yahooのリアルタイム検索で、専用サーバーだか線だか引っ張ってきて特殊なAPIを叩いてるだろうことを考えると、
上記の一般検索で「48 secs ago」というのはなんか、もう、異次元入ってる。OpenGrokよりわかんない。
クローラーでやっている技術的内容が全く想像できない。論文とか検索したら出てくるのかしら。
たまたま、タイミングがあったにせよIFに普通「secs」を用意する?
「Twitter等リアルタイム性を求めるソーシャルサービスが出てきても
Googleなどの従来型インデクサーが即時検索を可能にするとは思えない。
従って技術的イノベーションが起きるとすれば、これからはレコメンドエンジンだっ!」と
言い放っていたのがちょうど四年前あたりだったと思う。。。四年であの教授は形にできたのかしら。
Googleは多分地味だけど確実に本業も進化してるんだと思う。あんまり話は聞かないけど。
はてな匿名ダイアリーのエントリタイトルが、特に変わった言葉がなくても
Googleの上位に来やすいのは、「はてな匿名ダイアリー」を一つのブログとしてみたときのPV数の多さ、
ぐらいしかSEO対策をしたことがない素人には想像つかない。それを思えば、PVが多いところに
ある程度ウェイトを置いてポーリング監視っぽいことをしてるのかなとも思えたが、
星の数ほどあるウェブサービスをして、それはないと個人的には思う。
アニメやゲームのキャラクター情報をまとめてるサイトがないから作りたいなぁって
思ってたんだけどhtmlは初歩しか分からないしプログラミングもできないので構想するだけで作れなかった。
ゼロから4ヶ月でWEBサービスをリリースした人の記事を見つけて「自分にもできるかな!」なんて思い挑戦してみたけど理解できず挫折・・・orz
それでもWEBサイトを作りたかったので制作会社に発注してみようと思い立った。
ただのキャラクターのデータベースだけではつまらないのでコミュニティ要素なども付けて
ネットで見つけた制作会社に見積もってもらうと下記のようになった。
合計1,483,125円
以前、SNS「ウェブカレ」のサイト制作費が1千万円で安く仕上がった(潰れたけど・・・)という話があったから
なんとなく3~400万くらいかかるんじゃないかなと不安だったんだけど予想より安い見積もりだったので、
このくらいの金額ならなんとか出せる!ということで制作してもらうことにしました。
本当は何社かに見積もってもらって比較しようと思ったんだけど面倒だったのでそのまま制作をお願いすることにした。
(最初はもう少し高かったけど機能の簡略化とオープンソースのライブラリを使用してもらう事で費用を抑えてもらった。)
去年の10月の頭くらいから打ち合わせを始めて第1フェーズでワイヤーフレーム作成と仕様策定をして第2フェーズのhtml、システム開発に
移ったのは中旬だったかな?その段階で前金で4割の580,650円を支払いました。
制作会社には3回くらい打ち合せに行って、あとはメールでやり取りしていました。
当初は12月中にリリースを予定してたんだけど、なんだかんだで伸びてあらかた出来上がったのが2月の中旬くらい。
ちなみに僕はヒッキー(どれくらいヒッキーかというと外出は3日に1回くらい)なので制作してもらっている間は
↓作ったサイト
サーバはさくらのVPS 8Gを使用。CentOS5の64bit
設定した項目は以下のとおり
HDDが3つあって、普通に/var/wwwにコンテンツを入れていくとHDDが溢れそうだったので、容量の大きいものを使うように工夫したりなど。
メモリもそこそこ積んであるサーバなので、mysql、php、apcに多めにメモリを割り当てる設定をした。
本当はmyISMやInnoDBエンジンでLIKE "%word%"のようなクエリーを投げて十分なパフォーマンスが出ればいいんですけどね。
それはムリなので、全文検索エンジンとしてgroongaを使用。
groongaを使用するために先にインストールしたのはこんな感じ
この時点でいざ、groonga!と思ってgroongaをインストールしようとすると競合を起こして入らない。
epel、remiレポジトリからインストールしてあったmysqlと衝突してたのでyum remove "mysql*"で
一旦mysqlを消して、groongaレポジトリからmysqlとgroongaをインストール。
するとgroongaは入ったものの、今度はphpから使おうとしてもphp-mysqlパッケージが入らない。
あちらを立てればこちらが立たぬ状態で本当にこまった。
どうしようもないので、やりたくないけどyum-downloadonlyを使ってパッケージに含まれる設定やら、soファイルなどを直接とってきて入れた。
mysql.so、mysqli.so、pdo_mysql.soを/usr/lib64/php/modules/にコピーしたり、設定をコピーしたり、少しずついじりながら、なんとか動いてくれた。
状態としてはmysqlとgroongaはgroongaレポジトリから、phpと本来php-mysqlパッケージでインストールされるmysql.soは手動で置いたことになる。
シェルから直接mysqlにログインするときはgroongaレポジトリのやつを、phpからmysqlを呼ぶときは手動で置いたmysql.soを使うことになっている。
ちょっと心境的にしんどい。別の方法があったかもしれないけど、調べても分からず結局1日くらいかかった。
アクセスは、サイト全体(トータル)、サイト全体(当日分)、各コンテンツ日別、各コンテンツ週間、各コンテンツトータルのアクセスをとるようにしています。
検討した候補はmemcaced、apc、mysql、redis、fileあたりなんですが、
fileは候補にあがったものの、メンドウ、、どうせなら楽な既製品がいい。と思って候補から外しました。
残るはmysqlかredisだけど、redisが高速って聞いていたのでredisにしてみました。
最初全部redisに入れて、集計した結果をmysqlに入れるつもりでしたが、週間ランキングなどはINSERT INTO .. DUPLICATE ONを使って、
アクセスした週の月曜日00:00:00のタイムスタンプとコンテンツIDをキーにしたレコードを作ればそのまま週間ランキングになるなー。と思ってmysqlを使っています。
コンテンツのトータルアクセス数もコンテンツのレコードにpvという項目をつくってUPDATE table SET pv=pv+1 WHERE id = ? のようにしました。
最初難しく考えていたけど、こうすることによって大分楽になったなーといった感じ。
全文検索エンジンや対話検索、ここにこのリンクがあればなぁ。。という所に何とかしてリンクを作るのが本当に大変だった。
使い勝手を良くするために、ここにこの機能をなど、さくっと思いつくのは簡単でもそれを実現するために、あーでもない、こーでもないと
DB・プログラムとにらめっこしながら「あ!こうすればできる!でもそうすると今度はこっちが・・・」みたいなのがあったりでとても大変だった。
うーん、いったいどの検索サービスのことを言っているのかなあ。
インデキシングに形態素解析は使わないよ。基本的にはn-gramだから繋がった”意味のある”文字列がぶった切られることはないよ。
ただ、クエリーが”意味の無い”文字列だったので検索結果が見つからず、検索結果を増やすためにクエリーに入力したキーワードを形態素解析してクエリーを作り直すってことはよく使われる手法だね。googleなら”意味のある”と増田が思っている範囲の文字列をダブルクオーテーションでくくればいいと思うよ。
初音ミクに対するGoogle八分はあるのかもしれないし、無いのかもしれない。
各種の画像検索には文字コードやキーワードの形態素解析に大きなバグがあるのかもしれないし、無いかもしれない。
何らかのバグがある可能性については既にGoogleが言及しているようだ。確かに振る舞いは奇妙である。
それはそれとして画像検索の失敗には様々なファクターが関わっているため、何か一つの原因で全てが説明が付くかのように語るのは誤解を生む。
だから以下に挙げる要因もまた、起こりえる可能性の一部に過ぎない。
画像検索の仕組みは様々な手段がありえるし、実際にそれぞれのサービスが様々な手段を組み合わせている。
しかし、最も重要な手がかりは「画像と隣接するテキスト」と「画像とそのキャプション」の組み合わせである。
その結果「初音ミク」というキーワードと、そのサイトにある別の画像を紐づけてしまうため、
検索精度が著しく落ちている。
この状況は検索エンジンにとって、「キーワード」と「その中身」がランダムに組み合わされているように見える。
これはSPAMブログの典型的な特徴であるため、フィルタリングされる可能性がある。
日本の絵師のサイトは、HTMLの文書構造が、解析に適していない(例えば、Altに代換テキストではない文言を入れたり、表を多用したレイアウトだったり)サイトがたくさんある。グーグルのイメージ検索の結果を見てみると、それが原因でキーワードと画像の対応づけが上手くいってないサイトも見受けられる。
同意
ひとり一回までとか。ブクマするまでもない程度の記事の人気度というか閲覧度数が計れるしいいと思う。
ていうかはてダとかにもひっそりとつけられる機能を置いておって欲しい、激しく、いつのまにか。
あと一番欲しいのはあぼーん機能。
個人の設定とかを充実させられて…とかなんとか。
んでそれが付くような専ブラとか作ればいいんじゃないかって。
タグが板みたいな感じで。
というか増田のタグ一覧てなんか見難い気がするんだけどどうなんだろう。
形態素解析とかで自分の増田専ブラにまず、メタタグを適当に設定して作って
それをタグとかで板として開いて
表示数設定とかもしておいてまた時間順とか色々出来たり。
んでGmailなんかでなんちゃらふんちゃら、とか出来たりするってのも専ブラ以外としては選択肢としてはあったり
んな感じ。
以上歿。