படத்தின் நரம்பியல் நெட்வொர்க். நரம்பியல் நெட்வொர்க்கைப் பயன்படுத்தி படங்களை ஸ்டைலிங் செய்தல்: மாயவாதம் இல்லை, வெறும் மதன்

வீடு / முன்னாள்

மிகவும் சாதாரண புகைப்படங்களில், ஏராளமான மற்றும் வேறுபடுத்த முடியாத நிறுவனங்கள் தோன்றும். பெரும்பாலும், சில காரணங்களால், நாய்கள். ஜூன் 2015 இல், கூகுளின் டீப் ட்ரீம் தொடங்கப்பட்டபோது, ​​இணையம் இதுபோன்ற படங்களை நிரப்பத் தொடங்கியது, இது பட செயலாக்கத்திற்கான நரம்பியல் நெட்வொர்க்குகளை அடிப்படையாகக் கொண்ட முதல் திறந்த சேவைகளில் ஒன்றாகும்.

இது தோராயமாக இப்படி நிகழ்கிறது: அல்காரிதம் புகைப்படங்களை பகுப்பாய்வு செய்கிறது, அவற்றில் சில பழக்கமான பொருள்களை நினைவூட்டும் துண்டுகளைக் கண்டறிந்து, இந்தத் தரவின் படி படத்தை சிதைக்கிறது.

முதலில், திட்டம் திறந்த மூல வடிவத்தில் வெளியிடப்பட்டது, பின்னர் ஆன்லைன் சேவைகள் இணையத்தில் தோன்றின, அதே கொள்கைகளின்படி உருவாக்கப்பட்டது. மிகவும் வசதியான மற்றும் பிரபலமான ஒன்று டீப் ட்ரீம் ஜெனரேட்டர்: இங்கே ஒரு சிறிய புகைப்படத்தை செயலாக்க 15 வினாடிகள் மட்டுமே ஆகும் (முன்பு, பயனர்கள் ஒரு மணி நேரத்திற்கும் மேலாக காத்திருக்க வேண்டியிருந்தது).

நரம்பியல் நெட்வொர்க்குகள் எவ்வாறு இத்தகைய படங்களை உருவாக்க கற்றுக்கொள்கின்றன? ஏன், அவர்கள் அப்படி அழைக்கப்படுகிறார்கள்?

அவற்றின் வடிவமைப்பால், நரம்பியல் நெட்வொர்க்குகள் ஒரு உயிரினத்தின் உண்மையான நரம்பியல் நெட்வொர்க்குகளைப் பின்பற்றுகின்றன, ஆனால் அவை கணித வழிமுறைகளைப் பயன்படுத்தி செய்கின்றன. நீங்கள் ஒரு அடிப்படை கட்டமைப்பை உருவாக்கியவுடன், இயந்திர கற்றல் நுட்பங்களைப் பயன்படுத்தி அதைப் பயிற்சி செய்யலாம். நாம் முறை அங்கீகாரத்தைப் பற்றி பேசுகிறோம் என்றால், ஆயிரக்கணக்கான படங்களை நரம்பியல் நெட்வொர்க் மூலம் அனுப்ப வேண்டும். நரம்பியல் வலையமைப்பின் பணி வேறுபட்டால், பயிற்சி பயிற்சிகள் வித்தியாசமாக இருக்கும்.

சதுரங்கம் விளையாடுவதற்கான அல்காரிதம்கள், எடுத்துக்காட்டாக, சதுரங்க விளையாட்டுகளை பகுப்பாய்வு செய்யுங்கள். அதே வழியில், Google DeepMind இன் AlphaGo அல்காரிதம் சீன விளையாட்டான go - இது ஒரு திருப்புமுனையாகக் காணப்பட்டது, ஏனெனில் go என்பது சதுரங்கத்தை விட மிகவும் சிக்கலானது மற்றும் நேரியல் அல்ல.

    நீங்கள் ஒரு எளிமைப்படுத்தப்பட்ட நரம்பியல் நெட்வொர்க் மாதிரியுடன் விளையாடலாம் மற்றும் அதன் கொள்கைகளை நன்கு புரிந்து கொள்ளலாம்.

    யூடியூபிலும் படிக்க எளிதான தொடர் உள்ளது உருளைகள்நரம்பியல் நெட்வொர்க்குகள் எவ்வாறு செயல்படுகின்றன என்பதைப் பற்றி.

மற்றொரு பிரபலமான சேவை ட்ரீம்ஸ்கோப் ஆகும், இது நாய்களைக் கனவு காண்பது மட்டுமல்லாமல், பல்வேறு ஓவிய பாணிகளைப் பின்பற்றவும் முடியும். இங்கே பட செயலாக்கம் மிகவும் எளிமையானது மற்றும் வேகமானது (சுமார் 30 வினாடிகள்).

வெளிப்படையாக, சேவையின் அல்காரிதம் பகுதியானது "நரம்பியல் பாணி" திட்டத்தின் மாற்றமாகும், இது நாங்கள் ஏற்கனவே விவாதித்தோம்.

மிக சமீபத்தில், கருப்பு மற்றும் வெள்ளை படங்களை யதார்த்தமாக வண்ணமயமாக்கும் ஒரு நிரல் தோன்றியது. முந்தைய பதிப்புகளில், இதே போன்ற நிரல்கள் தங்கள் பணியில் மிகக் குறைவாகவே செயல்பட்டன, மேலும் குறைந்தபட்சம் 20% பேர் கணினி நிறப் படத்திலிருந்து உண்மையான படத்தை வேறுபடுத்த முடியாவிட்டால் அது ஒரு பெரிய சாதனையாகக் கருதப்பட்டது.

மேலும், இங்கே வண்ணம் பூசுவதற்கு 1 நிமிடம் மட்டுமே ஆகும்.

அதே டெவலப்பர் நிறுவனம் படங்களில் உள்ள பல்வேறு வகையான பொருட்களை அங்கீகரிக்கும் சேவையையும் தொடங்கியுள்ளது.

இந்த சேவைகள் வேடிக்கையான பொழுதுபோக்காகத் தோன்றலாம், ஆனால் உண்மையில், எல்லாம் மிகவும் சுவாரஸ்யமானது. புதிய தொழில்நுட்பங்கள் மனித கலைஞர்களின் நடைமுறையில் நுழைந்து கலை பற்றிய நமது புரிதலை மாற்றுகின்றன. மக்கள் விரைவில் படைப்பாற்றல் துறையில் இயந்திரங்களுடன் போட்டியிட வேண்டியிருக்கும்.

இமேஜ் ரெகக்னிஷன் அல்காரிதம்களை கற்பிப்பது என்பது செயற்கை நுண்ணறிவு டெவலப்பர்கள் நீண்ட காலமாக போராடி வரும் பணியாகும். எனவே, பழைய படங்களை வண்ணமயமாக்கும் மற்றும் வானத்தில் நாய்களுக்கு வண்ணம் தீட்டும் திட்டங்கள் ஒரு பெரிய மற்றும் மிகவும் புதிரான செயல்முறையின் ஒரு பகுதியாக கருதப்படலாம்.

வாழ்த்துக்கள், ஹப்ர்! இந்த இணைய தளங்களில் பல்வேறு கலை பாணிகளுக்கான புகைப்படங்களை அழகாக்குவது என்ற தலைப்பு தீவிரமாக விவாதிக்கப்படுவதை நீங்கள் கவனித்திருக்கலாம். இந்த பிரபலமான கட்டுரைகளைப் படிக்கும்போது, ​​​​இந்த பயன்பாடுகளின் பேட்டைக்கு கீழ் மந்திரம் நடக்கிறது என்று நீங்கள் நினைக்கலாம், மேலும் நரம்பியல் நெட்வொர்க் உண்மையில் புதிதாக கற்பனை செய்து படத்தை புதிதாக வரைகிறது. எங்கள் குழு இதேபோன்ற பணியை எதிர்கொண்டது: உள் கார்ப்பரேட் ஹேக்கத்தானின் ஒரு பகுதியாக, நாங்கள் வீடியோ ஸ்டைலைசேஷன் செய்தோம், ஏனெனில் புகைப்படங்களுக்கான விண்ணப்பம் ஏற்கனவே உள்ளது. இந்த இடுகையில், இந்த நெட்வொர்க் எவ்வாறு படங்களை "மீண்டும் வரைகிறது" என்பதைக் கண்டுபிடிப்போம், மேலும் இதை சாத்தியமாக்கிய கட்டுரைகளை நாங்கள் பகுப்பாய்வு செய்வோம். இந்த உள்ளடக்கத்தைப் படிப்பதற்கு முன்பு கடைசி இடுகையைப் படிக்கவும், பொதுவாக கன்வல்யூஷனல் நியூரல் நெட்வொர்க்குகளின் அடிப்படைகளைப் படிக்கவும் பரிந்துரைக்கிறேன். நீங்கள் சில சூத்திரங்கள், சில குறியீடுகள் (நான் தியானோ மற்றும் லாசாக்னேவில் எடுத்துக்காட்டுகளைத் தருகிறேன்), அத்துடன் நிறைய படங்களையும் காணலாம். இந்த இடுகை கட்டுரைகளின் தோற்றத்தின் காலவரிசைப்படி ஒழுங்கமைக்கப்பட்டுள்ளது, அதன்படி, யோசனைகள். சில சமயம் எங்களின் சமீபத்திய அனுபவத்தை வைத்து அதை நீர்த்துப்போகச் செய்துவிடுவேன். இதோ உங்கள் கவனத்திற்கு நரகத்திலிருந்து ஒரு சிறுவன்.


கன்வல்யூஷனல் நெட்வொர்க்குகளை காட்சிப்படுத்துதல் மற்றும் புரிந்து கொள்ளுதல் (28 நவம்பர் 2013)

முதலில், ஒரு நரம்பியல் நெட்வொர்க் ஒரு கருப்பு பெட்டி அல்ல, ஆனால் முற்றிலும் புரிந்துகொள்ளக்கூடிய விஷயம் என்பதை ஆசிரியர்கள் காட்ட முடிந்த கட்டுரையைக் குறிப்பிடுவது மதிப்பு (இதன் மூலம், இன்று இது கணினிக்கான மாற்றும் நெட்வொர்க்குகளைப் பற்றி மட்டுமல்ல. பார்வை). மறைக்கப்பட்ட அடுக்குகளின் நியூரான்களின் செயல்பாட்டை எவ்வாறு விளக்குவது என்பதை அறிய ஆசிரியர்கள் முடிவு செய்தனர், இதற்காக அவர்கள் பல ஆண்டுகளுக்கு முன்பு முன்மொழியப்பட்ட ஒரு deconvolution neural network (deconvnet) ஐப் பயன்படுத்தினர் (இதன் ஆசிரியர்களான அதே Seiler மற்றும் Fergus) வெளியீடு). ஒரு deconvolutional நெட்வொர்க் உண்மையில் வளைவுகள் மற்றும் குளங்கள் கொண்ட அதே நெட்வொர்க் ஆகும், ஆனால் தலைகீழ் வரிசையில் பயன்படுத்தப்படுகிறது. deconvnet இல் அசல் வேலையில், படங்களை உருவாக்க மேற்பார்வை செய்யப்படாத கற்றல் பயன்முறையில் நெட்வொர்க் பயன்படுத்தப்பட்டது. இந்த நேரத்தில், ஆசிரியர்கள் நெட்வொர்க் வழியாக முன்னோக்கி அனுப்பிய பிறகு பெறப்பட்ட அம்சங்களிலிருந்து அசல் படத்திற்கு பின்தங்கிய பாஸிற்காக இதைப் பயன்படுத்தியுள்ளனர். இதன் விளைவாக, ஒரு படம் பெறப்படுகிறது, இது நியூரான்களில் இந்த செயல்பாட்டை ஏற்படுத்திய சமிக்ஞையாக விளக்கப்படுகிறது. இயற்கையாகவே, கேள்வி எழுகிறது: வளைவு மற்றும் நேர்கோட்டுத்தன்மையின் மூலம் ஒரு தலைகீழ் பாஸ் செய்வது எப்படி? மேலும் அதிகபட்சமாக பூலிங் மூலம், இது நிச்சயமாக ஒரு தலைகீழ் செயல்பாடு அல்ல. மூன்று கூறுகளையும் பார்ப்போம்.

ரிவர்ஸ் ரெலு

மாற்றும் நெட்வொர்க்குகளில், செயல்படுத்தும் செயல்பாடு பெரும்பாலும் பயன்படுத்தப்படுகிறது ReLu (x) = அதிகபட்சம் (0, x)இது லேயரில் உள்ள அனைத்து செயல்பாடுகளையும் எதிர்மறையாக இல்லாமல் செய்கிறது. அதன்படி, நேர்கோட்டுத்தன்மையின் மூலம் மீண்டும் செல்லும்போது, ​​எதிர்மறையான முடிவுகளைப் பெறுவதும் அவசியம். இதற்கு, அதே ReLu ஐப் பயன்படுத்த ஆசிரியர்கள் பரிந்துரைக்கின்றனர். தியானோ கட்டிடக்கலையின் பார்வையில், நீங்கள் செயல்பாட்டு சாய்வு செயல்பாட்டை மேலெழுத வேண்டும் (எல்லையற்ற மதிப்புமிக்க நோட்புக் லாசக்னா ரெசிபிகளில் உள்ளது, அங்கிருந்து நீங்கள் மாற்றியமைக்கப்பட்ட பேக்ப்ராப் வகுப்பு என்ன என்பதைப் பற்றிய விவரங்களைப் பெறுவீர்கள்).

வகுப்பு ZeilerBackprop (ModifiedBackprop): def grad (self, inputs, out_grads): (inp,) = inputs (grd,) = out_grads #return (grd * (grd> 0) .astype (inp.dtype),) # வெளிப்படையாகத் திருத்தவும் திரும்ப (self.nonlinearity (grd),) # கொடுக்கப்பட்ட நேரியல் தன்மையைப் பயன்படுத்தவும்

தலைகீழ் சுழற்சி

இங்கே இது இன்னும் கொஞ்சம் சிக்கலானது, ஆனால் எல்லாம் தர்க்கரீதியானது: அதே கன்வல்யூஷன் கர்னலின் இடமாற்றப்பட்ட பதிப்பைப் பயன்படுத்தினால் போதும், ஆனால் முன்னோக்கி பாஸில் பயன்படுத்தப்பட்ட முந்தைய லேயருக்குப் பதிலாக ரிவர்ஸ் ரெலுவிலிருந்து வெளியீடுகளுக்கு. ஆனால் வார்த்தைகளில் இது அவ்வளவு தெளிவாக இல்லை என்று நான் பயப்படுகிறேன், இந்த நடைமுறையின் காட்சிப்படுத்தலைப் பார்ப்போம் (நீங்கள் இன்னும் அதிகமான காட்சிப்படுத்தல்களைக் காண்பீர்கள்).


முன்னேற்றத்துடன் கன்வல்யூஷன் = 1

முன்னேற்றத்துடன் கன்வல்யூஷன் = 1 தலைகீழ் பதிப்பு

முன்னேற்றத்துடன் கன்வல்யூஷன் = 2

முன்னேற்றத்துடன் கன்வல்யூஷன் = 2 தலைகீழ் பதிப்பு

தலைகீழ் பூலிங்

இந்த செயல்பாடு (முந்தையதைப் போலல்லாமல்), பொதுவாகப் பேசுவது, தலைகீழாக இல்லை. ஆனால் திரும்பும் பாதையின் போது அதிகபட்சமாக ஏதாவது ஒரு வழியில் செல்ல விரும்புகிறோம். இதற்காக, நேரடி பாஸ் (அதிகபட்ச இருப்பிட சுவிட்சுகள்) போது அதிகபட்சமாக இருந்த வரைபடத்தைப் பயன்படுத்த ஆசிரியர்கள் பரிந்துரைக்கின்றனர். ரிவர்ஸ் பாஸின் போது, ​​அசல் சிக்னலின் கட்டமைப்பை தோராயமாகப் பாதுகாக்க, உள்ளீட்டு சமிக்ஞை துண்டிக்கப்பட்டது, அதை விவரிப்பதை விட பார்ப்பது மிகவும் எளிதானது.



விளைவாக

காட்சிப்படுத்தல் அல்காரிதம் மிகவும் எளிமையானது:

  1. நேராக பாஸ் செய்யுங்கள்.
  2. எங்களுக்கு விருப்பமான அடுக்கைத் தேர்ந்தெடுக்கவும்.
  3. ஒன்று அல்லது பல நியூரான்களின் செயல்பாட்டை சரிசெய்து மீதமுள்ளவற்றை மீட்டமைக்கவும்.
  4. எதிர் முடிவை எடுங்கள்.

கீழே உள்ள படத்தில் உள்ள ஒவ்வொரு சாம்பல் சதுரமும் ஒரு வடிப்பான் (சுருட்டலுக்குப் பயன்படுத்தப்படுகிறது) அல்லது ஒரு நியூரானின் எடைக்கு ஒத்திருக்கிறது, மேலும் ஒவ்வொரு வண்ணப் படமும் தொடர்புடைய நியூரானைச் செயல்படுத்தும் அசல் படத்தின் ஒரு பகுதியாகும். தெளிவுக்காக, ஒரு அடுக்கில் உள்ள நியூரான்கள் கருப்பொருள் குழுக்களாக தொகுக்கப்பட்டுள்ளன. பொதுவாக, 1981 ஆம் ஆண்டில் நோபல் பரிசு வழங்கப்பட்ட காட்சி அமைப்பின் கட்டமைப்பில் ஹூபல் மற்றும் வெய்சல் அவர்கள் எழுதியதைப் பற்றி நரம்பியல் நெட்வொர்க் சரியாகக் கற்றுக்கொள்கிறது என்று திடீரென்று மாறியது. இந்தக் கட்டுரைக்கு நன்றி, ஒவ்வொரு அடுக்கிலும் கன்வல்யூஷனல் நியூரல் நெட்வொர்க் என்ன கற்றுக்கொள்கிறது என்பதற்கான காட்சிப் பிரதிநிதித்துவம் எங்களுக்குக் கிடைத்தது. இந்த அறிவுதான் பின்னர் உருவாக்கப்பட்ட படத்தின் உள்ளடக்கத்தை கையாள அனுமதிக்கும், ஆனால் இது இன்னும் வெகு தொலைவில் உள்ளது; அடுத்த சில ஆண்டுகள் நரம்பியல் நெட்வொர்க்குகளை "டிரெபனிங்" செய்யும் முறைகளை மேம்படுத்துவதற்காக செலவிடப்பட்டது. கூடுதலாக, கட்டுரையின் ஆசிரியர்கள் சிறந்த முடிவுகளை அடைவதற்கு ஒரு கன்வல்யூஷனல் நியூரல் நெட்வொர்க்கின் கட்டமைப்பை எவ்வாறு சிறப்பாக உருவாக்குவது என்பதை பகுப்பாய்வு செய்வதற்கான வழியை முன்மொழிந்தனர் (அவர்கள் இமேஜ்நெட் 2013 இல் வெற்றி பெறவில்லை என்றாலும், அவர்கள் முதலிடத்தைப் பெற்றனர்; UPD: அவர்கள் வென்றனர், கிளாரிஃபாய் அவர்கள்).


அம்ச காட்சிப்படுத்தல்


deconvnet ஐப் பயன்படுத்தி செயல்படுத்தல்களைக் காட்சிப்படுத்துவதற்கான ஒரு எடுத்துக்காட்டு இங்கே உள்ளது, இன்று இந்த முடிவு அப்படித்தான் தோன்றுகிறது, ஆனால் அது ஒரு திருப்புமுனையாக இருந்தது.


deconvnet ஐப் பயன்படுத்தி சேலியன்சி மேப்ஸ்

டீப் இன்சைட் கன்வல்யூஷனல் நெட்வொர்க்குகள்: காட்சிப்படுத்தல் பட வகைப்பாடு மாதிரிகள் மற்றும் சாலியன்சி வரைபடங்கள் (19 ஏப். 2014)

இக்கட்டுரையானது கன்வல்யூஷனல் நியூரல் நெட்வொர்க்கில் உள்ள அறிவைக் காட்சிப்படுத்துவதற்கான முறைகள் பற்றிய ஆய்வுக்கு அர்ப்பணிக்கப்பட்டுள்ளது. ஆசிரியர்கள் சாய்வு வம்சாவளியின் அடிப்படையில் இரண்டு ரெண்டரிங் முறைகளை முன்மொழிகின்றனர்.

வகுப்பு மாதிரி காட்சிப்படுத்தல்

எனவே, குறிப்பிட்ட எண்ணிக்கையிலான வகுப்புகளுக்கான வகைப்பாடு சிக்கலைத் தீர்க்க எங்களிடம் பயிற்சி பெற்ற நரம்பியல் நெட்வொர்க் உள்ளது என்று கற்பனை செய்து பாருங்கள். வெளியீட்டு நியூரானின் செயல்படுத்தும் மதிப்பைக் குறிப்போம், இது வகுப்பிற்கு ஒத்திருக்கிறது c... தேர்ந்தெடுக்கப்பட்ட வகுப்பை அதிகப்படுத்தும் படத்தை பின்வரும் தேர்வுமுறைச் சிக்கல் நமக்குத் தருகிறது:



தியானோவைப் பயன்படுத்தி இந்தப் பணியைத் தீர்ப்பது எளிது. வழக்கமாக, மாதிரி அளவுருக்களிலிருந்து வழித்தோன்றலை எடுக்க கட்டமைப்பைக் கேட்கிறோம், ஆனால் இந்த முறை அளவுருக்கள் சரி செய்யப்பட்டுள்ளன, மேலும் உள்ளீடு படத்தில் இருந்து வழித்தோன்றல் எடுக்கப்பட்டது என்று கருதுகிறோம். பின்வரும் செயல்பாடு வெளியீட்டு அடுக்கின் அதிகபட்ச மதிப்பைத் தேர்ந்தெடுத்து, உள்ளீட்டுப் படத்திலிருந்து வழித்தோன்றலைக் கணக்கிடும் செயல்பாட்டை வழங்குகிறது.


def compile_saliency_function (net): "" "உள்ளீட்டுப் படங்களின் கொடுக்கப்பட்ட மினிபேட்சுக்கான சேலியன்சி வரைபடங்கள் மற்றும் கணிக்கப்பட்ட வகுப்புகளைக் கணக்கிடுவதற்கான ஒரு செயல்பாட்டைத் தொகுக்கிறது." "" inp = net ["input"]. input_var outp = lasagne.layers.get_output (net ["fc8"], deterministic = True) max_outp = T.max (outp, axis = 1) saliency = theano.grad (max_outp.sum (), wrt = inp) max_class = T.argmax (அவுட்ப், அச்சு = 1) ரிட்டர்ன் theano.function (,)

இணையத்தில் விசித்திரமான நாய் முகங்களை நீங்கள் பார்த்திருக்கலாம் - DeepDream. அசல் கட்டுரையில், தேர்ந்தெடுக்கப்பட்ட வகுப்பை அதிகப்படுத்தும் படங்களை உருவாக்க ஆசிரியர்கள் பின்வரும் செயல்முறையைப் பயன்படுத்துகின்றனர்:

  1. ஆரம்ப படத்தை பூஜ்ஜியங்களுடன் துவக்கவும்.
  2. இந்தப் படத்தின் வழித்தோன்றலின் மதிப்பைக் கணக்கிடவும்.
  3. வழித்தோன்றலில் இருந்து பெறப்பட்ட படத்தைச் சேர்ப்பதன் மூலம் படத்தை மாற்றவும்.
  4. படி 2 க்கு திரும்பவும் அல்லது வளையத்திலிருந்து வெளியேறவும்.

இதன் விளைவாக வரும் படங்கள்:




முதல் படத்தை உண்மையான புகைப்படத்துடன் துவக்கி, அதே செயல்முறையைத் தொடங்கினால் என்ன செய்வது? ஆனால் ஒவ்வொரு மறு செய்கையிலும், ஒரு சீரற்ற வகுப்பைத் தேர்ந்தெடுத்து, மீதியை மீட்டமைத்து, வழித்தோன்றலின் மதிப்பைக் கணக்கிடுவோம், பின்னர் அத்தகைய ஆழமான கனவைப் பெறுவோம்.


எச்சரிக்கை 60 எம்பி


ஏன் பல நாய் முகங்களும் கண்களும் உள்ளன? இது எளிது: 1000 வகுப்புகளின் படத்தில், கிட்டத்தட்ட 200 நாய்கள் உள்ளன, அவர்களுக்கு கண்கள் உள்ளன. வெறுமனே மக்கள் இருக்கும் பல வகுப்புகளும் உள்ளன.

கிளாஸ் சாலியன்சி பிரித்தெடுத்தல்

உண்மையான புகைப்படத்துடன் இந்த செயல்முறையைத் தொடங்கினால், முதல் மறு செய்கைக்குப் பிறகு நிறுத்தி, வழித்தோன்றலின் மதிப்பை வரைந்தால், அத்தகைய படத்தைப் பெறுவோம், அசல் ஒன்றைச் சேர்த்து, தேர்ந்தெடுக்கப்பட்ட வகுப்பின் செயல்படுத்தும் மதிப்பை அதிகரிப்போம்.


வழித்தோன்றலைப் பயன்படுத்தி சாலியன்சி வரைபடங்கள்


மீண்டும் விளைவு "அவ்வளவு". இது செயல்படுத்தல்களைக் காட்சிப்படுத்துவதற்கான ஒரு புதிய வழி என்பதைக் கவனத்தில் கொள்ள வேண்டியது அவசியம் (செயல்பாடுகளின் மதிப்புகளை கடைசி லேயரில் அல்ல, பொதுவாக நெட்வொர்க்கின் எந்த அடுக்கிலும் சரிசெய்து, உள்ளீடு படத்திலிருந்து வழித்தோன்றலை எடுப்பதில் இருந்து எதுவும் நம்மைத் தடுக்காது) . அடுத்த கட்டுரை முந்தைய அணுகுமுறைகள் இரண்டையும் ஒருங்கிணைத்து, பாணி பரிமாற்றத்தை எவ்வாறு தனிப்பயனாக்குவது என்பது பற்றிய ஒரு கருவியை எங்களுக்கு வழங்கும், இது பின்னர் விவரிக்கப்படும்.

எளிமைக்காக பாடுபடுதல்: தி ஆல் கன்வல்யூஷனல் நெட் (13 ஏப். 2015)

பொதுவாக, இந்த கட்டுரை காட்சிப்படுத்தல் பற்றியது அல்ல, ஆனால் ஒரு பெரிய முன்னேற்றத்துடன் பூலிங்கை மாற்றுவது தரத்தை இழக்க வழிவகுக்காது. ஆனால் அவர்களின் ஆராய்ச்சியின் துணைத் தயாரிப்பாக, ஆசிரியர்கள் அம்சங்களைக் காட்சிப்படுத்த ஒரு புதிய வழியை முன்மொழிந்தனர், இது மாதிரி கற்றுக்கொள்வதை இன்னும் துல்லியமாக பகுப்பாய்வு செய்யப் பயன்படுத்தியது. அவர்களின் யோசனை பின்வருமாறு: நாம் வழித்தோன்றலை எடுத்துக் கொண்டால், டிகான்வல்யூஷனின் போது உள்ளீட்டு படத்தில் பூஜ்ஜியத்தை விட குறைவாக இருந்த அம்சங்கள் பின்வாங்காது (உள்ளீடு படத்திற்கு ReLu ஐப் பயன்படுத்துதல்). பரப்பப்பட்ட பின் படத்தில் எதிர்மறை மதிப்புகள் தோன்றும் என்பதற்கு இது வழிவகுக்கிறது. மறுபுறம், நீங்கள் deconvnet ஐப் பயன்படுத்தினால், மற்றொரு ReLu ஆனது ReLu வழித்தோன்றலில் இருந்து எடுக்கப்படுகிறது - இது எதிர்மறை மதிப்புகளை மீண்டும் அனுப்பாமல் இருக்க உங்களை அனுமதிக்கிறது, ஆனால் நீங்கள் பார்த்தது போல், இதன் விளைவாக "அவ்வாறு" இருக்கும். ஆனால் இந்த இரண்டு முறைகளையும் இணைத்தால் என்ன செய்வது?




class GuidedBackprop (ModifiedBackprop): def grad (self, inputs, out_grads): (inp,) = inputs (grd,) = out_grads dtype = inp.dtype return (grd * (inp> 0) .astype (dtype) * (grd > 0) .அடைப் (dtype),)

பின்னர் நீங்கள் முற்றிலும் சுத்தமான மற்றும் புரிந்துகொள்ளக்கூடிய படத்தைப் பெறுவீர்கள்.


வழிகாட்டப்பட்ட பின்புலப் பரப்புதலைப் பயன்படுத்தி சாலியன்சி வரைபடங்கள்

ஆழமாக செல்லுங்கள்

இப்போது யோசிப்போம், இது நமக்கு என்ன தருகிறது? ஒவ்வொரு கன்வல்யூஷனல் லேயரும் ஒரு முப்பரிமாண டென்சரை உள்ளீடாகப் பெறுகிறது மற்றும் முப்பரிமாண டென்சரை வெளியிடுகிறது, ஒருவேளை வேறு பரிமாணத்தில் இருக்கும் என்பதை உங்களுக்கு நினைவூட்டுகிறேன். எக்ஸ் டபிள்யூஎக்ஸ் ; epth என்பது அடுக்கில் உள்ள நியூரான்களின் எண்ணிக்கை, அவை ஒவ்வொன்றும் அளவின் அம்ச வரைபடத்தை உருவாக்குகின்றன டபிள்யூ igth x எட்டு.


VGG-19 நெட்வொர்க்கில் பின்வரும் பரிசோதனையை முயற்சிப்போம்:



மாற்றம்1_2

நீங்கள் கிட்டத்தட்ட எதையும் பார்க்கவில்லை, tk. ஏற்றுக்கொள்ளும் பகுதி மிகவும் சிறியது, இது முறையே இரண்டாவது சுருட்டு 3x3 ஆகும், மொத்த பரப்பளவு 5x5 ஆகும். ஆனால் நாம் பெரிதாக்கினால், இந்த அம்சம் ஒரு கிரேடியன்ட் டிடெக்டர் மட்டுமே என்பதைக் காணலாம்.




மாற்றம்3_3


மாற்றம்4_3


மாற்றம்5_3


குளம்5


இப்போது தட்டின் மேல் உள்ள அதிகபட்ச மதிப்பிற்குப் பதிலாக, உள்ளீட்டுப் படத்தில் இருந்து அனைத்து தட்டு உறுப்புகளின் கூட்டு மதிப்பின் வழித்தோன்றலை எடுத்துக்கொள்வோம். பின்னர் நியூரான்களின் குழுவின் வெளிப்படையாக ஏற்றுக்கொள்ளும் பகுதி முழு உள்ளீட்டு படத்தையும் உள்ளடக்கும். ஆரம்ப அடுக்குகளுக்கு, பிரகாசமான வரைபடங்களைக் காண்போம், அதிலிருந்து இவை வண்ணங்களைக் கண்டறிபவை, பின்னர் சாய்வுகள், பின்னர் எல்லைகள் மற்றும் பலவற்றை சிக்கலாக்கும் வடிவங்களின் திசையில் உள்ளன என்று முடிவு செய்கிறோம். ஆழமான அடுக்கு, படம் மங்கலாக இருக்கும். ஆழமான அடுக்குகள் அவை கண்டறியும் மிகவும் சிக்கலான வடிவத்தைக் கொண்டிருப்பதால் இது விளக்கப்படுகிறது, மேலும் ஒரு சிக்கலான வடிவமானது எளிமையான ஒன்றை விட குறைவாகவே தோன்றும், எனவே செயல்படுத்தும் வரைபடம் மங்குகிறது. முதல் முறை சிக்கலான வடிவங்களுடன் அடுக்குகளைப் புரிந்துகொள்வதற்கு ஏற்றது, இரண்டாவது எளிமையானது.


மாற்றம்1_1


மாற்றம்2_2


மாற்றம்4_3


பல படங்களுக்கான செயல்பாடுகளின் முழுமையான தரவுத்தளத்தை நீங்கள் பதிவிறக்கலாம் மற்றும்.

ஒரு நரம்பியல் அல்காரிதம் ஆஃப் ஆர்ட்டிஸ்டிக் ஸ்டைல் ​​(2 செப் 2015)

எனவே, நரம்பியல் வலையமைப்பின் முதல் வெற்றிகரமான ட்ரெபானிங்கிலிருந்து ஓரிரு ஆண்டுகள் கடந்துவிட்டன. நரம்பியல் வலையமைப்பு என்ன கற்றுக்கொள்கிறது என்பதைப் புரிந்துகொள்ளவும், நாம் உண்மையில் கற்றுக்கொள்ள விரும்பாதவற்றை அகற்றவும் அனுமதிக்கும் சக்திவாய்ந்த கருவியை (மனிதநேயத்தின் அர்த்தத்தில்) நம் கைகளில் உள்ளது. இந்தக் கட்டுரையின் ஆசிரியர்கள், ஒரு படத்தை சில இலக்கு படங்களுக்கு ஒரே மாதிரியான செயல்படுத்தும் வரைபடத்தை உருவாக்க அனுமதிக்கும் ஒரு முறையை உருவாக்குகின்றனர், மேலும் ஒன்றுக்கு மேற்பட்டவை - இது ஸ்டைலிங்கின் அடிப்படையாகும். உள்ளீட்டிற்கு வெள்ளை இரைச்சலை வழங்குகிறோம், மேலும் ஆழ்ந்த கனவில் உள்ளதைப் போன்ற அதே செயல்பாட்டின் மூலம், இலக்கு படத்தைப் போன்ற அம்ச வரைபடங்களுடன் இந்தப் படத்தைக் கொண்டு வருகிறோம்.

உள்ளடக்க இழப்பு

ஏற்கனவே குறிப்பிட்டுள்ளபடி, நரம்பியல் நெட்வொர்க்கின் ஒவ்வொரு அடுக்கும் சில பரிமாணங்களின் முப்பரிமாண டென்சரை உருவாக்குகிறது.




வெளியீட்டைக் குறிப்போம் நான்என உள்ளீட்டில் இருந்து -வது அடுக்கு. பின்னர் உள்ளீட்டுப் படத்திற்கு இடையே உள்ள எச்சங்களின் எடையுள்ள தொகையைக் குறைத்தால் மற்றும் சில படத்தை நாங்கள் நோக்கமாகக் கொண்டுள்ளோம் c, பின்னர் உங்களுக்குத் தேவையானதைப் பெறுவீர்கள். அநேகமாக.



இந்த கட்டுரையை பரிசோதிக்க, நீங்கள் இந்த மேஜிக் லேப்டாப்பைப் பயன்படுத்தலாம், கணக்கீடுகள் அங்கு நடைபெறுகின்றன (GPU மற்றும் CPU இரண்டிலும்). நரம்பியல் நெட்வொர்க்கின் அம்சங்களையும் செலவு செயல்பாட்டின் மதிப்பையும் கணக்கிடுவதற்கு GPU பயன்படுத்தப்படுகிறது. புறநிலை செயல்பாட்டின் சாய்வைக் கணக்கிடக்கூடிய ஒரு செயல்பாட்டை தியானோ வெளியிடுகிறார் eval_gradஉள்ளீடு படம் மூலம் எக்ஸ்... இது பின்னர் எல்பிஎஃப்ஜிக்களில் செலுத்தப்பட்டு, ஒரு மறுசெயல்முறை தொடங்கப்படுகிறது.


# இரைச்சல் படத்தை உருவாக்கிய_image.set_value (floatX (np.random.uniform (-128, 128, (1, 3, IMAGE_W, IMAGE_W)))) x0 = generated_image.get_value () Astype ("float64") xs உடன் தொடங்கவும் = xs.append (x0) # Optimize, i க்கு (8) வரம்பில் அவ்வப்போது முடிவைச் சேமிக்கிறது: print (i) scipy.optimize.fmin_l_bfgs_b (eval_loss, x0.flatten (), fprime = eval_grad, maxfun = 40) x0 = generated_image.get_value (). astype ("float64") xs.append (x0)

அத்தகைய செயல்பாட்டின் தேர்வுமுறையை இயக்கினால், இலக்கு ஒன்றைப் போன்ற ஒரு படத்தை விரைவாகப் பெறுவோம். இப்போது சில உள்ளடக்கப் படத்தைப் போல தோற்றமளிக்கும் வெள்ளை இரைச்சலில் இருந்து படங்களை மீண்டும் உருவாக்க முடியும்.


உள்ளடக்க இழப்பு: conv4_2



மேம்படுத்தல் செயல்முறை




பெறப்பட்ட படத்தின் இரண்டு அம்சங்களைப் பார்ப்பது எளிது:

  • நிறங்கள் இழக்கப்பட்டன - இது ஒரு குறிப்பிட்ட எடுத்துக்காட்டில் conv4_2 அடுக்கு மட்டுமே பயன்படுத்தப்பட்டதன் விளைவாகும் (அல்லது, வேறுவிதமாகக் கூறினால், அதனுடன் எடை w பூஜ்ஜியமாக இருந்தது, மீதமுள்ள அடுக்குகளுக்கு அது பூஜ்ஜியமாக இருந்தது); நீங்கள் நினைவில் வைத்துள்ளபடி, இது வண்ணங்கள் மற்றும் சாய்வு மாற்றங்கள் பற்றிய தகவல்களைக் கொண்ட ஆரம்ப அடுக்குகள் ஆகும், மேலும் பிந்தையவை பெரிய விவரங்களைப் பற்றிய தகவல்களைக் கொண்டிருக்கின்றன, அதை நாங்கள் கவனிக்கிறோம் - வண்ணங்கள் இழக்கப்படுகின்றன, ஆனால் உள்ளடக்கம் இல்லை;
  • சில வீடுகள் "ஓடிவிட்டன", அதாவது நேர் கோடுகள் சற்று வளைந்திருக்கும் - இது ஏனெனில் ஆழமான அடுக்கு, அம்சத்தின் இடஞ்சார்ந்த நிலை (சுருள்கள் மற்றும் குளங்களைப் பயன்படுத்துவதன் விளைவு) பற்றிய குறைவான தகவலைக் கொண்டுள்ளது.

ஆரம்ப அடுக்குகளைச் சேர்ப்பது உடனடியாக வண்ண நிலைமையை சரிசெய்கிறது.


உள்ளடக்க இழப்பு: conv1_1, conv2_1, conv4_2


இந்த நேரத்தில், வெள்ளை இரைச்சல் படத்தில் மீண்டும் வரையப்படுவதை நீங்கள் கட்டுப்படுத்த முடியும் என்று நம்புகிறீர்கள்.

உடை இழப்பு

இப்போது நாம் மிகவும் சுவாரஸ்யமான விஷயத்திற்கு வந்துள்ளோம்: பாணியை எவ்வாறு வெளிப்படுத்துவது? ஸ்டைல் ​​என்றால் என்ன? வெளிப்படையாக, உடையானது உள்ளடக்க இழப்பில் நாம் மேம்படுத்திய ஒன்றல்ல, ஏனெனில் இது அம்சங்களின் இடநிலை நிலைகள் பற்றிய பல தகவல்களைக் கொண்டுள்ளது. எனவே முதலில் செய்ய வேண்டியது, ஒவ்வொரு அடுக்கிலும் பெறப்பட்ட பார்வைகளிலிருந்து இந்தத் தகவலை எப்படியாவது அகற்றுவதுதான்.


ஆசிரியர் பின்வரும் முறையை பரிந்துரைக்கிறார். ஒரு குறிப்பிட்ட அடுக்கில் இருந்து வெளியேறும் இடத்தில் டென்சரை எடுத்து, அதை இடஞ்சார்ந்த ஆயத்தொலைவுகளுடன் விரித்து, இறக்கங்களுக்கு இடையே உள்ள கோவாரியன்ஸ் மேட்ரிக்ஸைக் கணக்கிடவும். இந்த மாற்றத்தை இவ்வாறு குறிப்பிடுவோம் ஜி... உண்மையில் நாம் என்ன செய்தோம்? தட்டின் உள்ளே உள்ள அம்சங்கள் ஜோடிகளாக எத்தனை முறை காணப்படுகின்றன என்பதை நாங்கள் கணக்கிட்டோம் அல்லது வேறுவிதமாகக் கூறினால், பலதரப்பட்ட இயல்பான விநியோகத்துடன் தட்டுகளில் உள்ள அம்சங்களின் விநியோகத்தை தோராயமாக மதிப்பிட்டோம்.




பின்னர் ஸ்டைல் ​​லாஸ் பின்வருமாறு அறிமுகப்படுத்தப்பட்டது, எங்கே கள்- இது பாணியுடன் கூடிய சில படம்:



வின்சென்ட்டிற்காக முயற்சிப்போம்? கொள்கையளவில், நாம் எதிர்பார்த்த ஒன்றைப் பெறுவோம் - வான் கோவின் பாணியில் சத்தம், அம்சங்களின் இடஞ்சார்ந்த ஏற்பாடு பற்றிய தகவல்கள் முற்றிலும் இழக்கப்படுகின்றன.


வின்சென்ட்




ஆனால் பகட்டான படத்திற்கு பதிலாக ஒரு புகைப்படத்தை வைத்தால் என்ன செய்வது? நீங்கள் ஏற்கனவே நன்கு அறிந்த அம்சங்கள், பழக்கமான வண்ணங்களைப் பெறுவீர்கள், ஆனால் இடஞ்சார்ந்த நிலை முற்றிலும் இழக்கப்படுகிறது.


பாணி இழப்பில் புகைப்படம்


நாம் ஏன் கோவாரியன்ஸ் மேட்ரிக்ஸைக் கணக்கிடுகிறோம், வேறு ஏதாவது இல்லை என்று நீங்கள் நிச்சயமாக யோசித்திருக்கிறீர்களா? எல்லாவற்றிற்கும் மேலாக, இடஞ்சார்ந்த ஆயங்களை இழக்கும் வகையில் அம்சங்களை எவ்வாறு ஒருங்கிணைப்பது என்பதற்கு பல வழிகள் உள்ளன. இது உண்மையில் ஒரு திறந்த கேள்வி, நீங்கள் மிகவும் எளிமையான ஒன்றை எடுத்துக் கொண்டால், விளைவு வியத்தகு முறையில் மாறாது. இதை சரிபார்ப்போம், கோவாரியன்ஸ் மேட்ரிக்ஸைக் கணக்கிட மாட்டோம், ஆனால் ஒவ்வொரு தட்டின் சராசரி மதிப்பையும் கணக்கிடுவோம்.




எளிய பாணி இழப்பு

சேர்க்கை இழப்பு

இயற்கையாகவே, இந்த இரண்டு செலவு செயல்பாடுகளையும் கலக்க ஆசை உள்ளது. பின்னர் வெள்ளை இரைச்சலில் இருந்து ஒரு படத்தை உருவாக்குவோம், அதாவது உள்ளடக்கப் படத்தின் அம்சங்கள் (இவை இடஞ்சார்ந்த ஆயத்தொகுப்புகளுடன் பிணைப்பைக் கொண்டவை) அதில் சேமிக்கப்படும், மேலும் இடஞ்சார்ந்த ஆயங்களுடன் இணைக்கப்படாத "ஸ்டைல்" அம்சங்களும் இருக்கும், அதாவது. உள்ளடக்கப் படத்தின் விவரங்கள் அப்படியே இருக்கும், ஆனால் நாம் விரும்பும் பாணியில் மீண்டும் வரையப்பட்டிருக்கும்.



உண்மையில், ரெகுலரைசரும் உள்ளது, ஆனால் எளிமைக்காக அதைத் தவிர்ப்போம். பின்வரும் கேள்விக்கு பதிலளிக்க இது உள்ளது: தேர்வுமுறைக்கு என்ன அடுக்குகள் (எடைகள்) பயன்படுத்தப்பட வேண்டும்? இந்த கேள்விக்கு என்னிடம் பதில் இல்லை, கட்டுரையின் ஆசிரியர்களும் இல்லை என்று நான் பயப்படுகிறேன். அவர்கள் பின்வருவனவற்றைப் பயன்படுத்துவதற்கான பரிந்துரையைக் கொண்டுள்ளனர், ஆனால் இது மற்றொரு கலவையானது மோசமாக வேலை செய்யும் என்று அர்த்தமல்ல, மிகவும் பெரிய தேடல் இடம். மாதிரியைப் புரிந்துகொள்வதில் இருந்து பின்பற்றும் ஒரே விதி: அருகிலுள்ள அடுக்குகளை எடுப்பதில் எந்த அர்த்தமும் இல்லை அவற்றின் அறிகுறிகள் ஒன்றுக்கொன்று வேறுபடாது, எனவே, ஒவ்வொரு மாற்றத்திலிருந்தும் ஒரு அடுக்கு *_1 குழுவில் சேர்க்கப்படும்.


# இழப்பு செயல்பாடு இழப்புகளை வரையறுக்கவும் = # உள்ளடக்க இழப்பு இழப்புகள். append (0.001 * உள்ளடக்கம்_இழப்பு (புகைப்பட_அம்சங்கள், ஜென்_அம்சங்கள், "conv4_2")) # நடை இழப்பு இழப்புகள்.சேர்க்கவும் (0.2e6 * style_loss (art_features, gen_features, "conv1_1")) இழப்புகள் (0.2e6 * style_loss (art_features, gen_features, "conv2_1")) losses.append (0.2e6 * style_loss (art_features, gen_features, "conv3_1")) இழப்புகள் ) இழப்புகள்

இறுதி மாதிரியை பின்வருமாறு குறிப்பிடலாம்.




வான் கோவுடன் வீடுகளின் முடிவு இங்கே.



செயல்முறையை கட்டுப்படுத்த முயற்சிக்கிறது

முந்தைய பகுதிகளை நினைவில் கொள்வோம், தற்போதைய கட்டுரைக்கு இரண்டு ஆண்டுகளுக்கு முன்பே, நரம்பியல் நெட்வொர்க் உண்மையில் என்ன கற்றுக்கொள்கிறது என்பதை மற்ற விஞ்ஞானிகள் ஆராய்ச்சி செய்துள்ளனர். இந்தக் கட்டுரைகள் அனைத்தையும் கொண்டு, நீங்கள் வெவ்வேறு பாணிகள், வெவ்வேறு படங்கள், வெவ்வேறு தீர்மானங்கள் மற்றும் அளவுகளின் அம்சங்களின் காட்சிப்படுத்தல்களை உருவாக்கலாம் மற்றும் எந்த லேயர்களை எந்த எடையுடன் எடுக்க வேண்டும் என்பதைக் கண்டுபிடிக்க முயற்சி செய்யலாம். ஆனால் அடுக்குகளை எடைபோடுவது கூட என்ன நடக்கிறது என்பதில் முழுமையான கட்டுப்பாட்டைக் கொடுக்காது. இங்கே சிக்கல் மிகவும் கருத்தியல் ஆகும்: நாங்கள் தவறான செயல்பாட்டை மேம்படுத்துகிறோம்! எப்படி, நீங்கள் கேட்கிறீர்களா? பதில் எளிது: இந்த செயல்பாடு எஞ்சியதை குறைக்கிறது ... உங்களுக்கு யோசனை கிடைக்கும். ஆனால் நாம் உண்மையில் விரும்புவது என்னவென்றால், நாம் படத்தை விரும்புகிறோம். உள்ளடக்கம் மற்றும் நடை இழப்பு செயல்பாடுகளின் குவிந்த கலவையானது, நம் மனம் அழகாக நினைப்பதை அளவிடுவதில்லை. நீங்கள் நீண்ட நேரம் ஸ்டைலிங் தொடர்ந்தால், செலவு செயல்பாடு இயற்கையாகவே குறைகிறது மற்றும் குறைகிறது, ஆனால் முடிவின் அழகியல் அழகு கூர்மையாக குறைகிறது.




சரி, இன்னொரு பிரச்சனை இருக்கிறது. நமக்குத் தேவையான அம்சங்களைப் பிரித்தெடுக்கும் லேயரைக் கண்டுபிடித்தோம் என்று வைத்துக்கொள்வோம். சில இழைமங்கள் முக்கோண வடிவில் உள்ளன என்று வைத்துக் கொள்வோம். ஆனால் இந்த லேயரில் இன்னும் பல அம்சங்கள் உள்ளன, எடுத்துக்காட்டாக, வட்டங்கள், இதன் விளைவாக வரும் படத்தில் நாம் உண்மையில் பார்க்க விரும்பவில்லை. பொதுவாக, ஒரு மில்லியன் சீன மக்களை வேலைக்கு அமர்த்த முடிந்தால், ஸ்டைல் ​​​​படத்தின் அனைத்து அம்சங்களையும் காட்சிப்படுத்துவது சாத்தியமாகும், மேலும் முரட்டுத்தனமாக நமக்குத் தேவையானவற்றைக் குறிக்கவும், அவற்றை செலவு செயல்பாட்டில் மட்டுமே சேர்க்கவும். ஆனால் வெளிப்படையான காரணங்களுக்காக, அது அவ்வளவு எளிதானது அல்ல. ஆனால் ஸ்டைல் ​​படத்திலிருந்து முடிவில் நாம் பார்க்க விரும்பாத வட்டங்களை அகற்றினால் என்ன செய்வது? வட்டங்களுக்கு வினைபுரியும் தொடர்புடைய நியூரான்களின் செயல்படுத்தல் வெறுமனே இயங்காது. மற்றும், நிச்சயமாக, இதன் விளைவாக வரும் படத்தில் இது தோன்றாது. பூக்களும் அப்படித்தான். பல வண்ணங்களைக் கொண்ட ஒரு துடிப்பான படத்தை கற்பனை செய்து பாருங்கள். வண்ணங்களின் விநியோகம் முழு இடத்திலும் மிகவும் பூசப்பட்டிருக்கும், இதன் விளைவாக உருவான படத்தின் விநியோகம் இதுவாக இருக்கும், ஆனால் தேர்வுமுறை செயல்பாட்டின் போது, ​​அசலில் இருந்த சிகரங்கள் பெரும்பாலும் இழக்கப்படும். வண்ணத் தட்டுகளின் பிட் ஆழத்தை குறைப்பது இந்த சிக்கலை தீர்க்கிறது என்று மாறியது. பெரும்பாலான வண்ணங்களின் அடர்த்தி பூஜ்ஜியத்திற்கு அருகில் இருக்கும், மேலும் பல பகுதிகளில் பெரிய சிகரங்கள் இருக்கும். இவ்வாறு, ஃபோட்டோஷாப்பில் அசலைக் கையாளுவதன் மூலம், படத்தில் இருந்து பிரித்தெடுக்கப்படும் அம்சங்களை நாங்கள் கையாளுகிறோம். ஒரு நபர் தனது ஆசைகளை கணித மொழியில் உருவாக்க முயற்சிப்பதை விட பார்வைக்கு வெளிப்படுத்துவது எளிது. வருகிறேன். இதன் விளைவாக, வடிவமைப்பாளர்கள் மற்றும் மேலாளர்கள், ஃபோட்டோஷாப் மற்றும் அம்சங்களைக் காட்சிப்படுத்துவதற்கான ஸ்கிரிப்ட்களுடன் ஆயுதம் ஏந்தியவர்கள், கணிதவியலாளர்கள் மற்றும் புரோகிராமர்கள் செய்ததை விட மூன்று மடங்கு வேகமாக முடிவுகளை அடைந்தனர்.


அம்சங்களின் நிறம் மற்றும் அளவைக் கையாளுவதற்கான எடுத்துக்காட்டு


அல்லது எளிமையான படத்தை ஸ்டைலாக எடுக்கலாம்.



முடிவுகள்








இங்கே ஒரு விடோசிக் உள்ளது, ஆனால் தேவையான அமைப்புடன் மட்டுமே

டெக்ஸ்ச்சர் நெட்வொர்க்குகள்: ஃபீட்-ஃபார்வர்டு சின்தசிஸ் ஆஃப் டெக்ஸ்சர்ஸ் மற்றும் ஸ்டைலிஸ்டு இமேஜ்ஸ் (10 மார்ச் 2016)

ஒரு நுணுக்கம் இல்லாவிட்டால், இதை நிறுத்துவது சாத்தியம் என்று தெரிகிறது. மேலே உள்ள ஸ்டைலிங் அல்காரிதம் மிக நீண்ட நேரம் எடுக்கும். CPU இல் lbfgs இயக்கப்படும் ஒரு செயலாக்கத்தை நீங்கள் எடுத்தால், செயல்முறை சுமார் ஐந்து நிமிடங்கள் ஆகும். தேர்வுமுறை GPU க்கு செல்லும் வகையில் மீண்டும் எழுதினால், செயல்முறை 10-15 வினாடிகள் எடுக்கும். இது நல்லதல்ல. ஒருவேளை இதையும் அடுத்த கட்டுரையின் ஆசிரியர்களும் இதைப் பற்றி நினைத்திருக்கலாம். இரண்டு வெளியீடுகளும் 17 நாட்கள் இடைவெளியில் சுயாதீனமாக வெளியிடப்பட்டன, முந்தைய கட்டுரைக்கு ஒரு வருடம் கழித்து. தற்போதைய கட்டுரையின் ஆசிரியர்கள், முந்தைய கட்டுரையின் ஆசிரியர்களைப் போலவே, அமைப்புகளின் உருவாக்கத்தில் ஈடுபட்டுள்ளனர் (நீங்கள் உடை இழப்பை இதுபோன்று மீட்டமைத்தால், நீங்கள் வெற்றி பெறுவீர்கள்). வெள்ளை இரைச்சலில் இருந்து பெறப்பட்ட படத்தை மேம்படுத்துவதற்கு அவர்கள் முன்மொழிந்தனர், ஆனால் ஒரு பகட்டான படத்தை உருவாக்கும் சில நரம்பியல் நெட்வொர்க்.




இப்போது, ​​ஸ்டைலிங் செயல்முறையில் எந்த தேர்வுமுறையும் இல்லை என்றால், ஒரு முன்னோக்கி பாஸ் மட்டுமே செய்யப்பட வேண்டும். ஜெனரேட்டர் நெட்வொர்க்கைப் பயிற்றுவிக்க ஒரு முறை மட்டுமே தேர்வுமுறை தேவைப்படுகிறது. இந்தக் கட்டுரையில் ஒரு படிநிலை ஜெனரேட்டரைப் பயன்படுத்துகிறது zஅளவு முந்தையதை விட பெரியது மற்றும் அமைப்பு உருவாக்கம் மற்றும் ஒப்பனையாளரைப் பயிற்றுவிப்பதற்கான சில படங்களின் அடிப்படையிலிருந்து எடுக்கப்பட்டது. இமாஜ்நெட்டின் பயிற்சிப் பகுதியைத் தவிர வேறு எதையாவது பயன்படுத்துவது மிகவும் முக்கியமானது இழப்பு நெட்வொர்க்கிற்குள் உள்ள அம்சங்கள் பயிற்சிப் பகுதியில் பயிற்சியளிக்கப்பட்ட பிணையத்தால் கணக்கிடப்படுகின்றன.



நிகழ்நேர உடை மாற்றம் மற்றும் சூப்பர் ரெசல்யூஷனுக்கான புலனுணர்வு இழப்புகள் (27 மார்ச் 2016)

பெயர் குறிப்பிடுவது போல, உருவாக்கும் நெட்வொர்க்கின் யோசனையுடன் 17 நாட்கள் தாமதமாக வந்த ஆசிரியர்கள், படத்தின் தெளிவுத்திறனை அதிகரிப்பதில் மும்முரமாக இருந்தனர். சமீபத்திய இமேக்னட்டில் எஞ்சிய கற்றலின் வெற்றியால் அவர்கள் ஈர்க்கப்பட்டதாகத் தெரிகிறது.




முறையே எஞ்சிய தொகுதி மற்றும் மாற்றத் தொகுதி.



எனவே, இப்போது நம் கைகளில், ஸ்டைலிங் மீதான கட்டுப்பாட்டுடன் கூடுதலாக, ஒரு வேகமான ஜெனரேட்டர் உள்ளது (இந்த இரண்டு கட்டுரைகளுக்கு நன்றி, ஒரு படத்தின் தலைமுறை நேரம் பல்லாயிரக்கணக்கான எம்எஸ்களில் அளவிடப்படுகிறது).

முடிவு

முதல் வீடியோ ஸ்டைலிங் பயன்பாட்டிற்கு மற்றொரு ஸ்டைலிங் பயன்பாட்டை உருவாக்க, மதிப்பாய்வு செய்யப்பட்ட கட்டுரைகள் மற்றும் ஆசிரியர்களின் குறியீட்டிலிருந்து தகவலைப் பயன்படுத்தினோம்:



அது போன்ற ஒன்றை உருவாக்குகிறது.


ஆகஸ்ட் 2015 இல், டூபிங்கன் பல்கலைக்கழகத்தின் ஜெர்மன் ஆராய்ச்சியாளர்கள் பிரபல கலைஞர்களின் பாணியை மற்ற புகைப்படங்களுக்கு மாற்றுவதற்கான சாத்தியக்கூறு குறித்த தங்கள் யோசனையை முன்வைத்ததிலிருந்து, இந்த வாய்ப்பைப் பணமாக்குவதற்கான சேவைகள் தோன்றத் தொடங்கின. இது மேற்கு சந்தையில் தொடங்கப்பட்டது, மற்றும் ரஷ்ய சந்தையில் - அதன் முழு நகல்.

புக்மார்க்குகளுக்கு

ஆஸ்டாகிராம் டிசம்பரில் மீண்டும் தொடங்கப்பட்டது என்ற போதிலும், அது ஏப்ரல் நடுப்பகுதியில் சமூக வலைப்பின்னல்களில் விரைவாக பிரபலமடையத் தொடங்கியது. அதே நேரத்தில், ஏப்ரல் 19 நிலவரப்படி VKontakte திட்டத்தில் ஆயிரத்திற்கும் குறைவானவர்கள் இருந்தனர்.

சேவையைப் பயன்படுத்த, நீங்கள் இரண்டு படங்களைத் தயாரிக்க வேண்டும்: செயலாக்கப்பட வேண்டிய புகைப்படம் மற்றும் அசல் புகைப்படத்தில் மிகைப்படுத்தப்பட வேண்டிய பாணியின் எடுத்துக்காட்டுடன் கூடிய படம்.

சேவையில் ஒரு இலவச பதிப்பு உள்ளது: இது படத்தின் நீளமான பக்கத்தில் 600 பிக்சல்கள் வரை குறைந்தபட்ச தெளிவுத்திறனில் ஒரு படத்தை உருவாக்குகிறது. புகைப்படத்திற்கு வடிப்பானைப் பயன்படுத்துவதன் மறு செய்கைகளில் ஒன்றின் முடிவை மட்டுமே பயனர் பெறுகிறார்.

இரண்டு கட்டண பதிப்புகள் உள்ளன: பிரீமியம் மிக நீளமான பக்கத்தில் 700 பிக்சல்கள் வரை படத்தை உருவாக்குகிறது மற்றும் படத்திற்கு 600 நரம்பியல் நெட்வொர்க் செயலாக்கத்தைப் பயன்படுத்துகிறது (அதிக மறு செய்கைகள், மிகவும் சுவாரஸ்யமான மற்றும் தீவிரமான செயலாக்கம்). அத்தகைய ஒரு படம் 50 ரூபிள் செலவாகும்.

HD பதிப்பில், நீங்கள் மறு செய்கைகளின் எண்ணிக்கையை சரிசெய்யலாம்: 100 க்கு 50 ரூபிள் செலவாகும், மற்றும் 1000 - 250 ரூபிள். இந்த வழக்கில், படம் மிக நீளமான பக்கத்தில் 1200 பிக்சல்கள் வரை தெளிவுத்திறனைக் கொண்டிருக்கும், மேலும் இது கேன்வாஸில் அச்சிடுவதற்குப் பயன்படுத்தப்படலாம்: Ostagram 1800 ரூபிள் இருந்து விநியோகத்துடன் அத்தகைய சேவையை வழங்குகிறது.

பிப்ரவரியில், Ostagram இன் பிரதிநிதிகள், "வளர்ந்த முதலாளித்துவ நாடுகளிலிருந்து" பயனர்களிடமிருந்து பட செயலாக்கத்திற்கான கோரிக்கைகளை ஏற்க மாட்டார்கள், ஆனால் பின்னர் உலகம் முழுவதும் உள்ள VKontakte பயனர்களுக்கான புகைப்பட செயலாக்கத்திற்கான அணுகல். GitHub இல் வெளியிடப்பட்ட Ostagram குறியீட்டின் மூலம் ஆராயும்போது, ​​இது Nizhny Novgorod இல் வசிக்கும் 30 வயதான Sergey Morugin என்பவரால் உருவாக்கப்பட்டது.

டிஜே தன்னை ஆண்ட்ரே என்று அறிமுகப்படுத்திய திட்டத்தின் வணிக இயக்குனரைத் தொடர்பு கொண்டார். அவரைப் பொறுத்தவரை, Ostagram Instapainting முன் தோன்றியது, ஆனால் Vipart எனப்படும் இதேபோன்ற திட்டத்தால் ஈர்க்கப்பட்டது.

ஆஸ்டாகிராம் என்.என்.யைச் சேர்ந்த மாணவர்களின் குழுவால் உருவாக்கப்பட்டது. அலெக்ஸீவா: 2015 ஆம் ஆண்டின் இறுதியில் ஒரு குறுகிய நண்பர்கள் குழுவில் ஆரம்ப சோதனைக்குப் பிறகு, திட்டத்தைப் பகிரங்கப்படுத்த முடிவு செய்யப்பட்டது. ஆரம்பத்தில், பட செயலாக்கம் முற்றிலும் இலவசம், மேலும் அச்சிடப்பட்ட ஓவியங்களை விற்பனை செய்வதன் மூலம் பணம் சம்பாதிக்க திட்டமிடப்பட்டது. ஆண்ட்ரேயின் கூற்றுப்படி, அச்சிடுதல் மிகப்பெரிய சிக்கலாக மாறியது: நரம்பியல் நெட்வொர்க்கால் செயலாக்கப்பட்ட நபர்களின் புகைப்படங்கள் மனித கண்ணுக்கு அரிதாகவே அழகாக இருக்கும், மேலும் இறுதி கிளையண்ட் அதை கேன்வாஸில் பயன்படுத்துவதற்கு முன்பு முடிவை சரிசெய்ய நீண்ட நேரம் தேவைப்படுகிறது. பெரிய இயந்திர வளங்கள்.

பட செயலாக்கத்திற்காக, ஆஸ்டாகிராமின் படைப்பாளிகள் அமேசான் கிளவுட் சேவையகங்களைப் பயன்படுத்த விரும்பினர், ஆனால் பயனர்களின் வருகைக்குப் பிறகு, அவர்களுக்கான செலவுகள் முதலீட்டில் குறைந்தபட்ச வருமானத்துடன் ஒரு நாளைக்கு ஆயிரம் டாலர்களைத் தாண்டும் என்பது தெளிவாகியது. திட்டத்தில் முதலீட்டாளரான ஆண்ட்ரே, நிஸ்னி நோவ்கோரோடில் சர்வர் வசதிகளை வாடகைக்கு எடுத்தார்.

திட்டத்தின் பார்வையாளர்கள் ஒரு நாளைக்கு சுமார் ஆயிரம் பேர், ஆனால் சில நாட்களில் இது வெளிநாட்டு ஊடகங்களின் மாற்றங்களின் காரணமாக 40 ஆயிரம் பேரை எட்டியது, அவை ஏற்கனவே உள்நாட்டிற்கு முன்பே திட்டத்தை கவனித்துள்ளன (ஓஸ்டாகிராம் ஐரோப்பிய டிஜேக்களுடன் ஒத்துழைக்க முடிந்தது). இரவில், ட்ராஃபிக் குறைவாக இருக்கும்போது, ​​பட செயலாக்கத்திற்கு 5 நிமிடங்கள் ஆகலாம், பகலில் ஒரு மணிநேரம் ஆகலாம்.

முந்தைய வெளிநாட்டு பயனர்கள் பட செயலாக்கத்திற்கான அணுகலை வேண்டுமென்றே மட்டுப்படுத்தியிருந்தால் (ரஷ்யாவிலிருந்து பணமாக்குதலைத் தொடங்க நினைத்தார்கள்), இப்போது ஓஸ்டாகிராம் ஏற்கனவே மேற்கத்திய பார்வையாளர்களை அதிகமாக எண்ணுகிறது.

இன்றுவரை, திருப்பிச் செலுத்துவதற்கான வாய்ப்புகள் தன்னிச்சையானவை. ஒவ்வொரு பயனரும் செயலாக்கத்திற்கு 10 ரூபிள் செலுத்தினால், ஒருவேளை அது செலுத்தப்படும். […]

நம் நாட்டில் பணமாக்குவது மிகவும் கடினம்: எங்கள் மக்கள் ஒரு வாரம் காத்திருக்கத் தயாராக உள்ளனர், ஆனால் அவர்கள் அதற்கு ஒரு காசு கூட கொடுக்க மாட்டார்கள். ஐரோப்பியர்கள் இதற்கு அதிக ஆதரவாக உள்ளனர் - வேகத்தை அதிகரிப்பதற்கு பணம் செலுத்துதல், தரத்தை மேம்படுத்துதல் - எனவே கவனம் அந்த சந்தைக்கு செல்கிறது.

ஆண்ட்ரே, ஆஸ்டாகிராமின் பிரதிநிதி

ஆண்ட்ரேயின் கூற்றுப்படி, Ostagram குழு சமூகத்தில் அதிக கவனம் செலுத்தி தளத்தின் புதிய பதிப்பில் வேலை செய்கிறது: "இது ஒரு நன்கு அறியப்பட்ட சேவையாக இருக்கும், ஆனால் என்ன செய்வது." ரஷ்யாவில் பேஸ்புக்கின் பிரதிநிதிகள் ஏற்கனவே திட்டத்தில் ஆர்வமாக உள்ளனர், ஆனால் ஒப்பந்தம் இன்னும் விற்பனையில் பேச்சுவார்த்தைகளை எட்டவில்லை.

சேவை வேலைக்கான எடுத்துக்காட்டுகள்

ஆஸ்டாகிராம் இணையதளத்தில் உள்ள ஊட்டத்தில், இறுதிப் படங்களில் எந்தப் படங்கள் விளைந்தன என்பதை நீங்கள் காணலாம்: பெரும்பாலும் இது முடிவை விட மிகவும் சுவாரஸ்யமானது. இந்த வழக்கில், வடிப்பான்கள் - செயலாக்கத்தின் விளைவாகப் பயன்படுத்தப்பட்ட படங்கள் - எதிர்கால பயன்பாட்டிற்காக சேமிக்கப்படும்.

© 2021 skudelnica.ru - காதல், துரோகம், உளவியல், விவாகரத்து, உணர்வுகள், சண்டைகள்