[Week 2-3] ๐Ÿ“Š๋”ฅ ๋Ÿฌ๋‹ ํ•™์Šต ๋ฐฉ๋ฒ•

Jadeยท2021๋…„ 1์›” 27์ผ
0

๋ถ€์ŠคํŠธ์บ ํ”„ AI Tech

๋ชฉ๋ก ๋ณด๊ธฐ
8/54

2์ฃผ์ฐจ ํ™”์š”์ผ

  • ๋”ฅ ๋Ÿฌ๋‹ ํ•™์Šต ๋ฐฉ๋ฒ•
  • pandas ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

[๋”ฅ ๋Ÿฌ๋‹ ํ•™์Šต ๋ฐฉ๋ฒ•]

  • ์„ ํ˜• ๋ชจ๋ธ ๋‹ค์‹œ ๋ณด๊ธฐ
    ์„ ํ˜• ๋ชจ๋ธ์˜ output)

์ด ์„ ํ˜• ๋ชจ๋ธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ทธ๋ฆผ์œผ๋กœ ๋ชจ๋ธ๋ง ๊ฐ€๋Šฅํ•˜๋‹ค.

  • ๋น„์„ ํ˜• ๋ชจ๋ธ ์‹ ๊ฒฝ๋ง๊ณผ softmax
    ์„ ํ˜• ๋ชจ๋ธ์€ ํšŒ๊ท€ ๋ถ„์„ ๋“ฑ์˜ ๊ฒฝ์šฐ์— ์‚ฌ์šฉํ•œ๋‹ค. ๋ถ„๋ฅ˜ ๋“ฑ์˜ ๋น„์„ ํ˜• ๋ฌธ์ œ๋ฅผ ํ’€๊ธฐ ์œ„ํ•ด์„œ๋Š” ์„ ํ˜• ๋ชจ๋ธ์„ ์กฐ๊ธˆ ๋ณ€ํ˜•ํ•ด์•ผ ํ•œ๋‹ค.
    ์„ ํ˜• ๋ชจ๋ธ์˜ ์ถœ๋ ฅ O์— ์†Œํ”„ํŠธ๋งฅ์Šค ํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•˜๋ฉด ์–ด๋–ค ์ž…๋ ฅ์ด ์—ฌ๋Ÿฌ ๋ฒ”์ฃผ ์ค‘ ํ•˜๋‚˜์— ์†ํ•  ํ™•๋ฅ  ๋ฒกํ„ฐ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค. (์›์†Œ์˜ ์ดํ•ฉ์ด 1)

์ฝ”๋“œ๋กœ ๊ตฌํ˜„ํ•  ๋•Œ๋Š” ์˜ค๋ฒ„ํ”Œ๋กœ์šฐ ๋ฐฉ์ง€๋ฅผ ์œ„ํ•ด์„œ ์„ ํ˜• ๋ชจ๋ธ์˜ ์ถœ๋ ฅ o์˜ ๋ชจ๋“  ์›์†Œ๋“ค์— ์›์†Œ ์ค‘ ์ตœ๋Œ€๊ฐ’์„ ๋นผ ์ค€๋‹ค. softmax๋Š” ์ง€์ˆ˜ํ•จ์ˆ˜๋ผ์„œ ํŒŒ์ด์ฌ๋„ ๊ฐ๋‹น ๋ชป ํ•  ๋งŒํผ ๊ฐ’์ด ์ปค์งˆ ์ˆ˜๊ฐ€ ์žˆ๋‹ค...!

์ถœ๋ ฅ ๋ฒกํ„ฐ out = [1, 2, 48964354] ๋ผ๊ณ  ํ•  ๋•Œ ์ด๋“ค์„ ๊ทธ๋Œ€๋กœ softmax์— ๋„ฃ์„ ์ˆ˜๋„ ์žˆ์ง€๋งŒ, ํ•จ์ˆ˜๊ฐ’์ด ๋งค์šฐ ์ปค์งˆ ๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ ์ด ๋ฒกํ„ฐ์˜ ์›์†Œ๋“ค์— ์ตœ๋Œ€๊ฐ’์ธ 48964354๋ฅผ ๊ณจ๊ณ ๋ฃจ ๋นผ ์ค€๋‹ค. out = [-48964353, -48964352, 0] ์Œ์ˆ˜๊ฐ€ ๋˜์—ˆ์ง€๋งŒ softmax์— ๋„ฃ์œผ๋ฉด ์ง€์ˆ˜ํ•จ์ˆ˜๋ผ์„œ ์–‘์ˆ˜๊ฐ€ ๋‚˜์˜ฌ ๊ฒƒ์ด๊ณ , ์ž…๋ ฅ์— ๋”ฐ๋ฅธ ํ•จ์ˆ˜๊ฐ’์˜ ์ฐจ์ด๋„ ์—ฌ์ „ํžˆ ์žˆ์ง€๋งŒ ๊ฐ’์ด ์ฒ˜๋ฆฌํ•˜๊ธฐ ์ข‹์„ ๋งŒํผ ์ž‘์•„์งˆ ๊ฒƒ์ด๋‹ค.

softmax์™€ ๊ฐ™์ด ์„ ํ˜• ๋ชจ๋ธ์˜ ์ถœ๋ ฅ์„ ์ฒ˜๋ฆฌํ•ด ๋น„์„ ํ˜• ๋ชจ๋ธ์˜ ๊ฒฐ๊ณผ ๋ฒกํ„ฐ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ํ™œ์„ฑํ•จ์ˆ˜๋ผ๊ณ  ํ•œ๋‹ค. ํ™œ์„ฑํ•จ์ˆ˜์—๋Š” softmax ๋ง๊ณ  ๋‹ค๋ฅธ ๊ฒƒ๋“ค๋„ ์žˆ๋‹ค.


[pandas ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ]

๊ตฌ์กฐํ™”๋œ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ํŒŒ์ด์ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค. numpy์™€ ์—ฐ๋™ ๊ฐ€๋Šฅํ•ด ๊ฐ•๋ ฅํ•œ ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ ์ฒ˜๋ฆฌ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.
csv ํŒŒ์ผ์„ ๋ถˆ๋Ÿฌ์™€ ์ฒ˜๋ฆฌํ•  ๋•Œ๋Š” read_csv() ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ๋ถˆ๋Ÿฌ์˜ฌ ๋•Œ seperator ์ธ์ž sep์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ์—ฌ๊ธฐ์— ์ •๊ทœํ‘œํ˜„์‹์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ฐ€๋” ๋ฐ์ดํ„ฐ๋ฅผ ๋‚˜๋ˆ„๋Š” ๊ณต๋ฐฑ ๊ฐฏ์ˆ˜๊ฐ€ ์ผ์ •ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ๊ฐ€ ์กด์žฌํ•˜๋Š”๋ฐ, ์ด ๋•Œ ์ •๊ทœํ‘œํ˜„์‹์„ ์‚ฌ์šฉํ•˜๋ฉด ๊น”๋”ํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.

  • serise ๊ฐ์ฒด
    ์—ด๋ฒกํ„ฐ ํ•˜๋‚˜๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ์ฒด. serise ๊ฐ์ฒด๊ฐ€ ๋ชจ์—ฌ์„œ DataFrame์ด ๋œ๋‹ค. numpy์˜ ndarray๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋งŒ๋“  ์„œ๋ธŒํด๋ž˜์Šค์ธ๋ฐ, ์—ด๋ฒกํ„ฐ์˜ ๊ฐ ์›์†Œ๋งˆ๋‹ค ์ธ๋ฑ์Šค๋ฅผ ์ง€์ •ํ•ด ์ค„ ์ˆ˜ ์žˆ๋‹ค. ์ธ๋ฑ์Šค๋Š” ์ˆซ์ž/๋ฌธ์ž ๋‹ค ๊ฐ€๋Šฅํ•˜๋ฉฐ ์ˆซ์ž๊ฐ€ ๋’ค์ฃฝ๋ฐ•์ฃฝ ์„ž์—ฌ ์žˆ์–ด๋„ ๋œ๋‹ค.

  • DataFrame ๊ฐ์ฒด
    serise๊ฐ€ ๋ชจ์—ฌ์„œ ๋งŒ๋“ค์–ด์ง„ 2์ฐจ์› ๋ฐฐ์—ด. ๋ณดํ†ต์€ csv ํŒŒ์ผ์„ ๋ถˆ๋Ÿฌ์™€์„œ ๋งŒ๋“ค์ง€๋งŒ ๊ทธ๋ƒฅ serise๋“ค์„ ๋ชจ์•„์„œ ๋งŒ๋“ค ์ˆ˜๋„ ์žˆ๋‹ค.
    ์ธ๋ฑ์‹ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์ด 2๊ฐ€์ง€ ์žˆ๋Š”๋ฐ, loc(index location)๊ณผ iloc(index position) ๋ฐฉ์‹์ด๋‹ค.

    • loc(์ธ๋ฑ์Šค ๊ฐ’)
      df = DataFrame(
      1 ["Jason", 42]
      0 ["Mary", 35])
      df.loc[0] : 0 ["Mary", 35] loc์„ ์‚ฌ์šฉํ•ด์„œ ์ธ๋ฑ์‹ฑํ•  ๊ฒฝ์šฐ ์ธ๋ฑ์Šค๊ฐ€ 0(์ง€์ •ํ•œ ๊ฐ’)์ธ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•œ๋‹ค.
    • iloc(์ธ๋ฑ์Šค ์œ„์น˜)
      df = DataFrame(
      1 ["Jason", 42]
      0 ["Mary", 35])
      df.iloc([1]) : 1 ["Jason", 42] iloc์„ ์‚ฌ์šฉํ•ด์„œ ์ธ๋ฑ์‹ฑํ•  ๊ฒฝ์šฐ ์ธ๋ฑ์Šค ์œ„์น˜๊ฐ€ 0๋ฒˆ์งธ์ธ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•œ๋‹ค.

[ํ”ผ์–ด ์„ธ์…˜]

softmax์˜ ์ž…๋ ฅ ๋ฒกํ„ฐ ๊ฐ ์›์†Œ์—์„œ ์›์†Œ ์ค‘ ์ตœ๋Œ€๊ฐ’์„ ๋นผ ์ฃผ๋Š” ์ด์œ ๋ฅผ ์ž˜ ๋ชจ๋ฅด๊ฒ ์–ด์„œ ํ”ผ์–ด ์„ธ์…˜ ์‹œ๊ฐ„์— ์งˆ๋ฌธํ–ˆ๋‹ค. ๋•๋ถ„์— ์ด ๋ถ€๋ถ„์€ ์ž˜ ์ดํ•ด๋˜์—ˆ๋‹ค!
28์ผ ํŒ€ ์†Œ๊ฐœ ์‹œ๊ฐ„์„ ๋Œ€๋น„ํ•ด์„œ ํŒ€ ์ปจ์…‰์„ ์žก๊ณ  ๋ฐœํ‘œํ•  ์ž๋ฃŒ๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค.

profile
๋ฐ˜๊ฐ€์›Œ์šฉ

0๊ฐœ์˜ ๋Œ“๊ธ€