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
macのunicode正規化.pdf
Search
Daiki Ikeshima
March 20, 2023
Programming
40k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
macのunicode正規化.pdf
Daiki Ikeshima
March 20, 2023
More Decks by Daiki Ikeshima
See All by Daiki Ikeshima
MLOpsの「あるある」課題の解決と、そのためのライブラリgokart
mski_iksm
1
1.7k
gokartのキャッシュ競合防止のロック機能
mski_iksm
0
2.6k
実臨床・Webサービス領域での機械学習研究 開発の標準化
mski_iksm
8
27k
高速化・並列化・標準化で スケールするML予測システムの開発
mski_iksm
5
3.3k
pythonでメタプログラミング(メタクラス編)
mski_iksm
1
560
パイプラインツールgokartのタスク競合を解消した話
mski_iksm
0
270
Other Decks in Programming
See All in Programming
ソフトウェア設計に溶けるインフラ ― AWS CDK のインフラ認識論
konokenj
2
520
言語を使う側から、作る側へ。 自作 Lisp で得た新たな気づき。
andpad
0
130
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
190
Claude Opus 4.6以後の受託開発エンジニアの変化(Claude Code開発ノウハウ大公開スペシャルbyクラスメソッド)
iidatakuma
1
770
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
140
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
520
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.5k
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
850
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
130
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
360
AIを活用したE2Eテスト実装効率化のあゆみ / ebisu-mobile-14-kotetu
kotetuco
0
170
ローカルLLMでどこまでコードが書けるか -縮小版 / How much code can be written on a local LLM Shortened
kishida
2
190
Featured
See All Featured
Chasing Engaging Ingredients in Design
codingconduct
0
240
The Pragmatic Product Professional
lauravandoore
37
7.4k
Done Done
chrislema
186
16k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
240
Building an army of robots
kneath
306
46k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
340
Optimizing for Happiness
mojombo
378
71k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
GraphQLとの向き合い方2022年版
quramy
50
15k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
180
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
Transcript
"*νʔϜౢେथ NBDͷ6OJDPEFਖ਼نԽ UFDIUBML
ϦϯΫ͕ݟ͔ͭΒͳ͍͕ൃੜ HJUMBC্Ͱཧ͍ͯ͠ΔυΩϡϝϯτதͷϦϯΫ͕ݟ͔ͭΒͳ͍ "*νʔϜͰHJUMBC্ͰυΩϡϝϯτͷཧΛߦ͍ͬͯΔ XJLJͱൺֱͯ͠ߋ৽࣌ͷϐΞϨϏϡʔ͕Γ͔ͬͨ͢Γɺ$*ʹΑΔࣗಈνΣοΫ͕Γ͔ͬͨ͢ ΓͳͲͷϝϦοτ͕͋Δ $*ͰͷࣗಈϦϯΫνΣοΫͰϑΝΠϧ͕ݟ͔ͭΒͳ͍Τϥʔ͕ൃੜ ϑΝΠϧ͋ΔͣͳͷʹͳΜͰʁʁʁ
ݪҼຊޠϑΝΠϧͷ6OJDPEFਖ਼نԽํ๏ͷϒϨ ຊޠϑΝΠϧ໊͕ϑΝΠϧ࣮ମͱϦϯΫͰҰக͍ͯ͠ͳ͔ͬͨͷͰ ݟ͔ͭΒͳ͔ͬͨ ϑΝΠϧ࣮ମɿ 99σʔλੳυΩϡϝϯτ ϦϯΫɿ 99σʔλੳυΩϡϝϯτ aVD aVDaV ʮσʯͱ͍͏ͭͷ߹ࡁΈจࣈ
جఈจࣈʮςʯʴ݁߹จࣈʮʃʯͷ݁߹จࣈྻ ҧ͏จࣈྻʹͳ͍ͬͯͨͷͰ ϦϯΫͷϑΝΠϧ͕ݟ͔ͭΒͳ͍
߹ࡁΈจࣈWT݁߹จࣈྻ Ͳͬͪ߹ͱݺͿͱ͍͜͠ͷͰɺ ຊൃදͰʮ߹ࡁΈจࣈʯͱʮ݁߹จࣈྻʯͰݺশ͢Δ ߹ࡁΈจࣈ ໊લ͕͍͜͠ͷͰࠞಉʹҙ͕ඞཁɻจࣈͳͷ͔จࣈྻͳͷ͔Ͱ໌֬ʹ۠ผͰ͖Δɻ ݁߹จࣈྻʢجఈจࣈʴ݁߹จࣈʣ デ デ aVD
aVDaV ͜ΕΛ߹จࣈͱ͔߹ࣈʢϦΨνϟʣ ͱ͔ݺͿ͜ͱ͋ΓɺฆΒΘ͍͠ 6$4ʢ6OJDPEFޓͷࠃࡍඪ४ن֨ʣ Ͱ߹ྻͱݺͿ 6OJDPEFͷ༻ޠͰɺਖ਼ࣜʹૹΓԾ໊ ͳ͠Ͱ߹ࡁจࣈ
ͳΜͰจࣈ͕ͣΕͨʁ ʁʁʁʁʁ 'JOEFSͰϑΝΠϧΛ࡞ ϑΝΠϧ໊Λ߹ࡁΈจࣈʮσʢaVDʣʯͰ࡞ ϑΝΠϧ໊ΛυΩϡϝϯτʹͯ͠ίϐϖͯ͠ϦϯΫΛுΔ ߹ࡁΈจࣈͷ··ίϐϖ͞Ε͍ͯΔͷͰʁ
ϑΝΠϧͱυΩϡϝϯτΛHJUʹίϛοτ ϑΝΠϧυΩϡϝϯτϦϯΫ߹ࡁΈจࣈͷͣʁʁ ࡞ ϦϯΫ HJU DPNNJU
ͳΜͰจࣈ͕ͣΕͨʁ NBDͷ'JOEFSͱHJUͷจࣈྻͷऔΓѻ͍͕ҟͳΔͨΊʹζϨ͕ى͖ͨ 'JOEFSͰϑΝΠϧΛ࡞ ϑΝΠϧ໊Λ߹ࡁΈจࣈʮσʢaVDʣʯͰ࡞ ˠ'JOEFS͕߹ࡁΈจࣈΛղͯ݁͠߹จࣈྻʮσʢaVDaVʣʯʹม ϑΝΠϧ໊ΛυΩϡϝϯτʹͯ͠ίϐϖͯ͠ϦϯΫΛுΔ ߹ࡁΈจࣈͷ··ίϐϖ͞Ε͍ͯΔͷͰʁ
ˠ'JOEFSͷ࡞ͬͨ݁߹จࣈྻͷϑΝΠϧ໊Λίϐϖ͍ͯͨ͠ ϑΝΠϧͱυΩϡϝϯτΛHJUʹίϛοτ ϑΝΠϧυΩϡϝϯτϦϯΫ߹ࡁΈจࣈͷͣʁʁ ˠυΩϡϝϯτϦϯΫ݁߹จࣈྻʮσʢaVDaVʣʯͷ·· ϑΝΠϧ࣮ମHJU͕߹ࡁΈจࣈʮσʢaVDʣʯʹ࠶ม͍ͯ͠Δ ࡞ ϦϯΫ HJU DPNNJU
6OJDPEFਖ਼نԽ 6OJDPEFਖ਼نԽɺݟ͕ͨҰॹͳͷʹίʔυϙΠϯτ͕ҧ͏߹ʹ ੜ͡ΔࠞཚΛܰݮͤ͞Δͱظ͞ΕΔ /'% /PSNBMJ[BUJPO'PSN$BOPOJDBM%FDPNQPTJUJPO ࢹ֮తɾҙຯతʹՁͳจࣈྻʹղ͠ɺ݁߹จࣈྻʹ͢Δ /'$ /PSNBMJ[BUJPO'PSN$BOPOJDBM$PNQPTJUJPO
/'%্ͨ͠Ͱɺࢹ֮తɾҙຯతʹՁͳจࣈྻΛ߹͠ɺ߹ࡁΈจࣈʹ͢Δ σˠς ʃ σˠς ʃˠσ ߹ࡁΈจࣈͱ݁߹จࣈྻ͕͍ࠞͬͯ͡Δͱ͍͜͠ͷͰͲ͔ͬͪʹਖ਼نԽ͢Δ͜ͱ ˞ଞʹಉҰจࣈछͷఆ͕؇͍/',%ɺ/',$͋Δ
'JOEFS͕ਖ਼نԽ͍ͯ͠ΔʁNBD04ʁ NBD04Ͱɺ'JOEFS͕߹ࡁΈจࣈΛ݁߹จࣈྻʹมͯ͠ ͓ΓɺϑΝΠϧγεςϜม͍ͯ͠ͳ͍ NBD04Ͱݕূ 'JOEFS ʮσʢaVDʣʯͱ͍͏ϑΝΠϧΛ࡞͢ΔͱʮσʢaVDaVʣʯͱ͍͏ϑΝΠϧ͕ग़དྷ ্͕͍ͬͯΔɻ ˠ/'%Ͱม͞Ε͍ͯΔ
UFSNJOBM UPVDIίϚϯυͰʮσʢaVDʣʯͱ͍͏ϑΝΠϧΛ࡞͢Δͱɺͦͷ··ͷʮσʢaVDʣʯ ϑΝΠϧ͕Ͱ͖Δɻ ˠม͞Ε͍ͯͳ͍
"1'4มΛ͠ͳ͍ "1'4ͰϑΝΠϧγεςϜϨΠϠʔͰ6OJDPEFਖ਼نԽΛ͍ͯ͠ͳ͍ ࠒ͔ΒNBDΛ࢝Ίଟ͘ͷ"QQMFͰ࠾༻͞Ε͍ͯΔ"1'4 "QQMF'JMF4ZTUFN ɺϑΝΠϧ γεςϜϨΠϠʔͰ6OJDPEFਖ਼نԽΛ͠ͳ͍ ͦΕ·ͰNBDͰ࠾༻͞Ε͍ͯͨ)'4 Ͱ/'%Ͱਖ਼نԽ͞Ε͍ͯͨ )'4 ˠ"1'4ͷҠߦظʹࠞཚ͕͋ͬͨΒ͘͠ɺਖ਼نԽͷҧ͏ϑΝΠϧΛࠞࡏͤ͞Δ͜ͱ͕Ͱ͖ͨ
ˡҠߦظͷϑΝΠϧ ݟ͕ͨಉ໊ͷϑΝΠϧ͕ෳ͋ΓɺΧΦε ࢀߟIUUQTFDMFDUJDMJHIUDPBQGTJTDVSSFOUMZVOVTBCMFXJUINPTU OPOFOHMJTIMBOHVBHFT
"1'46OJDPEFਖ਼نԽΛ͠ͳ͍ͷͳΒɺಉ໊ʹݟ͑ΔϑΝΠϧΛ࡞ΕͪΌ͏Μ͡Όʁ ϥϯλΠϜਖ਼نԽʹΑΓɺಉ໊ʹݟ͑ΔϑΝΠϧ࡞Εͳ͍Α͏ʹͳ͍ͬͯΔ ݱࡏͷNBD04Ͱ࡞Εͳ͍Α͏ʹͳ͍ͬͯΔ NBD04Ҏ߱ͰɺಡΈࠐΈ࣌ʹࢦఆ͞Εͨਖ਼نԽख๏ͷϑΝΠϧ͕ͳ͍߹ɺଞख๏Λࢼͯ͠ ϑΝΠϧΛ୳͢ɺϥϯλΠϜਖ਼نԽ͕ߦΘΕ͍ͯΔɻ ʮσʢaVDʣʯͱ͍͏ϑΝΠϧ͕ͳ͍߹ɺʮσʢaVDaVʣʯ୳ͯ͘͠ΕΔɻ ॻ͖ࠐΈ࣌ʢϑΝΠϧ࡞࣌ʣʹਖ਼نԽ͠ͳ͍ͷͰͲͪΒͷܗࣜͷϑΝΠϧ࡞ΕΔ͕ɺ࡞લʹط ଘϑΝΠϧ͕ͳ͍͔ΛνΣοΫ͢Δɻ͜ͷͱ͖ʹϥϯλΠϜਖ਼نԽΛͬͯطଘϑΝΠϧΛ୳͢ͷͰɺ ผख๏Ͱਖ਼نԽ͞ΕͨϑΝΠϧ໊͕͋Δ߹ɺϑΝΠϧͭ͘ΒΕͳ͍ɻˠಉ໊ʹݟ͑ΔϑΝΠϧ࡞
ΒΕͳ͍ɻ
ΞϓϦέʔγϣϯ͝ͱͷਖ਼نԽରԠ 'JOEFS /'%ͳͷͰίʔυϙΠϯτͷҧ͏ϑΝΠϧ࡞ෆೳ NLEJS UPVDIίϚϯυ ਖ਼نԽͳ͠ͳͷͰҧ͏ίʔυϙΠϯτͷσΟϨΫτϦϑΝΠϧ࡞Մೳɻͨͩ͠࡞લʹϥϯλ ΠϜਖ਼نԽͰϑΝΠϧͷଘࡏ֬ೝ͕͋ΔͷͰɺಉ͡ʹݟ͑ΔσΟϨΫτϦΛॏෳͯ͠࡞͢Δ͜ͱ Ͱ͖ͳ͍ɻ
NW DQίϚϯυ ࢀরϑΝΠϧΛϥϯλΠϜਖ਼نԽͰ୳ࡧ͢ΔɻͳͷͰ࣮ମϑΝΠϧ͕ͲͪΒͷਖ਼نԽͰ͋ͬͯࢀর Մೳɻ ҰํҠಈɾίϐʔઌϑΝΠϧ໊ਖ਼نԽ͞Εͳ͍ɻ͔͠͠Ҡಈɾίϐʔઌʹ͢ͰʹϑΝΠϧ͕͋Δ͔ ͷνΣοΫϥϯλΠϜਖ਼نԽͰߦΘΕɺଘࡏ͍ͯ͠Εૢ࡞Ωϟϯηϧ͞ΕΔɻ
ΞϓϦέʔγϣϯ͝ͱͷਖ਼نԽରԠ MTίϚϯυ NW DQͱಉ༷ͰϥϯλΠϜਖ਼نԽͰϑΝΠϧΛࢀর͢ΔͷͰɺ࣮ମϑΝΠϧ͕ͲͪΒͷਖ਼نԽͰ͋ͬ ͯࢀরՄೳ ྆ํͷਖ਼نԽΛࢦఆ͢Δͱ࣮ମ̍ϑΝΠϧͰͭ͋ΔΈ͍ͨʹݟ͑ΔͷͰࠞཚ͢Δ σʢaVDʣ σʢaVDaVʣ
HJU/'$Ͱਖ਼نԽ HJU/'$Ͱ6OJDPEFਖ਼نԽ͍ͯ͠Δ HJU/'$Ͱ ʮσʯˠʮςʯ ʮʃʯˠʮσʯʹਖ਼نԽ͍ͯ͠Δ ͜Ε/'$ͳ-JOVYͳXJOEPXTͱͷؒͰϑΝΠϧͷΓऔΓΛΓ͘͢͢ΔͨΊ͔ͱߟ͑ΒΕΔ DPSFQSFDPNQPTFVOJDPEFͷઃఆΛGBMTFʢHJUdͰσϑΥϧτUSVFʣʹ͓ͯ͘͠ͱਖ਼نԽΛ ແޮԽͰ͖Δ
74$PEFͷਖ਼نԽରԠʁ 74$PEFࣗਖ਼نԽ͠ͳ͍͕ɺϓϥάΠϯͰਖ਼نԽՄೳ 74$PEFࣗମਖ਼نԽ͠ͳ͍ͷͰɺʮσʢaVDʣʯʮσʢaVDaVʣʯॻ͖͚͕Մೳ 6OJDPEF/PSNBMJ[FSͱ͍͏ϓϥάΠϯΛ͏͜ͱͰਖ਼نԽ͢Δ͜ͱՄೳ
QZUIPO QZUIPO/',$Ͱਖ਼نԽ͍ͯ͠Δ QZUIPOͰࣈ۟ղੳ࣌ʹɺ/',$ʢಉҰจࣈఆ͕ΏΔ͘ɺͱᶃͱ͔ಉҰͱΈͳ͢ख๏ʣ Ͱਖ਼نԽ͞Ε͍ͯΔ ͦͷͨΊɺʢΒͳ͍ͱࢥ͏͕ʣม໊ΛʮσʢaVDʣʯͰʮσʢaVDaVʣʯ ॻ͖͚Δ͜ͱͰ͖ͳ͍ ·ͨɺ/'%Ͱ͋Δ'JOEFSͰ࡞ͨ͠ϑΝΠϧʮσʢaVDaVʣQZʯΛJNQPSU͢Δ͜ ͱͰ͖ͳ͍ɻ
ରࡦ HJUͰDPNNJUͨ͠ϑΝΠϧ໊ͱผϑΝΠϧʹهࡌ͍ͯ͠ΔϦϯΫ໊ͷਖ਼نԽख๏ ͕ͣΕΔͱɺϦϯΫ͕ḷΕͳ͘ͳͬͯࠔΔ ରࡦຊޠจࣈ߹ͷ͍͜͠ݴޠΛΘͳ͍ ରࡦ$*ͰυΩϡϝϯτதͷจࣈྻΛਖ਼نԽ͢Δ ରࡦ74$PEFͷϓϥάΠϯͰखݩͰਖ਼نԽ͓ͯ͘͠