Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
懐かしきCaboChaのレシピをもう一度
Search
log5
September 12, 2024
0
110
懐かしきCaboChaのレシピをもう一度
at
https://tw-meetup.connpass.com/event/330008/
log5
September 12, 2024
Tweet
Share
More Decks by log5
See All by log5
"Record, replay, and review: UI automation with Xcode" の要約
judau
1
130
App Clipの魔法: iOSデザイン開発の新時代
judau
4
7.9k
AppCodeのサ終から半年後
judau
1
210
"Meet Swift Testing" & "Go further with Swift Testing" in 5 min
judau
0
320
Aquaの波紋によせて
judau
0
140
iOSは自動作曲の夢を見るか
judau
0
1.5k
What's New in App Clips after WWDC23
judau
1
150
「そういえば何でテストエンジニアやめたん?」〜5年前の振り返りなの
judau
0
200
App Clips はどこから来たのか&何者か&どこへ行くのか
judau
1
1.1k
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Fireside Chat
paigeccino
39
3.6k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
840
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Building Adaptive Systems
keathley
43
2.7k
Into the Great Unknown - MozCon
thekraken
40
2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Scaling GitHub
holman
463
140k
Transcript
ջ͔͖͠CaboChaͷϨγϐΛ͏Ұ Pr es ented by log5
About “log 5 ” ͨͿΜιϑτΣΞΤϯδχΞ ొஃͱ͔ࠪಡͱ͔࡞ۂ͠·͢ ը૾X(ID: log 5 )ͷΞΠίϯ
͓ॻ͖ CaboChaͱʁ Πϯετʔϧͯ͠ΈΑ͏ ͬͯΈΑ͏ ׆༻ͯ͠ΈΑ͏
CaboChaͱʁ ຊޠΓड͚ղੳث จষͷΓड͚ߏΛੳͯ͘͠ΕΔ Ͳͷ୯ޠ͕Ͳͷ୯ޠʹ͍ͬͯΔ͔͕Θ͔Δ
“ଠՖࢠ͕ಡΜͰ͍ΔຊΛ ࣍ʹͨ͠”
None
ͱ͜ΖͰɺΈͳ͞Μ ৗͰ͜ΜͳจষΛॻ͍ͯ͠·ͬͨ͜ͱɺͳ͍Ͱ͔͢ʁ
“ࢲܑͱΛܴ͑ʹۭߓʹ͔ͬͨɻ”
“ࢲܑͱΛܴ͑ʹۭߓʹ͔ͬͨɻ” ʮࢲܑͱʯΛܴ͑ʹۭߓʹ͔ͬͨʁ ࢲʮܑͱΛʯܴ͑ʹۭߓʹ͔ͬͨʁ
None
CaboChaͱʁ ຊޠΓड͚ղੳث จষͷΓड͚ߏΛੳͯ͘͠ΕΔ Ͳͷ୯ޠ͕Ͳͷ୯ޠʹ͍ͬͯΔ͔͕Θ͔Δ ޡղ͕ੜ·ΕΔ༨Λݕग़Ͱ͖Δ…͔͠Εͳ͍ Cabochaࣗମʹᐆດੑݕग़ͷػೳͳ͍͕ɺͦͷ͕͔ΓʹͳΔ
CaboChaͱʁ Cabochaࣗମʹᐆດੑݕग़ͷػೳͳ͍͕ɺͦͷ͕͔ΓʹͳΔ ࠷ऴతʹ͜͏͍͏άϥϑΛ࡞ΕΔͱ͍͏͕͏͍͢͝
Πϯετʔϧͯ͠ΈΑ͏ ެࣜαΠτΛಡ͏(ಛʹWindowsڥͷํ) https: // taku910.github.io/cabocha/ ࣄલʹ CRF ++ ͱ MeCab
ΛΠϯετʔϧ͢Δ Chasen Ͱಈ࡞͠·ͤΜ macOSͳΒ brew install cabocha ͰҰൃ
※͔͜͜ΒઌmacOSΛϕʔεʹઆ໌͕ਐΈ·͕͢ɺ ଞͷOSͰ֓Ͷಉ͡Α͏ʹૢ࡞Ͱ͖Δͱࢥ͍·͢
ͬͯΈΑ͏ ࢼ͠ʹ͏ͳΒλʔϛφϧ͔Βར༻Մೳ λʔϛφϧͰ cabocha ͱೖྗ͢Δͱىಈ จষೖྗػঢ়ଶʹͳΔͷͰɺ͖ͳจষΛೖྗ͢Δ
None
“ࢲܑͱΛܴ͑ʹۭߓʹ͔ͬͨɻ”
None
None
None
“͕ւ֎ग़ுͰखʹೖΕͨ࣌ܭΛɺ ͕ݟͨΛؾʹೖΓɺࢲʹৡͬͯ͘Εͨɻ”
None
None
None
“͕ҎલۙॴͷΧϑΣͰΓ߹ͬͨళओ͕։࠵͍ͯͨ͠Ξʔτ లͰߪೖͨ͠ֆը͕ɺࢲ͕ඒज़ؗͰݟͨ͜ͱ͕͋ΔըՈͷ࡞ ͩͬͨͱޙ͔ΒΓɺ࡞ूΛਤॻؗͰआΓ͖ͯͯ༑ਓʹקΊ Α͏ͱҰߟ͑ͨͷͷɺ͢Ͱʹ༑ਓ͕ಉ͡ըՈʹ͍ͭͯݚڀ ͍ͯͨ͜͠ͱΛࠓͬͨɻ”
None
None
None
ͬͯΈΑ͏ ࢼ͠ʹ͏ͳΒλʔϛφϧ͔Βར༻Մೳ λʔϛφϧͰ cabocha ͱೖྗ͢Δͱىಈ จষೖྗػঢ়ଶʹͳΔͷͰɺ͖ͳจষΛೖྗ͢Δ Ҿͱͯ͠ -f1 Λࢦఆ͢Δͱɺৄࡉใ͕ಘΒΕΔ
None
None
None
None
None
None
͜ͷग़ྗΛͦͷ··ղ͍͍ͯ͠Ͱ͕͢…໘ ϓϩάϥϛϯάݴޠͰαοͱ͍͍ͨ Python༻ͷWrapper: cabocha-python ΛͬͯΈΑ͏ ଞͷݴޠΑΓಋೖɾֶशίετͦ͏ʢθϩͰͳ͍ʣ ωοτ্ʹؔ࿈هࣄଟ͍ҹ
“cabocha-python” Python Ͱ CaboCha ͕ར༻Ͱ͖Δ ίϚϯυͷग़ྗΛղ͢ΔͨΊͷॲཧΛࣗͰॻ͔ͣʹࡁΉ Γ݁ͼͷؔΛൺֱతָʹऔΓग़ͤΔ ॳ৺ऀτϥοϓ͋Γ
“cabocha-python” ΛΠϯετʔϧ ॳ৺ऀτϥοϓ͋Γ جຊతʹ pip install ͰΠϯετʔϧ͢Δ͜ͱʹͳΔ͕…
None
None
“cabocha-python” ΛΠϯετʔϧ ॳ৺ऀτϥοϓ͋Γ جຊతʹ pip install ͰΠϯετʔϧ͢Δ͜ͱʹͳΔ͕… 2024 ݱࡏɺͨΒʑ͍͠Τϥʔ͕ग़Δ
“cabocha-python” ΛΠϯετʔϧ ॳ৺ऀτϥοϓ͋Γ ֤छPathใΛڭ͑ͯ͋͛Δͱղܾ͢Δ…߹͕͋Δ
“cabocha-python” ΛͬͯΈΑ͏ Πϯετʔϧ͕ऴΘΕɺ͋ͱ͏͚ͩʂ ͳΜͰ͕͢…
“cabocha-python” ΛͬͯΈΑ͏ Πϯετʔϧ͕ऴΘΕɺ͋ͱ͏͚ͩʂ macOSͷ߹ɺApple Silicon Λࡌ͍ͯ͠Δͱߋʹ᠘͕
“cabocha-python” ΛͬͯΈΑ͏ Πϯετʔϧ͕ऴΘΕɺ͋ͱ͏͚ͩʂ macOSͷ߹ɺApple Silicon Λࡌ͍ͯ͠Δͱߋʹ᠘͕ ↓ͷίʔυ͕࣮ߦ࣌ΤϥʔʹͳΓ·͢
࣮ߦ࣌Τϥʔ (Symbol not found) ੩తղੳͰΤϥʔ͕ग़ͳ͍ͷͰɺૺ۰͢Δͱμϝʔδ͕େ͖͍… ଟɺΠϯετʔϧ࣌ʹམͱ͖ͯͨ͠ϑΝΠϧ͕ Apple Silicon ͱ͕ѱ͍ͷ͕ݪҼ
࣮ߦ࣌Τϥʔ (Symbol not found) ੩తղੳͰΤϥʔ͕ग़ͳ͍ͷͰɺૺ۰͢Δͱμϝʔδ͕େ͖͍… ଟɺΠϯετʔϧ࣌ʹམͱ͖ͯͨ͠ϑΝΠϧ͕ Apple Silicon ͱ͕ѱ͍ͷ͕ݪҼ ιʔείʔυ͔ΒϏϧυ͢Εղܾ͢Δ…߹͕͋Γ·͢
↓ͷΑ͏ͳखॱͰ࠶Πϯετʔϧ
࠷ॳʹ cabocha Λ࠶Πϯετʔϧ ͨͩ͠ɺιʔείʔυ͔ΒϏϧυ͢Δ ͦͷͨΊ -s (·ͨ -- build-from-source) Λࢦఆ͢Δ
࠷ॳʹ cabocha Λ࠶Πϯετʔϧ ͳͲͱ͍͏ͪΐͬͱා͍͜ͱݴΘΕ·͕͢ɺແࢹɻʢଞʹํ๏ͳ͍Μ…ʣ Warning: building from source is not
supported! You're on your own. Failures are expected so don't create any issues, please!
࠷ॳʹ cabocha Λ࠶Πϯετʔϧ ࣍ʹ cabocha-python Λ࠶Πϯετʔϧ Apple Silicon Mac ʹద߹͢ΔͨΊ
ARCHFLAGS='-arch arm64’ ιʔείʔυ͔ΒόΠφϦΛίϯύΠϧ͢ΔͷͰ -- compile Λ͚ͭΔ
“cabocha-python” ΛͬͯΈΑ͏ ৭ʑ͚͋ͬͨͲɺΠϯετʔϧ͕ऴΘΕɺ͋ͱ͏͚ͩʂ import CaboCha
“cabocha-python” ΛͬͯΈΑ͏ ParserΛ࡞Γɺղ͢Δ import CaboCha cabocha_parser = CaboCha.Parser() # ղੳثΛ࡞Δ
results = cabocha_parser.parse("͜͜ʹ͖ͳจষ") # ղੳ͢Δ
“cabocha-python” ΛͬͯΈΑ͏ ParserΛ࡞Γɺղ͢Δ ͨͩ͠ɺੳ݁Ռ(͜͜Ͱ results)গ͠ѻ͍ͮΒ͍ import CaboCha cabocha_parser = CaboCha.Parser()
# ղੳثΛ࡞Δ results = cabocha_parser.parse("͜͜ʹ͖ͳจষ") # ղੳ͢Δ
“cabocha-python” ΛͬͯΈΑ͏ ParserΛ࡞Γɺղ͢Δ ͨͩ͠ɺੳ݁Ռ(͜͜Ͱ results)গ͠ѻ͍ͮΒ͍ [ৄ͍͠ਓ͚] Swig ObjectͳͷͰIDEͷิ͕͖͔ͳ͍ import CaboCha
cabocha_parser = CaboCha.Parser() # ղੳثΛ࡞Δ results = cabocha_parser.parse("͜͜ʹ͖ͳจষ") # ղੳ͢Δ
“cabocha-python” ΛͬͯΈΑ͏ [ৄ͍͠ਓ͚] Swig ObjectͳͷͰIDEͷิ͕͖͔ͳ͍ C++ଆͷϔομΛݟʹߦ͔ͳ͍ͱԿ͕͑Δͷ͔Θ͔Βͳ͍
“cabocha-python” ΛͬͯΈΑ͏ ParserΛ࡞Γɺղ͢Δ ͨͩ͠ɺੳ݁Ռ(͜͜Ͱ results)গ͠ѻ͍ͮΒ͍ ʮ͜ͷΑ͏ʹॻ͘ͷͩʯͱ͍͏આ໌͕ͦͧϜζ͍ import CaboCha cabocha_parser =
CaboCha.Parser() # ղੳثΛ࡞Δ results = cabocha_parser.parse("͜͜ʹ͖ͳจষ") # ղੳ͢Δ ԿΛॻ͚͍͍ʁʁʁʁʁʁʁʁʁʁʁʁ
“cabocha-python” ΛͬͯΈΑ͏ ParserΛ࡞Γɺղ͢Δ ͨͩ͠ɺੳ݁Ռ(͜͜Ͱ results)গ͠ѻ͍ͮΒ͍ ʮ͜ͷΑ͏ʹॻ͘ͷͩʯͱ͍͏આ໌͕ͦͧϜζ͍ ͜ͷྲྀΕͰ͍͖ͳΓC++Ӡʑͷઆ໌Λԡ͚͠Δͷແཧ͕͋Ζ͏͔ͱ
શ෦טΈࡅ͍ͯઆ໌͢Δ࣌ؒͳ͍ͷͰ…
ௐཧࡁΈͷͷΛ༻ҙ͠·ͨ͠ https: // github.com/log5r/sample-mecabocha
ௐཧࡁΈͷͷΛ༻ҙ͠·ͨ͠ https: // github.com/log5r/sample-mecabocha main.pyΛ࣮ߦͯ͠ɺจষΛ͍ΕΔ͚ͩ άϥϑ͕ ./out/graph/ ʹग़དྷ·͢
None
None
ௐཧࡁΈͷͷΛ༻ҙ͠·ͨ͠ https: // github.com/log5r/sample-mecabocha ΑΖ͚͠Εࢼͯ͠Έ͍ͯͩ͘͞
ௐཧࡁΈͷͷΛ༻ҙ͠·ͨ͠ https: // github.com/log5r/sample-mecabocha ΑΖ͚͠Εࢼͯ͠Έ͍ͯͩ͘͞ ϒϨʔΫϙΠϯτషͬͯ؍͢ΔΑ͠
·ͩ·ͩਚ͖ͳ͍CaboChaͷັྗ ຊհͰ͖ͳ͔ͬͨͷ ղੳϨΠϠͷ ݻ༗දݱղੳ σʔλʹΑΔֶश ͳͲͳͲ
·ͩ·ͩਚ͖ͳ͍cabochaͷັྗ ຊհͰ͖ͳ͔ͬͨͷ ղੳϨΠϠͷ ݻ༗දݱղੳ σʔλʹΑΔֶश ͳͲͳͲ ͥͻެࣜαΠτͰʂ https: // taku910.github.io/cabocha/
৯ޙͷײ(ؾʹͳΔ)
CaboChaͷཪଆ Support Vector Machines ʹجͮ͘ຊޠΓड͚ղੳث Support Vector Machines ػցֶशΞϧΰϦζϜͷҰͭ ຊޠͷจʹ͓͚Δ୯ޠಉ࢜ͷΓड͚ؔΛྨɾ༧ଌ
CaboChaͷཪଆ ຊޠͷจʹ͓͚Δ୯ޠಉ࢜ͷΓड͚ؔΛྨɾ༧ଌ ژେֶςΩετίʔύε 4 . 0 Λ༻ֶ͍ͯश
CaboChaͷཪଆ ژେֶςΩετίʔύε 4 . 0 ຖ৽ฉͷهࣄʹ֤छݴޠใΛਓखͰ༩ 1995 1 ݄
1 ͔Β 17 ·Ͱͷશهࣄɺ 2 ສจɺ 1 ݄͔Β 12 ݄ ·Ͱͷࣾઆهࣄɺ 2 ສจɺܭ 4 ສจʹରͯ͠ɺܗଶૉɾߏจ ใΛ༩
CaboChaͷཪଆ ຊޠͷจʹ͓͚Δ୯ޠಉ࢜ͷΓड͚ؔΛྨɾ༧ଌ ژେֶςΩετίʔύε 4 . 0 Λ༻ֶ͍ͯश ιʔε: “ 1995
1 ݄ 1 ͔Β 17 ·Ͱͷશهࣄ”
ؾʹͳΔ͜ͱ ޠኮྗ େৎʁ
ؾʹͳΔ͜ͱ ޠኮྗ ͱͱݹ͍πʔϧͳͷͰɺ৽ޠͷղੳ͕ෆ҆ఆͳ͜ͱ…?
“ྩ̒ʹೣϛʔϜ͕όζͬͨ͜ͱ͕͋Δɻ”
None
None
None
ؾʹͳΔ͜ͱ ޠኮྗ ͦͦݹ͍πʔϧͳͷͰɺ৽ޠͷղੳ͕ෆ҆ఆͳ͜ͱ…? ͦ͏͍͑ɺCaboChaMeCabʹґଘ
MeCabͷޠኮྗ దͳࣙॻΛબͿͱޠኮྗ্͕͕Δ༷ JumanDic IPADic NAIST-jdic UniDic Neologd
MeCabͷޠኮྗ దͳࣙॻΛબͿͱޠኮྗ্͕͕Δ༷ JumanDic IPADic NAIST-jdic UniDic ←།Ұϝϯςφϯε͞ΕͯΔͬΆ͍ (2023൛͕͋Δ) Neologd
ؾʹͳΔ͜ͱ MeCabͷࣙॻΛڧԽ͢ΕɺCaboChaͷੳਫ਼্͕Δʁ Θ͔Βͳ͍ CaboChaࣗମ܇࿅ࡁΈͷϞσϧʹґଘ͢Δͣ ͨͱ͑ɺMeCabͰ৽͍ࣙ͠ॻΛ༻ͯ͠ɺCaboChaଆͰܴ߹͢Δ Α͏ʹ࠶܇࿅͢ΔͳΒΞϦ…? ৄ͍͠ํͷҙݟΛืूதͰ͢
·ͱΊ CaboChaʢ 2024 Ͱʣ͍͍ͧ ҰΠϯετʔϧ͢Εා͘ͳ͍ Γड͚ղੳ࣮༻తָ͍ͩ͠͠
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ ຊհͰ͖ͳ͔ͬͨͷ ղੳϨΠϠͷ ݻ༗දݱղੳ σʔλʹΑΔֶश ͳͲͳͲ ͥͻެࣜαΠτͰʂ https: // taku910.github.io/cabocha/